《排队叫号系统设计.docx》由会员分享,可在线阅读,更多相关《排队叫号系统设计.docx(42页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。
1、题目排队叫号系统设计课题性质工程设计课题来源自拟指导教师主要内容(参数)1、该系统是一款自动的排队叫号系统,以排队抽号顺序为核心,排队者利用客户端抽号,工作人员利用叫号端叫号;2、通过显示器及时显示当前所叫号数,语音提示,提醒排队者接受服务;3、客户及时了解排队信息,可以通过显示器显示队列中排在其前面的顾客数,通过合理的程序结构来执行排队抽号;排队叫号系统主要由系统主从机、键盘电路、显示电路、语音电路等部分构成。任务要求(进度)第1-2天:熟悉课程设计任务及要求,查阅技术资料,确定设计方案。第3-4天:按照确定的方案设计单元电路。要求画出单元电路图,元件及元件参数选择要有依据,各单元电路的设计
2、要有详细论述。第5-6天:软件设计,编写程序。第7-8天:实验室调试。第9-10天:撰写课程设计报告。要求内容完整、图表清晰、文理流畅、格式规范、方案合理、设计正确,篇幅合理。主要参考资料1 夏路易石宗义Protel99se电路原理图与电路板设计教程北京:北京希望电子出版社,20042 伟福LAB6000系列单片机仿真实验系统使用说明书3 阎石数字电路技术基础(第五版)北京:高等教育出版社,2006审查意见系(教研室)主任签字:年月日目录1绪论61.1课题背景61.2课题研究的目的和意义61.3课题研究现状71.4设计目的及功能72系统需求分析与整体设计72.1确定的方案72.2系统原理图82
3、.3整体设计方案83系统硬件设计103.1主电路硬件设计113.2时钟电路123.3键盘电路133.4LED显示电路143.5LCD显示电路153.6语音提示电路174系统软件设计204.1主控软件设计204.2LED显示程序设计214.3LCD显示程序设计224.4声音系统程序设计235系统仿真实验236总结257参考文献26附录1实物图26附录2系统原理图27附录3C51源程序.281绪论1.1课题背景近年来,随着我国社会经济的持续快速发展,资金流动加快,服务行业的不断增加,加上我国政府正在努力构建和谐社会、服务性政府,大量的用户越来越频繁的光顾经融系统、电信、医疗、政府办事部门,时代的发
4、展给这些服务型机构提出了新的服务理念,也给这些行业和部门带来了巨大压力。如何解决长久以来枯燥无序的排队问题,如何加强窗口单位的服务质量,如何加强对客户及工作人员的管理,如何克服诸如顾客挑选自己熟悉的工作人员而引起的各种弊端,创造一个轻松而个性化的窗口环境,已成为公共服务部门急需解决的问题,它直接影响着企业公共形象及业务量,涉及企业根本利益。另外,传统柜台服务存在不安全隐患,偷盗密码已经不再是个别案例,多窗口的服务往往让人无所适从,客户盼望只排一个队,只接受“一对一”的个性化服务已成趋势。因此排队叫号系统应运而生,排队叫号系统是针对银行、工商、税务、通讯、政府机构等部门的大厅工作流程设计的,是利
5、用电脑的科学管理客户排队的系统,很好地解决了客户在服务机构办理业务时所遇到的各种排队、拥挤和混乱现象,为客户办理业务带来莫大的方便和愉悦。该系统基于51单片机的排队叫号系统,由取号机、客户服务窗口、大厅显示叫号和主机部分组成,有LCD大屏幕,可以显示客户被呼叫的信息,让客户知道什么时候被叫到去办理业务,另外还有语音提示客户,简单方便的实现了排队机叫号系统。它主要由主控制器、键盘、数码管显示电路、蜂鸣器电路等部分构成。系统利用单片机进行控制,通过串行通信方式传输处理数据;通过按键取号,在数码管上显示排队的号码以及当前正在等待的人数;通过按键叫号,在数码管上显示叫到的号码,由扬声器发出声音提示客户
6、。1.2 课题研究的目的和意义由于当今各行各业的信息化、智能化建设越来越健全,整个社会对各个行业的办事效率的要求越来越高。现在人们不仅仅要求福区机构满足业务上的需要,还要求尽量减少人们的等待时间,而服务机构本身有由于竞争的需要也要求提高办事效率。而这些窗口的排队现象在所难免,为了减少办事人的时间,为人们创造一个良好的环境,排队系统应运而生。1.3 课题研究现状在我国,排队产品概念的引进时间也不长,特别是加入WTO之后,大批国人走出国门,将很多优秀的服务方法、理念带回国内。派对技术也随之被引进国内,兵在我们得到普及和应用。随着计算机技术与通信技术、电子技术等的飞速发展,只能排队系统的功能仍和结构
7、也日益完善和丰富。目前,市场上的只能排队系统除了已实现的最基本的功能,如自动根据客户选择的服务类型打印票号、通过计算机自动分流排队、呼叫和保留。1.4 设置目的及功能这种现代化的高科技产品彻底解决了银行、医院等服务性企业普遍存在的站立等候,服务无序的问题,深化并完善了服务的质量。本系统采用单片机进行控制,利用数码管显示,蜂鸣器鸣叫提示的人机交互界面,模拟排队管理系统,科学地处理各种排队情况。操作简便,控制灵活,显示清晰,制作成本低,性价比较高。排队叫号系统具有以下几个基本功能:(1)取号控制:该功能是在客户进入营业厅之后,通过按键从取号机上获取自己相应的排队小票;(2)叫号控制:系统可以根据服
8、务人员按下相应的按键,通过语音呼叫提示客户到相应的窗口进行服务;(3)显示控制:该功能是通过大厅的LCD显示屏显示,客户可以直观的找到自己相应的办理窗口。2系统需求分析与整体设计2.1确定的方案排队技术在国内外都已经达到相当智能的水平。单片机在此类电子产品中得到了广泛的应用。为完成一个取号、叫号、显示分别管理排队和叫号的系统,排队叫号系统有我了解的以下两种方案:方案一系统的窗口显示结构使用数码管,客户可以通过数码管显示数字和语音提示,找到相应的办理窗口。方案二系统有窗口数码管显示和大厅液晶LCD12864显示,客户通过两种显示方式和语音提示,找到相应的办理窗口。方案一的排队叫号系统通过按键给计
9、数器脉冲,并通过译码器驱动数码管显示,完成取号、叫号功能,同时叫号按键外接有源蜂鸣器实现提示客户的作用。总体电路比较简单,采用普通的数码管显示即可。方案二的排队叫号系统以STC89C51单片机为核心,利用取号机输入排队相应信息,经单片机处理后,将信息分别输出到总屏幕LCD12864上和窗口屏幕显示,同时进行语音提示,完成排队取号流程方案一是由译码器、数码管为一体的数码显示管。电路相对简单,可以较好的实现排队叫号的基本功能,但是显示内容较少。方案二通过综合使用数码管和总屏幕LCD12864显示,可以更好的实现排队叫号的基本功能,而且在客户端和服务机构两方面都能很方便的使用和控制,利用串行通信原理
10、,由简单的51单片机芯片实现,达到复杂问题简单化的目的,是设计理论的趋势;综合各条件从简单实现考虑,我选择方案二。2.2系统原理图方案(二)的系统框图如图2.1图2.1系统框图2.3整体设计方案该系统基于51单片机的排队叫号系统,由取号机、客户服务窗口、大厅显示叫号和主机部分组成,有LCD大屏幕,可以显示客户被呼叫的信息,让客户知道什么时候被叫到去办理业务,另外还有语音提示客户,简单方便的实现了排队机叫号系统。由于当今经济快速的发展,加之各行各业的信息化、智能化建设越来越普及,快节奏的发展使得整个社会对各个行业的办事效率的要求越来越高,尤其是服务性行业,既要满足被服务人的种种服务需求,又要提高
11、行业服务的质量,提高服务的效率。随着生活质量的不断提高,人们对服务机构的要求不仅仅停留在满足业务上的需要上,而且还要求尽量减少人们的等待时间,而服务机构本身由于竞争的需要,也要求提高其办事效率和服务的形象。而这些窗口服务的排队现象在所难免,为了在排队时减少办事人的办事时间,为人们创造一个良好的环境,排队系统应运而生。本设计的总体任务是分别利用客户端使用取号机进行排队,服务机构使用一个叫号来管理取号机的排队信息。能按显示出排队的顺序;按键控制芯片显示叫到的人排队号码,并配有发出声音加以提示;在服务机构端可按键显示剩余排队人数等信息。对此,本此设计排队叫号系统具体有以下几大功能:(1)取号控制:此
12、功能是通过按键输入自己的业务类型,主机收到数据后并作出应答进行小票的打印,客户取号机上获取自己相应的排队小票;(2)叫号控制:此过程是通知客户到相应的窗口进行服务的过程,通过语音呼叫提示客户到相应的窗口进行服务;(3)显示控制:此过程是通过大厅的LCD显示屏显示,与此同时窗口也会显示相应客户号码,客户可以直观的找到自己相应的办理窗口。排队叫号系统设计的总体流程图如图2.2所示图2.2排队叫号系统流程图本系统是一种集单片机控制、串行口通信、网络通信、语音识别与处理等理论为一体的综合控制系统。系统由上位主机和下位从机组成两级控制管理体系,采用总线及串行通信协议实现分布式管理与控制。系统由一台主机和
13、若干窗口设备组成,各自独立的单片机系统通过总线组成分布式通信系统,可实现按顾客到达的先后次序,自动排号及语音提示。作为上位机的主机是整个系统的管理和控制核心,完成号码的打印、存储、分类并通过总线发送到从机,同时在LCD上显示和通过音响播放语音信息;呼叫器接受主机发送来的命令和数据及向主机送出请求,同时在LCD液晶显示屏上显示当前信息;接受主机发来的数据,显示顾客号码信息;窗口显示屏接受主机发来的数据,显示当前服务顾客号码。3系统硬件设计3.1主电路硬件设计主控电路在整个的系统中充当着最重要的角色,它在整个系统中起到了系统宏观调节的作用,首先主控电路要通过通信接收来自取号机的数据,将客户的取号存
14、入系统之中,同时主控电路还要实时接收来自服务窗口的数据。对于来自窗口的请求数据,主控芯片接收后立即处理,判断之后将对应的客户号码发送到服务窗口和大厅的显示屏及语音系统。强大的通信及数据处理就要求主控电路要有强大的处理能力,才能时刻保持整个系统的运行畅通,不会出现数据丢失或发生错误等现象。完成本次课程设计所需主控芯片有多种多样。说明如下:(1)STC89C51RC:该芯片是采用8051核的ISP在系统可编程芯片,最高工作时钟频率为80MHz,片内含8KBytes的可反复擦写1000次的Flash只读程序存储器,器件兼容标准MCS-51指令系统及80C51引脚结构,芯片内集成了通用8位中央处理器和
15、ISPFlash存储单元,具有在系统可编程特性,配合PC端的控制程序即可将用户的程序代码下载进单片机内部,省去了购买通用编程器,而且速度更快。STC89C52RC系列单片机是单时钟/机器周期(1T)的兼容8051内核单片机,是高速/低功耗的新一代8051单片机,全新的流水线/精简指令集结构,内部集成MAX810专用复位电路。(2)STC12C5410AD:宏晶公司出款的STC12C5410AD单片机,是高速/低功耗/超强抗干扰的新一代8051单片机,兼容传统的8051数据指令代码,但提高了8-10倍的速度。内部使用了MAX810专用复位电路。程序存储空间10K,片上集成512字节RAM。包含中
16、央处理器(CPU)、程序存储器(Flash)、数据存储器(SRAM)、定时计数器、UART串口、I/O接口、高速AD转换、SPI接口、PCA、看门狗及片内R/C震荡器和外部晶振体振荡电路等模块。STC89C51系列单片机具有完整的的功能模块,对89C51系列单片机有学习基础,理解使用方便,且能够完成基本的实验操作,所以本系统中主控电路采用的是STC公司出款的STC89C51单片机。STC89C51RC单片机最小系统如图3.1所示:VCCR3C310ufVCC4.7KC2104ufC430pfl-,1-J_iiiiiKEY14567KEY28KEY39LCD_CS10LCD_SID1110KMI
17、SO12JRQ1314X1C530pfP2.2VCCP2.3P2.1RSTP2.0RXD/P3.0P1.7TXD/P3.1P1.6RXAL2P1.5RXAL1P1.4INT0/P3.2P1.3INT1/P3.3P1.2T0/P3.4P1.1T1/P3.5P1.0P2.4P3.7P2.5P2.7GNDP2.6U1NRF_SCK1STC89C51RCaMOSI22827CSN26NRF_CE2524P423P322P221P120Motor19SYNC18Reset17LCD_RST16P2.715P2.6图3.1是本次设计的主体电路图,它的主体是基本的STC89C51RC单片机,外部的时钟电路和
18、复位电路,构成了一个总的系统的关于单片机的核心主体部分。3.2时钟电路RXAL2C430pfX1C530pfRXAL1图3.2时钟电路XTAL1是片内振荡器的反相放大器输入端,XTAL2则是输出端,使用外部振荡器时,外部振荡信号应直接加到XTAL1,而XTAL2悬空。内部方式时,时钟发生器对振荡脉冲二分频,如晶振为12MHz,时钟频率就为6MHz。晶振的频率可以在1MHz-24MHz内选择。电容取30PF左右。系统的时钟电路设计是采用的内部方式,即利用芯片内部的振荡电路。外接晶体谐振器以及电容C1和C2构成并联谐振电路,接在放大、器的反馈回路中。电容的大小会影响震荡器频率的高低、震荡器的稳定性
19、、起振的快速性和温度的稳定性。因此,此系统电路的晶体振荡器的值为12MHz,电容应尽可能的选择陶瓷电容,电容值约为22F。在焊接刷电路板时,晶体振荡器和电容应尽可能安装得与单片机芯片靠近,以减少寄生电容,更好地保证震荡器稳定和可靠地工作。3.3键盘电路通常,键盘有编码和非编码两种。编码键盘通过硬件电路产生被按按键的键码和一个选通脉冲。这种键盘硬件电路复杂,常不被单片机采用。非编码键盘按组成结构又可分为独立式键盘和矩阵式键盘。独立式键盘的工作过程与矩阵式键盘类似,无论是硬件结构还是软件结构都比较简单。(1)独立式键盘:每个按键占用一条I/O线,当按键数量较多时,I/O口利用率不高,但程序编制简单
20、。适用于所需按键较少的场合。(2)矩阵式键盘:电路连接复杂,但提高了I/O口的利用率,软件编程较复杂。适用于需使用大量按键的场合。通过比较,设计采用独立式键盘结构。取号按键输入电路图3.3所示VCC图3.3取号键盘电路本文的设计中提供了3个按键,分别对应3中不同的业务类型,客户在选择服务类型的时候,只需要按一下对应的按键即可完成取号过程的所有操作,简单易懂。此部分电路的按键采用了和取号按键部分相同的独立式键盘结构。叫号按键输入装置电路为两个按键,一个负责呼叫下一位客户,一个负责重复呼叫,操作简单可靠。电路如图3.4所示VCCVCCR2R310K10K图3.4叫号键盘电路3.4LED显示电路数码
21、管有共阴极和共阳极两种类型,其公共端主要进行位控制,笔画端则是进行字符控制,数码管有静态显示和动态显示两种方法,说明如下:(1)静态显示驱动:是指每个数码管的每一个段码都由单片机的I/O进行驱动,或者使用如BCD码二十进位器进行驱动。静态驱动的优点是编程简单,显示亮度高,缺点是占用I/O多,实际应用时必须增加驱动器进行驱动,增加了硬体电路的复杂性。(2)动态显示驱动:是将所有数码管的8个显示笔划a-dp的同名端连在一起,另外为每个数码管的公共极增加位元选通控制电路,位元选通由各自独立的I/O线控制,我们只要将需要显示的数码管的选通控制打开,该位元就显示出字形,没有选通的数码管就不会亮。透过分时
22、轮流控制各个LED数码管的COM端,就使各个数码管轮流受控显示。在轮流显示过程中,由于人的视觉暂留现象及发光二极体的余辉效应,好像所有数码管都在显示一样。能够节省大量的I/O口,而且功耗更低。排队叫号系统设计窗口显示采用4位LED数码管的动态显示来达到显示目的。驱动器采用SN74HC573AN,由单片机89C51的P2.0、P2.1、P2.6、P2.7来控制LED数码管的显示。数码管驱动电路如图3.5所示图3.5窗口LED显示驱动12P2.09P2.18P2.66P2.73.5 LCD显示电路大厅LCD显示为客户提供相应的的服务信息。主控电路通过通信接收来自取号的数据,将客户的取号存入系统之中
23、,同时主控电路还要实时接收来自服务窗口的数据。对于来自窗口的请求数据,主控芯片接收后立即处理,判断之后将对应的客户号码发送到大厅LCD的显示屏和服务窗口及语音系统。显示功能所需芯片有LCD12864和LCD1602。说明如下:(1)LCD1602:它是一种专门用来显示字母、数字、符号等的点阵型液晶模块。1602LCD是指显示的内容为16X2,即可以显示两行,每行16个字符液晶模块(显示字符和数字)。它由若干个5X7或者5X11等点阵字符位组成,每个点阵字符位都可以显示一个字符,每位之间有一个点距的间隔,每行之间也有间隔,起到了字符间距和行间距的作用,正因为如此所以它不能很好地显示图形(用自定义
24、CGRAM,显示效果也不好)。(2)LCD12864:带中文字库的128X64是一种具有4位/8位并行、2线或3线串行多种接口方式,内部含有国标一级、二级简体中文字库的点阵图形液晶显示模块;其显示分辨率为12864,内置8192个16*16点汉字,和128个16*8点ASCII字符集.利用该模块灵活的接口方式和简单、方便的操作指令,可构成全中文人机交互图形界面。可以显示84行1616点阵的汉字.也可完成图形显示.低电压低功耗是其又一显著特点。由该模块构成的液晶显示方案与同类型的图形点阵液晶显示模块相比,不论硬件电路结构或显示程序都要简洁得多,且该模块的价格也略低于相同点阵的图形液晶模块。芯片的
25、具体参数如图3.6所示:管脚管脚名称功能描述1VSS电源地2YDD电源正3V0LCB驱动电压输入端4RS(CS)HL并行的指令数据选择信号;串行的片选信号5RW(SID)HL并行的读写选择信号;串行的数据口6E(CLK)HL并行的使能信号;串行的同步时钟7DBO珏工数据08DB1H工数据19DB2HI数据210DB3HH数据311DB4H1数据412DB5HH数据513DB6HZL数据614DB7HZL数据715PSB(HL)HL并串行接口选择:H-并行:L一串行1(5NC空脚17RSTHL复位,低电平有效ISNC空脚19LED_A背光源正极(LED+5V)20LED_K背光源负极(LED-O
26、V)图3.6LCD12864芯片的具体参数如图3.7为LCD12864液晶显示的引脚图:9236图3.7LCD12864液晶显示的引脚图显示部分采用的是LCD12864液晶显示,因为距离客户距离很进,这样可以更加直观形象的将信息传递给每一个客户。为了更加的适应大厅显示的效果,本设计中此部分加入了LCD12864液晶显示,主要用于显示客户小票上的信息和一下必要的设置菜单。具体的驱动电路如图3.8所示:DW1l10K2019181716151413121110987654321KLCS_DCL-JVCCTSR_DCLP2图3.812864液晶驱动电路LCD12864液晶可以显示汉字、字母、数字符号
27、等,这样就可以利用液晶同时显示4个客户的信息,分别占据一行,这儿样客户就可以提前看到自己被呼叫的相关信息。3.6 语音提示电路语音电路部分主要部件为语音芯片。ISD4004系列语音芯片ISD4004-08、ISD4004-10、ISD4004-12、ISD4004-16共4款不同的芯片,每种芯片的具体参数如下图3.9所示型号存情时间分)可分段数信息为辨率(至秒采#率(HZ)瀛器宽带(HZ)控制码十地址位控制指令宇节数(8)ISD4(XH-088.024OT2008.0K3-7KS+163ISMXM-1O10.024002506K2.7K2X63ISD4001212.02400300工3K工3鼠
28、8+163ISD4004-1616.0J4OT400-.0K1.7K8+163图3.9ISD4004系列芯片参数本设计中采用的是ISD4004-08芯片,8分钟即可满足设计的需求,ISD4004语音芯片由美国ISD公司推出,芯片内部高度的集成化,振荡器、滤波器、除噪音、防大功率等均集于一体,仅仅需要几个外围电路就可以构成一个很强大的语音录制播放的系统。通信方式采用SPI串行接口输入。采样频率可分为8、6.4、5.3、4KHZ,与所能录制的时间成反比,与音质成正比。芯片存储器内的数据更是可以保存100年在短点的情况下,而且可以录制10次左右而不损坏。市场上很多的电子产品均在采用此款芯片。电源:(
29、VCCA,VCCD):为使噪声最小,芯片的模拟和数字电路使用不同的电源总线,并且分别引到外封装的不同管脚上,模拟和数字电源端最好分别走线,尽可能在靠近供电端处相连,而去耦电容应尽量靠近器件。地线:(VSSA,VSSD):芯片内部的模拟和数字电路也使用不同的地线。同相模拟输入(N+):这是录音信号的同相输入端。输入放大器可用单端或差分驱动。单端输入时,信号由耦合电容输入,最大幅度为峰峰值32mV,耦合电容和本端的3K电阻输入阻抗决定了芯片频带的低端截止频率。差分驱动时,信号最大幅度为峰峰值16mV,为ISD33000系列相同。反相模拟输入(IN-):差分驱动时,这是录音信号的反相输入端。信号通过
30、耦合电容输入,最大幅度为峰峰值16mV音频输出(OUT):提供音频输出,可驱动5K的负载。片选(SS):此端为低,即向该ISD4004芯片发送指令,两条指令之间为高电平。串行输入(MOSI):此端为串行输入端,主控制器应在串行时钟上升沿之前半个周期将数据放到本端,供ISD输入。串行输出(MISO):ISD的串行输出端。ISD未选中时,本端呈高阻态。串行时钟(SCLK):ISD的时钟输入端,由主控制器产生,用于同步MOSI和MISO的数据传输。数据在SCLK上升沿锁存到ISD,在下降沿移出ISD。中断(/INT):本端为漏极开路输出。ISD在任何操作(包括快进)中检测到EOM或OVF时,本端变低
31、并保持。中断状态在下一个SPI周期开始时清除。中断状态也可用RINT指令读取。OVF标志指示ISD的录、放操作已到达存储器的未尾。EOM标志只在放音中检测到内部的EOM标志时,此状态位才置1。行地址时钟(RAC):漏极开路输出。每个RAC周期表示ISD存储器的操作进行了一行(ISD4004系列中的存贮器共2400行)。该信号175ms保持高电平,低电平为25ms。快进模式下,RAC的218.75s是高电平,31.25s为低电平。该端可用于存储管理技术。外部时钟(XCLK):本端内部有下拉元件。芯片内部的采样时钟在出厂前已调校,误差在+1%内。商业级芯片在整个温度和电压范围内,频率变化在+2.2
32、5%内。工业级芯片在整个温度和电压范围内,频率变化在-6/+4%内,此时建议使用稳压电源。若要求更高精度,可从本端输入外部时钟(如前表所列)。由于内部的防混淆及平滑滤波器已设定,故上述推荐的时钟频率不应改变。输入时钟的占空比无关紧要,因内部首先进行了分频。在不外接地时钟时,此端必须接地。自动静噪(AMCAP):当录音信号电平下降到内部设定的某一阈值以下时,自动静噪功能使信号衰弱,这样有助于养活无信号(静音)时的噪声。通常本端对地接1mF的电容,构成内部信号电平峰值检测电路的一部分。检出的峰值电平与内部设定的阈值作比较,决定自动静噪功能的翻转点。大信号时,自动静噪电路不衰减,静音时衰减6dB。1
33、mF的电容也影响自动静噪电路对信号幅度的响应速度。本端接VCCA则禁止自动静噪。ISD4004-08芯片可以分为2400段存储空间,即最多可以录制2400段录音,也可以连续的录音,读取每一段的其实地址即可放音。驱动电路见下图3.12所示电路:SSSCLKMOSIVDDMISOXCLKVSSDINTNCRACNCVSSANCNCNCNCNCNCNCNCVSSAVCCAVSSAIN+OUTIN-CAPNC25JNT24RACGAINGAIN-INPUTBYPASS+INPUTVsGNDVout图3.12ISD4004驱动电路电路中对于ISD4004语音输入的MIC接口电路做了去耦滤波的处理,使得输
34、入的声音信号更加清新平稳,尽量减噪音的影响。放音电路采用了LM386芯片放大声音信号,使得输出的电压信号可以驱动较大点的喇叭,省的声音更大更清晰,效果更好。4系统软件设计4.1主控软件设计本文在设计之前,对此部分做了主程序流程图规划,具体内容如下图4.1:图4.1主程序流程图主程序流程说明:主程序流程图主要分为以下几个部分,分别是按键部分、显示部分、语音部分、单片机主控器件部分,各部分具有不同的子程序。系统初始化后,单片机在进行高速检测状态。当单片机检测到任何的按键动作的时候,单片机加减计数模块就会有相应的动作。从而编号也会增加,等待人数和正在服务的编号也会有相应的改变。4.2LED显示程序设
35、计74HC573为八进制3态非反转透明锁存器,器件的输入是和标准的CMOS输出兼容的;加上上拉电阻,他们能和LS/ALSTTL输出兼容。74HC573控制时序如图4.2所示输入输出输出使能锁存使能DqLHHHLHLLLX不变HXXZX=不需考虑2=高阻抗图4.274HC573控制时序窗口LED显示部分流程图如图4.3所示开始按键呼叫数据处理窗口LED显示结束图4.3窗口LED显示部分流程图4.3LCD显示程序设计LCD12864液晶可以显示汉字、字母、数字符号等,这样就可以利用液晶同时显示4个客户的信息,分别占据一行,这儿样客户就可以提前看到自己被呼叫的相关信息。12864液晶初始化的流程图如
36、图4.4所示图4.412864液晶初始化的流程图4.4声音系统程序设计ISD4004在使用之前需要将播放的声音录制到芯片内,本设计中,因为需要播放的声音信号种类不多,提前将“请、号、到、窗口、0、1、2、3、4、5、6、7、8、9、A、B、C”分别单独录制到芯片即可,比如在本设计中如需要播放“请A123号到1号窗口”,当大屏幕上显示此信息时,就会听到此信息的声音信号。语音系统提示流程图如图4.5所示图4.5语音系统提示流程图具体的完成过程是将每一个字的声音信号单独从芯片的存储器中调用,然后将其连续的播放即可实现一段语音的连续播放。5系统仿真实验初始状态下,窗口数码管显示如图5.1所示:图5.1
37、当按一下任意大厅对应的按键,窗口数码管显示如图5.2所示:图5.2再次按一下任意大厅对应的按键,窗口数码管显示如图5.3所示:图5.3由以上仿真结果可知,仿真设计完全满足设计要求。上电清零,按下任意大厅对应的按键,液晶上的显示如图5.4所示:LM016LNo.01conet-oHo.1uindow?please!rrrF rrrF r图5.4按下抽号按键,按到第5下时,液晶上的显示如图5.5所示:图5.5排完20人,再按抽号按键时,液晶上的显示如图5.6所示:图5.6通过实验室调试,可以得出窗口数码管显示情况为:6总结这次的课程设计很重要,通过它我们系统的复习和实际运用已学知识,并且联系动手能
38、力.通过去图书馆查阅相关书籍、网上资料和一些仿真实例,我分析了其中的原理之后,认真总结并深入其中,完成了本次的排队叫号系统设计。系统的原理,芯片的选型、引脚功能、使用的优缺点,硬件的设计,电路的连接,程序的设计,系统的仿真等,对这些问题都需要综合性的专业知识,以及资料的查询,自己的认真钻研来解决。在程序设计过程中遇到的很多问题,阻碍设计的过程,通过总结,深深体会到程序设计的时候模块化处理的重要性,可以先画好程序流程图,然后对按键模块,显示模块,语音提示模块依次分析。本次课程设计能够实现基本的智能排队叫号目的,但是由于初步将对单片机运用到实际操作当中,难免有不足之处,比如没有配置系统取号打印机部
39、分等。总体来说,通过本次课程设计,增强了我在专业设计方面的能力,同时也培养了我对单片机的学习的兴趣。我感觉学单片机就是要多实践,老师领我们进入单片机世界,精通它就得靠我们自己,那就需要多实际操作,将自己所学知识灵活运用到实际生活当中。衷心感谢给我们教课的老师!感谢您这学期以来的辛勤付出,在课程设计期间,您细心的为同学们解答问题提供帮助,使我们对单片机的学习有了进一步的提高,谢谢!7参考文献1 夏路易石宗义Protel99se电路原理图与电路板设计教程北京:北京希望电子出版社,20042 伟福LAB6000系列单片机仿真实验系统使用说明书3 阎石数字电路技术基础(第五版)北京:高等教育出版社,2
40、0064 薛庆军、张秀娟单片机原理实验教程北京北京航空航天大学出版社,20085 杨家成单片机原理与应用及C51程序设计北京:清华大学出版社,2007附录1实物图附录2系统原理图U2OUTPUTVCCD0Q0D1Q1D2Q2D3Q3D4Q4D5Q5D6Q6D7Q7GNDLATCHVCCSN74HC573AN1011121314151617181920KEY1P2.7P2.6KEY2U5P1.0P1.1P1.2P1.3P1.4P1.5P1.6P1.7RSTP3.0(RXD)P3.1(TXD)INT0INT1P3.4(T0)P3.5(T1)P3.6(WR)P3.7(RD)XTAL2XTAL1czn
41、VCCP0.0P0.1P0.2P0.3P0.4P0.5P0.6P0.7EA/VppALE(PROG)PSENP2.7P2.6P2.5P2.4P2.3P2.2P2.1CON9LCD_CSLCD_SIDLCD_SCLKLCD_RST-INPUT+INPUTSTC89C51RCU1SSSCLKMOSIVDDMISOXCLKVSSDINTNCRACNCVSSANCNCNCNCNCNCNCNCVSSAVCCAVSSAIN+OUTIN-CAPNC附录3C51源程序:#include/C51程序包含的头文件#defineucharunsignedchar#defineuintunsignedint/以下定义
42、要用到的字符串数组/wp意为正在等待的人数ucharnum,waiting,count;等待的人数sbitlcden=P27;/num为所领号码,waiting为正在/液晶使能端sbitlcdrw=P25;/“读”或“写”选择端,要置低sbitlcdrs=P26;/写命令或数据选择端:置0写命令,置1写数据sbits0=P34;sbits1=P31;sbits2=P32;sbits3=P33;sbitadd=P35;sbitbee=P15;/函数声明voiddelay(uint);voiddi();/领号键/窗口1的叫号键/窗口2的叫号键/停止领号键/统计客流量/语音端口/延时/语音voidwrite_com(uchar);voidwrite_data(uchar);voidgo(uchar,uchar);voidshownum(uchar);voidshowstr(uchar*);voidclear();voidinit();voidkeyscan();/函数定义void