第1章 绪 论
随着我国市场经济的改革发展 ,客户在市场交易中的地位越来越重要 ,个人化的服务已成趋势 ,提供舒适的服务环境已成竞争的重要手段。多窗口类别的服务往往让人无所适从 ,客户盼望只排一个队 ,只接受“一对一”的服务。营业窗口是形成银行、电信、航空、医院等企业的公众形象的重要因素,因此,排队管理系统应运而生,它彻底解决了银行、医院等服务性企业普遍存在的站立等候、服务无序的问题 ,深化并完善了服务的质量。市场上已有成品的排队机系统 ,但存在系统庞大、结构复杂、维护管理不便、成本普遍较高等缺陷。本文以价格低廉的单片机为系统主控 CPU,设计并研制出体积小、结构简单、可靠性高、维护操作方便、性价比较高的用于金融系统中的银行柜员服务呼叫系统。
1.1 课题背景
近年来,随着科学技术的迅猛发展和人们生活水平的日益提高,各行各业特别是服务行业的竞争也逐渐激烈。服务质量作为体现企业的公众形象、服务理念、管理水平的标准已越来越受到服务和被服务双方所关注,而营业窗口正是代表银行、医院、电信、税务、工商等企业服务质量的重要场所[1]。
随着服务行业业务量的增长及业务种类的增加,排队等候已成为人们面临的实际问题。长期以来,人们在银行、医院、电信、税务、工商等营业大厅里前拥后挤地站着排队等候,有时一站就是一个多小时。这种员工坐着服务、客户站着等待的服务方式与“用户就是上帝”的服务宗旨完全背道而驰!改善服务质量、树立良好形象,解决劳累的排队现象、创造人性化服务环境已成为急需解决的问题,排队系统应运而生。此系统完全模拟了人群排队过程,通过取票进队、排队等待、叫号服务等功能,诠释了人性化的服务理念,舒缓顾客等待的急噪情绪,使人们在等候服务的过程中拥有一个相对自由的空间,是科技以人为本的真正体现。客户前来办理业务时,只需到取票机上选定要办理的业务,拿着取号机自动派给的号票在等候大厅就坐等待,由电脑的队列管理来代替办理业务排队,减轻办理业务的负担。当轮到某顾客办理业务时,电脑通过语音呼叫和电子显示屏通知顾客到相应的窗口办理业务。同时排队系统提供强大的统计和图表功能,为单位的成本、效益方案提供参照数据。这种智能化、人性化的服务系统不仅在世界各地被广泛接受,在国内也被越来越多的服务行业认同和采用。
1.1.1 排队技术发展的简要回顾
排队技术最早出现于上个世纪的六、七十年代, 开始主要集中在欧美等西方国家,后来迅速得到普及。在国外,人们去银行等机构办理业务时,先取号再等候呼叫已属于常识,生产排队管理系统的公司也随着市场的发展逐渐形成一个专门的行业——排队技术产业。起初, 人们只是在进入营业场所的门口前领取一个早已制作好的号牌或印有号码的纸条, 然后等着麦克风里的人工呼叫。随着现代技术的不断发展特别是计算机技术的应用,使排队技术进入一个全新的天地,就是我们今天看到的由电脑、呼叫终端、LED 显示屏、语音设备等组成的排队系统;排队系统的服务范围迅速拓展,如:电信、快餐厅、涉外办事机构、海关、医院、药房等行业;服务功能也由单纯的优化服务环境和客户秩序管理渐渐渗透到使用者的服务系统管理之中,成为使用机构行之有效的辅助服务手段。经过 30 多年的发展,排队技术产品的应用在海外已经成为一个专门产业并早已形成相应的行业规范,其应用领域也进入到大多应该有序规范的商业服务并需要排队等候的行业中,与之相关的排队市场也已进入平稳发展期。
1.1.2 排队系统在我国的发展现状
我国从 1998 年才开始出现由中国企业从事排队技术产品的经营活动,并且是以各种形式销售排队产品,新技术的应用尚在萌芽状态,使用范围非常有限,服务行业以及顾客持观望态度等因素,直接导致了中国排队市场发展极其缓慢。直到 2001 年,中国的排队市场才刚刚进入发展期,对于中国从事排队技术产业的企业来说 2003 年才是春天的来临,因为我国许多大中城市以及发达地区的服务营业场所已逐渐对排队技术产品有所认识,并且不再视为是一种摆设,顾客对于持票排队的态度由不适应到适应,由不习惯到习惯,由习惯到离不开。随着电信、银行、医院的不断竞争与发展,人民文明程度的不断提高,排队技术产品改变了以前营业厅、诊室一窝蜂的、无隐私、菜市场式的无序模式。从 2003 年开始,排队技术产品的应用已是必然趋势,市场正在由导入期过渡到成熟发展期,与之相关的产品市场需求也以年 200%的速度激增,新技术的应用,中国经济迅速发展的大背景以及全球商业经济发展几大因素的推动下,伴随着医疗排队市场的启动,业内分析:中国的排队行业应该在未来 2—5 年内会更加成发展、壮大并成为一个专门的排队技术产业去应对不断激增的市场需求[2]。
1.2 设计指标
设计一个银行柜台服务呼叫系统。银行柜员服务呼叫系统通过银行柜员按钮操作,由银行柜员服务呼叫系统呼叫出被服务客户的由打号机打印的机器编号,并在LED显示屏上显示。
1、至少可以16个柜员的服务;
2、语音呼叫服务客户编号;
3、LED显示服务客户编号。
1.3 本文的工作
详细分析课题任务,对银行柜员服务呼叫系统进行分析,并对单片机和单片机开发系统原理进行了深入的研究。然后根据课题任务的要求设计出实现控制任务的硬件原理图和软件,并进行访真调试。
第2章 银行柜员服务呼叫系统的设计及其应用
随着国民经济的快速发展和人民生活水平的日益提高,银行的柜面业务量随之快速增长,给银行职员的办事效率和服务质量提出了新的要求。而传统的银行业务办理模式都是客户排队等候,依次办理,银行职员不仅工作比较辛苦,而且办事效率低,不能满足日益增长的业务量的要求。给客户提供更优质的服务、提高营业厅服务质量更是成为各家银行迫切需要解决的问题。营业窗口是形成银行、电信、航空、医院等企业的公众形象的重要因素,因此,排队管理系统应运而生,它彻底解决了银行、医院等服务性企业普遍存在的站立等候、服务无序的问题 ,深化并完善了服务的质量。市场上已有成品的排队机系统 ,但存在系统庞大、结构复杂、维护管理不便、成本普遍较高等缺陷。本文以价格低廉的单片机为系统主控 CPU,设计并研制出体积小、结构简单、可靠性高、维护操作方便、性价比较高的银行柜员服务呼叫系统。银行在为客户办理业务时,因人多,客户需要站立排队等候服务。目前大部分银行都是采用人工呼唤的方式叫唤服务对象,这在业务繁忙、背景声嘈杂的情况下容易带来效率低下、客户易引起不快等不良后果。为了改善这种状况,银行柜员服务呼叫系统应运而生。它与打号机配合,通过机器替人排队,彻底改变站立式等候,环境不仅舒适,而且有序。因此有很好的应用前景。
2.1银行柜员服务呼叫系统的发展
排队技术最早出现于上个世纪的六、七十年代, 开始主要集中在欧美等西方国家,后来迅速得到普及。在国外,人们去银行等机构办理业务时,先取号再等候呼叫已属于常识,生产排队管理系统的公司也随着市场的发展逐渐形成一个专门的行业——排队技术产业。起初, 人们只是在进入营业场所的门口前领取一个早已制作好的号牌或印有号码的纸条, 然后等着麦克风里的人工呼叫。随着现代技术的不断发展特别是计算机技术的应用,使排队技术进入一个全新的天地,就是我们今天看到的由电脑、呼叫终端、LED 显示屏、语音设备等组成的排队系统;排队系统的服务范围迅速拓展,如:电信、快餐厅、涉外办事机构、海关、医院、药房等行业;服务功能也由单纯的优化服务环境和客户秩序管理渐渐渗透到使用者的服务系统管理之中,成为使用机构行之有效的辅助服务手段。经过 30 多年的发展,排队技术产品的应用在海外已经成为一个专门产业并早已形成相应的行业规范,其应用领域也进入到大多应该有序规范的商业服务并需要排队等候的行业中,与之相关的排队市场也已进入平稳发展期。
我国从 1998 年才开始出现由中国企业从事排队技术产品的经营活动,并且是以各种形式销售排队产品,新技术的应用尚在萌芽状态,使用范围非常有限,服务行业以及顾客持观望态度等因素,直接导致了中国排队市场发展极其缓慢。直到 2001 年,中国的排队市场才刚刚进入发展期,对于中国从事排队技术产业的企业来说 2003 年才是春天的来临,因为我国许多大中城市以及发达地区的服务营业场所已逐渐对排队技术产品有所认识,并且不再视为是一种摆设,顾客对于持票排队的态度由不适应到适应,由不习惯到习惯,由习惯到离不开。随着电信、银行、医院的不断竞争与发展,人民文明程度的不断提高,排队技术产品改变了以前营业厅、诊室一窝蜂的、无隐私、菜市场式的无序模式。从 2003 年开始,排队技术产品的应用已是必然趋势,市场正在由导入期过渡到成熟发展期,与之相关的产品市场需求也以年 200%的速度激增,新技术的应用,中国经济迅速发展的大背景以及全球商业经济发展几大因素的推动下,伴随着医疗排队市场的启动,业内分析:中国的排队行业应该在未来 2—5 年内会更加成发展、壮大并成为一个专门的排队技术产业去应对不断激增的市场需求。
2.2银行柜员服务呼叫系统的应用
随着中国整体的市场化进程的推进,国内金融机构也将必须独自面对市场化的竞争,改变传统的管理与服务理念势在必行。由于我国国情特殊,人口众多,长期以来,银行的业务量大,客户排队秩序混乱,降低了工作效率。银行柜员服务呼叫系统的应用为客户营造了一个公平、公正、公开的金融环境。产生最好的社会效益与经济效益。目前,国内多数的大型银行投入使用了银行柜员服务呼叫系统,并且有越来越多的银行认识到了银行柜员服务呼叫系统使用必要性,银行柜员服务呼叫系统表现出了良好的发展势头。
2.3 银行柜员服务呼叫系统的基本原理
硬件系统由主控制器、键盘模块、LED显示模块、语音模块等组成,与软件结合,实现排队呼叫的功能[3]。主控制器中的单片机采用 AT89S51。键盘共设计了 16 个按键, 16个按键分配给16 个柜台,当服务完一位顾客后可直接按叫号控制按键叫下一位顾客。其工作流程是:当顾客按下业务选择按健时,打印机就会打印用户凭条,顾客取得凭条后即可坐在座位上等待语音提示进行有关业务办理。当 1 号柜台的服务员做完一笔业务后,按下 1 号柜台控制器的叫号控制按键 ,由主控制器控制的叫号系统就会自动叫到下一个号码,如“008”号 ,语音系统就会播出“请 008 号顾客到 1 号窗口”的语音提示 ,并且在显示牌上显示“008-01”。
2.4 银行柜员服务呼叫系统的硬件基础
1. 主控制器
主控制器采用AT89S51单片机。AT89S51是一个低功耗,高性能CMOS 8位单片机,片内含4k Bytes ISP(In-system programmable)的可反复擦写10000次的Flash只读程序存储器,器件采用ATMEL公司的高密度、非易失性存储技术制造,兼容标准MCS-51指令系统及80C51引脚结构,芯片内集成了通用8位中央处理器和ISP Flash存储单元,AT89S51在众多嵌入式控制应用系统中得到广泛应用。
2. 键盘接口
键盘处理过程包括:键扫描、键消抖、键识别、键释放、键处理。
3. 显示输出
LED显示器由7~8只发光二极管组合而成,又称LED数码管,主要应用于只有数值显示的场合。此系统中主要显示的是服务的客户的号码,LED显示器能满足需要。
语音呼叫
语音提示模块采用了语音芯片 PM50100,PM50 系列语音芯片是中青世纪科技公司 2003 年开发的智能语音产品 ,它由专用的语音单片机和 FLASHRAM 存储器集合构成 ,它既是语音播放电路,也是智能单片机。2.5 银行柜员服务呼叫系统的理论基础
1. 系统总体原理
硬件系统由主控制器、键盘模块、LED数码管显示模块、语音模块、打印机模块组成,与软件结合,实现排队呼叫的功能。主控制器中的单片机采用 AT89S51。键盘共设计了 16 个按键,16个按键分配给16个柜台,当服务完一位顾客后可直接按呼叫控制按键呼叫下一位顾客。其工作流程是 :当顾客按下业务选择按健时 ,打印机就会打印用户凭条 ,顾客取得凭条后即可坐在座位上等待语音提示。当 1 号柜台的服务员做完一笔业务后 ,按下 1 号柜台控制器的叫号控制按键 ,由主控制器控制的叫号系统就会自动叫到下一个号码 ,如“008”号 ,语音系统就会播出“请 008 号顾客到 1 号柜台办理”的语音提示 ,并且在显示牌上显示“008-01”。
第3章 设计思想与方案论证
实现银行柜员服务呼叫系统的方法有多种,可以用DSP作为主控制器,用LCD作为显示模块;也可以用单片机作为主控制器,用LED做显示模块。还可以用PC机做控制器。当然每一种方案都有其各自的优点。本章详细列举、说明了三种不同实现银行柜员服务呼叫系统的方案、并分别列出了三种方案的硬件构成,对三种方案的优缺点进行了对比,选出了最佳控制方案。
3.1 设计思想
1、工作原理:在系统中,客户点击触摸屏上的业务选项,主控制器读取信号,并送出控制信号驱动打印机进行号码打印,客户拿到打印有号码的客户凭条后可到休息区进行等候。主控制器中的计数器对16个柜员按键的按下次数从0作加1总计数,当计数到其中的一个柜员(如5号)的数字为008时,主显示屏上便显示出“008—05”,05号窗口的显示屏上显示出“008”,同时语音提示系统播出:“请008号客户到05号窗口”,客户凭条上打印有008号码的客户便到相应的05号柜员窗口进行业务办理。
图3-1 系统原理结构总框图
2.、方案1
硬件组成:DSP(TM S320F206)、LCD显示器、扬声器等。
3.、方案2
硬件组成:单片机(AT89S51)、LED数码管显示器、语音芯片(PM50系列)、扬声器等。
4、 方案3
硬件组成:PC机、触摸屏、点阵式液晶显示器、语音芯片(ISD系列)、扬声器等。
3.2 论证分析
(1) 每个方案都采用了不同的处理器,方案3用PC机作为控制器,在进行数据的处理时显得高效和快捷,但对比其他两个方案的主处理器来说显得有点大材小用了。银行柜员服务呼叫系统是一个比较简单的系统,用单片机加扩展系统就可以完成,因此采用低成本、低功耗的单片机系统更为合理。而方案1和方案2采用了DSP及AT89S51,能够很好的解决上述问题。
(2) 方案2采用的是PM50系列的语音芯片。PM50做语音组合是目前语音电路中最简单的,用户只要把需要的语音按顺序放在芯片中即可,控制时只给段号地址就可以了,如第一段是80H, 第二段是81H等,与每一段的语音长度无关。而ISD则要麻烦得多。
本系统中采用的PM50100是中青世纪科技公司 2003 年开发的智能语音产品 ,它由专用的语音单片机和 FLASHRAM 存储器集合构成 ,它既有几秒到 100 秒的多段语音播放功能 ,也有单片机可编程的智能特性 ,其音质水平、价格等综合方面比较后都要优于著名的 ISD 系列语音芯片。
(3) 方案2采用了价格便宜的LED显示器,而方案1采用了相对昂贵的LCD显示器,方案3采用了点阵式液晶显示器。LCD显示器和点阵式液晶显示器在显示方面有其优越性,可以多行显示、文本显示。在本系统中做调试时,LED显示器是一个不错的选择。在具体实际中可采用点阵式液晶显示器。
(4) 在系统效能方面,方案3是最高的,但考虑到在能满足系统要求前提下,采用简单、价格低廉的硬件是明智的选择。考虑三个方案都远远能胜任性能要求。所以方案2采用的低成本、低功耗的单片机系统为最佳选择。
(5) 从硬件功耗上来考虑,方案3使用PC机作为控制器,功耗自然很高,且该系统在银行长时间运行,考虑到AT89S51单片机有休眠方式和掉电保护两种节电运行方式,因此方案2要略优于方案3。
综上所述:方案2是无论是从经济角度、硬件实现的容易程度、最佳性价比上都优于其它两个方案,不失为最佳的选择。
最终方案论述:很显然,方案2较其它两种方案相比无论在经济上和实现容易程度上都要好。方案2在实现程度上和软硬件的要求上都能达到要求,这样既节省了材料也可以很大程度上减少硬件电路的结构。
综上所述方案2有如下的特点:
(1) 在达到所要求的性能的基础之上还有着结构简单、明了的特点,很容易实现,而且在很大的程度上节约成本。
(2) 由于采用了AT89S51单片机作为主控制器,与MSC-51系列单片机完全兼容,所以在指令和程序的编写上很容易实现,很大程度上的减少了编程的麻烦,实现起来较容易。
(3) 采用了PM50系列语音芯片 ,PM50100做语音组合是目前语音电路中最简单的,用户只要把需要的语音按顺序放在芯片中即可,控制时只给段号地址就可以了,如第一段是80H, 第二段是81H等,与每一段的语音长度无关。
第4章 系统设计
整个系统由硬件和软件两部分组成。本章详细介绍了系统的硬件设计和软件设计,
并对硬件和软件的每一个部分进行了分析,在后半部分还对系统模型进行了访真与程序调试。硬件和软件的每一个坏节都是深思熟虑而成,各自完成相应的功能并组成一个统一的整体。
4.1 硬件设计
系统硬件根据设计要求和功能分析,将系统分为主控制器模块、键盘模块、 LED 显示模块、语音模块等几部分 。硬件结构框图如图4-1所示。
图4-1 系统硬件结构总框图
4.1.1 主控制器模块
1、单片机最小系统
单片机的最小系统指的是由最基本的电路元件组成的,外接部分简单的电路就能够独立完成一定的工作任务。其外部所接组件大多采用了串行通信,所以不需要很多的并行口,有一定的程序存储器和定时器、外部中断即可。51单片机的最小系统由单片机芯片、电源、时钟电路和复位电路组成。
图4-2 单片机最小系统原理图
如图4-2单片机最小系统原理图所示,其中的晶振时钟电路用来产生时钟信号,以提供单片机片内各种数字逻辑电路工作的时间基准。按键能实现手动复位,电容C1能实现上电复位,复位电路用来使片内电路完成初始化的操作。
单片机内部带有时钟电路,因此,只需要在片外通过X1、X2引脚接入定时控制单元(晶体振荡和电容),即可构成一个稳定的自激振荡器。
振荡器的工作频率一般在1.2~12MHz之间,当然在一般情况下频率越快越好。可以保证程序运行速度即保证了控制的实时性。一般采用石英晶振作定时控制元件;在不需要高精度参考时钟时,也可以用电感代替晶振,有时也可以引入外部时钟脉冲信号。
C9、C10虽然没有严格要求,但电容的大小影响振荡器的振荡的稳定性和起振的快速性,通常选择在10~30PF左右。在设计电路板时,晶振,电容等均应尽可能靠近芯片,以减小分布电容,保证振荡器振荡的稳定性。
2、主控单片机AT89S51芯片介绍
由ATMEL公司生产的AT89S51是一个低功耗,高性能CMOS 8位单片机,片内含4k Bytes ISP(In-system programmable)的可反复擦写1000次的Flash只读程序存储器,器件采用ATMEL公司的高密度、非易失性存储技术制造,兼容标准MCS-51指令系统及80C51引脚结构,芯片内集成了通用8位中央处理器和ISP Flash存储单元,AT89S51在众多嵌入式控制应用系统中得到广泛应用,其它内部资源与AT89C51完全相同,汇编指令与80C51完全兼容的特点,成为了首选[4]。其基本特征如下:
1、4k Bytes Flash片内程序存储器;
2、128 bytes的随机存取数据存储器(RAM);
3、32个外部双向输入/输出(I/O)口;
4、5个中断优先级、2层中断嵌套中断;
5、6个中断源;
6、2个16位可编程定时器/计数器;
7、2个全双工串行通信口;
8、看门狗(WDT)电路;
9、片内振荡器和时钟电路;
10、与MCS-51兼容;
11、全静态工作:0Hz-33MHz;
12、三级程序存储器保密锁定;
13、可编程串行通道;
14、低功耗的闲置和掉电模式
图4-3 AT89S51单片机引脚图
各管脚简单说明:
1.VCC:+5V供电电压。
2.GND:接地。
3. P0口:(P0.7—P0.0)P0口即可做地址/数据总线使用,又可作为通用的I/O口使用。
4.P1口:(P1.7—P1.0)P1口仅作通用准双向I/O口使用,主要用于单片机用户系统的控制信号输入/输出。
5.P2(P2.7—P2.0)P2口是一个8位准双向I/O口端口,它即可作为通用I/O使用。也可与P0口相配合,作为片外存储器的高8位地址总线。
6.P3(P3.7—P3.0)P3口 可作为准双向I/O口接口使用,但更多时候使用第二功能。
P3.0 RXD(串行输入口) P3.1 TXD(串行输出口)
P3.2 (外部中断0) P3.3 (外部中断1)
P3.4 T0(记时器0外部输入) P3.5 T1(记时器1外部输入)
P3.6 (外部数据存储器写选通) P3.7(外部数据存储器读选通)
P3口同时为闪烁编程和编程校验接收一些控制信号。
7.RST:复位输入。当振荡器复位器件时,要保持RST脚两个机器周期的高电平时间。
8.ALE/:当访问外部存储器时,地址锁存允许的输出电平用于锁存地址的地位字节。在FLASH编程期间,此引脚用于输入编程脉冲。在平时,ALE端以不变的频率周期输出正脉冲信号,此频率为振荡器频率的1/6。因此它可用作对外部输出的脉冲或用于定时目的。然而要注意的是:每当用作外部数据存储器时,将跳过一个ALE脉冲。如想禁止ALE的输出可在SFR8EH地址上置0。此时, ALE只有在执行MOVX,MOVC指令是ALE才起作用。另外,该引脚被略微拉高。如果微处理器在外部执行状态ALE禁止,置位无效。
9.:外部程序存储器的选通信号。在由外部程序存储器取指期间,每个机器周期两次有效。但在访问外部数据存储器时,这两次有效的信号将不出现。
10./VDD:访问片外程序存储器允许端,当保持低电平时,CPU只访问片外ROM;当为高电平时CPU优先访问内ROM,若访问地址大于某一范围时,将自动转去片外ROM。
11.VDD编程电源输入端,当对片内ROM写入程序时,由该引脚输入编程电源。
12.XTAL1:片内放大器的输入端。
13.XTAL2:片内放大器的输出端
4.1.2 键盘模块
按钮和按键
按钮和按键是一种结构简单、使用广泛的用于发送手动指令的电气元件。
按合抖动
按键接口需要考虑的问题较多,例如:如何解决按合“抖动”、如何做到“每按键一次只响应一次”、如何实现“一键多功能”以及如何编键号、如何防止“两键同按”或“数键同按”等问题。在实际应用按键接口时,根据需要参阅相关的专著,根据具体要求恰当的选择硬件电路和编制相应的程序。按键按合时的抖动现象如图4-4所示。
图4-4 按键的抖动现象
硬件消抖是通过硬件电路消除信号抖动的。常用的有滤波消抖电路和双稳态消抖电路。软件消抖的一般方法是:第一次检测到有按键按下时,先不响应,进过延时,等待抖动过程结束,再次检测,如果确认该按键按下,则执行操作。软件消抖方式的程序流程图如图4-15所示。软件消抖延时时间一般取10~20ms。
键盘
将多个按键组合在一起,就构成键盘。键盘作为人机接口之一,在系统的功能实现过程中起着不可或缺的作用。键盘按照连接方式可以分为独立式和矩阵式键盘两类。采用矩阵式键盘,则可以节省I/O口线。在此系统中,16个柜员窗口的呼叫按键采用矩阵式键盘。
键扫描
单片机监控键盘输入状态的工作过程称为键扫描。键扫描首先要查看有无按键;其次,若有键被按,则要辨别是按的哪一键,并转去执行该键的处理程序。通常使用“全扫描”查看有无按键,使用“逐行扫描”辨别是按的哪一键。
键扫描方式中,为了及时响应键盘的操作,单片机必须监控键盘输入状态,对键盘进行扫描。究竟在何时扫描,可以根据具体情况而定。键扫描的方式有:
程控扫面方式,在主程序循环执行的过程中作为内容之一附带进行;
定时扫描方式,用定时/计数器定时中断的方式定时的对键盘进行扫描;
外部中断扫描方式,即用键的按下引起外部中断,在中断服务进行时进行键盘扫描。
为了提高CPU执行效率,本系统中矩阵式键盘采用中断扫描工作方式。键盘接口如图4-5所示。
图4-5 外部中断扫描方式矩阵键盘接口电路
该键盘直接由AT89S51的P1口的高、低半字节构成4 x4行列式键盘。键盘的列线与P1口的低4位相接,键盘的行线通过二极管接到P1口的高4位。因此,P1.4一P1.7作键扫描输出线,P1.0一P1.3作键状态输人线。扫描时,使P1.4一P1.7置零。当有键按下时,INTl为低电平,向CPU发出中断申请。在中断服务程序中除完成键识别、键功能处理外,还须有消除键抖动等功能。
(标号) 功 能 柜员呼叫按键 16(1~16) 对16个柜员按键的按下次数从0作加1总计数,即按下16个中的任一个,总计数值+1。总计数值在主显示屏和相应的柜员窗口显示,并在语音电路中呼叫出来,当按1000次后归0,然后继续。
4.1.3 LED显示模块
计算机对信息处理的结果存入寄存器或存储器中,只有通过显示器显示才能知道结果,单片机系统中,常用的是LED数码管显示器、LCD显示器。
1、LED显示器原理
LED(发光二极管)一般仅用于信号指示,其驱动电路与普通二极管基本相同。LED显示器由7一8只发光二极管组合而成,又称LED数码管,能显示数字和几个英文字母,主要应用于只有数值显示的场合。
1. LED数码管的工作原理
LED数码管通常由8个发光二极管组合而成,称为八段LED数码管。常用的8字形
LED数码管如图4-6(a)所示。制造时LED数码管的a,b,c,d,e,f,g做成条形,称为段,按照8字形状放置;dp(或h)为圆点形状。8字形LED数码管有共阴极和共阳极两种结构形式,如图4-6(b),(c)所示。如果没有dp段,就是七段LED数码管。我们把没有连在一起的端统称为字形端。从电气连接上来看,八段LED数码管有8个字形端,l个公共端,为9端器件。
图4-6 8字形LED数码管
对于共阴极LED数码管,其公共端必须施加低电平,而在需要点亮段端应施加高电平; 对于共阳极LED数码管则与 对于共阴极LED数码管相反。由此可见,施加于公共端的电平决定了数码管能否点亮,称为字位控制;施加于各字形端的电平决定了显示的字形,称为字形控制。为了显示不同的字形,八段LED数码管各段所加的电平也不同,与显示字形对应的电平组合称为字形码。对照图4-6所示字段,字形码的各位定义如下。
表4-2 七段LED数码管字形码表
显示字符 共阴极段选码 共阳极段选码 显示字符 共阴极段选码 共阳极段选码 0 3FH C0H 8 7FH 80H 1 06H F9H 9 6FH 90H 2 5BH A4H A 77H 88H 3 4FH B0H b 7CH 83H 4 66H 99H C 39H C6H 5 6DH 92H d 5EH A1H 6 7DH 82H E 79H 86H 7 07H F8H F 71H 8EH LED显示器的显示方法有静态显示与动态显示两种,下面分别予以介绍。
LED静态显示接口
静态显示电路一般是将所有的LED数码管的COM端接地(共阴极)或接+5V(共阳极),每个数码管的字形端各接独立的输出口,CPU将显示字形码通过输出口送至各数码管即可显示。被显示的数据只要输出一次,在显示内容刷新之前不必重复输出。静态显示接口的显示程序比较简单,但电路比较复杂,硬件成本较高。
LED数码管显示的字形由字形码控制。有两种方法获得字形码:一种是软件译码,另一种是硬件译码。应用中究竟采用哪种,应视具体情况而定。
LED动态显示接口
动态显示是利用人眼视觉暂留特性来实现显示的。实际上,显示器上任何时刻只有一个数码管有显示。由于各数码管轮流显示的节奏较快,人的眼睛反应不过来,因此看到的是连续显示的现象。为防止闪烁,延时的时间在2~5ms。不能太长,也不能太短。延时太长,会造成显示不连续;太短,则分辨不清。
在显示器的某个数码管上显示字符的控制过程是:首先将字形码送入字形锁存器锁存,这时所有的数码管都获得同样的字符信号;再将需要显示的位码送入字位锁存器锁存,于是输出的字符就在位选码指定的数码管上显示。
动态显示接口的硬件电路比较简单。但是,在动态显示方式,即使显示的内容没有变化,CPU也必须反复执行显示程序。因此采用动态显示时,程序的编写较为复杂,CPU的利用效率较低[5]。
图4-7 六位动态数码管接口电路
如图4-7所示为六位共阴极LED数码管显示接口电路,图中8255的A口为段数据口,经2片同相驱动器74LS07接数码管,C口为位选扫描口,经反相驱动器74LS06接公共极,在单片机的RAM中设置79H~7EH共6个显示缓冲单元用来存放显示数据。
根据以上原理及知识内容,本系统中的显示模块设计如下。
每个柜员窗口要显示所服务的客户号码,则需要3位LED数码管,16个柜员共需要48个LED数码管,再有大厅设置一个6位LED数码管的总显示屏,显示的内容为“XXX—XX”,意思为“XXX号顾客到XX号柜员窗口”。根据6位动态数码管接口电路的扩展原理,本系统中的54位LED数码管需要54个位选扫描口,故采用8255用作扩展,用3片4—16译码器(74HC154)连接作为48个位选扫描口,8255的C口用作另外6个的位选扫描口。系统中LED数码管显示屏与单片机的接口电路图如图4-8所示。
图4-8 LED数码管显示屏与单片机接口电路
4.1.4语音模块
语音呼叫模块采用了语音芯片 PM50100,PM50 系列语音芯片是中青世纪科技公司 2003 年开发的智能语音产品 ,它由专用的语音单片机和 FLASHRAM 存储器集合构成 ,它既是语音播放电路,也是智能单片机。ISD 系列语音芯片。所以其开发设计简单度、智能控制的简单度、整体性价比等指标要远胜过ISD。本系统中只需要语音播放的功能 ,因此芯片中已经预先录制好了需要播放的声音 ,使用时只需编程将其读出即可[6]。根据PM50的标准串行控制方式,我们采用串行方式与单片机相连,电路图如图4-9所示。
图4-9 PM50与单片机接口电路图
功能特点:(1)可存储声音长度:13秒~100秒。(2)宽范围工作电压:DC 3~6V。
(3)工作电流50mA,静态电流1uA。(4)直接驱动8欧姆0.5瓦的喇叭,PWM和DAC双音频输出模式。
(5)宽范围采样频率:4.8K~~21KHZ。
(6)录制的语音可分1~8段或128段 。(7)自带8个输入端口,9个输出端口,功能均可由用户自定义 。(8)FLASHRAM结构,可以反复擦写录入,寿命在1万次以上。(9)两种封装形式:COB28和COB16 。(10)开发用的电脑软件系超智能傻瓜图形设计,外行也能使用。
(11)配合编程软件可以开发出并行、串性、智能型等多种控制模式。(12)最小系统的外围电路只需一只振荡电阻、一只电源滤波电容。
(13)有多个时间档次可选。(14)完成开发和试验后,直接用源文件投产掩模芯片,电路设计、音质效果、功能性能不变
图4-10 PM50外围管脚图
表4-3 PM50S系列(COB28)的引脚定义表
脚号 名称 用途 脚号 名称 用途 1 GND 电源地端 28 FM 编程端 2 FC 编程端 27 FD 编程端 3 FA 编程端 26 FK 编程端 4 K1 输入1 25 R 复位端 5 K2 输入2 24 O1 输出1 6 K3 输入3 23 O2 输出2 7 K4 输入4 22 O3(LED2) 输出3 8 K5 输入5 21 O4 输出4 9 K6 输入6 20 O5 输出5 10 K7 输入7 19 O6 输出6 11 K8 输入8 18 O7 输出7 12 ROSC 振荡电阻 17 O8 输出8 13 SP1/DAC 喇叭端1 16 LED1 指示灯 14 SP2 喇叭端2 15 VDD 正电源端
串行模式 须由外部单片机接口,发串行指令控制放音的段号,段数最大128段,多用于语音组合用。如报温度、报数、语音辞典用等。
PM50的标准串行控制方式
本设计中的串行模式,只使用3个口线(K1、K2、O1),就能实现多达128段的语音控制,而且用户也无须计算每段语音的长度所对应的地址长度,第一段的语音地址就是80H,第二段是81H,第三段是82H,如此类推,到第128段正好是FFH。用户用简单的单片机及程序就能实现任意段的播放和组合播放。
在该串行模式下,K1为数据端,K2为时钟端,O1为忙信号端。时钟上升沿时数据端有效。语音段的地址为80H~FFH,第一段的地址是80H,按顺序排列,最多128段语音。外部单片机直接送入要放音的段号数据,播放,结束时PM50的忙信号拉低,在判断一段语音结束时,外部单片机再送下一段语音的段号[]。
单片机控制时序图如,K2时钟为10HZ~100KHZ内均可,推荐1KHZ。
所谓语音组合,就是用语音芯片把需要的语音元素分成很多段存储起来,然后用微处理控制器将这些语音元素按用户需要的组合起来,听起来就是一句或一系列完整的话。都是其中的语音元素,每个词就是一个语音段,微处理控制器把它们调出来按顺序播放就成为语音组合出一句完整的话。这样,语音组合设计就能够表达一个动态的意思。
下面PM50100 芯片的语音组合设计。()将语音组合使用的所有语素都列写出来,括号内为段号,后面跟的是读音的内容,如:()、()0 、()1 、()2 、()3 、()4 、()5 、()6 、()7 、() 8 、()9 、()()()
(2).录制声音文件()使用 ATVOC-PM50 编程器,使用其中的串行模式菜单,将需要的这 个文件放入菜单,即可以联机烧写到 PM50100 芯片中。()在 ATVOC-PM50 编程器上就可以对烧好的芯片测试,听取每一段声音效果,听取段连续播放时合成的效果,如果无误,就可以把该芯片放到产品电路上了。(5)现在这片制作好的 PM5000 芯片的各段语音内容和地址,从80H开始,表示第一段语音存放对应地址,依次类推
4.1.5电源电路的设计
该系统中的单片机系统属于弱电系统,家用电源为220v,所以必须设计一个电源电路给该系统供电。该电源电路输入家用220v交流电,经过变压器变压为12V的交流电,再经过全桥整流,通过三端稳压芯片7805稳压成5伏直流电源提供给此系统使用。7805最大输出电流为1A,电路能带动一定的负载,本设计所采用的电源是利用78L05稳压器件组成的。7805集成稳压器是将功率调整管、取样电阻以及基准稳压、误差放大、启动和保护电路等全部集成在一个芯片上而形成的一种稳压集成电路。由于78M系列三端集成稳压器内部有过热、过流保护电路,外围元件少,性能优良,体积小、价格低,所以在很多电路中广泛应用。它的工作原理与一般的分立件组成的串联调整式稳压电源相似,区别在于增加了启动电路、恒压源以及保护电路。78系列的的应用电路,可实现正向的固定输出;输入端电容用以旁路高频干扰脉冲及改善纹波。输出端所接电容起改善瞬态响应特性、减小高频输出阻抗的作用。使用三端集成稳压器时一定要注意:输入电压与输出电压差不能过大,一般选择在6~10V为宜,压差过小,输出电压纹波大,起不到稳压作用,压差过大,稳压器本消耗的功率就随之增大,容易损害稳压器。为了使稳压器能在比较大的电压范围内正常工作,在基准电压形成和误差放大部分设置了恒流源电路,启动电路的作用就是为恒流源建立工作点。实际电路是由一个电阻网络构成,在输出不同电压稳压器中,采用不的串并联,形成不同的分压比,通过误差放大之后去控制调整管的工作状态,以形成和稳定一系列的输出电压。虽然三端稳压器有很多优点,但因目前功率集成技术水平的限制,它的最大电流只能达到1.5A一般输出端无须接入大电解电容。7805型稳压器输入、输出端电压差通常取3V一7V之间比较合适,如果输入、输出电压差过大,当电源电流较大时容易发热,因此使用时要加装散热片。此外,78系列稳压器自身也具有完善的短路和限流保护、过热保护和调整管安全工作区保护电路,因而它的工作是比较可靠[]。
电路如图所示,左边两个电容C13、C15是12伏的电源滤波电容,作用是滤除掉线路上的高频脉冲干扰,一般大电容旁边并联一个小电容的目的是降低高频内阻,因为大的电解电容一般采用卷绕工艺制造,所以等效电感较大,小电容可以提供一个小内阻的高频通道,降低电源全频带内阻,这个在实际电路中非常常见;右边两个电容C14,C16是5伏电源的滤波电容,在电解电容C13、C14两端各并联了一个0.luF的瓷片电容,瓷片电容的高频滤波性能要比电解电容好得多,因此可弥补电解电容高频滤波效果较差的不足。电阻和绿色的LED组成5伏电源的工作指示电路,只要电源部分正常,绿色的LED就会点亮,我们可以根据这个LED来判断整个电源部分是否工作正常稳压后输出稳定的5v直流电。此电路方便实用,输出电压稳定。4.2 软件设计
系统的软件部分以主程序为入口,在初始化之后开启中断,完成对键盘的扫描,读入键值,并根据相应的键值进行各类操作。LED数码管显示由单片机控制,在每一次柜员服务按键之后进行计数显示刷新,语音电路在柜员窗口按键后调用语音呼叫程序进行语音提醒功能。
4.2.1主程序
主程序作为程序的入口,控制各类程序的调用。在系统中其主要的任务是调用键盘管理程序。然后调用显示程序在LED数码管上显示出来,然后调用语音程序呼出客户号码,完成对客户业务的办理,如此循环。主程序起到了重启动后读入Flash中的设定程序;设计各类计数器和开中断的,并调用各种功能子程序的。而具体的功能都由功能子程序完成。主程序流程如图4-14所示。具体程序见附录B。
4.2.2 矩阵式键盘的软件设计
1、键盘在按键按合时有抖动现象,必须采取消抖的方式才能正确识别按键。软件消抖的方式的流程图如图4-15所示。
2、键盘扫描程序
在图8所示的4*4键盘中1~16为柜员呼叫按键,16个键分别用于16个柜员,其功能相同。行线接P1口的高4位;列线接P1口的低4位。键盘扫描程序的总流程图如图4-16所示。
4.2.3 LED数码管显示程序设计
动态显示是利用人眼视觉暂留特性来实现显示的。实际上,显示器上任何时刻只有一个数码管有显示。由于各数码管轮流显示的节奏较快,人的眼睛反应不过来,因此看到的是连续显示的现象。为防止闪烁,延时的时间在2~5ms。不能太长,也不能太短。延时太长,会造成显示不连续;太短,则分辨不清。
在显示器的某个数码管上显示字符的控制过程是:首先将字形码送入字形锁存器锁存,这时所有的数码管都获得同样的字符信号;再将需要显示的位码送入字位锁存器锁存,于是输出的字符就在位选码指定的数码管上显示。显示器动态显示的控制流程图如图4-17所示。
图4-17 动态显示控制流程图
4.2.4 语音呼叫程序
语音呼叫程序是整个系统中重要的程序组成部分,当柜员窗口按键呼叫按键后,相应的顾客号码便显示在主屏幕上和相应的窗口屏幕,同时语音呼叫“请XXX号顾客到XX号窗口”的语音提示。具体流程图如图4-18所示。
4.2.5中断服务子程序
1、中断1服务子程序
中断1用于键盘扫描时相应按键的按下。即单片机检测到矩阵式键盘有某个键按下时,便开中断1,进行中断1的服务子程序。整个程序采用顺序执行,流程图如图4-19所示。具体程序见附录B。
4.3 抗干扰设计与软件调试
在系统的运行过程中可能出现各种干扰,如信号不稳定、电路板抗干扰能力差、程序跑飞等,也可能在搬运或者使用过程中对电路板或者原器件的磨损等。所以在设计过程中应做好搞干扰设计,以求将干扰对系统产生的影响降到最低。
4.3.1 硬件抗干扰设计
在硬件设计过程中为了减少外部信号对系统的影响采用了以下几种抗干扰措施。
I/O口外接滤波电容和上拉电阻,减小信号干扰。
制作PCB板时对重点信号线实行地线包络,并于导线集中的地方和过孔处补上泪滴,加强连接。
3. PCB板的双面分别填充电源层与地线层,并对没有并线的地方进行覆铜
PCB板布局实行模块化分离,模块之间进行信号隔离,对电源变压器进行隔离。
4.3.2 软件抗干扰措施
软件抗干扰就有投资低的优点,本文采用的软件抗干扰措施如下:
(1) 指令冗余
当CUP受到干扰后,往往将一些操作数当作指令码来执行,引起程序的混乱,我们首先要尽快将程序纳入正轨,也就是让程序弹飞到某一个单字节指令NOP,这就是指令冗余。自此,常在一些对程序的流向起决定作用的指令之前插入两条NOP指令,以保证弹飞的程序迅速纳入正确的控制轨道。在某些对系统工作状态至关重要的指令前也可插入两条NOP指令,以保证被正确执行[9]。
(2) 软件陷阱
当弹飞的程序落到非程序区(如ROM中未使用的空闲和程序中的数据表格区)时,就形成了死循环,解决的办法就是用一条引导指令强行将捕获的程序印象到一个指定的地址,为了加强捕获的效果,一般还在其前面加两条NOP指令[。因此,软件陷阱由三条指令组成:
NOP
NOP
LJIMP START
a. 未使用的中断向量区
当干扰未使用的中断开放,并激活这些中断时,就会进一步引起混乱,如果我们在这些地方布上陷阱,就能及时捕获到中断。可在中断入口处加入RETI指令。
b. 未使用的大片ROM空间
对于剩下的ROM空间,一般在每隔一段设置一个陷阱(02H 00H 00H)从头开始,此时前两个00H即是设置陷阱的地址,又是NOP指令,起到双重的作用。
AT89S51单片机的WDT
单片机应用系统在运行过程中,受到干扰而程序运行失控引起程序“跑飞”,有可能使程序陷入“死循环”,一般的软件抗干扰技术时常难以使失控的程序摆脱“死循环”,为此采用程序监控技术,又称看门狗(Watch Dog)技术,使程序脱离“死循环”。测控系统的应用程序往往采用循环运行方式,每一次循环运行的时间基本固定。看门狗技术就是不断监视程序运行的循环时间,若出现运行时间超过设定的循环时间,则认为系统程序陷入了“跳飞”或“死循环”,然后强迫程序返回到0000H入口,在0000H入口处安排一段出错处理程序,把系统运行纳入正轨。AT89S51将一个定时监视器集成到芯片内部,省略了外部电路设计,缩小了体积,应用方便[10]。
根据89 S51看门狗的特点,具体使用方法如下:在程序初始化过程中,向WDT看门狗寄存器WDTRST中首先写人01 EH,然后再写人0E1H,即可激活看门狗。
89S51内部看门狗的使用。源程序见附录B
4.3.3 软件调试
软件的调试包括银行柜员服务呼叫系统主程序,中断方式键盘扫描程序,动态显示子程序,语音呼叫程序的调试。
1 . 软件的调试
软件的调试部分包括各类程序的调试,如主程序、键盘管理子程序、中断程序、计数程序、显示子程序、语音呼叫程序。调试原则有以下几种:
a先独立后联机
b先分块后组合
c先单步后连续
结 论
基于单片机的银行柜员服务呼叫系统,利用AT89S51作为主控制器,将柜员窗口按键信号输入到单片机中。由单片机作为控制器,根据所检测到的柜员窗口显示在相应的柜员LED显示屏上,并在主显示屏上闪烁显示,同时语音系统播出提示:“请XXX号客户到XX号窗口”。用主显示屏上的LED闪烁和语音播报来提示顾客到相应的柜员窗口办理业务。纵观整个系统,此系统正确选用了单片机作为主控制器,按键采用矩阵式键盘,节约了单片机的I/O口资源,采用LED数码管显示器为显示输出,同时加入具有语音播报的语音模块。此银行柜员服务呼叫系统的设计,能较好解决各个银行在为客户办理业务时,业务繁忙、背景声的情况下容易效率低下、客户不快等不良后果。机器替人排队,彻底改变站立式等候,环境不仅舒适,而且有序参考文献
[1]滕丽丽.基于单片机的银行排队系统的设计[J].科技传播.2010-11(下):2~2[J].计算机工程应用技术.第6卷第
19期:5379~[J].沈阳工业大学学报.1997年8月第19卷第4期
总第74期:~徐维祥刘敏LED大屏幕显示技术.电子工业出版社2002
[6]赵育良,许兆林.基于PM50的某型检测仪的语音提示系统[J].微计算机信息(测控自
动化).2005年第21卷第8-1期:151~第1版第1版电子工业出版社[J].微计算机信
息 (嵌入式与 SOC).2010年第26卷第2-2期:~[J].国外电子元器
件.2008年第10期:12~新型病床呼叫系统的研制[J]~M.Mitescu,I.Susnea.Microcontrollersinpractice,Springer,Berlin,2005
致 谢
毕业设计终于脱稿付印了,此刻的我思绪万千,心情久久不能平静。回忆我在湖南文理学院学习的四年中,有许许多多的老师传授我们知识,教会我们做人的道理。特别是导师陈日新老师令我永生难以忘怀。导师治学严谨,学识渊博,品德高尚,平易近人。导师身为学院领导,日理万机,却还要抽出时间对我进行学习上的指导与耐心讲解,恩师的关怀无不让我时时刻刻为之感动。导师在我学习期间不仅传授了做学问的秘诀,还传授了做人的准则。这些都将使我终生受益。无论是在理论学习阶段,还是在论文的选题、资料查询、开题、研究和撰写的每一个环节,无不得到导师的悉心指导和帮助。我愿借此机会向导师表示衷心的感谢!同时也向这四年来帮助过、关心过我的老师、同学表示由衷感谢。
回顾四年的大学学习生涯,自己为有机会摆脱工作的烦恼与浮躁,静心钻研,潜心研究,并取得初步研究成果而感到欣慰。欣慰之余,我要向关心和支持我学习的所有领导、同事和朋友们表示真挚的谢意!感谢他们对我的关心、关注和支持!同窗之谊和手足之情,我将终生难忘!师生之情,血浓于水的感情将陪伴我度过一生,这将是我进步的阶梯。
路漫漫其修远兮,吾将上下而求索。我愿在未来的学习研究过程和工作中,以更加丰厚的成果来答谢曾经关心、帮助和支持过我的所有领导、老师、同学、同事和朋友。
毕业设计(论文)原创性声明和使用授权说明
原创性声明
本人郑重承诺:所呈交的毕业设计(论文),是我个人在指导教师的指导下进行的研究工作及取得的成果。尽我所知,除文中特别加以标注和致谢的地方外,不包含其他人或组织已经发表或公布过的研究成果,也不包含我为获得 及其它教育机构的学位或学历而使用过的材料。对本研究提供过帮助和做出过贡献的个人或集体,均已在文中作了明确的说明并表示了谢意。
作 者 签 名: 日 期:
指导教师签名: 日 期:
使用授权说明
本人完全了解 大学关于收集、保存、使用毕业设计(论文)的规定,即:按照学校要求提交毕业设计(论文)的印刷本和电子版本;学校有权保存毕业设计(论文)的印刷本和电子版,并提供目录检索与阅览服务;学校可以采用影印、缩印、数字化或其它复制手段保存论文;在不以赢利为目的前提下,学校可以公布论文的部分或全部内容。
作者签名: 日 期:
学位论文原创性声明
本人郑重声明:所呈交的论文是本人在导师的指导下独立进行研究所取得的研究成果。除了文中特别加以标注引用的内容外,本论文不包含任何其他个人或集体已经发表或撰写的成果作品。对本文的研究做出重要贡献的个人和集体,均已在文中以明确方式标明。本人完全意识到本声明的法律后果由本人承担。
作者签名: 日期: 年 月 日
学位论文版权使用授权书
本学位论文作者完全了解学校有关保留、使用学位论文的规定,同意学校保留并向国家有关部门或机构送交论文的复印件和电子版,允许论文被查阅和借阅。本人授权
- VIP免费下载
- 下载文档
- 收藏
- 分享 赏
- 0
文档评论(0)