夜班防睡控制记录器单片机文档在线提供

上传人:博****1 文档编号:457449836 上传时间:2022-08-16 格式:DOC 页数:22 大小:1.87MB
返回 下载 相关 举报
夜班防睡控制记录器单片机文档在线提供_第1页
第1页 / 共22页
夜班防睡控制记录器单片机文档在线提供_第2页
第2页 / 共22页
夜班防睡控制记录器单片机文档在线提供_第3页
第3页 / 共22页
夜班防睡控制记录器单片机文档在线提供_第4页
第4页 / 共22页
夜班防睡控制记录器单片机文档在线提供_第5页
第5页 / 共22页
点击查看更多>>
资源描述

《夜班防睡控制记录器单片机文档在线提供》由会员分享,可在线阅读,更多相关《夜班防睡控制记录器单片机文档在线提供(22页珍藏版)》请在金锄头文库上搜索。

1、目录一、设计要求21、环境需求22、功能需求2二、软件设计3三、硬件设计71、各芯片使用及说明72、硬件设计原理133、实验线路连接14四、程序调试与运行15五、课设小结15附A:参考资料16附B:源程序17附C:硬件原理图22一、设计要求1、环境需求 硬件方面: 一台计算机(Pentium 4 CUP 2.40GHZ,256MB 内存)、一个DVCC实验箱,主要用到了如下的芯片:一片89C51、一片8155, 6个共阳的七段发光二极管(由8155驱动),一个蜂鸣片,发光二极管2只等。 软件方面:WINDOWS XP Professional及以上dv88h实验系统,DVCC实验软件系统。2、

2、功能需求基本功能需求如下:1)每10min用较柔和的声音提醒一次值班者,值班者按某一键后复位,计时重新开始。2)若计到11min时无人按复位键,则以较急促的声音报警,黄灯闪烁,并每隔10min计数器加1。3)当到60min时红灯闪烁,并仧尖锐的声音持续报警。以LED显示时、分、秒。则记录下这个时刻,以便管理者查看。显示格式:时、分、秒。二、软件设计本次课程设计采用的主要是模块化的设计思想,首先对夜间防睡控制/纪录器的每个功能模块进行详细的需求分析,需求分析完之后确定各个模块功能之后,建立各个需求的功能模块图,最后细化每个模块的功能。根据细化后的功能模块图对每个模块编写相应的子程序,对每个功能模

3、块进行测试,在成功测试每一个功能模块之后,然后进行整个程序的测试。夜间防睡控制的功能模块图如下:夜班防睡控制 / 记录器计时模块发声控制记录控制时间查询关中断保存现场信息SECOND60分钟MINUTE加1MINUTE60秒钟SECOND=0小时HOUR加1分钟MINUTE=0显示时间小时HOUR=10?1-TR0 (开定时器T0)产生柔和发声脉冲COUNT=20?产生急促发声脉冲,黄灯亮按下复位键?COUNT=30?按下复位键?YNYNY继续计时COUNT=0YNY时间记录和查看时间COUNT=30S,记录该时刻的时间存放在50H,51H,52H中判断是否按下查看记录时间键1-F0 (标记查

4、看键按下)继续计时NY查看计时 / 次数F0 = = 1显示记录时间 / 次数F0 = = 0显示当前时间NYNY三、硬件设计1、各芯片使用及说明 本次夜间防睡系统主要使用了的芯片为:80C51(CPU),8155。MCS-51 CPU中的位处理器,是一个完整的1位微计算机,它有自己的CPU、位寄存器、I/O口和指令集。这个1位机在开关决策、逻辑电路仿真 、工业控制方面很有效;而8位机在数据采集、运算处理有优势。二者相辅相成,是单片机技术上的1个突破。本次实验中主要使用了该CPU的主要使用情况及介绍如下:(A) 单片机中主要的端口主要使用情况如下:1) P0口:双向8位三态I/O口,此口为地址

