版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、××大学××学院××系××课程设计报告××大学××学院××课程设计基于51单片机的病床呼叫系统设计 学生姓名学 号所 在 系专业名称班 级指导教师成 绩 ××大学××学院二一二年六月摘要:系统是基于51系列的单片机设计的病床呼叫系统。该系统以AT89C51单片机为核心辅以矩阵键盘、LED点阵显示电路和部分简单模拟和数字电路组成的能够实现病人和医护人员之间信息的传递。在该设计中每个病房都有一个按键,当患者有需要时,按下
2、按键,此时 值班室的显示屏可显示此患者的床位号,多人使用时可实现循环显示,医护人员按下“响应”键取消当前呼叫。此系统能够为医院提供一个成本低、效率高、操作方便和易于安装维护的快捷系统。关键字:单片机,矩阵键盘,LED显示,呼叫系统。Abstract: System is based on 51 series single-chip design of beds call system. The system with AT89C51 microcontroller core complemented by matrix keyboard,LED dot-matrix display circu
3、it and some simple consisting of analog and digital circuits to achieve the passing of information between patients and health care professionals. Each ward has a key in the design, when the patient if necessary, press, round-the-clock display to display the patient beds, many people can achieve whe
4、n using circular display, medical staff by pressing the "respond" button to cancel the current call. This system is able to provide hospitals with a low cost, high efficiency, easy to operate and easy to shortcut the system installation and maintenance.Key words: Single-chip microcomputer
5、,Matrix keyboard ,LED display ,Calling system。目 录1. 概述11.1 单片机的发展11.2 单片机的发展前景11.3 单片机的结构原理21.4 单片机的实际应用21.5 课题设计目标32. 设计方案论述42.1 病床呼叫系统的控制要求42.2 病床呼叫系统的设计框图43. 系统硬件设计实现43.1 控制器AT89C5153.2 键盘模块6 3.2.1 键盘工作原理6 3.2.2 独立式按键6 3.2.3 行列式键盘6 3.2.4 键盘电路设计7 3.3 显示模块9 3.3.1 液晶显示器9 3.3.2 LED点阵显示屏9 3.3.3 LED显示电
6、路103.4 时钟电路123.5 复位电路134. 程序设计134.1 软件开发环境简介134.2 主程序程序描述144.3 显示程序描述155. 系统调试225.1 调试界面显示225.2 结果分析236. 设计总结237. 参考文献24前言自从人类有了电之后,各行各业都因为有了电而飞速发展,并出现了无数新型产业,直至今日,各种的电气设备已经成了我们生活中不可缺少的一部分,给我们的生活带来了极大的便利。智能仪器是计算机技术与测试技术相结合的产物,仪器内部带有处理能力很强的智能软件。仪器仪表已不再是简单的硬件实体,而是硬件、软件相结合。近年来,智能仪器已开始从较为成熟的数据处理向知识处理发展,
7、使其功能向更高层次发展。病床呼叫系统是一种应用于医院病房、养老院等地方,用来联系沟通医护人员和病员的专用呼叫系统,是提高医院水平的必备设备之一。病床呼叫系统的优劣直接影响到病员的安危,历来受到各大医院的普遍重视。它要求及时、准确可靠、简便可行、利于推广。目前市场上存在着许多种型号不一功能各异的医院病房呼叫系统,主要为两大类:有线式和无线式2。无线式病房呼叫系统不存在铺设线路的问题,但是可靠性差,而且无线电波会干扰其他医疗仪器设备3。本文设计的是有线式的,适合较小的医院病房使用,具有成本低,易于操作、安装和维护,而且具有可靠稳定,对其他医疗设备不会产生干扰的特点;但受到布线较多,影响美观,故不适
8、宜较大的医院。病床呼叫管理系统便于病员快捷的呼叫护士,缩短人工呼叫的时间。当今病房呼叫系统正在逐步地向智能化发展,它可以和录像机一起使用,当病人按下开关时,在护士值班室的大屏幕能够观察病人的需要。并且可以配备对讲机等设备,能够使病员及时快捷地与医护人员进行沟通。 1概述 本章节主要介绍论文研究的课题的由来与发展前景,以及它所涉及的相关技术理论。1.1 单片机的发展单片机也被称作“单片微型计算机”、“微控制器”和“嵌入式微控制器”,单片机一词最初源于“Single Chip Microcomputer”,简称SCM。随着单片机在技术和体系结构上的进步,其控制功能不断扩展,国际上逐渐采用“MCU”
9、(Micro Controller Unit,微控制器)来代替SCM。单片机的发展历史大致分为4个阶段。第一阶段:单片机的探索阶段。这一阶段主要是探索如何把计算机的主要部件集成在芯片上。第二阶段:单片机的完善阶段。Intel公司在MCS-48的基础上推出了完善的、典型的MCS-51单片机系列。它在以下几个方面奠定了典型的通用总线型单片机体系结构:设置了经典、完善的8位单片机的并行总线结构;外围功能单元由CPU集中管理的模式;体现控制特性的地址空间和位操作方式;指令系统趋于丰富和完善,并且增加了许多突出控制功能的指令。第三阶段:向微控制器发展的阶段。这一阶段主要是为了满足测控系统要求的各种外围电
10、路和接口电路,突出其职能化控制能力。第四阶段:单片机的全面发展阶段。由于很多大半导体和电气厂商都开始参与单片机的研制和生产。随着单片机在各个领域全面深入的发展和应用,逐渐出现了高速、低功耗、大寻址范围、强运算能力的8位、16位、32位通用型单片机以及小型廉价的专用型单片机,还有功能全面的片上单片机系统。1.2 单片机的发展前景随着电子产品的广泛应用,单片机的应用领域相当广泛,如仪器仪表、家电、机电一体化、产品研发与开发等行业,都可以是单片机设计人员的就业、提升、创业之所。目前单片机已渗透到我们生活的各个领域,几乎很难找到没有单片机足迹的领域。导弹的导航装置,飞机上各种仪表的控制,计
11、算机的网络通讯与数据传输,工业自动化过程的实时控制和数据处理,广泛使用的各种智能IC卡,民用豪华轿车的安全保障系统,录像机、摄像机、全自动洗衣机的控制,以及程控玩具、电子宠物等等,这些都离不开单片机。更不用说全自动控制领域的机器人、智能仪表、医疗器械了。因此,单片机的学习、开发与应用将造就一批计算机应用与智能化控制的工程师和科学家。科技越发达,智能化的东西就越多。因此学习单片机是社会发展的必然需求。据统计,我国的单片机年需求量已达1-3亿片,且以每年大约16%的速度增长,但相对于世界市场我国的占有率还不到1%。特别是沿海地区的电子厂,在不断向内地市场辐射的进程中,多数产品所用的单片机需求量骤增
12、。鉴于单片机应用在我国才刚刚起步,有着广阔的前景,足以让我们确信培养单片机应用人才,特别是工程技术中普及单片机知识有着极为重要的现实意义。据调查目前我国的单片机从业人员只有140万人。随着社会的发展,单片机的从业人员将更为抢手。据不完全统计,到2010年,我国单片机设计从业人员将达300万人之多。目前我国单片机设计人才培养途径有三个:一是高校,像北大、清华、浙大、上海交大等。一个学校一年也就培养百十来人,加之,培养出来的学生不能做到毕业就上岗,得经过一段时间的实习培训,人才有限。二是设计公司自己培养。三是国外留学归来的人才。CHC 全国高科技教工委教育技术专业委员会委托全国职业教育技术专业人才
13、评审委员会推出单片机设计人员职业岗位培训合格证书项目正是迎合单片机市场的需求,解决燃眉之急。单片机设计人员职业岗位培训合格证书项目正是迎合单片机市场的需求,解决燃眉之急。1.3 单片机的结构原理单片机是微型机的一个重要分支,它在结构上的最大特点是把CPU、存储器、定时器和多种输入/输出接口电路集成在一块超大规模的集成电路芯片上。单片机内是一种在线式实时控制计算机,在线式就是现场控制,需要有较强的抗干扰能力,较低的成本。单片机由于这种结构,所以具有很多显著的特点。主要有控制能力强,抗干扰能力强、可靠性高,性能价格比高,低功耗、低电压,扩展了多种串行口和系统扩展容易等特点。1.4 单片
14、机的实际应用单片机广泛应用于仪表仪器、家用电器、医用设备、航空航天、专用设备的智能化管理及过程控制等领域,大致可分为以下几个范畴:在智能仪器仪表上的应用单片机具有体积小、功耗低、控制功能强、扩展灵活、微型化和使用方便等特点,广泛应用于仪器仪表中看,结合不同类型的传感器,可以实现诸如电压、功率、频率、温度、流量、速度、角度、硬度、元素、压力等物理量的测量。采用单片机控制使得仪器仪表数字化、智能化、微型化。且功能比采用电子和熟悉电路更加强大。例如精密的测量设备(功率计、示波器和各种分析仪)。在工业控制中的应用用单片机可以构成形式多样的控制系统、数据采集系统。例如工厂流水线的智能化管理,电梯智能化控
15、制、各种报警系统,与计算机联网构成二级控制系统等。在家用电器中的应用可以这样说,现在的家电基本上都采用了单片机控制,从电饭煲、洗衣机、电冰箱、空调机、彩电、其他音响视频器材、再到电子称量设备,五花八门,无其不有,无所不在。在计算机网络和通信领域的应用现在的单片机普遍具有通信接口,可以很方便的与计算机实现数据通信,为计算机网络和通信设备间的应用提供了极好的物质条件,可以的通信设备基本上都实现了单片机智能控制,从手机,电话机、小型程控交换机、楼宇自动通信呼叫系统、列车无线通信、再到日常工作中随处可见的移动电话,集群移动通信,无线对讲机等。单片机在医用设备领域中的应用单片机在易用设备领域中的应用相当
16、广泛,例如医用呼吸机,各种分析仪,监护仪,超声波诊断设备及病床呼叫系统等等。此外单片机在工商、金融、科研、教育、国防、航空航天领域都有相当广泛的应用。1.5 课题设计目标本课程设计主要用于医院病区的病人有紧急或自己不方便的事件时呼叫护士站寻求帮助,护士根据站内指示灯及响铃获取求助信息的来源,并能及时的给其提供帮助。护士在站内发现信号时及时将站内灯及响铃复位,在处理完后再在病床前的开关将病床及病房的灯和响铃复位。2.设计方案论述2.1 病床呼叫系统的控制要求用8051自身接口实现数码管静态显示和键盘扫描,使用8051单片微机外加作地址锁存用的四块三态锁存器74LS373芯片和一块74LS138芯
17、片可构成一个完整的最小微机电路。以此为基础,在智能装置中若要配置多位数码管显示器,以及m行n列矩阵键盘的话,可以不扩展I/O芯片而由8051自身I/O口,实现上述功能, 即用P0口的八个端口作为LED的段选,用P2口的高三位连接一个三八译码器74LS138 作为四个LED的片选.用P1口和P2口的低五位做键盘电路的接口。本课题主攻方向是使系统实现以下目的:任意病房(共16张)呼叫,医护值班室马上能响应并显示病房号;显示病房床号;若有多个病床呼叫就循环显示;处理完毕后清除记录;显示器不重复显示按一次以上的病床号2.2 病床呼叫系统的设计框图本设计是基于AT89C51单片机设计的病房呼叫系统设计,
18、该系统就是以Atmel公司的AT89C51单片机作为主控器,包括键盘输入电路,显示电路,以及晶振复位电路等来实现病房呼叫系统如图1。图1 病床呼叫系统设计结构框图3.系统硬件设计实现本设计基于51单片机,以51单片机为核心,显示电路,键盘电路,报警电路为模版,我们构造了硬件构成示意图如图2:图2 硬件构成示意图3.1 控制器AT89C51AT89C51是美国ATMEL公司生产的低电压,高性能CMOS8位单片机,片内含4k bytes的可反复擦写的只读程序存储器(PEROM)和128 bytes的随机存取数 据存储器(RAM),器件采用ATMEL公司的高密度,非易失性存储技术生产,兼容标准MCS
19、-51指令系统,片内置通用8位中央处理器(CPU)和Flash存储单元,功能强大AT89C51单片机可为您提供许多高性价比的应用场合,可灵活应用于各种控制领域。主要特性: 与MCS-51产品指令系统完全兼容 4K字节可重擦写Flash闪速存储器 1000次擦写周期 全静态操作:0Hz-24MHz 三级加密程序存储器 128×8字节内部RAM 32个可编程I/O口线 2个16位定时/计数器 5个中断源 AT89C51单片机采用40Pin封装的双列直插 DIP结构,图3是它的引脚配置图。40个引脚中,正电源和地线两根;4组8位I/O口,共32个引脚;时钟电路引脚 XTAL1和 XTAL2
20、;控制信号引脚包含:复位输入端 RET,地址锁存允许输出/编程脉冲输入端 ALE/PROG,片外程序存储器选通控制信号端 PSEN,内外程序存储器选择/编程电源输入端 EA/VPP。图3 AT89C51单片机引脚图3.2 键盘模块在单片机的应用系统中,通常都有人机对话功能。它包含人对系统的状态干预、数据的输入以及应用系统向人报告运行状态与运行结果等。键盘成为人机联系的必要手段,此时需要配置适当的键盘输入设备。3.1.1 键盘工作原理键盘中的每个按键都是一个常开的开关电路,当所设置的功能键或数字键按下时,则处于闭合状态。对于一组键或一个键盘,需要通过接口电路与单片机相连,以便将键的开关状态通知单
21、片机。单片机可以采用查询或中断方式检查有无键的输入以及是哪个键被按下,并通过转移指令转入执行该键的功能程序,执行完再返回到原始状态。3.1.2 独立式按键独立式按键是指直接用I/O口线构成的单个按键电路。每个独立式按键单独占有一根I/O口线,每根I/O口线的工作状态都不会影响其他I/O口线的工作状态。3.1.3 行列式键盘独立式按键电路每一个按键开关占用一根I/O口线。当按键数较多时,要占用较多的I/O口线。因此,在按键数大于8时,通常采用行列式(也称“矩阵式”)键盘电路。最简单的键盘,每个键对应I/O端口的一位,没有什么键闭和时,各位均处于高电位。当有一个键按下时,就是对应位接地而成为低电位
22、,而其它位仍为高电位。这样,CPU只要检测到某一位为“0”,便可判别出对应键已经按下。但是,当键盘上的键较多时,引线太多,占用的I/O端口也太多。比如,一个有64个键的键盘,采用这种方法来设计时,就需要64条连线和8个8位并行端口。所以,这种简单结构只用在仅由几个键的小键盘中。通常使用的键盘结构是矩阵式的,如图4所示。设有m * n个键盘,那么,采用矩阵式结构以后,便只要条引线就行了。比如,有m + n 个键,那么,只要用两个并行端口和16条引线便可以完成键盘的连接。图4 矩阵键盘图3.1.4 键盘电路设计为了识别键盘上的闭合键,通常采用两种方法,一种称为行扫描法,另一种称为行反转法。行扫描法
23、识别闭合键的原理如下:先使第0行接地,其余行为高电平,然后看第0行是否有键闭合,这是通过检查列线电位来实现的,即在第0行接地时,看是否有条列线变成低电平。如果有某条列线变为低电平,则表示第0行和此列线相交位置上的键被按下;如果没有任何一条列线为低电平,则说明第0行上没有键被按下。此后,再将第1行接地,然后检测列线中是否有变为低电平的线。如此往下逐行扫描,直到最后一行。在扫描过程中,当发现某一行有键闭合时,也就是列线输入中有一位为0时,便在扫描中途退出,而将输入值进行移位,从而确定闭合键所在的列线位置。根据行线位置和列线位置便能再扫描法来确定具体位置。将行线和一个并行接口相接,CPU每次使并行输
24、出接口的某一位为0,便相当于将某一行线接地,而其他位为1,则相当于使其他行线处于高电平。为了检查列线上的电位,将列线和一个并行输入输出口相接,CPU只要读取输入输出口中的数据,就可以设法判别出第几号键被按下。从上面的原理中知道,程控扫描法是由程序控制键扫描的方法如图5。开始调显示程序扫描整个键盘有键按下?延时10ms再次扫描整个键盘此行有键按?输出使Xi为低电平各行扫描完了?按?行值+0SH有键按下求下一行为低电平模型列值+1列数据右移1位有键按下?延时计算键值BUFF 键值调用找功能键程序键释放了?NYYYYNNNN图5 行扫描法的流程图从图中可以看到,用行反转法识别闭合键时,要将行线接一个
25、并行口,先让它工作为输出方式,将列线接到一个并行口,先让它工作在输出方式。程序使CPU通过输出端口往各行线上全部送到低电平,然后读入列线的值。如果此时有某一个键被按下,则必定会使某一列线值为0,然后,程序再对两个并行端口进行方式设置,使接行线的并行端口工作在输出方式,而使接列线的并行端口工作在输出方式,并且将刚才读得的列线值从所接的并行端口输出,再读取行线的输入值,那么,在闭合键所在的行线上的值必定为0。这样,当一个键被按下时,必定可以读得一对惟一的行值和列值。在键盘设计时,除了以键码的识别以外,还有抖动问题需要解决。有软件方法可以很容易解决抖动问题,这就是通过延迟来等待抖动消失,这之后,再读
26、入键码。3.3 显示模块为了方便人们观察和监视单片机运行情况,通常需要利用显示器作为单片机的输出设备,以显示单片机的键输入值、中间信息以及运算结果等。在单片机应用系统中,常用的显示器主要有LCD(液晶显示器)和LED(发光二极管显示器)。这两种显示器都具有耗电省,配置灵活,线路简单,安装方便,耐振动,寿命长等优点。3.3.1 液晶显示器液晶显示器LCD(Liquid Crystal Display)是一种极低功耗的显示器。由于其具有清晰度高,信息量大等特点,从而使得它越来越广泛地应用在小型仪器的显示中。把LCD与驱动器组装在仪器的部件的英文名称为LCD Module,简称LCM。LCM一般分为
27、三类,即为段码型液晶模块、点阵字符液晶模块和点阵图形液晶模块。3.3.2 LED点阵显示屏LED点阵显示屏的构成型式有多种,其中典型的有两种。一种把所需展示的广告信息烧写固化到EPROM芯片内,能进行固定内容的多幅汉字显示,称为单显示型;另一种在机内设置了字库、程序库,具有程序编制能力,能进行内容可变的多幅汉字显示,称可编程序型。目前,国内的LED点阵显示屏大部分是单显示型,其显示的内容相对较少,显示花样较单一。一般在产品出厂时,显示内容就已写入显示屏控制系统中的EPROM芯片内,当需要更换显示内容时就非常困难,这样使该类型的显示屏使用范围受到了限制。国内的另一种LED显示屏可编程序型LED显
28、示屏,虽然增加了显示屏系统的编程能力,显示内容和显示花样都有所增加,但也存在着更换显示内容不便的缺点。随着社会经济的迅速发展,如今的广告牌都存在着显示内容丰富、信息量大、信息更换速度快等特点。因此传统的LED显示屏控制系统已经越来越不能满足现代广告宣传业的需要。而利用PC机通信技术控制LED显示屏,则具有显示内容丰富,信息更换灵活等优点。8*8点阵如图6是8*8点阵原理图和实物图图6 8*8点阵原理图图7为8×8单基色点阵的结构图,从内部结构可以看出8×8点阵共需要64个发光二极管,且每个发光二极管是放置在各行和列的交叉点上。当对应的某一列置高电平,另一列置低电平时,则在该
29、行和列的交叉点上相应的二极管就亮。图7 8*8点阵实物图8*8点阵显示原理从理论上说,不论显示图形还是文字,只要控制与组成这些图形或文字的各个点所在的位置相对应的LED器件发光,就可以得到我们想要的显示结果,这种同时控制各个发光点亮灭的方法称为静态驱动显示方式。8*8的点阵共有64个发光二极管,显然单片机没有这么多的端口,如果我采用锁存器来扩展端口,按8位的锁存器来计算,8*8的点阵需要64/8=8个锁存器。这个数字很庞大,因为我们仅仅是8*8的点阵,在实际应用中的显示屏往往要大得多,这样在锁存器上花的成本将是一个很庞大的数字。因此在实际应用中的显示屏几乎都不采用这种设计,而采用另外一种称为动
30、态扫描的显示方法。动态扫描的意思简单地说就是逐行轮流点亮,这样扫描驱动电路就可以实现多行(比如8行)的同名列共用一套驱动器。具体就8*8的点阵来说,把所有同1行的发光管的阳极连在一起,把所有同1列的发光管的阴极连在一起(共阳极的接法),先送出对应第一行发光管亮灭的数据并锁存,然后选通第1行使其燃亮一定时间,然后熄灭;再送出第二行的数据并锁存,然后选通第2行使其燃亮相同的时间,然后熄灭;以此类推,第8行之后,又重新燃亮第1行,反复轮回。当这样轮回的速度足够快(每秒24次以上),由于人眼的视觉暂留现象,就能够看到显示屏上稳定的图形了。采用扫描方式进行显示时,每一行有一个行驱动器,各行的同名列共用一
31、个驱动器。显示数据通常存储在单片机的存储器中,按8位一个字节的形式顺序排放。显示时要把一行中各列的数据都传送到相应的列驱动器上去,这就存在一个显示数据传输的问题。从控制电路到列驱动器的数据传输可以采用并列方式或串行方式。显然,采用并行方式时,从控制电路到列驱动器的线路数量大,相应的硬件数目多。当列数很多时,并列传输的方案是不可取的。解决串行传输中列数据准备和列数据显示的时间矛盾问题,可以采用重叠处理的方法。即在显示本行各列数据的同时,传送下一列数据。为了达到重叠处理的目的,列数据的显示就需要具有所存功能。经过上述分析,就可以归纳出列驱动器电路应具有的功能。对于列数据准备来说,它应能实现串入并处
32、的移位功能;对于列数据显示来说,应具有并行锁存的功能。这样,本行已准备好的数据打入并行锁存器进行显示时,串并移位寄存器就可以准备下一行的列数据,而不会影响本行的显示。图8为显示屏电路实现的结构框图:图8 显示屏系统框图3.3.3 LED显示电路在LED的点阵显示中,已经详细介绍了显示的原理,此外还需要知道显示驱动程序。显示驱动程序在进入中断后首先要对定时器T0重新赋初值,以保证显示屏刷新率的稳定,1/16扫描显示屏的刷新率(帧频)计算公式如下:刷频率(帧频)=1/16×T0溢出率 =1/16×f/12(65536-t) 其中f为晶振频率,t为定时器T0初值(工作在16位定时
33、器模式)。然后显示驱动程序查询当前燃亮的行号,从显示缓存区内读取下一行的显示数据,并通过串口发送给移位寄存器。为消除在切换行显示数据的时候产生拖尾现象,驱动程序先要关闭显示屏,即消隐,等显示数据打入输出锁存器并锁存,然后再输出新的行号,重新打开显示。图9为显示驱动程序(显示屏扫描函数)流程图:图9 显示驱动流程3.4 时钟电路时钟是时序的基础,AT89C51核片内由一个反相放大器构成振荡器,可以由它产生时钟,时钟可以由两种方式产生内部方式和外部方式。本系统采用内部方式,在XTAL1和XTAL2端外接石英晶体作为定时元件,内部反相放大器自激振荡,产生时钟。时钟发生器对振荡脉冲二分频。电容采用30
34、pF电容。如下图10所示:图10 内部时钟电路3.5 复位电路RST引脚是复位信号输入端,高电平有效。采用上电加按钮复位,因为本系统设计考虑到该系统比较重要,所以除了采用上电复位的方式外,应该还有按钮复位备用复位方式以防止系统死机时能。如下图11所示:图11 上电复位和按键复位4.程序设计4.1 软件开发环境简介对于AT89C51的控制设计,以Keil c软件编程环境,以proteus软件为电路仿真设计环境。二者的结合为该系统的设计提供有利条件。该软件是一款集编程和仿真于一体的软件,它支持汇编、C语言及二者的混合编程。Keil c软件界面,如图12所示:图12 Keil_c软件界面该软件是一款
35、集单片机和SPICE分析于一身的仿真软件,功能极其强大 ,可仿真ARM、51、AVR、PIC。Proteus ISIS的工作界面是一种标准的Windows界面,如图所示,包括:标题栏、主菜单、标准工具栏、绘图工具栏、状态栏、对象选择按钮、预览对象方位控制按钮、仿真进程控制按钮、预览窗口、对象选择器窗口、图形编辑窗口如图13。图13 电路仿真界面4.2 主程序程序描述首先对各存储单元初始化,设定定时初值,接着判断清零键,看是否按下,若按下,则清零,然后继续扫描键盘,如扫描到键盘有键按下,则调用计数显示子程序,循环显示病床号时,要判断标志位是否为1,若为1,则表示已经按下,则不响应,如为0,则调用
36、循环显示病床号子程序,循环显示病床号,接着定时一秒。最后,清除定时一秒,准备下一次的定时。4.3 显示程序描述按下键总数显示子程序描述(图 14 按键总数显示程序流程图)图14 按键总数显示程序流程图 把按键数存储单总元(COUNTER)的值经过BCD调整后十位和个位分别送(7AH)(7BH),调用显示子程序显示按键总数。循环显示病床号子程序描述(图 15按键循环显示子程序)首先判断标志位是否为0,若为0,则表对示应的存储单元里没有值存入,则再检测下一个存储单元标志位是否为0,直到检测到为1.如为1,则把值存入(BED_BOUNTER)中,接着进行BCD调整为十进制,把十位和个位分别送入(BE
37、DCODE_1)和(BEDCODE_2)中,然后调用显示子程序,循环显示病床号。图15 按键循环显示子程序源程序:#include<reg51.h> /51系统端口定义h文件#include "dianzhen.h" /点阵h文件#include"keyboard.h" /键盘处理h文件uchar ys=0,num=0,N=0,d=0,q=0; /num为当前显示值,N为总显示值/*主函数*/void main() uchar j;TMOD=0x10;TH0=(65536-45000)/256;/设置50毫秒定时TL0=(65536-4500
38、0)%256;TR0=1;ET0=1; EA=1; P3_1=0; while(1) if(P3_2=0) if(N>q) q+;while(P3_2=0);P3_1=1; /当P3_2按键弹起的后,P3_1口赋高电平delay10ms(10);/延时子程序P3_1=0; /返回原始界面 if(P3_3=0) /当P3_3按键按下就执行病房号的显示 if(q>0) q-;while(P3_3=0); P3_1=1;delay10ms(10);P3_1=0; if(P3_4=0) N-;if(N>0) for(j=q;j<N;j+) bj=bj+1; bN=0; Else
39、 b0=0; while(P3_4=0); q=0; P3_1=1; delay10ms(10); P3_1=0; keyboard();if(m!=key) m=key; bN=key; N+; P3_1=1; delay10ms(10); P3_1=0; /*中断服务子程序*/void timer0() interrupt 1 using 1/T0中断 TH0=(65536-50000)/256;TL0=(65536-50000)%256;if(d=0) display1(N,bnum,bq); ys+;if(ys=100) num+; d=1 ;else if(ys>105) d=
40、0; ys=0;if(num>N) num=0;/病房号数清零#include <reg51.h>#include <absacc.h>#include "zimo.h"uchar b10;/*延时子程序*/void delay10ms(uchar d) unsigned char i,j,k; for(k=d;k>0;k-) for(i=20;i>0;i-) F or(j=248;j>0;j-); /*点阵显示子程序*/void display1(uchar x,uchar s,uchar p) uchar i,j=0,k,
41、m=0,n=0,w2,y2,z2; w0=s/10; w1=s%10; y0=x/10; y1=x%10; z0=p/10;z1=p%10; if(s<=0|s>16) for(i=0;i<16;i+,n+) lie=i; if(n=8) m=1;j=0; for(k=0;k<1;k+) hang0=shuzi2ymj; hang1=shuzi2ymj+1;hang2=shuzi2zmj;hang3=shuzi2zmj+1; hang0=0x00; /清屏 hang1=0x00;hang2=0x00;hang3=0x00; j+=2;j=0; for(i=16;i<
42、;64;i+) lie=i; for(k=0;k<1;k+) hang0=ziku1j;/ 第0行赋值 hang1=ziku1j+1; /第1行赋值hang2=ziku2j;/ /第2行赋值 hang3=ziku2j+1;/ /第3行赋值 hang0=0x00; /清屏 hang1=0x00;hang2=0x00; /清屏 hang3=0x00; j+=2; else for(i=0;i<16;i+,n+) lie=i; if(n=8) m=1;j=0; for(k=0;k<1;k+) hang0=shuzi2wmj; hang1=shuzi2wmj+1;hang2=shuz
43、i2zmj; hang3=shuzi2zmj+1; hang0=0x00; /清屏 hang1=0x00; hang2=0x00; /清屏 hang3=0x00; j+=2;j=0; for(i=16;i<64;i+) lie=i; for(k=0;k<1;k+) hang0=ziku2j; hang1=ziku2j+1; hang2=ziku2j; hang3=ziku2j+1; hang0=0x00; /清屏 hang1=0x00; hang2=0x00; /清屏 hang3=0x00; j+=2; 5系统调试系统调试工作是系统开发过程中必不可少的一个过程,一个完整的控制系统调试包含控制系统的硬件联调、软件联调、系统仿真、仿真烧录和现场安装调试等几个环节。在系统设计组装完成后,首先是进行实验室条件下的系统硬件调试,调试成功后,有了硬件的保证,就容易发现软件的漏洞,进而促进改进和完善。所有的调试通过后,要进行现场运行并能持续一定的时间,待其中未发现故障后,方可验收合格,才算完成了整个系统的设计工作原理如图16。图16 原理图5.1 调试界面显示下面是我们通过Proteus软件编程,使对应的软件仿真模块变
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 二零二五年度农田水电灌溉自动化工程合同
- 2025版灭蟑螂项目外包服务合同范本2篇
- 二零二五年度智慧农业设备采购与维护服务合同2篇
- 2025年度特种作物种植用地租赁合同
- 二零二五年度美甲店品牌合作租赁合同(含营销策划)
- 二零二五年度水上乐园清洁工临时用工服务规范合同
- 2025年度竞业禁止员工合同续签及竞业限制赔偿合同
- 二零二五年度旅游业劳动合同范本旅游项目运营版2篇
- 二零二五年度美容院美容美发店转让合同
- 二零二五年度文化教育股权分红与教育资源合同
- 【寒假预习】专题04 阅读理解 20篇 集训-2025年人教版(PEP)六年级英语下册寒假提前学(含答案)
- 2024年智能监狱安防监控工程合同3篇
- 2024年度窑炉施工协议详例细则版B版
- 幼儿园篮球课培训
- 【企业盈利能力探析的国内外文献综述2400字】
- 统编版(2024新版)七年级《道德与法治》上册第一单元《少年有梦》单元测试卷(含答案)
- 100道20以内的口算题共20份
- 高三完形填空专项训练单选(部分答案)
- 护理查房高钾血症
- 项目监理策划方案汇报
- 《职业培训师的培训》课件
评论
0/150
提交评论