排队叫号系统毕业论文_第1页
排队叫号系统毕业论文_第2页
排队叫号系统毕业论文_第3页
排队叫号系统毕业论文_第4页
排队叫号系统毕业论文_第5页
已阅读5页,还剩44页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、第1章 绪 论1.1 课题来源近年来,随着我国社会经济的持续快速发展,资金流动加快,服务行业的不断增加,加之我国政府正在努力构建和谐社会、服务型政府,大量的用户越来越频繁的光顾金融系统、电信、医疗、政府办事大厅等服务部门,时代的发展给这些服务型行业提出新的服务理念,也给这些行业和部门带来了巨大的压力。伴随着经济全球化的大浪潮,各行各业之间的竞争逐渐加剧、每个服务行业业务量在不断增长,业务种类也日益增多,排队等候已成为人们经常面临的实际问题。在银行、医院、电信、税务、工商等营业大厅里,前拥后挤、杂乱无章的排队等候,己是司空见惯的现象,很多窗口也因而秩序混乱,为保护用户隐私而设置的“l米线”也形同

2、虚设。一方面客户因为长时间的站立排队透支体力和精力而疲惫不堪,另一方面工作人员也为长时间遭受众多客户的围绕而不胜其烦,影响了服务质量。因此,改善服务质量、树立良好的企业形象,解决客户劳累的排队现象、创造人性化务环境已成为急需解决的问题。长时间的站立排队使用户疲惫和厌烦,用户渴望尊重隐私,期望“个性化服务”,只排一个队,只接受“一对一服务”。对服务部门来讲,使用排队机是提高服务质量,提升服务形象,吸引顾客的有利措施。随着信息技术的突飞猛进,智能排队管理系统应运而生。智能排队管理系统是一种综合运用计算机技术、网络技术、多媒体技术、通信控制技术等的高新技术产品,此系统完全模拟人群的排队过程,实现了计

3、算机系统代替客户进行排队的过程曰。使用排队系统后,用户在票号机上取票后,在休息区舒适地等待,听到呼叫后才去对应的窗口办理事务,服务人员面对一个安静的环境,面对一个客户,可以专心办理业务,提高了工作效率。我国人口众多 ,办事排队一直是一个令人头痛的问题. 现今 ,随着服务行业业务种类的细化和增加 ,服务内容和工作量加大 ,这个问题变得尤为突出. 嘈杂、无序、不公平、不合理、低效等一直是排队中困扰顾客和服务人员的问题. 电子排队管理系统很好地解决了这些问题 ,可以广泛地应用于银行、 医院等窗口服务单位. 银行自动叫号系统就是电子排队管理统的一种 ,是针对银行服务窗口的特点而设计的.这里以atmel

4、 公司的at89c51单片机为核心, 设计了一个简单的把客户与服务机构相结合的主从机排队叫号系统。模拟排队叫号管理,科学地处理各种排队情况,操作简便,控制灵活,显示清晰,制作成本低,性价比较高。1.2 课题研究的目的和意义设计本课题能够让我在所学的微型计算机原理及接口技术课程、单片机课程的基础上实现对实际问题的分析、研究的能力和具有初步解决此类问题的能力。通过本课题的完成,能够对现代生活中的智能化过程控制技术有着进一步的了解和熟悉,并为今后从事工业控制领域的相关工作提供帮助。由于当今各行各业的信息化、智能化建设越来越普及,整个社会对各个行业的办事效率的要求越来越高,尤其是服务性行业,既要满足被

5、服务人的服务需求,又要提高服务质量,提高服务效率,例如医院门诊、银行业务等。现在人们不仅仅要求服务机构满足业务上的需要,还要求尽量减少人们的等待时间,而服务机构本身由于竞争的需要,也要求提高其办事效率和服务的形象。而这些窗口服务的排队现象在所难免,为了在排队时减少办事人的办事时间,为人们创造一个良好的环境,排队系统应运而生。1.3 国内外现状及其水平排队技术的应用是体现了科技以人为本的需要,是全社会文明发展的产物,也是人类文明发展的必然趋势。排队技术最早出现在欧美等西方国家,开始的排队系统仅限于工作人员的人工呼叫,随着现代技术的不断发展特别是计算机技术的应用,使排队技术的发展也突飞猛进,目前己

6、具备多种功能如乐音提示、语音合成呼叫(voice一calling);呼叫终端(operation terminal);以柜台显示(counter display)和综合显示(main display)为主的各种数码管显示、lcd显示、led显示、pdp显示;号码发放也由取号机自动打印(ticket dispenser)到触摸屏查询取号、按键取号、特殊识别取号等等。排队技术产品的出现彻底改变了以前许多需要长时间排队场所的无序模式,也被越来越多的行业所采用,以提高管理水平和自身竞争力。在我国,排队产品概念的引进时间也不长,特别是在中国加入wto以后,大批国人走出国门,将很多优秀和先进的服务方法、理