5、总线(低8位)及数据总线分时复用口,可带8个LSTTL负载。2) P1口:8位准双向I/O口,可带4个 LSTTTL负载。3) P2口:8位准双向I/O口,与地址总线 (高8位)复用。4) P3口:8位准双向I/O口,双功能复用口。 本次实验中主要用到了P0口的情况如下:P作为复位键,提醒值班人员 P查看值班人员睡眠次数P查看夜班人员开始睡眠时间P控制黄灯信号P控制红灯信号P作为喇叭发声的脉冲频率输出(B)定时器(T0 / T1) 定时器/计数器简称定时器,8051单片机内部有2个16位的可编程定时/计数器:定时器0(T0)和定时器1(T1)。可编程是指其功能(如工作方式、定时时间、启动方式等

6、)可以由指令来确定和改变。 在定时器/计数器中除了有两个16位的计数器之外,还有2个特殊功能寄存器(控制寄存器TCON和方式寄存器TMOD)。 该硬件图如下:(C) 数据存储器(RAM)片内为128 B,片外最多可外扩64 KB。数据存储器来存储单片机运行期间的工作变量、运算的中间结果、数据暂存和缓冲、标志位等。片内的128 B的RAM,以高速RAM的形式集成在单片机内,可以加快单片机运行的速度,而且这种结构的RAM还可以降低功耗。本次程序中主要使用的内存情况如下:片内:R0R7(0区),30H以后的部分单元。扩展的数据存储存储器:30H3FH作为显示单元内容的存储。(D) 特殊功能寄存器(S

7、FR)特殊功能寄存器共有21个,用于CPU对片内各功能部件进行管理、控制、监视。实际上是一些控制寄存器和状态寄存器,是一个具有特殊功能的RAM区。(D)控制显示的芯片介绍如下:8155芯片使用了地址为0FF20H,0FF21,0FF22H,0FF23H地址。主用用来驱动LED显示和扫描键盘。扫描键盘时,各个端口的使用情况如下:0FF20H为输出口,用来扫描字位口。在AL中送0,使键盘所有的行线输出为0,用来检测键盘的输入。0FF22H为输入口,用来扫描键盘输入。使用IN指令,从端口地址中读取输入键盘列号。在驱动LED显示的时候,各个端口的使用情况如下:0FF22H(B口)作为输出口,主要用来控

8、制LED显示的字型码,驱动LED显示字型(09)。0FF21(A口)作为输出口,也叫字位口,用来控制第几个LED显示屏显示。(E)8051的各个引脚介绍如下: 电源引脚 电源引脚接入单片机的工作电源。Vcc(40引脚):接+5V电源。Vss(20引脚):接地。 时钟引脚 2个时钟引脚XTAL1、XTAL2外接晶体与片内的反相放大器构成了1个振荡器,它为单片机提供了时钟控制信号。2个时钟引脚也可外接独立的晶体振荡器。 XTAL1(19引脚):接外部晶体的1个引脚。该引脚内部是1个反相放大器的输入端。这个反相放大器构成了片内振荡器。如果采用外接晶体振荡器时,此引脚应接地。 XTAL2(18引脚):

9、接外部晶体的另一端,在该引脚内部接至内部反相放大器的输入端。若采用外部时钟振荡器时,该引脚接收时钟振荡器的信号,即把此信号直接接到内部时钟发生器的输入端。 RST/Vpd(9引脚)RST(RESET)是复位信号输入端,高电平有效。当单片机运行时,在此引脚加上持续时间大于2个机器周期(24个时钟振荡周期)的高电平时,就可以完成复位操作。在单片机正常工作时,此引脚应为 =0.5V低电平。Vpd为本引脚的第二功能,即备用电源的输入端。当主电源Vcc发生故障,降低到某一规定值的低电平时,将+5V电源自动接入RST端,为内部RAM提供备用电源,以保证片内RAM中的信息部丢失,从而使单片机在复位后能继续正

