毕业设计(论文)基于STC89C52单片机的医院门诊排队叫号系统设计_第1页
毕业设计(论文)基于STC89C52单片机的医院门诊排队叫号系统设计_第2页
毕业设计(论文)基于STC89C52单片机的医院门诊排队叫号系统设计_第3页
毕业设计(论文)基于STC89C52单片机的医院门诊排队叫号系统设计_第4页
毕业设计(论文)基于STC89C52单片机的医院门诊排队叫号系统设计_第5页
已阅读5页,还剩46页未读 继续免费阅读

下载本文档

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

文档简介

1、重庆邮电大学本科毕业设计(论文)摘 要排队叫号管理系统是针对银行、工商、税务、通讯、政府机构等部门的大厅工作流程设计的,是利用电脑的科学管理客户排队的系统,很好地解决了客户在服务机构办理业务时所遇到的各种排队、拥挤和混乱现象,为客户办理业务带来莫大的方便和愉悦。本课题研究的目的是研制一款无人排队的排队叫号机,它主要由主控制器、键盘、显示电路、蜂鸣器电路等部分构成。 系统利用单片机进行控制,通过串行通信方式传输处理数据;通过按键取号,在lcd1602上显示排队的号码以及当前正在等待的人数;通过按键叫号,在lcd1602上显示叫到的号码,由扬声器发出声音提示客户。同时免除了令客户不舒服的站立式排队

2、,这种现代化的高科技产品彻底解决了医院普遍存在的站立等候,服务无序的问题,深化并完善了服务的质量。本系统采用单片机进行控制,利用lcd1602显示,蜂鸣器鸣叫提示的人机交互界面,模拟排队管理系统,科学地处理各种排队情况。操作简便,控制灵活,显示清晰,制作成本低,性价比较高。【关键词】stc89c52 lcd1602 蜂鸣器abstractthe queuing management system of the design is aimed at banks, industry and commerce, taxation, communication, government institut

3、ions and other departments of the working process , is using a scientific management system of customer queue ,is very good solution to the customers in the service agencies for business encounter all sorts of queuing crowded and chaotic phenomenon, for the customer has brought great convenience to

4、transact business with pleasure. the purpose of this research is to develop a line of no queuing machine, and it mainly consists of the main controller, keyboard, display circuit, buzzer circuit part. system controlled by microcontroller, through serial communication mode processing data; through th

5、e key take number, lcd1602 lined up in display on the number and the number of waiting; through buttons, in lcd1602 display on the number, called by the speaker sound tip customers. meanwhile from customers uncomfortable stand type, the modernization of queue high-tech products thoroughly solved the

6、 hospitals widespread stood waiting, service disorder and perfected the problem, deepen the quality of the service. the system adopts single-chip microcomputer controlling, showing by lcd1602, man-machine interface of buzzer chirping hinting, simulating queue management system, scientific dealing wi

7、th various kinds of queuing. it has simple operation, control, display, making clear flexible low cost, high cost performance.【key words】stc89c52 lcd1602 buzzer目 录前 言1第一章 单片机的概述2第一节 单片机的定义和特点2一、单片机的定义2二、单片机的特点2第二节 单片机的发展现状和趋势3一、单片机的发展现状3二、单片机的发展趋势4第三节 编程语言的选择5第二章 系统方案论证6第一节 设计要求6第二节 单片机芯片的选择方案和论证6第三

8、节 显示模块选择方案和论证6第三节 系统方案选择和论证7第三章 系统硬件设计9第一节 protel99应用介绍9第二节 单片机处理部分设计10一、时钟电路10二、复位及复位电路11三、引脚介绍13第三节 lcd1602介绍15一、显示原理15二、基本参数及引脚功能15三、指令说明及时序16第四节 时钟振荡电路18第五节 复位电路19第六节 叫号电路19第七节 按键电路20第四章 系统软件设计21第一节 keil介绍21第二节 程序流程图22第三节 部分程序代码23第五章 硬件调试25结 论28致 谢29参考文献30附 录31一、英文原文:31二、英文翻译:36三、工程设计图纸:40四、源程序:

9、41五、详细器件清单:46- 47 - 前 言近年来,随着科学技术的迅猛发展和人们生活水平的日益提高,各行各业特别是服务行业的竞争也逐渐激烈。服务质量作为体现企业的公众形象、服务理念、管理水平的标准已越来越受到服务和被服务双方所关注,而营业窗口正是代表银行、医院、电信、税务、工商等企业服务质量的重要场所1。随着服务行业业务量的增长及业务种类的增加,排队等候已成为人们面临的实际问题。长期以来,人们在银行、医院、电信、税务、工商等营业大厅里前拥后挤地站着排队等候,有时一站就是一个多小时。这种员工坐着服务、客户站着等待的服务方式与“用户就是上帝”的服务宗旨完全背道而驰!改善服务质量、树立良好形象,解