7、念带回国内。“排队技术”也随之被引进国内,并在我国特有的高速经济发展的环境里得到迅速的普及和应用。客户对排队系统的使用也逐渐习惯,并乐于接受131。我国的排队技术产品也经由1998年-2001年的起步期、2001-2003年的发展期、到现阶段的高速发展期,市场也逐渐成熟,逐渐生产出多种适应我国国清的排队系统产品,并具有应用领域广、工作流程复杂、综合技术要求高的等特点。随着计算机技术与通信技术、电子技术等飞速发展,智能排队系统的功能与结构也日益完善和丰富。目前,市场上的智能排队系统除了已经实现最基本的功能,如自动根据客户选择的服务类型打印票号、通过计算机自动分流排队、呼叫与保留重呼等,还发展了许

8、多增值功能,如web上网、员工安排计划、预约管理、高端客户识别、窗口业务分析、员工业务考核等,同时具有延伸和扩展功能,其服务功能也由单纯的优化服务环境和客户秩序管理,渐渐渗透到使用者的服务系统管理之中,成为使用机构行之有效的辅助管理与服务手段,比如可与相关的行业软件及数据库连接,便于对各个窗口服务情况进行统计管理。在排队系统的组网形式方面,随着计算机技术与通信技术的飞速发展,智能排队管理系统己在有线方式的基础_l发展到了无线排队系统,无线方式较之有线方式具有不受环境影响、安装调试方便、系统稳定可靠等优点,缺点是成本较高。我国是一个人口大国,随着经济发展速度的加快,大量的用户越来越多的光顾金融、

9、电信、医疗、政府办事大厅等场所,使得窗口服务的快捷和舒适越来越被人们所重视。随着精神文明与物质文明的进一步提高,电子排队技术必将为更多的用户所接受,并由日常工作中的辅助设备逐渐成为必备的设施之一,人们期待低成本、功能完善、可靠性高的排队管理系统来使工作和生活变得轻松、和谐。1.4 课题研究内容智能排队叫号系统主要分为两个大部分:主机和从机。其中主机部分要实现由从机的排队按键决定已排队人数;在已知已排队人数的前提下由按键k1/k2/k3/k4分别代表4个不同的窗口所叫到的号码;显示剩余的排队人数有waiting键。由单片机最小系统、lcd数码显示器、蜂鸣器、服务机构按键和atmel 公司的at8

10、9c51基本芯片。从机部分比较主机而言简单些,只要完成客户取号的功能。相对主机而言少了蜂鸣器和按键数。从机主要实现的是客户端的排队顺序记录,限制排队上限并传送信息给主机。在主从机任务分工明确的条件下实现以上内容,利用proteus仿真和keil编译完成软硬件设计和系统仿真。第2章 系统设计2.1设计任务和要求本设计的主要任务是分别利用客户端使用一个从机排队,服务机构使用一个主机来管理从机的排队信息。能按显示出排队的顺序,达到10人是停止排队;分别有4个办理业务的窗口;按键控制芯片显示叫到的人排队号码,并配有蜂鸣器发出声音加以提示;排队是否空或已满,空、满都在lcd上显示相关字样;在服务机构端可

11、按键显示剩余排队人数等信息1。 (1) 设计任务主要利用单片机at89c51芯片和lm016l显示器,来完成一个主从机分别管理排队和叫号的系统。具体要求如下: 主机:通过按键来完成叫号的窗口,由数码管显示“*号码到*窗口办理业务”,发出蜂鸣声“叮咚”用于提示客户,并可显示排队剩余人数;还提供统计排队剩余人数在lcdlm016l显示器显示。 从机:通过按键依次加1完成取号,由数码管显示当前客户在排队中的位置。最大 的排队人数是10人,当排队人数超过10时,显示排队已满,并停止排队。(2) 设计要求采用按键来对显示器和蜂鸣器的控制;完成取号、叫号功能,同时叫号按键外接有源蜂鸣器实现提示客户的作用2

12、.2方案比较排队技术在国内外都已经达到相当智能的水平。智能排队叫号系统有我了解的基本三种方案:都是基于atmel 公司生产51系列单片机芯片,第一种是基于at89c51单片机为核心由主从机的按键控制、数码显示和蜂鸣器提示音综合设计;第二种是基于 at89c52单片机为核心通过stc89c52单片机直接扩展的独立键盘,完成排队取号流程(本系统取号、叫号都是直接利用系统的中断0按键控制),单片机控制数码管显示排队等待情况,控制蜂鸣器发声完成叫号功能。方案一系统采用如图2.1所示的主要硬件电路,运用串行通信原理通过按键给计数器脉冲,达到计数+1和销号-1的功能,并通过译码器驱动数码管显示,完成取号、

