基于单片机的病房呼叫器的设计

基于单片机的病房呼叫器的设计

ID:18582602

大小:2.64 MB

页数:8页

时间:2018-09-19

基于单片机的病房呼叫器的设计_第1页
基于单片机的病房呼叫器的设计_第2页
基于单片机的病房呼叫器的设计_第3页
基于单片机的病房呼叫器的设计_第4页
基于单片机的病房呼叫器的设计_第5页
资源描述:

《基于单片机的病房呼叫器的设计》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库

1、病房呼叫器的设计一、内容和要求1、内容:完成矩阵按键的设计;LED数码管显示的设计;复位电路的设计;控制程序的编写等。2、要求:(1)设计一个可容纳16张床位的病房呼叫系统;(2)要求每张床位都有一个按键,当患者需要一个护士时,按一下按钮,此时护士值班室内的呼叫系统版上显示该患者的床位号,并振铃;(3)当护士按下响应键时,取消当前呼叫。二、目的和意义1、掌握AT89C51的结构特点、工作原理和使用方法。2、掌握LED数码管显示数字的工作原理和方法。3、掌握行列扫描矩阵键盘的的使用方法。三、总体方案和设计思路图1电路设计框图本

2、电路是由STC89C52单片机为控制核心,具有在线编程功能,低功耗,能在3V超低压工作;4*4矩阵按键电路采用行列扫描的方法判断是否有按键按下,用共阳极LED数码管将采集到的按键值显示出来,同时振铃电路响应报警;当复位按钮按下时,数码管显示零,振铃消失。四、仿真电路设计1、4*4按键电路的设计STC89C51单片机为40引脚双列直插芯片,有四个I/O口P0,P1,P2,P3,MCS-51单片机共有4个8位的I/O口(P0、P1、P2、P3),每一条I/O线都能独立地作输出或输入。键盘在单片机应用系统中能实现向单片机输入数据、

3、传送命令等功能,是人工干预单片机的主要手段。矩阵式键盘用于按键数目较多的场合。它由行线和列线构成,按键位于行列的交叉点上,通过对键的识别实现键的确认。4*4矩阵按键的行线接P1口的低四位,列线接P1口的高四位。按键的位置由行号和列号唯一确定,如图2所示:8图2主控制系统2、数码管显示电路(1)LED显示器工作原理LED显示器工作于静态显示方式时,各位的共阴极或共阳极连接在一起并接地或接电源。每位的段码线(a-dp)分别与一个锁存器输出相连。之所以叫静态显示,是因为各个LED的显示字符一经确定,相应锁存器锁存的段码输出将不变。

4、直到送入下一个字符的段码为止。因此,静态显示的亮度较高。(2)LED数码管显示器的连接方法共阳极接法:把发光二极管的阳极接在一起构成公共阳极,使用时,公共阳极接+5V,每个发光二极管的阳极通过电阻与输入端相连,当阴极端输入低电平时,发光二极管就导通点亮,而输入高电平时则不亮。P0所接数码管显示按键值的个位数,P2所接数码显示按键值的十位数。两个数码管采用共阳极接法。P0口为开漏输出,在作为通用I/O口使用时,需在外部接上拉电阻至电源。图3LED数码管显示电路83、振铃响应电路图4振铃响应电路图4、按键复位电路根据设计要求需要

5、选择一个独立按键作为响应呼叫按键。按键模块如图5所示:图5按键复位电路五、软件设计1、主程序流程图图6主程序流程图主程序:/********main函数*********/voidmain(void){P1=0;P2=0xff;P0=0xff;P3=0;TMOD=0x01;IE=0x82;set=1;TH1=-10000>>8;TL1=-10000%256;/*定时器1每10000计数脉冲发生1次中断,12MHz晶振,定时时间10000us*/8TCON=0x40;/*内部脉冲计数*/IE=0x88;/*打开定时器中断*/k

6、ey_Value=0xf0;do{if(!set){P2=DSY_Table[0];P0=DSY_Table[0];}elseif(key_Value!=0xf0)/*如果有按键*/{TR0=1;Key_process();/*键值处理程序*/key_Value=0xf0;/*重置键值*/}else{TR0=0;}}while(1);}2、按键扫描子程序/*****扫描按键函数-2步判别扫描法*****/unsignedcharkeyscan(void)/**扫描按键函数-2步判别扫描法**/{ucharreadkey,re

7、readkey;ucharx_temp,y_temp;KEY_PORT=0x0f;x_temp=KEY_PORT&0x0f;if(x_temp==0x0f)return(0xf0);/*无按键,退出*/KEY_PORT=0xf0;y_temp=KEY_PORT&0xf0;readkey=x_temp

8、y_temp;time(10);/*延时10ms后再测按键*/KEY_PORT=0x0f;x_temp=KEY_PORT&0x0f;if(x_temp==0x0f)return(0xf0);/*无按键,退出*/KEY_PORT=

9、0xf0;y_temp=KEY_PORT&0xf0;rereadkey=x_temp+y_temp;if(readkey==rereadkey)/*2次一致*/{return(~rereadkey);}return(0xf0);}voidKey_process(void)/*键值处理程序*

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。