10、决劳累的排队现象、创造人性化服务环境已成为急需解决的问题,排队系统应运而生45。世界上所有的医疗机构都在力争减少运营成本、提高服务质量、简化病人的管理步骤。随着中国整体的市场化进程的推进,国内医疗机构也将必须独自面对市场化的竞争,改变传统的管理与服务理念势在必行。由于我国国情特殊,人口众多,长期以来,医院的门诊量大,病人排队秩序混乱、门诊工作琐碎繁多;就诊排队的人群“围医”现象,严重影响接诊的医生的工作环境,降低了工作效率,更不利于保护病人的隐私。排队系统的应用从根本上解决了以上,为病人营造了一个公平、公正、公开的医疗环境。既保护了病人在医院的隐身,又缩短了病人在医院的就诊时间;同时大大改善了

11、医生的工作条件,降低了门诊护士的工作强度,提高了各方面的工作效率;而且为医院各级管理人员科学管理提供了依据,最大限度的发挥医院的现有资源,产生最好的社会效益与经济效益。目前,国内已经有上海、北京、广东、浙江等地的多家大医院投入使用了医院排队叫号系统,并且有越来越多的医院认识到了排队叫号系统的使用必要性,医院排队叫号系统表现出了良好的发展势头。第一章 单片机的概述目前单片机渗透到了我们生活的各个领域,几乎很难找到哪个领域没有单片机的踪迹。导弹的导航装置,飞机上各种仪表的控制,计算机的网络通讯与数据传输,工业自动化过程的实时控制和数据处理,广泛使用的各种智能ic卡,民用豪华轿车的安全保障系统,录像

12、机、摄像机、全自动洗衣机的控制,以及远程控制玩具、电子宠物等等,这些都离不开单片机。更不用说自动控制领域中的机器人、智能仪表、医疗器械了。单片机具有结构简单、控制功能强、可靠性高、体积小、价格低等优点,因而在许多行业都得到了广泛应用,并且在诸多领域中都发挥了无可比拟的巨大作用。第一节 单片机的定义和特点714一、单片机的定义单片机即单片微型计算机,是把中央处理器、存储器、定时/计数器、输入输出接口都集成在一块集成电路芯片上的微型计算机。与应用在个人电脑中的通用型微处理器相比,它更强调自供应(不用外接硬件)和节约成本。单片机也被称为微控制器(microcontroller),是因为它最早被用于工

13、业控制领域。单片机的芯片内仅由cpu的专用处理器发展而来。最早的设计理念是通过将大量外围设备和cpu集成在一个芯片中,使计算机系统更小,更容易集成进复杂的而对体积要求严格的控制设备当中。二、单片机的特点单片机以其卓越的性能,得到了广泛的应用,已深入到各个领域。单片机应用在检测、控制领域中,具有如下特点:1、体积小、控制功能强、成本低。因而可以方便地组装各种智能式控制设备和仪器,做到机、电、仪一体化。2、易扩展。很容易构成各种规模的应用系统,为应用系统的设计和生产带来极大方便。3、可靠性好、使用温度范围宽。在各种恶劣的环境下都能可靠的工作,这是其他机种无法比拟的。4、种类多,型号全。很多单片机厂

14、家逐年扩大适应各种需要,有针对性地推出一系列型号产品,使系统开发工程师有很大的选择余地。大部分产品有较好的兼容性,保证了已开发产品能顺利移植,较容易地使产品进行升级换代。5、低功耗。现在新型单片机的功耗越来越小,供电电压从5v降低到了3.2v,甚至1v,工作电流从ma降到a级,工作频率从十几兆可编程到几十千赫兹。特别是很多单片机都设置了多种工作方式,这些工作方式包括等待、暂停、睡眠、空闲、节电等。6、可以采用c语言开发环境,具有友好的人机互交环境。大多数单片机都提供基于c语言开发平台,并提供大量的函数供使用,这使产品的开发周期、代码可读性、可移植性都大为提高。第二节 单片机的发展现状和趋势一、

15、单片机的发展现状单片机技术在不断的发展,它反映在内部结构、功率消耗、外部电压等级以及制造工艺上。在这几方面,较为典型地说明了数字单片机的技术水平。在目前,用户对单片机的需要越来越多,但是,要求也越来越高。下面分别就这三个方面说明单片机的技术进步状况。1、内部结构的进步单片机在内部已集成了越来越多的部件,这些部件包括一般常用的电路,例如:定时器,比较器,a/d转换器,d/a转换器,串行通信接口,watchdog电路,lcd控制器等。有的单片机为了构成控制网络或形成局部网,内部含有局部网络控制模块can。例如,infineon公司的c505c,c515c,c167cr,c167cs-32fm,81