13、叫号功能,同时叫号按键外接有源蜂鸣器实现提示客户的作用。在选用我们常用单片机芯片at89c51和数码显示管lm016l,运用较简单的延时和循环c语言程序设计来实现。这样设计可以使客户的视觉和听觉都得到相应的信息提示。图 2.1 方案一系统方框图方案二系统采用如2.2所示的电路,通过stc89c52单片机直接扩展的独立键盘,完成排队取号流程(本系统取号、叫号都是直接利用系统的中断0按键控制),单片机控制数码管显示排队等待情况,控制蜂鸣器发声完成叫号功能。系统采用stc89c52单片机完成整个系统的控制流程。从机通过单片机的中断0按键,当系统检测到按下时完成取号功能。主机同样通过单片机的中断0按键

14、,当系统检测到按下时完成叫号功能。运用的芯片和程序相对较为复杂,不易实现。图 1.2 方案二系统方框图方案三系统采用如图2.3所示的电路,通过按键给计数器脉冲,并通过译码器驱动数码管显示,完成取号、叫号功能,同时叫号按键外接有源蜂鸣器实现提示客户的作用。图2.3方案三系统方框图方案一通过综合使用计数器、译码器、数码管为一体的数码显示管10lm016l。可以较好的实现排队叫号的基本功能,而且在客户端和服务机构两方面都能很方便的使用和控制,利用串行通信原理,由简单的51单片机芯片实现,达到复杂问题简单化的目的,是设计理论的趋势;方案二的电路设计相对而言复杂,可操作性不强,故不采用;方案三通过综合使

15、用计数器、译码器,数码管,可以较好的实现排队叫号的基本功能,但需要较多的硬件电路,实现复杂。综合各条件从简单实现考虑,我选择方案一。第3章 硬件介绍3.1单片机概述及其发展趋势单片机2也被称作“单片微型计算机”、“微控制器”、“嵌入式微控制器”。单片机一词最初是源于“single chip microcomputer”,简称scm。随着scm在技术上、体系结构上不断扩展其控制功能,单片机已不能用“单片微型计算机”来表达其内涵。国际上逐渐采用“mcu”(micro controller unit)来代替,形成了单片机界公认的、最终统一的名词。为了与国际接轨,以后应将中文“单片机”一词和“mcu”

16、唯一对应解释。在国内因为“单片机”一词已约定俗成,故而可继续沿用。目前,单片机正朝着高性能和多品种方向发展,今后单片机的发展趋势将是进一步向着cmos化、低功耗化、低电压化、低噪声与高可靠性、大容量化、高性能化、小容量、低价格化、外围电路内装化和串行扩展技术。随着半导体集成工艺的不断发展,单片机的集成度将更高、体积将更小和功能将更强3。3.2 at89c51单片机芯片在当今科学技术高速发达的世界,运用机器来代替人的事件越来越多,常见的是电脑控制。如排队管理系统采用有自主产权的网络版软件控制,软件功分四大模块,触摸屏取票软件排队控制软件排队管理软件和大屏幕led编辑和显示软件。完成系统的控制设置

17、调度统计和报表打印决策功能。在很多偏远或者成本较为低廉业务机构时,运用庞大的排队管理系统显得很不经济。所以我的设计是针对简单容易实现、器件廉价且有必要的提示功能即可。在实现功能用到at89c514,此芯片是美国atmel公司生产的低电压,高性能的cmos8位单片机片内4kbytes的可反复擦写的只读程序存储器(perom)和128bytes的随机存储器(ram),器件采用atmel公司的高密度、非易失存储技术生产,兼容标准mcs-51指令系统,片内置通用8位中央处理器(cpu)和flash存储单元,功能强大。at89c51单片机可为你提供许多高性价的应用场合,可灵活的应用于各种控制领域5。其图

18、如3.1。 图 3.1 at89c51芯片主要性能参数7:与mcs-51产品指令系统的全兼容 ;4k字节可重擦写flash闪速存储器;1000次可擦写周期;全静态操作:0hz-24mhz;三级加密程序存储器;1288字节内部ram ;32个可编程i/o口线;2个16位定时/计数器;6个中断源;可编程串行uart通道;低功耗空闲和掉电模式。用到的主要功能9引脚说明:(1)时钟引脚:连接时钟电路。xtal1(19脚):输入引脚,xtal2(18脚):输出引脚。(2)复位引脚:连接复位电路。rst/vpd(9脚):复位引脚(3)输入输出口引脚:p0口:i/o双向口。作输入口时,应先软件置“ 1”,

19、p0内部没有上拉电阻。所以必要时需要在每个引脚外接5.1k左右上拉电阻到电源。p1口:i/o双向口。作输入口时,应先软件置“ 1”。p2口:i/o双向口。作输入口时,应先软件置“ 1”。p3口:i/o双向口。作输入口时,应先软件置“ 1”。(4)xtal1是片内振荡器的反相放大器输入端,xtal2则是输出端,使用外部振荡器时,外部振荡信号应直接加到xtal1,而xtal2悬空(中国单片机网特别声明:有些文章把xtal1、xtal2的功能正好说反了。而我们这里的说法绝对是正确的)。内部方式时,时钟发生器对振荡脉冲二分频,如晶振为12mhz,时钟频率就为6mhz。晶振的频率可以在1mhz-24mh