10、常运行。 ALE/PROG(Address Latch Enable/PROGramming,30引脚) ALE引脚输出为地址锁存允许信号,当单片机上电正常工作后,ALE引脚不断输出正脉冲信号。当单片机访问外部存储器时,ALE输出信号的负跳沿用于单片机发出的低8位地址经外部锁存器锁存的锁存控制信号。即使不访问外部锁存器,ALE端仍有正脉冲信号输出,此频率为时钟振荡器频率fosc的1/6。如果想初步判断单片机芯片的好坏,可用示波器查看ALE端是否有正脉冲信号输出。如果有脉冲信号输出,则单片机基本上是好的。 PROG为本引脚的第二功能。在对片内EPROM型单片机编程写入时,此引脚作为编程脉冲输入端

11、。 PSEN(Program Strobe Enable,29引脚) 程序存储器允许输出控制端。在单片机访问外部程序存储器时,此引脚输出脉冲负跳沿作为读外部程序存储器的选通信号。此引脚接外部程序存储器的OE端。PSEN端可以驱动8个LS型TTL负载。 EA/Vpp(Enable Address/Voltage Pulse of Programming,31引脚) EA功能为内外程序存储器选择控制端。 当EA引脚为高电平时,单片机访问片内程序存储器,但在PC(程序计数器)值超过0FFFH时,即超出片内程序存储器的4KB地址范围时,将自动转向执行外部程序存储器内的程序。 当EA引脚为低电平时,单片

12、机则只访问外部程序存储器,不论是否有内部程序存储器。对于8031来说,因其无内部程序存储器,所以该引脚必须接地,这样只能选择外部程序存储器。 Vpp为本引脚的第二功能。在对EPROM型单片机8751片内EPROM固化编程时,用于施加较高的编程电压。对于89C51,则加在Vpp引脚的编程电压为+12V或+5V。2、硬件设计原理 本次夜间防睡控制 / 记录的课程设计主要是利用了8031这块微处理器做为控制器来控制整个程序的执行。本次课程设计除了控制程序执行的运算器和控制器之外,主要使用了该芯片的两个定时器。 其中定时器T0主要用来做为计时的控制,在该程序中用来产生100ms频率的脉冲,每次计数10

13、次时为1s中。采用的定时器T0的方式一。装入的计数初值为:3CB7H。每次计数完成之后执行中断程序时要重新装入计数初值。 而定时器T1主要用来产生发生频率的控制,在该程序中用来产生不同频率的脉冲。当然人儿能分辨的频率范围为:20HZ20000HZ,所以必须保证产生的频率在这个范围之内。比如说,当频率为500HZ时,该频率范围的声音比较柔和。我采用的该定时器T1的工作方式二,该方式能够自动重新装入计数初值。喇叭的发声是在计时30s值班人员还没有按键的情况下,开始发声的,如果有人按复位键的话,喇叭发声停止,并且重新开始计数。 显示部分主要使用8155芯片来控制显示。显示的LED采用的是动态扫描的显

14、示方式动态显示。各个端口的使用见硬件介绍部分。3、实验线路连接本次课程设计的连线比较简单,采用的连线如下:1)P0.0连接开关SW1;2)P0.1连接开关SW2;3)P0.2连接开关SW3;4)P0.7连接开关SW4;5)P0.4连接开关SW5;6)P0.5连接开关SW6。四、程序调试与运行本次实时时钟设计主要采用的是模块化的设计思想。所以首先必须对每一个模块进行单独的测试连接。程序中测试的过程如下所述。首先对计时单元进行测试。首先编好计时单元模块之后进行调试。看计时的脉冲是否准确,通过P1.3引脚输出的脉冲;连接示波器,观察屏幕上显示的脉冲频率,看是否为100ms的脉冲,结果频率为100ms,说明该频率通过了测试阶段。接下来观察时钟的计时是否准确。对秒中进行测试,观察秒钟的显示是否正确;如果9加1是为10秒;如果59加1秒,则应为1分钟;如果59分,59秒加1秒中

展开阅读全文
相关资源
正为您匹配相似的精品文档
相关搜索

最新文档


当前位置:首页 > 资格认证/考试 > 自考

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号