16、c90。因此,这类单片机十分容易构成网络。特别是在控制,系统较为复杂时,构成一个控制网络十分有用。为了能在变频控制中方便使用单片机,形成最具经济效益的嵌入式控制系统。有的单片机内部设置了专门用于变频控制的脉宽调制控制电路,这些单片机有fujitsu公司的mb89850系列、mb89860系列;motorola 公司的mc68hc08mr16、mr24等。在这些单片机中,脉宽调制电路有6个通道输出,可产生三相脉宽调制交流电压,并内部含死区控制等功能。 特别引人注目的是:现在有的单片机已采用所谓的三核(trcore)结构。这是一种建立在系统级芯片(system on a chip)概念上的结构。这

17、种单片机由三个核组成:一个是微控制器和dsp核,一个是数据和程序存储器核,最后一个是外围专用集成电路(asic)。这种单片机的最大特点在于把dsp和微控制器同时做在一个片上。这是目前单片机最大的进步之一。这些单片机都是高档单片机,mcu都是32位的,而dsp采用16或32位结构,工作频率一般在60mhz以上。2、功耗、封装及电源电压的进步现在新的单片机的功耗越来越小,特别是很多单片机都设置了多种工作方式,这些工作方式包括等待,暂停,睡眠,空闲,节电等工作方式。而单片机的封装水平也大大提高,随着贴片工艺的出现,单片机也大量采用了各种合符贴片工艺的封装方式出现,以大量减少体积。在这种形势中,mic

18、rochip公司推出的8引脚的单片机特别引人注目。这是pic12cxxx系列。它含有0.52k程序存储器,25128字节数据存储器,6个i/o端口以及一个定时器,有的还含4道a/d ,完全可以满足一些低档系统的应用。扩大电源电压范围以及在较低电压下仍然能工作是今天单片机发展的目标之一。目前,一般单片机都可以在3.35.5v的条件下工作。而一些厂家,则可以生产出在2.26v的条件下工作的单片机。3、工艺上的进步现在的单片机基本上采用cmos技术,但已经大多数采用了0.6um以上的光刻工艺,有个别的公司,如motorola公司则已采用0.35um甚至是0.25um技术。这些技术的进步大大地提高了单

19、片机的内部密度和可靠性。二、单片机的发展趋势单片机在目前的发展形势下,表现出几大趋势:1、可靠性及应用越来越水平高,和互联网连接已是一种明显的走向;2、所集成的部件越来越多,ns(美国国家半导体)公司的单片机已把语音、图像部件也集成到单片机中,也就是说,单片机的意义只是在于单片集成电路,而不在于其功能了。如果从功能上讲它可以讲是万用机。原因是其内部已集成上各种应用电路;3、功耗越来越低和模拟电路结合越来越多。随着半导体工艺技术的发展及系统设计水平的提高,单片机还会不断产生新的变化和进步,最终人们可能发现:单片机与微机系统之间的距离越来越小,甚至难以辨认。 第三节 编程语言的选择在1972年,美

20、国贝尔实验室的d.m.ritchie在b语言的基础上最终设计出了一种新的语言,他取了bcpl的第二个字母作为这种语言的名字,这就是c语言。在众多的程序设计语言中,c语言简洁紧凑,语言表达能力强,其结构化的流程控制有助于编制结构良好的程序。c语言程序经编译后生成的目标程序代码效率高,几乎可以与汇编语言媲美。c语言既具备高级语言使用方便、接近自然语言和数学语言的特性,同时也具备对计算机硬件系统的良好操纵和控制能力。c语言可移植性好,一个c语言源程序可以不做改动,或者稍加改动,就可以从一种型号的计算机移转到另外一种型号的计算机上编译运行。因此,c语言被广泛应用于各类系统软件和应用软件的开发。所以本系

21、统以c语言进行软件设计,增加了程序的可读性和可移植性,便于扩展和更改,软件的设计采用模块化结构,使程序设计的逻辑关系更加简洁了。第二章 系统方案论证第一节 设计要求利用单片机完成一个科学管理各种复杂排队情况的排队叫号系统。具体要求如下: 医生:通过按键来完成报号,由lcd1602显示叫到的号码,并发出蜂鸣声。 病人:通过按键完成取号,由lcd1602显示号码。第二节 单片机芯片的选择方案和论证方案一:采用at89s51芯片作为硬件核心,内部具有4kb rom 存储空间,而且与mcs-51系列单片机完全兼容,但是运用于电路设计中时由于不具备isp在线编程技术,所以在对电路进行调试时,由于程序的错

22、误修改或对程序的新增功能需要烧入程序时,对芯片的多次拔插会对芯片造成一定的损坏。方案二:采用stc89c52芯片,stc89c52是一种低功耗、高性能的8位cmos微控制器,具有8k的可编程flash存储器。同样具有at89s51的功能,且具有在线编程可擦除技术,当对电路进行调试时,由于程序的错误修改或对程序的新增功能需要烧入程序时,不需要对芯片多次拔插,所以不会对芯片造成损坏。综上所述,选择采用stc89c52作为主控制系统核心。第三节 显示模块选择方案和论证方案一:采用led数码管动态扫描,led数码管价格适中,对于显示数字合适,采用动态扫描法与单片机连接时,虽然占用的单片机口线少,但连线

