《银行叫号排队系统-课程设计.doc》由会员分享,可在线阅读,更多相关《银行叫号排队系统-课程设计.doc(24页珍藏版)》请在金锄头文库上搜索。
1、能力扩展训练学 号: 0121011360701课 程 设 计题 目银行叫号排队系统学 院自动化学院专 业自动化专业班 级自动化1007班姓 名董晨指导教师刘永红2013年7月9日能力拓展训练任务书学生姓名: 董晨 专业班级: 1007 班 指导教师: 刘永红 工作单位: 自动化学院 题 目: 银行叫号排队系统的设计 初始条件: 1)实地调研,了解银行叫号过程;(2)画出一个实例的状态转移图;(3)程序设计,用单片机实现。(汇编语言或C语言)要求完成的主要任务: (包括课程设计工作量及其技术要求,以及说明书撰写等具体要求)1. 题目内容: 根据实际情况,制定可行的技术路线,满足客户要求。(如,
2、等待时间最短;VIP优先;老人优先(专柜);“飞号”不清除等。飞号是指叫了该号3次后,而该号人没出现服务窗口,就不再呼叫,该号被清除了,该号就称之为飞号。可用户又回来了,只好再取一个新号。)2. 课程设计说明书应包括:a)设计任务及要求b)方案比较及认证c)程序设计基本思想,程序流程图,部分源程序及注解d)调试记录及结果分析e)参考资料f)附录:全部源程序清单g)总结时间安排:2013年 7 月 1-2 日 选题、查阅资料和方案设计2013年 7 月 3 日 编程2013年 7 月 4-5 日 调试程序,改进与提高2013年 7 月 6-8 日 撰写设计报告(有调试过程及结果的截屏)2013年
3、 7 月 9 日 答辩和交课程设计报告指导教师签名: 2013 年 月 日系主任(或责任教师)签名: 2013 年 月 日摘 要 排队叫号管理系统是针对银行、工商、税务、通讯、政府机构等部门的大厅工作流程设计的,是利用电脑的科学管理客户排队的系统,很好地解决了客户在服务机构办理业务时所遇到的各种排队、拥挤和混乱现象,为客户办理业务带来莫大的方便和愉悦。该题研究的目的是研制一款无人排队的排队叫号机,它主要由主控制器、键盘、显示电路、蜂鸣器电路等部分构成。 系统利用单片机进行控制,通过串行通信方式传输处理数据;通过按键取号,在LCDLM016L上显示排队的号码以及当前正在等待的人数;通过按键叫号,
4、在LCDLM016L上显示叫到的号码,由扬声器发出声音提示客户。同时免除了令客户不舒服的站立式排队,这种现代化的高科技产品彻底解决了银行普遍存在的站立等候,服务无序的问题,深化并完善了服务的质量。本系统采用单片机进行控制,利用LCDLM016L显示,蜂鸣器鸣叫提示的人机交互界面,模拟排队管理系统,科学地处理各种排队情况。操作简便,控制灵活,显示清晰,制作成本低,性价比较高。 关键词: STC89C52芯片 液晶显示LCDLM016L 按钮目 录1 系统方案论证11.1 设计要求11.2 单片机芯片的选择方案和论证11.3 显示模块选择方案和论证11.4 系统方案设计22 系统硬件设计32.1
5、系统总电路32.2 单片机处理部分设计32.3 显示电路部分42.4 时钟振荡电路52.5 复位电路62.6 蜂鸣电路62.7 按键电路73 系统软件设计84系统测试95 小结10参考文献11附录12源程序:12银行叫号排队系统的设计1 系统方案论证1.1 设计要求(1)实地调研,了解银行叫号过程;(2)画出一个实例的状态转移图;(3)程序设计,用单片机实现。(汇编语言或C语言) 注:根据实际情况,制定可行的技术路线,满足客户要求。(如,等待时间最短;VIP优先;老人优先(专柜);“飞号”不清除等。飞号是指叫了该号3次后,而该号人没出现服务窗口,就不再呼叫,该号被清除了,该号就称之为飞号。可用
6、户又回来了,只好再取一个新号。)1.2 单片机芯片的选择方案和论证方案一:采用AT89S51芯片作为硬件核心,内部具有4KB ROM 存储空间,而且与MCS-51系列单片机完全兼容,但是运用于电路设计中时由于不具备ISP在线编程技术,所以在对电路进行调试时,由于程序的错误修改或对程序的新增功能需要烧入程序时,对芯片的多次拔插会对芯片造成一定的损坏。方案二:采用STC89C52芯片,STC89C52是一种低功耗、高性能的8位CMOS微控制器,具有8K的可编程Flash存储器。同样具有AT89S51的功能,且具有在线编程可擦除技术,当对电路进行调试时,由于程序的错误修改或对程序的新增功能需要烧入程
7、序时,不需要对芯片多次拔插,所以不会对芯片造成损坏。综上所述,选择采用STC89C52作为主控制系统核心。1.3 显示模块选择方案和论证方案一:采用LED数码管动态扫描,LED数码管价格适中,对于显示数字合适,采用动态扫描法与单片机连接时,虽然占用的单片机口线少,但连线还需要花费一点时间,所以也不用此种作为显示。方案二:采用点阵式数码管显示,点阵式数码管是由八行八列的发光二极管组成,对于显示文字比较适合,若采用在显示数字显得太浪费,且价格也相对较高,所以在此也不用此种作为显示。方案三:采用LM016L液晶显示屏,该液晶显示屏的显示功能强大,内置192种字符,可显示大量符号、数字,清晰可见,而且
8、功率消耗小寿命长抗干扰能力强。综上所述,在设计中采用LM016L液晶显示屏。1.4 系统方案设计系统采用如图1所示的电路,通过STC89C52单片机直接扩展的独立键盘,完成排队取号流程(本系统直接利用系统的中断0按键控制),单片机控制LCDLM016L显示排队等待情况,控制蜂鸣器发声完成叫号功能。 89C52 LCDLM016L 独立键盘 蜂鸣器图1整体方案框图 因为采用矩阵键盘完成排队取号流程,但客户较多的时候要实现排队取号的功能,就要占去过多的I/O端口,操作起来也比较复杂,而方案二的独立键盘操作控制简单,占用主机资源少,所以选择方案二,采用独立键盘控制排队取号,通过串行通信的方式,模拟排
9、队取号管理系统的流程显得更加方便、科学。2 系统硬件设计2.1 系统总电路系统电路由单片机部分,显示电路,时钟振荡电路,复位电路,叫号电路和按键电路组成。图2 系统总电路图2.2 单片机处理部分设计设计的思想是简单实用,中心处理部分采用STC89C52单片机。STC89C52单片机完全可以满足本系统的设计要求,相对于其他具有相当功能的器件来说,具有价格便宜,对环境要求不高,工作稳定等优点。STC89C52高性能COMS 8位单片机,片内含4K Bytes的可反复擦写的只读程序存储器(ROM)和128 Bytes的随机存取数据存储器(RAM)。具有32个可编程的I/O口,其中P0口为一个8位漏极
10、开路双向I/O口,编程时作为原码输入口,校验时,输出原码;P1口是一个内部提供上拉电阻的8位双向I/O口,在编程和校验时,作为第八位地址接收;P2口为一个内部上拉电阻的8位双向I/O口,在编程和校验时接收高八位地址信号和控制信号;P3口为8个带内部上拉电阻的双向I/O口,同时也偶一些特殊功能,我们所使用到的P3.6/WR可作为外部数据存储器写选通,P3.7/RD可作为外部数据存储器读选通;RST口为复位输入;XTAL1口为反向振荡放大器的输入及内部时钟工作电路的输入;XTAL2口为反向振荡器的输出。图3 AT89C52管脚图2.3 显示电路部分 显示电路部分如下图所示,采用的是液晶显示屏LM0
11、16L模块,LM016L字符型LCD通常有14条引脚线或16条引脚线的LCD,多出来的2条线是背光电源线。它可以显示两行,每行16个字符,采用单+5V电源供电,外围电路配置简单,价格便宜,具有很高的性价比。STC89C52的P0.0至P0.7的8个端口用来控制数码管的显示。X图4 显示电路部分2.4 时钟振荡电路SCT98C52中有一个用于构成内部振荡器的高增益反向放大器,引脚XTAL1和XTAL2分别是该放大器的输入端和输出端。这个放大器与作为反馈元件的片外石英晶体或陶瓷谐振器一起构成自激振荡器,震荡电路如图5所示。因为一个机器周期含有6个状态周期,而每个状态周期为2个震荡周期,所以一个机器
12、周期共有12个震荡周期,如果外接石英晶振的震荡频率为12MHz,故而一个机器周期为1uS 。图5 时钟振荡电路外接石英晶体及电容C1、C2接在放大器的反馈回路中构成并联振荡电路。对外接电容C1、C2虽然没有十分严格的要求,但电容容量的大小会轻微影响震荡频率的高低、震荡器工作的稳定性、起振的难易程度及温度稳定性。外接石英晶体,电容使用30pF。2.5 复位电路复位电路虽然简单,但其作用非常重要,一个单片机系统能否正常运行,首要检查是否能复位成功。复位操作有上电自动复位和手动复位两种方式,本文采用手动复位方式。手动复位是通过开关实现的其电路如图6所示。在通电瞬间电容C通过电阻R充电,RST出现正脉
13、冲,用以复位。只要电源Vcc上升时间不超过1ms,就可以实现手动复位,即按下开关就可以实现系统的复位初始化。关于参数的选定在震荡稳定后应保证复位高电平持续时间大于2个机器周期。这里选用的是12MHz的石英晶振可取C=4.7uF,R=4.7K。图6 复位电路2.6 蜂鸣电路实现蜂鸣的接口电路比较简单,其发音原件通常采用压电蜂鸣器,当在蜂鸣器两引脚加上+3V+15V只留工作电压时,就能产生3KHz左右的蜂鸣器震荡音响。压电式蜂鸣器结构简单、耗电少、更适合于单片机系统的应用。压电式蜂鸣器,需要10mA的驱动电流,可在P3.0口接上一直三极管和电阻组成的驱动电路来驱动,如图7所示。图7 蜂鸣电路 在图
14、中,P3.0接三极管的极端输入端,当P3.0输出高电平时,三极管导通,蜂鸣器通电而发音,当P3.0输出低电平时,三极管截止,蜂鸣器停止发音。2.7 按键电路 按键电路实现的功能是取号和叫号,客户通过按键实现取号,工作人员通过按键实现叫号,使客户前来相应的窗口办理业务,按键电路如图8所示。图8 按键电路3 系统软件设计本程序可实现设计的基本要求,设备上电后,显示器屏幕亮,无信息显示。当客户按键后,每按一下,队伍加1,显示器显示客户队伍号;排满20位后,再按取号键,屏幕显示“队伍满”。当客服叫号时,队伍减1,程序进行信息处理,在显示器上显示“几号客户到几号窗口”,同时进行声音提示。LM016L通过D0D7的8位数据端传输数据和指令,其模块内的控制器有11条控制指令。当液晶显示屏的接口电路与单片机系统I/O按照并行数据传输方式连接完成以后,即可以对STC89C52单片机进行编程。在液晶屏完成显示之前首先要对液晶进行初始化。程序流程图如图9所示。开始 初始化取号没LM016L液晶显示叫号