20、z内选择。电容取20pf左右。外部晶振x1、x2分别与晶体两端相连接。当使用外部振荡器时,外部振荡信号应直接加到xtal1,而xtal2悬空。(5)rxd 和txd 引脚。他们是at89c51单片机芯片串行口。51系列单片机上有一个通用异步接收/发送器uart,通过引脚rxdp3.0和txdp3.1可与外部电路进行全双工的串行异步通信,发送数据时由txd端送出,接收时数据由rxd端输入。3.3液晶模块lm016llcd(liquid crystal display)为液晶显示器,它一般不会单独使用,而是将lcd面板、驱动与控制电路组合成lcd模块(1iquid crystal display

21、moulde),简称为lcm)来使用。lcm是一种很省电的显示设备,常被应用在数字或微处理器控制的系统,做为简易的人机接口,但人们一般还是习惯称之为lcd显示器。最常见的有如计算器、电子表、数字万用表、电子游戏机等,显示的主要是数字、专用符号和固定图形,因为是属段式显示,显示内容就无法多变。 lcd显示器的特点:造价低廉、应用广泛、体积轻薄、耗电微小、被动发光(本身不发光,是靠反射来自于环境的入射光进行工作的,因此需安装背光板,这一点不同于led显示器)、接口不便(不适合用焊接方式把显示屏连接到印刷电路板上,因此这类产品的模块化趋势非常明显)。随着大量电子仪器、设备的智能化,并且普遍地采用人机

22、交互方式,需要能够显示更为丰富的信息和通用性较强的显示器,而点阵式lcd显示器能够满足这些要求,同时用大规模专用集成电路作为点阵lcd控制驱动,使用者仅仅直接送入数据和指令可实现所需的显示。这种由lcd 板、pcb 板、控制驱动电路组成的单元叫做点阵液晶显示模块( dot matric lcd module )。可供选用的图形液晶显示模块lm3229和数字液晶显示模块lm016l。lm3229是128*240点阵的图形液晶显示器,核心部件是控制t6963c,还有行列驱动电路、8k显示rom、液晶面板和电源电路。可用于单片机控制的汉字显示系统。但是基本用于选址编程,c语言和at89c51单片机较

23、难实现,故使用简单的数字液晶显示模块lm016l。液晶模块lm016l的结构及功能简介lm016l液晶模块采用hd44780控制器,hd44780具有简单而功能较强的指令集,可以实现字符移动,闪烁等功能,lm016l与单片机mcu通讯可采用8位或4位并行传输两种方式,hd44780控制器由两个8位寄存器,指令寄存器(ir)和数据寄存器(dr)忙标志(bf),显示数ram(ddram),字符发生器roma(cgorom)字符发生器ram(cgram),地址计数器ram(ac)。ir用于寄存指令码,只能写入不能读出,dr用于寄存数据,数据由内部操作自动写入ddram和cgram,或者暂存从ddra

24、m和cgram读出的数据,bf为1时,液晶模块处于内部模式,不响应外部操作指令和接受数据,ddtam用来存储显示的字符,能存储80个字符码,cgrom由8位字符码生成5*7点阵字符160中和5*10点阵字符32种8位字符编码和字符的对应关系。lm016l液晶模块图如3.2。图 3.2lm016l液晶显示芯片引脚功能说明如下:1、1号vss:一般接地。3号vdd:液晶显示器对比度调整端,接正电源时对比度最弱,接地电源时对比度最高(对比度过高时会产生“鬼影”,使用时可以通过一个10k的电位器调整对比度)。2、2号vdd:接电源(+5v)3、4号rs:rs为寄存器选择,高电平1时选择数据寄存器、低电

25、平0时选择指令寄存器。5号r/w:r/w为读写信号线,高电平(1)时进行读操作,低电平(0)时进行写操作。6号e:e(或en)端为使能(enable)端,下降沿使能。4、7号db0:底4位三态、 双向数据总线 0位(最低位)。8、9、10号引脚:底4位三态、 双向数据总线 1位。11、12、13号引脚:高4位三态、 双向数据总线 4位。14号db7:高4位三态、 双向数据总线 7位(最高位)(也是busy flang)。5、vcc(15脚)和地线gnd(16脚)。第4章 系统硬件设计与实现4.1总体设计本智能排队叫号系统这一课题,其具体要求和功能:完全模拟人群排队过程,通过取号、进队、排队等待