23、还需要花费一点时间,所以也不用此种作为显示。方案二:采用点阵式数码管显示,点阵式数码管是由八行八列的发光二极管组成,对于显示文字比较适合,若采用在显示数字显得太浪费,且价格也相对较高,所以在此也不用此种作为显示。方案三:采用1602液晶显示屏,该液晶显示屏的显示功能强大,内置192种字符,可显示大量符号、数字,清晰可见,而且功率消耗小寿命长抗干扰能力强。综上所述,在设计中采用1602液晶显示屏。第三节 系统方案选择和论证方案一:系统采用如图2.1所示的电路,通过stc89c52的i/o口的扩展一块nec d8255ac-2构成的矩阵键盘,完成排队取号的流程,单片机控制数码管显示排队等待情况,控

24、制蜂鸣器发声完成叫号功能。图2.1采用矩阵键盘实现功能 方案二:系统采用如图2.2所示的电路,通过stc89c52单片机直接扩展的独立键盘,完成排队取号流程(本系统直接利用系统的中断0按键控制),单片机控制lcd1602显示排队等待情况,控制蜂鸣器发声完成叫号功能。图2.2采用独立键盘实现功能因为采用矩阵键盘完成排队取号流程,但客户较多的时候要实现排队取号的功能,就要占去过多的i/o端口,操作起来也比较复杂,而方案二的独立键盘操作控制简单,占用主机资源少,所以选择方案二,采用独立键盘控制排队取号,通过串行通信的方式,模拟排队取号管理系统的流程显得更加方便、科学。第三章 系统硬件设计第一节 pr

25、otel99应用介绍一、新建设计数据库文件在windows 95/98或nt界面下双击protel99 图标,点击file(文件)中new项,新建设计数据库。在browse选项中选取需要存储的文件夹,然后点击ok即可建立自己的设计数据库。二、打开和管理设计数据库protel99 包括许多设计例子,我们下面可以举例说明。选择文件打开菜单design explorer 99example folder,点击photoplotter.ddb文 件,左侧窗口呈现树状结构。点“”呈现下一层子目录或文件,点“”将关闭此文件夹点photohead.pcb 文件,pcb版图将出现,点photohead.prj

26、,原理图管理文件将被打开。关闭文件,可以用鼠标右键,选择close,也可以用ctrl+f4来关闭。三、多图纸设计一个原理图设计有多种组织图纸方案的方法。可以由单一图纸组成或由多张关联的图纸组成,不必考虑图纸号,sch99将每一个设计当作一个独立的方案。设计可以包括模块化元件,这些模块化元件可以建立在独立的图纸上,然后与主图连接。作为独立的维护模块允许几个工程师同时在同一方案中工作,模块也可被不同的方案重复使用。便于设计者利用小尺寸的打印设备(如激光打印机)。下面举例说明:打开lcd controller.ddb 设计文件,打开lcd controller.prj原理图设计窗口。我们看到许多绿色

27、矩形框,叫做原理图模块,每一个原理图模块里包含一张图纸,一个总的原理图可以包含多个子原理图。选择“design”下的“create sheet from symbols”由符号生成图纸,如果已经画好原理图,选“design”下的“create symbol form sheet”由图纸生成符号。利用工具条上的点取输入端口,可以在总的原理图与子原理图之间切换。四、原理图连线设计确定起始点和终止点,protel99就会自动地在原理图上连线,从菜单上选择“place/wir e”后,按空格键切换连线方式,自动连线、任意角度、45连线、90连线,使得设计 者在设计时更加轻松自如。只要简单地定义auto

28、wire方式。自动连线可以从原理图的任何一点进行,不一定要从管脚到管脚。第二节 单片机处理部分设计设计的思想是简单实用,中心处理部分采用stc89c52单片机。stc89c52单片机完全可以满足本系统的设计要求,相对于其他具有相当功能的器件来说,具有价格便宜,对环境要求不高,工作稳定等优点。 stc98c52是美国atmel公司生产的低电压,高性能coms 8位单片机,片内含4k bytes的可反复擦写的只读程序存储器(rom)和128 bytes的随机存取数据存储器(ram)。器件采用atmel公司的高密度、非易失性存储技术生产,兼容标准的mcs-51指令系统,内置通用8位中央处理器(cpu

29、)和flash存储单元,功能强大,可灵活应用于各种控制领域,下面介绍介绍stc98c52。一、时钟电路stc89c52内部有一个用于构成振荡器的高增益反相放大器,引脚rxd和txd分别是此放大器的输入端和输出端。时钟可以由内部方式产生或外部方式产生。内部方式的时钟电路如图3.1(a)所示,在rxd和txd引脚上外接定时元件,内部振荡器就产生自激振荡。定时元件通常采用石英晶体和电容组成的并联谐振回路。晶体振荡频率可以在1.212mhz之间选择,电容值在530pf之间选择,电容值的大小可对频率起微调的作用。外部方式的时钟电路如图3.1(b)所示,rxd接地,txd接外部振荡器。对外部振荡信号无特殊

30、要求,只要求保证脉冲宽度,一般采用频率低于12mhz的方波信号。片内时钟发生器把振荡频率两分频,产生一个两相时钟p1和p2,供单片机使用。rxd接地,txd接外部振荡器。对外部振荡信号无特殊要求,只要求保证脉冲宽度,一般采用频率低于12mhz的方波信号。片内时钟发生器把振荡频率两分频,产生一个两相时钟p1和p2,供单片机使用。rxd接地,txd接外部振荡器。对外部振荡信号无特殊要求,只要求保证脉冲宽度,一般采用频率低于12mhz的方波信号。片内时钟发生器把振荡频率两分频,产生一个两相时钟p1和p2,供单片机使用。3.1(a)内部方式时钟电路 3.1(b)外部方式时钟电路二、复位及复位电路1、复

31、位操作复位是单片机的初始化操作。其主要功能是把pc初始化为0000h,使单片机从0000h单元开始执行程序。除了进入系统的正常初始化之外,当由于程序运行出错或操作错误使系统处于死锁状态时,为摆脱困境,也需按复位键重新启动。除pc之外,复位操作还对其他一些寄存器有影响,它们的复位状态如表3.1所示。表3.1 一些寄存器的复位状态寄存器复位状态寄存器复位状态pc0000htcon00hacc00htl000hpsw00hth000hsp07htl100hdptr0000hth100hp0-p3ffhscon00hipxx000000bsbuf不定ie0x000000bpcon0xxx0000btm

32、od00h2、复位信号及其产生rst引脚是复位信号的输入端。复位信号是高电平有效,其有效时间应持续24个振荡周期(即二个机器周期)以上。若使用颇率为6mhz的晶振,则复位信号持续时间应超过4us才能完成复位操作。产生复位信号的电路逻辑如图3.2所示:图3.2 复位信号的电路逻辑图整个复位电路包括芯片内、外两部分。外部电路产生的复位信号(rst)送至施密特触发器,再由片内复位电路在每个机器周期的s5p2时刻对施密特触发器的输出进行采样,然后才得到内部复位操作所需要的信号。复位操作有上电自动复位相按键手动复位两种方式。上电自动复位是通过外部复位电路的电容充电来实现的,其电路如图3.3(a)所示。这

33、佯,只要电源vcc的上升时间不超过1ms,就可以实现自动上电复位,即接通电源就成了系统的复位初始化。按键手动复位有电平方式和脉冲方式两种。其中,按键电平复位是通过使复位端经电阻与vcc电源接通而实现的,其电路如图3.3(b)所示;而按键脉冲复位则是利用rc微分电路产生的正脉冲来实现的,其电路如图3.3(c)所示:(a)上电复位 (b)按键电平复位 (c)按键脉冲复位图3.3复位电路上述电路图中的电阻、电容参数适用于12mhz晶振,能保证复位信号高电平持续时间大于2个机器周期。本系统的复位电路采用图3.3(b)上电复位方式。三、引脚介绍主电源引脚(2根)vcc(pin40):电源输入,接5v电源

34、gnd(pin20):接地线外接晶振引脚(2根)xtal1(pin19):片内振荡电路的输入端xtal2(pin20):片内振荡电路的输出端控制引脚(4根)rst/vpp(pin9):复位引脚,引脚上出现2个机器周期的高电平将使单片机复位。ale/prog(pin30):地址锁存允许信号psen(pin29):外部存储器读选通信号ea/vpp(pin31):程序存储器的内外部选通,接低电平从外部程序存储器读指令,如果接高电平则从内部程序存储器读指令可编程输入/输出引脚(32根)stc89c52单片机有4组8位的可编程i/o口,分别位p0、p1、p2、p3口,每个口有8位(8根引脚),共32根。

35、po口(pin39pin32):8位双向i/o口线,名称为p0.0p0.7p1口(pin1pin8):8位准双向i/o口线,名称为p1.0p1.7 p2口(pin21pin28):8位准双向i/o口线,名称为p2.0p2.7 p3口(pin10pin17):8位准双向i/o口线,名称为p3.0p3.7stc89c52主要功能如表3.2所示。表3.2 stc89c52主要功能主要功能特性兼容mcs51指令系统8k可反复擦写flash rom32个双向i/o口256x8bit内部ram3个16位可编程定时/计数器中断时钟频率0-24mhz2个串行中断可编程uart串行通道2个外部中断源共6个中断源