26、、叫号服务等功能代替人们站队,实现机器自动代替人排队的过程。在大厅明显处放置一台主从机,顾客来到后按“取号”键,从机自动排号并在显示器上显示你在队列中的位置;顾客根据显示器上的序号与等待人数,可选择在大厅休息处休息或办别的事,当某窗口号显示顾客序号,同时音响提示音响起时,该顾客便可前往相应窗口接受“一对一”的服务。每位窗口工作人员使用蜂鸣器接受主机命令,可按键受理下一位序号客户业务,每服务完一位顾客后再按键,呼叫器上的号码自动跳到下一个序号受理序号,同时此号码显示在窗口显示屏上显示并用蜂鸣提示,以提示顾客前来接受服务。总体设计框图如下图4.1硬件设计总体框图所示。图 4.1硬件设计总体框图综合

27、以上情况,我们采用上位单片机(主机)实现综合管理和控制,将蜂鸣器模块、主要按键模块、显示器模块等集成在主机内。下位从机包括一个按键模块和窗口显示模块,这些设备相互独立,均由at89c51单片机芯片控制。通过按键k0传送数据到主机联系,主机接受从机发送来的命令和数据及作出相应的显示,操作简单并有lcdlm016l显示器显示、蜂鸣器与窗口显示器一一对应,使用时将用于设置窗口号的拨码开关拨到相应位置即可。用at89c51单片机芯片、独立按键叫号(顾客使用)、独立按键(代表四个窗口营业员控制端)、无源蜂鸣器(起到发出提示音的作用)、lcdlm016l显示信息以及相应的辅助外围电路部分 。4.2硬件电路

28、的基本组成单片机at89c51、6m晶震、1nf电容、22uf/10v电容、10k和100电阻、共阳极数码显示管、按键、蜂鸣器、与门。4.3主要电路设计图4.2是主机部分,实现的功能是服务机构对排队的智能管理,主要包含:窗口“叮咚”声提示叫号,可显示统计剩余排队人数,复位insert。图4. 2 主机部分 图4.3是从机部分,实现的功能是客户按键取号,即为在按键k0依次加1取号。图4. 3从机部分4.4功能部分电路设计在主从机的设计中的各部分功能模块如下:(1)单片机at89c51的最小系统电路4。包括时钟振荡电路、复位电路两个部分。图4.4即为at89c51单片机的最小系统结构图。图 4.4

29、 单片机最小系统 在at89c51中有一个构成内部震荡器的高增益反向放大器,引脚xtal1和xtal2分别是该放大器的输入端和输出端。这个放大器与作为反馈元件的片外石英或陶瓷震荡器一起构成自激震荡器震荡电路。外接石英晶体(或陶瓷震荡器)及电容c1、c2接在放大器的震荡回路中构成并联震荡电路。对外接电容c1、c2虽然没有非常严格的要求,但电容的大小会轻微影响震荡频率的高低、震荡工作的稳定性、起震的难易程序及温度稳定性,如果使用石英晶体,推荐使用30pf10pf,而如果使用陶瓷谐振器建议选择40pf10pf。下图4.5即为本实验用到的外部震荡电路图 4.5 外部震荡电路复位电路中采用手动按键产生复

30、位信号,完成单片机启动,确定单片机的初始状态。单片机要复位,本质上是在其reset脚上保持一定时间的高电平,单片机检测到这个电平保持时间大于它要求的时间就会自动复位。通常在单片机工作出现混乱或“死机”时,使用手动复位可实现单片机“重启”。它们是单片机进行正常工作所必需的部分。rst/vpd(9脚)复位信号时钟电路工作后,在引脚上出现两个机器周期的高电平,芯片内部进行初始复位,复位后片内存储器的状态如表所示,p1p3口输出高电平,初始值07h写入堆栈指针sp、清0程序计数器pc和其余特殊功能寄存器,但始终不影响片内ram状态,只要该引脚保持高电平,89c51将循环复位,rat/vpd从高电平到低

31、电平单片机将从0号单元开始执行程序,另外该引脚还具有复用功能,只要将vpd接+5v备用电源,一旦vcc电位突然降低或断电,能保护片内ram中的信息不丢失,恢复电后能正常工作。at89c81通常采用上电自动复位和开关手动复位,我们采用的是手动复位开关如图4.6手动开关所示。手动开关未按下之前,电容正极处于家电状态,当按键按下去后,vcc与gnd导通,电容放电,从而实现放电。 图4.6 手动开关(2)lcdlm016l数码14显示电路。在数字测量仪表和各种数字系统中,都需要将数字量直观的显示出来,一方面供人们直接读取测量和运算的结果;另一方面用于监视数字系统的工作情况。因此,数字显示电路是许多数字