36、2个读写中断口线3级加密位低功耗空闲和掉电模式软件设置睡眠和唤醒功能第三节 lcd1602介绍12一、显示原理 液晶显示的原理是利用液晶的物理特性,通过电压对其显示区域进行控制,有电就有显示,这样即可以显示出图形。液晶显示器具有厚度薄、适用于大规模集成电路直接驱动、易于实现全彩色显示的特点,目前已经被广泛应用在便携式电脑、数字摄像机、pda移动通信工具等众多领域。本设计中选择液晶显示屏1602模块作为输出。1602字符型lcd通常有14条引脚线或16条引脚线的lcd,多出来的2条线是背光电源线。它可以显示两行,每行16个字符,采用单+5v电源供电,外围电路配置简单,价格便宜,具有很高的性价比。

37、1602液晶模块内部的字符发生存储器(cgrom)已经存储了160个不同的点阵字符图形,这些字符有:阿拉伯数字、英文字母的大小写、常用的符号、和日文假名等,每一个字符都有一个固定的代码,比如大写的英文字母“a”的代码是01000001b(41h),显示时模块把地址41h中的点阵字符图形显示出来,我们就能看到字母“a”。二、基本参数及引脚功能1602lcd采用标准的14脚(无背光)或16脚(带背光)接口,各引脚接口说明如表3.3所示:表3.3基本参数及引脚功能编号符号引脚说明编号符号引脚说明1vss电源地9数据2vdd电源正极10数据3vl液晶显示偏压11数据4rs数据/命令选择12数据5r/w

38、读/写选择13数据6e使能信号14数据7d0数据15背光源正极8d1数据16背光源负极表10-13:引脚接口说明表第1脚:vss为地电源。第2脚:vdd接5v正电源。第3脚:vl为液晶显示器对比度调整端,接正电源时对比度最弱,接地时对比度最高,对比度过高时会产生“鬼影”,使用时可以通过一个10k的电位器调整对比度。第4脚:rs为寄存器选择,高电平时选择数据寄存器、低电平时选择指令寄存器。第5脚:r/w为读写信号线,高电平时进行读操作,低电平时进行写操作。当rs和r/w共同为低电平时可以写入指令或者显示地址,当rs为低电平r/w为高电平时可以读忙信号,当rs为高电平r/w为低电平时可以写入数据。

39、第6脚:e端为使能端,当e端由高电平跳变成低电平时,液晶模块执行命令。第714脚:d0d7为8位双向数据线。第15脚:背光源正极。第16脚:背光源负极。三、指令说明及时序 1602液晶模块内部的控制器共有11条控制指令,如表3.4所示:表3.4控制命令表序号指令rsr/wd7d6d5d4d3d2d1d01清显示0000000012光标返回000000001*3置输入模式00000001i/ds4显示开/关控制0000001dcb5光标或字符移位0000011s/cr/l*6置功能00001dlnf*7置字符发生存贮器地址0001字符发生存贮器地址8置数据存贮器地址001显示数据存贮器地址9读忙

40、标志或地址01bf计数器地址10写数到cgram或ddram)10要写的数据内容11从cgram或ddram读数11读出的数据内容1602液晶模块的读写操作、屏幕和光标的操作都是通过指令编程来实现的。(说明:1为高电平、0为低电平)指令1:清显示,指令码01h,光标复位到地址00h位置。指令2:光标复位,光标返回到地址00h。指令3:光标和显示模式设置 i/d:光标移动方向,高电平右移,低电平左移 s:屏幕上所有文字是否左移或者右移。高电平表示有效,低电平则无效。指令4:显示开关控制。 d:控制整体显示的开与关,高电平表示开显示,低电平表示关显示 c:控制光标的开与关,高电平表示有光标,低电平

41、表示无光标 b:控制光标是否闪烁,高电平闪烁,低电平不闪烁。指令5:光标或显示移位 s/c:高电平时移动显示的文字,低电平时移动光标。指令6:功能设置命令 dl:高电平时为4位总线,低电平时为8位总线 n:低电平时为单行显示,高电平时双行显示 f: 低电平时显示5x7的点阵字符,高电平时显示5x10的点阵字符。指令7:字符发生器ram地址设置。指令8:ddram地址设置。指令9:读忙信号和光标地址 bf:为忙标志位,高电平表示忙,此时模块不能接收命令或者数据,如果为低电平表示不忙。指令10:写数据。指令11:读数据。与hd44780相兼容的芯片时序表如下:表3.5 基本操作时序表读状态输入rs