32、设备不可缺少的部分。数字显示电路通常由译码器、驱动器和显示器等部分组成,如图4.7显示器原理所示。 图4.7 显示器原理在本次设计中主要由lm016l16数码显示管及排阻构成的显示电路部分。p0口是一个三态双向口,除了高低态以外还有一个高阻态,如果不接上拉电阻,当端口处于高电平1的状态下,实际上端口对地、对vcc电阻都是无穷大,即本质上是不确定状态,因此需要上拉电阻respack-8。p2口为一个内部上拉电阻的8位双向i/o口,p2口缓冲器可接收,输出4个ttl门电流,当p2口被写“1”时,其管脚被内部上拉电阻拉高,且作为输入,故不要再加上拉电阻。由lm016l数码显示管的引脚功能可知其电器连

33、接如图4.8 lm016l显示部分所示。在排号按键k0操作的时候,其显示的是“your no. is *!”并按键依次+1;在排号按键k1/k2/k3/k4操作的时候,其显示的是“no.* come to no.* window,please!”;按键waiting时,显示的是剩余队列人数;按键insert时, 其显示是“insert”。 图 4.8 lm016l显示部分 (3)按键部分电路。由与门和开关按键组成,由其完成的功能设计硬件原理如图4.9按键部分所示。按键接口都主要在p1输入口处按键输入,运用按键中断的方式达到队列排号的取号和叫号的功能。在取号操作由从机的k0键实现。初始化内部程序

34、,使计数从01开始,当按键次数小于10时,由循环加1,当取号等于10时,停止排队。叫号主机的按键设计就要复杂一点,采用的中断要和与门一起完成。4个独立的窗口叫号按键实时的取得输入排在最前的号码,当4个窗口中任意一个窗口已经使用了该号码后,就进行销号处理。此时中断中的号码通过与门消号-1和延时的效果。另外的功能按键与其设计原理基本一致。图 4.9 按键部分 (4)蜂鸣器电路部分,如图4.10蜂鸣器部分所示。在按键k1/k2/k3/k4操作的时候,其蜂鸣器会发出提示顾客的提示音。本设计运用延时程序控制接蜂鸣器的端口输出。图 4.10蜂鸣器部分(5)txd串行发送和rxd串行接收电路13。按照通信方

35、式,可将数据传输线路分为单工、半双工、全双工三种通信方式。在单工方式下,通信线的一端连接发送器,另一端连接接收器,它们形成单向连接,只允许数据按照一个固定的方向传送;在半双工方式下,系统中的每个通信设备都由一个发送器和一个接收器组成,通过收发开关接到通信线路上,数据可以双向传输,但是不能同时在两个方向上同时传送,即每次只能一个站发送,另一个接收,其收发开关并不是实际的物理开关,而是由软件控制的电子开关;全双工通信系统的每一端都包含发送器和接收器,数据可以同时在两个方向上传送。尽管许多串行通信接口电路具有全双工通信能力,在实际应用中,由于半双工方式简单、实用,因而大多数情况采用半双工方式。本设计

36、的传送数据是在半双工方式下运行的,两at89c51芯片的串行发送和串行接收端口对应连接。在原理图上较为清晰的看到,不在叙述。 第5章 系统软件设计5.1 排队系统工作流程及其对应决策分析(1)取号从机的设计14。取号从机的事件发生概率服从随机按先来先排的公平排队,由于只有一台专门的从机来负责,可以简单其流程,而在逻辑上服从队列的先入先出算法。通过单片机的中断k0按键,当系统检测到按下时完成取号功能。队列的上限是10人,当队列中排一人时,队列加1,直到满队。主要的流程如下图 5.1 从机流程图所示。 图 5.1 从机流程图(2)叫号主机的设计。主机初始化后,主机通过单片机的中断按键,当系统检测到

37、按下时完成相应功能。接收从机发送来的信息,若队列为空显示“hello!”;若队列未满,则在队列取号按键的时候调用叫号程序实现“* is left”的字样;若队列已满,则重复显示“11 is left”。 如有窗口应答并命令时,运用延时程序控制蜂鸣器的运作,4个独立的按键代表4个窗口实现显示叫号两用功能。可以根据统计程序来统计此队列中还有多少人在排队等待中。总的流程是从机将最前顾客号码发送到该主机,主机接收后可以窗口显示并提示音呼叫、统计剩余人数、重置排队等功能。主要的流程如下图 5.2主机流程图所示。 图 5.2主机流程图5.2 主要子程序流程图(1)蜂鸣器子程序。蜂鸣器子程序的主要功能是运用

38、延时函数实现不同频率的声音输出。序中主要的结构流程如下图5.3蜂鸣器子程序所示。图 5.3蜂鸣器子程序(2)在lcd显示子程序。程序中主要的结构流程如下图5.4lcd显示流程图所示。 图 5.4lcd显示流程图(3)窗口消号处理子程序。利用与门和循环左移的方式实现器消号的功能,其主要的流程结构如下图 5.5窗口消号处理子程序所示。 图 5.5窗口消号处理子程序第6章 仿真结果与分析6.1 原理图绘制主要利用at89c51单片机芯片在proteus仿真平台上绘制原理图。其用到的元器件有:and、and-5、at89c51、button、cap、crystal、lm016l、res、respack