42、=l,r/w=h,e=h输出d0d7=状态字写指令输入rs=l,r/w=l,d0d7=指令码,e=高脉冲输出无读数据输入rs=h,r/w=h,e=h输出d0d7数据写数据输入rs=h,r/w=l,d0d7=数据,e=高脉冲输出无读写操作时序如图3.4和3.5所示:图3.4 读操作时序图3.5 写操作时序第四节 时钟振荡电路8sct98c52中有一个用于构成内部振荡器的高增益反向放大器,引脚xtal1和xtal2分别是该放大器的输入端和输出端。这个放大器与作为反馈元件的片外石英晶体或陶瓷谐振器一起构成自激振荡器,震荡电路如图3.6所示。因为一个机器周期含有6个状态周期,而每个状态周期为2个震荡周

43、期,所以一个机器周期共有12个震荡周期,如果外接石英晶振的震荡频率为12mhz,故而一个机器周期为1us 。图3.6 时钟振荡电路外接石英晶体及电容c1、c2接在放大器的反馈回路中构成并联振荡电路。对外接电容c1、c2虽然没有十分严格的要求,但电容容量的大小会轻微影响震荡频率的高低、震荡器工作的稳定性、起振的难易程度及温度稳定性。外接石英晶体,电容使用30pf。第五节 复位电路复位电路虽然简单,但其作用非常重要,一个单片机系统能否正常运行,首要检查是否能复位成功。复位操作有上电自动复位和手动复位两种方式,本文采用手动复位方式。手动复位是通过开关实现的其电路如图3.7所示。在通电瞬间电容c通过电

44、阻r充电,rst出现正脉冲,用以复位。只要电源vcc上升时间不超过1ms,就可以实现手动复位,即按下开关就可以实现系统的复位初始化。关于参数的选定在震荡稳定后应保证复位高电平持续时间大于2个机器周期。这里选用的是12mhz的石英晶振可取c=4.7uf,r=4.7k。图3.7 复位电路第六节 叫号电路实现叫号的接口电路比较简单,其发音原件通常采用压电蜂鸣器,当在蜂鸣器两引脚加上+3v+15v只留工作电压时,就能产生3khz左右的蜂鸣器震荡音响。压电式蜂鸣器结构简单、耗电少、更适合于单片机系统的应用。压电式蜂鸣器,需要10ma的驱动电流,可在p31口接上一直三极管核电阻组成的驱动电路来驱动,如图3

45、.8所示。图3.8 叫号电路在图中,p31接三极管的极端输入端,当p31输出高电平时,三极管导通,蜂鸣器通电而发音,当p31输出低电平时,三极管截止,蜂鸣器停止发音。第七节 按键电路 按键电路实现的功能是取号和叫号,用户通过按键实现取号,诊室人员通过按键实现叫号,使就诊人员前来相应的诊室就诊,按键电路如图3.9所示。图3.9 按键电路第四章 系统软件设计第一节 keil介绍一、8051开发工具keilc51标准c编译器为8051微控制器的软件开发提供了c语言环境,同时保留了汇编代码高效,快速的特点。c51编译器的功能不断增强,使你可以更加贴近cpu本身,及其它的衍生产品。c51已被完全集成到u

46、vision2的集成开发环境中,这个集成开发环境包含:编译器,汇编器,实时操作系统,项目管理器,调试器。uvision2 ide可为它们提供单一而灵活的开发环境。c51 v7版本是目前最高效、灵活的8051开发平台。它可以支持所有8051的衍生产品,也可以支持所有兼容的仿真器,同时支持其它第三方开发工具。因此,c51 v7版本无疑是8051开发用户的最佳选择。二、c51编辑器keil c51编译器在遵循ansi标准的同时,为8051微控制器系列特别设计。语言上的扩展能让用户使用应用中的所有资源。1、存储器和特殊功能寄存器的存取 c51编译器可以实现对8051系列所有资源的操作。sfr的存取由s

47、fr和sbit两个关键字来提供。变量可旋转到任一个地址空间。用关键字“at”还能把变量放入固定的存储器存储模式(大,中,小)决定了变量的存储类型。 连接定位器支持的代码区可达32个,这就允许用户在原有64k rom的8015基础上扩展程序。在v2的编译器和许多高性能仿真器中,可以支持应用程序的调试。2、中断功能 c51允许用户使用c语言编写中断服务程序,快速进、出代码和寄存器区的转换功能使c语言中断功能更加高效。可再入功能是用关键字来定义的。多任务,中断或非中断的代码要求必须具备可再入功能。3、c51提供了灵活高效的指针 通用指针用3个字节来存储存储器类型及目标地址,可以在8051的任意存储区

48、内存取任何变量。特殊指针在声明的同时已指定了存储器类型,指向某一特定的存储区域。由于地址的存储只需12字节,因此,指针存取非常迅速。三、测试程序 uvision2调试器具备所有常规源极调试,符号调试特性以及历史跟踪,代码覆盖,复杂断点等功能dde界面和shift语言支持自动程序测试。1.cpu和外设模拟装置 uvision2为8051及衍生产品提供了高速模拟功能和片上扩展口在对话框内可直接观察和修改值,也可以用预装的c-like 宏指令书写符号函数来提供动态输入。2、目标监控器 uvision2含一个可配置的监控器,可测试目标器件上的软件体。监控器用uvision2的调试器直接工作,可支持代码

49、区。它要求目标系统具备6字节堆栈空间,6kb的代码和256字节xdata ram。第二节 程序流程图 本程序可实现设计的基本要求,就诊客户通过按键完成取号液晶显示排队号码,医生通过按键完成叫号,液晶显示叫到的号码,并通过蜂鸣器发声提示,程序流程图如图4.2所示。图4.2总程序流程图第三节 部分程序代码1602通过d0d7的8位数据端传输数据和指令,其模块内的控制器有11条控制指令。当液晶显示屏的接口电路与单片机系统i/o按照并行数据传输方式连接完成以后,即可以对stc89c52单片机进行编程。在液晶屏完成显示之前首先要对液晶进行初始化。源程序如下:lcd_init() /*液晶初始化函数*wr

50、ite_1602com(0x38); /设置液晶工作模式,意思:16*2行显示,5*7点阵,8位数据write_1602com(0x0c); /开显示不显示光标write_1602com(0x06); /整屏不移动,光标自动右移write_1602com(0x01); /清显示write_1602com(yh+1); /日历显示固定符号从第一行第1个位置之后开始显示for(a=0;a14;a+)write_1602dat(tab1a); /向液晶屏写日历显示的固定符号部分/delay(3);write_1602com(er+2); /时间显示固定符号写入位置,从第2个位置后开始显示for(a=

51、0;a8;a+)write_1602dat(tab2a); /写显示时间固定符号,两个冒号/delay(3);第五章 硬件调试排队叫号机系统比较简单,但对于焊接方面不可轻视,只要电路系统中出于一处的错误,就会对检测造成很大的不便,对于各种锋利的引脚要注意处理,否则会刺破带有包皮的导线,则会对电路造成短路现象。在本次排队叫号机的设计调试中遇到了很多的问题。回想这些问题只要认真多思考都是可以避免的,以下为主要的问题:(1)蜂鸣器无法正常工作。解决:由于程序产生的方波频率比较低,导致蜂鸣器无法正常工作,通过查找资料,熟悉蜂鸣器有特定的工作频率范围,调试一合适方波频率,使蜂鸣器正常发声。(2)烧入程序

52、后,lcd液晶显示屏不显示或者亮度不好。解决:不显示时首先使用万用表对电路进行测试,观察是否存在漏焊,虚焊,或者元件损坏的现象。若无此问题查看烧写的程序是否正确无误,对程序进行认真修改。当显示亮度不好时一边改变电阻,一边观看lcd显示屏,直到看到合适的亮度为止。经过多次的反复调试试与分析,可以对电路的原理及功能更加熟悉,同时提高了设计能力与及对电路的分析能力。同时在软件的编程方面得到更到的提高,对编程能力得到加强,同时对所学的知识得到很大的提高与巩固。如下为硬件实物图:图5.1 硬件实物图5.2 第一行为叫号,第二行是就诊窗口,共有两个图5.3 显示的是当前的叫号号码和就诊号码结 论本次毕业设

53、计所做的是基于单片机的排队叫号机系统。主要针对长期以来,医院的门诊量大,病人排队秩序混乱、门诊工作琐碎繁多;就诊排队的人群“围医”现象,而进行设计的。排队系统的应用从根本上解决了以上,为病人营造了一个公平、公正、公开的医疗环境。本设计主要解决了病人的排队问题,用蜂鸣器鸣叫代替了语音叫号,但是离实际的应用还有很大的距离,需要进一步的研究。至此,关于毕业设计的所有内容就介绍完了,进行这次毕业设计一切都是从零开始,从最简单查资料、了解各个元件的功能起步,再确定设计方案、画流程图、编写程序到最后进行硬件调试,这次课题设计可以说成功完成。在整个设计过程中,充分发挥了人的主观能动性,自主学习,学到了许多没学到的知识。程序编写中,由于思路不清晰,开始时遇到了很多的问题,经过静下心来思考查资料,和同学讨论,向老师请教,理清了思路,完成对程序的编写。通过设计提高了对单片机的认识,进一步熟悉和掌握单片机的结构及工作原理。通过实际程序设计和调试,逐步掌握模块化程序设计方法和调试技术,提高软件设计、调试能力;通过这次设计熟悉以单片机核心的应用系统开发的全过程,掌握硬件电路设计的基本方法和技术。最终较好的完成了设计,达到了预期的目的,完了最初的设想。但是由于时间和个人能力的原因,整个系统看起来还是显得非常的简单,只实现了一些最基本的功能,还有许多不足和可以扩展的地方。致 谢在此我要深深的感谢那些传

温馨提示

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

评论

0/150

提交评论