39、-8、souner。原理图绘制如附录总体设计图所示。6.2 程序加载 原理图绘制完成后是程序的加载和编译11。本设计在keil uvision4编译器中来实现程序的编译。使用汇编语言或c语言要使用编译器,以便把写好的程序编译为机器码,才能把hex可执行文件写入单片机内。keil uvision是众多单片机应用开发软件中最优秀的软件之一,它支持众多不同公司的mcs51架构的芯片,甚至arm,它集编辑,编译,仿真等于一体,它的界面和常用的微软vc+的界面相似,界面友好,易学易用,在调试程序,软件仿真方面也有很强大的功能。(1) 程序编译 启动keil,选择project-new project,在

40、弹出的对话框中输入工程的名字,点击保存;选择atmel公司的at89c51单片机。 点击file,在打开列表选项中选择新建,在打开的窗口内,按照设计的要求,根据程序流程图,编写程序,点击保存,保存文件类型为以.c为后缀的文件。文件名为与所建工程名相同。在本设计中需要加载两个程序主机子程序和从机子程序,输入新建程序。 在source group 1上点击右键,选择“add files to group source group 1 ”,把所有的源文件加进来。点击project-build target或者使用快捷键f7,编译工程。当“build output”窗口中提示*.c - 0 error

41、(s), 0 warning(s).时,则程序编译成功。此时要生成.hex文件,右击 target 1,选择options for targettarget 1或者按f7,选择outputz中勾选create .hex file,完成即可。在本设计中需要加载两个.hex文件。 (2) 程序加载在编辑环境中双击at89c51,在弹出的对话框中将编译生成可执行文件1.hex加载进芯片中,设单片机的时钟工作频率为12mhz。6.3 系统仿真 当点击protues软件的全速运行按钮时12,软件提示没有错误,并得到如图6.1所示的仿真图。我们可以再proteus中仿真人们在排队时的几种必要的过程:取号、

42、叫号、蜂鸣、显示、统计。 图6.1 运行时结果图(1)当点击全速运行按钮,将出现如下图6.2所示仿真结果,表示的是判断队列为空时主从机运行的结果,没有人进行排队。 图6.2 运行时结果图(2)当有人进行排队时,按k0键中的排队输入号码,即是现实中排在队伍中等待的模拟部分,在此过程中你的顺序已经在队列中确定,此时你可以节省时间从事另外的某些事情,最大排队数是10。当排队数达到最大时,从机部分显示的是“the queue is full ,please waiting!”,(这队列已经满了,请等一等)而主机部分的号码显示为“* is left”。如图6.3所示。 图6.3 按k0键2次时的结果(3

43、)当某窗口需要叫号时,可以按k1/k2/k3/k4键代表不同的独立窗口并有提示音,即相当于模拟人排在队伍中等待窗口内的呼叫。由按键中断方式实现lcd数码显示功能,由延时程序控制蜂鸣器的提示音。达到双重保险效果:看显示器的“no.(排队号码)come to no(按键代表的窗口)window,please”,(请几号到几号窗口来),同时有“叮咚”加以提示客户,这样确保不会因不留意二错过机会。如图6.4所示。 图6.4按k1键2次时的结果(4)当你在窗口前想要了解你所在的队伍中还剩余多少人要办理业务时,即在人们排队时焦急等待的在计算何时轮到自己时的现象。可按waiting键,运用窗口消号处理和键盘

44、中断来处理此项功能。即为显示还有多少人在排队等待中,其lcd数码显示为共办理了几人业务。 如图6.5所示为排队6人,1号窗口已经办理了前2人的业务,按waiting键时,lcd显示的是“04 is left”(剩余4人)。 图6.5按waiting键的结果总结本设计论文系统描述了应用atmel公司的at89c51单片机及其外围电路实现排队叫号系统。通过这次的毕业设计,使我对单片机有了更深的认识,从理论和实践上都得到了很大的提高,所以这次任务的完成是我学到了很多东西。首先,丰富了自己的知识面,学到了以前没能学通的东西,具体了解了怎样去完成一个电路的设计:从流程图、硬件电路图、软件设计到编译仿真一

45、整套东西。本文讨论了排队按键模块,语音提示呼叫模块,显示模块等主要功能模块。期中重点和难点是实现排队的+1程序、叫号按键-1程序与相应的显示和按键中断设计。从基本要实现的方案制定,再到硬件电路的选择,到制作原理电路,最后进行程序调试的4个阶段的设计。在此期间我遇到很多困难,开始的时候再按键控制方面总是不能实现理想的结果,询问了同学是因为没有考虑到at89c51芯片内存片内存储只有128b的限制问题;还有在按键控制显示器的显示时不能正常显示,这个花了较长的时间来解决。在一次一次的失败尝试中迫使我不得不更加努力的学习深入的内容。从毕业设计中,学到了单片机at89c51的内部结构及其工作原理,了解了

46、时钟电路和控制电路的工作原理,还有数码管的工作原理,巩固了c语言的使用能力,提高了自己动手的能力,学到了很多经验,并且提高了自己分析问题的能力和创新能力,得到了理论联系实际的机会,做出了成果。使自己在硬件设计方面树立了信心,为以后从事这方面的工作打好了基础,这也是这次毕业设计的最大收获。通过本次毕业设计,使我学到了许多书本上无法学到的知识,也使我深刻体会到单片机技术应用领域的广泛。不仅让我对学过的单片机知识有了很多的巩固,同时也对单片机这一门课程产生了更大的兴趣。本设计涉及到单片机原理及应用、模拟电子技术等学科。让我对专业知识有了更深的理解。我相信毕业设计的制作过程将在我以后的工作和生活中影响

47、良多。参考文献1 康万新.毕业设计指导及案例剖析-应用电子技术方向. 清华大学出版社.2007.2 刘湘涛、江世明编著.单片机原理与应用电子工业出版社,2006年8月.3 吴金戌、沈庆阳、郭庭吉编著.8051单片机实践与应用清华大学出版社,2002年9月.4 童诗白.模拟电子技术基础第三版m. 高等教育出版社,2001.1.5 张靖武.单片机系统的protuse设计与仿真电子工业出版社,2007.4.6 张克农.数字电子技术基础高等教育出版社,2003.4.7 卫晓娟.蒋兆远.基于at89c51的数据采集通信系统设计j 工业控制计算机, 2004,(12): 5-6.8 ki. net/.9张

48、毅刚、彭喜元、姜守达、乔立岩.新编mcs-51系列单片机应用设计哈尔滨工业大学出版社,2003.6.10于微波、林晓梅、刘俊萍.微型机算计控制系统吉林人民出版社,2002.5.11李建忠主编.单片机原理及应用西安电子科技大学出版社,2004.12杨绪东.实用电子电路精选,化工出版社,2001.5.13 m.morris mano.digital design (third education).beijing:higher educationg press,2002.14richard c.dorf.modern conctrol systermm.beijing:science publis

49、hing house,2002.15 robert w.sparks. introduction of programmable controllers m. atmel corporation.16 洪连环.徐俊仕.某飞机座舱和设备舱温度检测仪的设计j 航空制造技术, 2011,(06): 8-9.致谢实践是检验真理的唯一标准,经过几年的理论学习而这次在即将走向工作岗位的时候能将理论与实践相结合的机会来锻炼自己可谓是难得的一次提高,在此感谢学校为我们安排的这个教学环节,也感谢在此次设计过程中给与我极大帮助和理解的李老师以及同学们。论文能够顺利完成除了自己的努力外还和李菲老师的悉心指导是密不可

50、分的。从课题的选择到项目的最终完成,李菲老师给予我细心的指导和不懈的支持。在此我十分感谢老师和同学的帮助和辅导。我相信他们对于我的指导对于我今后的科研工作必将产生巨大的影响。 致谢人:雷 叶 附录附录主机程序清单#include #define uchar unsigned char#define uint unsigned int/*使用延时函数实现不同频率的声音输出,以后也可使用定时器*/sbit rs=p20; /1:数据输入,0:指令输入sbit rw=p21; /1: 读出,0:写入sbit e=p22; /1:有效,0:无效sbit key0=p10;sbit key1=p11;s

51、bit key2=p12;sbit key3=p13;sbit key4=p14;sbit key5=p15;sbit key6=p16;sbit key7=p17;sbit cd=p27;sbit beep=p26;sbit hold=p34;uint sev=0;uint sev1=0;uint sev2=0;uint sev3=0;uint sev4=0;uint m=0,i=0;uint rank10=0; /排队叫号存储的数组uint num=0; /窗口消的号码uint jz=0;uint lengthflag=0; /队列长度 叫一次号时+1,消一次号时-1uint num_co

52、unt=1; /排队叫的号码uchar data test=hello!; /初始显示的字符uchar data prompt1=your no.is 00!; /1062第一行显示的字符uchar data prompt2=no.00 come to no; /1062第一行显示的字符uchar data prompt3=0.window,please!; /1062第二行显示的字符uchar pdata prompt4=the queue is; /1062第一行显示的字符uchar pdata prompt5=full,please wait; /1062第二行显示的字符uchar pd

53、ata prompt6=sorry,the queue ; /1062第一行显示的字符uchar pdata prompt7=is empty!; /1062第二行显示的字符uchar data prompt8=00 is left;uchar pdata prompt9=all is 00;uchar pdata prompt10=w1 - 00;uchar pdata prompt11=w2 - 00;uchar pdata prompt12=w3 - 00;uchar pdata prompt13=w4 - 00;uchar data prompt14=insert!;void delay(int n) /延时子程序 int k,j; for(k=0;k=n;k+) for(j=

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论