收藏 分销(赏)

毕业设计基于单片机的作息时间控制器.doc

上传人:二*** 文档编号:4484863 上传时间:2024-09-24 格式:DOC 页数:31 大小:988KB
下载 相关 举报
毕业设计基于单片机的作息时间控制器.doc_第1页
第1页 / 共31页
亲,该文档总共31页,到这儿已超出免费预览范围,如果喜欢就下载吧!
资源描述

1、 .摘要校园作息时间控制系统主要用于学校,对一些以24小时为周期的开关量进行自动控制。该控制系统是采用8031单片机来实现对上述开关量的控制,利用内部时钟来提供时钟信息,设有六位数码管、可以实时显示时间、系统还设有输入键盘,用以修改实时时钟,体现了系统简单、工作稳定可靠、价廉、控制时间精确及系统体积小等优点。关键词作息时间控制 定时器 语音芯片 8031AbstractThe campus the daily timetable control system which is mainly used in the campus, it auto-control some switches wh

2、ich have periods of 24 hours. This control system carries out the switch parameter controls all above by SCM 8031.It uses the InternalClock to provide the clock information. It could show the real time with 6 bit digital tube. And it could modify the real time clock with the input keyboard. The syst

3、em is simple, the running is steady and dependable, the controlled time is exact, and the physical volume of the system is small, all the advantages above can be incarnated in this system.Key words:THE DAILY TIMETABLE CONTROL,TIMER,DELAYED ACTION,8031目录1 引言51.1 概述51.2 本文研究内容52 作息时间控制器的整体设计53 作息时间控制器

4、的硬件设计53.1 单片机芯片介绍63.2 扩展电路73.2.1 程序存储器(2764)73.2.2 数据存储器(6264)83.2.3 扩展电路部分接线93.3 键盘显示电路103.4 音乐播放电路123.5 复位电路143.6 晶振电路153.7 电源电路153.8 作息时间控制器的硬件原理图164 作息时间控制器的软件设计设计174.1 定时中断服务程序184.1.1 定时流程184.1.2 定时中断服务程序设计184.2 时钟比较程序204.2.2 控制流程图及程序224.3 其他部分流程254.3.1 主程序流程图254.3.2 动态显示流程图254.3.3 键盘扫描流程图26致谢2

5、8参考文献291 引言随着计算机技术的发展和在控制系统中的广泛应用,以及设备向小型化,智能化发展,作为高新技术之一的单片机以其体积小,功能强,价格低廉,使用灵活等优势,显示出很强的生命力。其功耗低,超高型,低成本,功能完整,在国内越来越受到用户的重视和广泛使用。1.1 概述基于单片机的作息时间控制,充分发挥它体积小,价格便宜,功耗低,可靠性高的优点。可用于学校作息,方便广大师生。同时也可以作为各种时钟控制电路的报警装置使用,用途广泛,原理简单,便于操作和维护等优点。总体上,单片机设计方案在现实生活中也比较容易实现设计。1.2 本文研究内容通过对一个能实现时钟显示及定时功能的时间系统的设计学习,

6、达到单片机应用中的数据转换显示,数码管显示原理,动态扫描显示原理,单片机的定时中断原理、及单片机相关指令在各方面的应用。以8031单片机为核心,由LED数码管、按键、二极管等部分构成,由软件实现打铃时刻表的预置与修改,实现实时时间的显示、校正和铃响控制。此种响铃器实际为一种可编程时间控制器,它提供定时控制输出接口,可方便地用于各种定时控制。2 作息时间控制器的整体设计根据设计要求,画出系统框图,如图1所示。该控制系统由单片机,音乐电路,数码显示部分以及键盘部分组成。该控制系统设有6位数码管,可以实时显示时间和定时时间等,系统还设有输入键盘,用以修改实时时钟和定时等操作。软件方面,通过晶振电路和

7、软件设计,实现时钟设计。作息时间表有2套可选择,一套为冬季作息时间,另一套为夏季作息时间。图1设计的系统框图3 作息时间控制器的硬件设计3.1 单片机芯片介绍设计选用了8031单片机,其引脚图,如图2所示。(1)电源引脚VCC和GNDVCC:电源端,接+5VGND:接地(2)外接晶振引脚XTAL1和XTAL2XTAL1:片内反相放大器的输入端,接外部晶振的一个引脚。当单片机采用外部时钟信号时,此引脚应接地。XTAL2:片内反相放大器的输出端,接外部晶振的另一个引脚。当单片机采用外部时钟信号时,外部信号由此引脚接入。(3)输入输出引脚P0:是双向8位三态I/O端口,在不接外存储器与不扩展I/O接

8、口时,可作为准双向口。在访问外存储器时,它分时用于低八位地址总线和8位双向数据总线。P1:是8位双向静态I/O端口。P2:是8位准双向I/O端口,在访问外部存储器时,它作为扩展电路的高8位地址总线,送出高8位。P3:是8位准双向I/O端口。一般只用P0和P2作为输入输出引脚。图2 8031引脚图(4)其他引脚RESET/VPD:复位信号输入端。Vcc掉电后,此引脚可接备用电源,以保持内部RAM的数据不丢失。复位电路用了手动复位,VCC掉电期间,此脚可接上备用电源,以保证单片机内部RAM的数据不丢失。ALE/PROG:地址锁存允许端。当单片机访问外部存储器时,该隐脚输出的信号用于锁存P0端口送出

9、的8位地址。其输出信号的频率为时钟震荡的频率的1/6。PSEN:外部程序存储器的读选通信号输出端,或称为片外取指信号输出端。从外部程序存储器取指令期间,PSEN在每个机器周期两次有效,其频率为振荡周期的1/6;但若此期间有访问外部数据存储器,则两次有效的PSEN信号将不出现。EA/Vpp:当其保持低电平时单片机只访问外部程序存储器,而不管片内是否有程序存储器。3.2 扩展电路3.2.1 程序存储器(2764)由于8031没有程序存储器,所以扩展了一个8K的程序存储器2764。2764引脚图如图3所示。图3 2764引脚图其主要引脚功能如下:D0D7:8条双向数据总线,用于读出数据或编程时写入的

10、编程代码。A0A7:地址输入线,扩展时与单片机的P2口和P0口相连,用于传送单片机送来的地址编码信号。CE:片选端,低电平有效。OE:输出允许端数据输出允许信号线(低电平时,数据处于读出状态)。Vcc:电源端(5V)。GND:接地端。3.2.2 数据存储器(6264)由于8031数据存储器仅为128B,程序运行过程中需要调用大量的数据,所以扩展了一个8K数据存储器6264。6264引脚图如图4所示。其主要引脚功能如下:D0D7:8条双向数据总线,用于读出数据或编程时写入的编程代码。A0A12:地址线,扩展时与单片机的P2口和P0口相连,用于传送单片机送来的地址编码信号。CE:片选端,低电平有效

11、。OE:输出允许端数据输出允许信号线(低电平时,数据处于读出状态)。WE:写选通信号线,低电平是数据处于写入状态。Vcc:电源端(5V)。GND:接地端。图4 6264引脚图3.2.3 扩展电路部分接线这部分主要是用来存储数据、程序,是整个系统的存储器。将P0口的低8位地址锁存后,在接到6264和2764的A0A7上。地址锁存信号ALE接锁存器控制端G,当ALE发生负跳变时,将低8位地址锁存于74LS138中,这时P0口就可以做数据线使用了。当PSEN向OE输出低电平时,2764才可以和单片机之间进行数据交换。同样的只有OE片选端输入低电平时,6264才可以进行写信号,只有PSEN和RD同时输

12、出低电平时,读信号才有效。这样2764、6264和单片机之间可以相互读数据,进行工作。该部分电路接线图如图5所示6。图5 扩展电路图3.3 键盘显示电路单片机扩展了一个并行I/O口8155,用来连接键盘显示电路。8155其内部包含两个8位并行口(A口和B口),一个6位并行C口和一个14位 计数器。其电路图如图6所示2。图6 键盘显示电路连接图通过键盘的外部输入,利用软件编程改变时分秒,并通过显示电路显示出来。矩阵键盘12个键如图7所示,功能如表1。图7 键盘编号S10S21S32S43S54S65S76S87S98S109S11模式选择S12移位表1 按键功能模式选择(S11)键包括:校时,定

13、时,时令选择,显示当前时间。与移位(S12)键配合使用,完成相关功能。3.4音乐播放电路音乐播放电路部分,选用了美国ISD公司出品的ISD1400系列优质单片语音录放集成电路。其引脚图,如图8所示。图8 ISD1400引脚图ISD1400电气特性如下:工作电压VDD:5VA0A7:地址输入端;VCCD:数字电路源;VCCA:模拟电路源;SP+:喇叭(+);SP-:喇叭(-);SCLK:外接时钟可选;ANA IN:模拟量输入;ANA OUT:模拟量输出;AGC:自动增益控制;MIC:驻极体话筒输入;MIC REF:驻极体话筒参考输入;PLAYE:边沿触发放音;PLAYL:电平触发放音;REC:录

14、音触发;RECLED:发光二极管接口;NC:空脚。ISD1400系列有下列型号:ISD1408、ISD1410、ISD1412、ISD1416、ISD1420。录放时间分别为:8秒、10秒、12秒、16秒、20 秒(ISD14#其中型号的后两位表示其录音的时间长度,单位是秒)4。图9 ISD1410连接图设计选用ISD1410(录音时间20秒),该芯片与主电路的连接图,如图9所示。在该电路中,当P1.0输出一个低电平时,播放音乐,放音时先由软件给出一个地址, 74LS377用来实现地址锁存,就是一个语音段首址, 在这一放音过程中地址是不能变化的, 故需要一个锁存器。3.5 复位电路8031的复

15、位方式可以是自动复位,也可以是手动复位,如图10。此外,RESET/Vpd还是一复用脚,Vcc掉电其间,此脚可接上备用电源,以保证单片机内部RAM的数据不丢失。本设计采用手动复位。图10 复位电路3.6 晶振电路用一个12MHz晶振和两个30Pf瓷片电容组成,为单片机提供标准时钟,其中两个瓷片电容起微调作用.其电路图如图11。 图11 晶振电路 3.7 电源电路依系统需要提供+5V直流电源。在此我们引入220V交流电源通过电源变压器变换成交流低压,再经过桥式整流电路D1D4和滤波电容C1的整流和滤波,在固定式三端稳压器7805的Vin和GND两端形成一个并不十分稳定的直流电压(该电压常常会因为

16、市电电压的波动或负载的变化等原因而发生变化)。此直流电压经过7805的稳压和C3的滤波便在稳压电源的输出端产生了精度高、稳定度好的直流输出电压。本稳压电源可作为TTL电路或单片机电路的电源。三端稳压器是一种标准化、系列化的通用线性稳压电源集成电路,以其体积小、成本低、性能好、工作可靠性高、使用简捷方便等特点,成为目前稳压电源中应用最为广泛的一种单片式集成稳压器件。电路图如图12。 图12 电源电路3.8 作息时间控制器的硬件原理图综上所述,做出本设计的硬件原理图,如图13所示。图13 作息时间控制器的硬件原理图4 作息时间控制器的软件设计设计利用单片机的定时器设计一个时钟,在每次秒加1的计时过

17、程中都与规定的作息时间比较,如果相等,就进行播放音乐的操作,不相等则返回。4.1 定时中断服务程序程序设计中,以单片机定时器/计数器T0工作在模式1,定时50ms,允许中断。在中断服务程序中重赋T0计数初值,开中断返回设:20H为中断计数单元,计满20次为1秒 21H为秒的计数单元,计满60次为1分钟 22H为分的计数单元,计满60次为1小时 23H为时的计数单元,计满24次为1天4.1.1 定时流程如图14所示。图14 计时流程图4.1.2定时中断服务程序设计选择定时/计数器作为定时器,工作方式为方式1。计数器的加1信号由振荡器(晶振)的12分频产生,即每经过1个机器周期,计数器增1,直至计

18、数溢出为止。晶振频率为12MHz,则计数周期Tcy为1s 定时器的方式1为16位计数器,计数最大值为216=65536,定时 50MS,需要计数50000个1s (计数周期)。计数初值=65536 - 50000 = 15536 15536转换为十六进制即为 3CB0 计数器从3CB0开始计数,计数到65536溢出,产生定时中断。系统晶振为12MHZ,设定定时器每隔50MS溢出中断1次,则循环中断20次延时时间为1秒,上述过程重复60次为1分钟,分计时60次为1小时,小时计时24次则时间重新回到00:00:005。汇编程序如下:ORG 0000H;程序执行开始地址LJMP MAIN; 跳转主程

19、序ORG 000BH;T0中断入口地址LJMP INT0;跳至INT0执行ORG 0100HCOUNTEQU 20H SECOND EQU 21H MINUTEEQU 22HHOUR EQU 23HMAIN:MOV TMOF,#01H;定时器工作方式1MOV TL0,#0B0H;设定初值MOV TH0,#3CHSETB EA;总中断开放SETB ET0;允许T0中断SETB TR0;开启T0定时器INT0:PUSH ACC;累加器入栈保护PUSH PSW;状态字入栈保护MOV TL0,#0B0H;重装初值MOV TH0,#3CHSETB TR0;开启定时器T0ADDC:INC COUNTMOV

20、 A,TCOUNTCJNEA,#14H,OUTT0;20次中断未到中断退出MOVCOUNT,#00H ADDS:INC SECOND LCALL TIME;调用时钟比较子程序(见4.2.2)MOV A,SECONDCJNE A,#60,OUTT0MOVSECOND,#00HADDM:INC MINUTEMOV A,MINUTECJNE A,#60,OUTT0MOV MINTUE,#00HADDH:INC HOURMOV A,HOUR;时数据放入ACJNE A,#24,OUTT0MOV HOUR,#00HOUTT0:POP PSW;恢复状态字(出栈)POP ACC ;恢复累加器SETB ET0;

21、开放T0中断RETI;中断返回4.2 时钟比较程序作息时间预先制成表格存入EPROM数据区,利用软件每过一秒,将当前时间与数据区时间相比较,相等说明要进行控制,完成播放音乐的操作。通过模式选择键,和移位键,完成时间表的切换。由INT1端口状态来选择夏季作息时间或是冬季作息时间。4.2.1 作息时间数据区数据区每一项时间控制字需要占8个存储单元:控制码1时分秒 启动装置时间控制码2时分秒 关闭装置时间8031单片机的P1.0用作语音芯片的开启和关闭。控制码定义表,如表2所示控制码功能对应输出码FEH启动语音芯片P1.0控制播放FFH关闭语音芯片P1.0输出关闭00H数据区结束表4-1 控制码定义

22、作息时间如表3(冬季),表4(夏季)所示,以及与根据作息时间编制的数据区如表5(冬季),表6(夏季)所示时间作息8:008:45第一节8:559:40第二节10:2011:05第三节11:1512:00第四节14:0014:45第五节14:5515:40第六节15:5016:35第七节16:4517:30第八节19:0021:30晚自习时间作息8:008:45第一节8:559:40第二节10:2011:05第三节11:1512:00第四节14:3015:15第五节15:2516:10第六节16:2017:05第七节17:1518:00第八节19:3022:20晚自习表3冬季作息时间表4 夏季作

23、息时间地址数据(时间控制字)1110H1117HFE080000FF0800101118H111FHFE084500FF0845101120H1127HFE085500FF0855101128H112FHFE094000FF0940101130H1137HFE102000FF1020101138H113FHFE110500FF1105101140H1147HFE111500FF1115101148H114FHFE120000FF1200101150H1157HFE143000FF1430101158H115FHFE151500FF1515101160H1167HFE152500FF152510

24、1168H116FHFE161000FF1610101170H1177HFE162000FF1206101178H117FHFE170500FF1705101180H1187HFE172500FF1725101188H118FHFE180000FF1800101190H1197HFE193000FF1930101198H119FHFE220000FF22001011A0H11A7H00H地址数据(时间控制字)1010H1017HFE080000FF0800101018H101FHFE084500FF0845101020H1027HFE085500FF0855101028H102FHFE0940

25、00FF0940101030H1037HFE102000FF1020101038H103FHFE110500FF1105101040H1047HFE111500FF1115101048H104FHFE120000FF1200101050H1057HFE140000FF1400101058H105FHFE144500FF1445101060H1067HFE145500FF1455101068H106FHFE154000FF1540101070H1077HFE155000FF1550101078H107FHFE163500FF1635101080H1087HFE164500FF1645101088

26、H108FHFE173000FF1730101090H1097HFE190000FF1900101098H109FHFE213000FF21301010A0H10A7H00H表5 冬季作息时间数据区表6 夏季作息时间数据区程序所用到的片外RAM数据存储单元安排如下:2EH为控制字存储区地址指针暂存单元R0为控制字存储区的指针6AH为暂存控制字的开关操作码单元6BH6DH依次为控制字预设的秒,分,时的数值单元4.2.2控制流程图及程序如图15所示。图15 定时比较流程图汇编程序如下:TIME:SETB P1.7 P1.7,SUMMER;P1.7低电平,跳转SUMMERWINTER:MOV DPT

27、R,#TABLE1SJMP PSUMM:MOV DPTR,#TABLE2P:SETB RS0;指向第一组工作寄存器PUSH PSWPUSH ACC;堆栈MOV R0,2EH;控制字首地址送R0MOVX A,R0;取控制字开关操作码MOV 6AH,A;暂存6AHINC R0;修改指针MOVX A,R0;取出控制字预设时值MOV 6DH,A;暂存6DH单元INC R0MOVX A,R0;取出控制字预设分值MOV 6CH,A;暂存6CH单元INC R0MOVX A,R0;取出控制字预设秒值MOV 6BH,A;暂存6BH单元INC R0MOV 2EH,R0;存入2EH单元MOV A,SECOND;取当

28、前秒值CJNE A,6BH,OUT1;当前秒值与预设秒值,不等跳转MOV A,MINUTE;取当前分值CJNE A,6CH,OUT1;当前分值与预设分值,不等跳转MOV A,HOUR;取当前时值CJNE A,6DH,OUT1;当前时值与预设时值,不等跳转MOV A,6AH;时分秒都相等,取开关操作码CJNE A,#00H,OUT0;开关操作码不为00H,跳转SJMP EXIT;00H,跳转OUT0:MOV P1.0,A;开关操作由P1.0输出控制EXIT:POP PSWPOP ACC;出栈CLR RS0OUT1:CLR C;进位清零MOV A,2EHSUBB A,#04H;回复原控制字指针MO

29、V 2EH,ASJMP EXITRET控制码:冬时令ORG 1010HTABLE1:DB FEH,08H,00H,00H,0FFH,08H,00H,10HDB FEH,08H,45H,00H,0FFH,08H,45H,10HDB FEH,08H,55H,00H,0FFH,08H,55H,10HDB FEH,09H,40H,00H,0FFH,09H,40H,10HDB FEH,10H,20H,00H,0FFH,10H,20H,10HDB FEH,11H,05H,00H,0FFH,11H,05H,10HDB FEH,11H,15H,00H,0FFH,11H,15H,10HDB FEH,12H,00

30、H,00H,0FFH,12H,00H,10HDB FEH,14H,00H,00H,0FFH,14H,00H,10HDB FEH,14H,45H,00H,0FFH,14H,45H,10HDB FEH,14H,55H,00H,0FFH,14H,55H,10HDB FEH,15H,40H,00H,0FFH,15H,40H,10HDB FEH,15H,50H,00H,0FFH,15H,50H,10HDB FEH,16H,35H,00H,0FFH,16H,35H,10HDB FEH,16H,45H,00H,0FFH,16H,45H,10HDB FEH,17H,30H,00H,0FFH,17H,30H,1

31、0HDB FEH,19H,00H,00H,0FFH,19H,00H,10HDB FEH,21H,30H,00H,0FFH,21H,30H,10HDB 00H夏时令ORG 1110HTABLE2:DB FEH,08H,00H,00H,0FFH,08H,00H,10HDB FEH,08H,45H,00H,0FFH,08H,45H,10HDB FEH,08H,55H,00H,0FFH,08H,55H,10HDB FEH,09H,40H,00H,0FFH,09H,40H,10HDB FEH,10H,20H,00H,0FFH,10H,20H,10HDB FEH,11H,05H,00H,0FFH,11H,

32、05H,10HDB FEH,11H,15H,00H,0FFH,11H,15H,10HDB FEH,12H,00H,00H,0FFH,12H,00H,10HDB FEH,14H,30H,00H,0FFH,14H,30H,10HDB FEH,15H,15H,00H,0FFH,15H,15H,10HDB FEH,15H,25H,00H,0FFH,15H,25H,10HDB FEH,16H,10H,00H,0FFH,16H,10H,10HDB FEH,16H,20H,00H,0FFH,16H,20H,10HDB FEH,17H,05H,00H,0FFH,17H,05H,10HDB FEH,17H,15

33、H,00H,0FFH,17H,15H,10HDB FEH,18H,80H,00H,0FFH,18H,80H,10HDB FEH,19H,30H,00H,0FFH,19H,30H,10HDB FEH,22H,00H,00H,0FFH,22H,00H,10HDB 00H4.3其他部分流程4.3.1主程序流程图 如图16所示。图16 主程序流程图4.3.2动态显示流程图如图17所示。图17 动态显示流程图4.3.3 键盘扫描流程图如图18所示。图18键盘扫描流程图参 考 文 献1李叶紫,王喜斌.胡辉.孙东辉.MCS_51单片机应用教程.清华大学2008.6.2 辛友顺,胡永生,薛小玲.单片机应用系统

34、设计与实现.#科学技术(184-186页 LED显示接口,190-193页键盘接口).3耿文静,钱珊珠.单片机原理与接口技术.国防工业.2007年.4翟玉文,徐宏亮,艾学忠,王庆伟,赵岩.实用多功能电子时钟设计. #化工学院学报.2001年(音乐电路部分).5 石从刚.MCS-51单片机原理与应用实验实训教程.北航大学.2007.2.1(9099页,自动打铃装置设计).6 李建忠.单片机原理及应用.#电子科技大学.2007.2.1(第四章,扩展部分)7王爽.汇编语言(第二版).清华大学.2008.4.8 李华.MCS-51系列单片机实用接口技术.航空航天大学.2003.9 X沛.基于ISD 1420 的语言报警器设计.#理工学院,电气工程与自动化.2004年.Word.

展开阅读全文
相似文档                                   自信AI助手自信AI助手
猜你喜欢                                   自信AI导航自信AI导航
搜索标签

当前位置:首页 > 教育专区 > 初中其他

移动网页_全站_页脚广告1

关于我们      便捷服务       自信AI       AI导航        获赠5币

©2010-2024 宁波自信网络信息技术有限公司  版权所有

客服电话:4008-655-100  投诉/维权电话:4009-655-100

gongan.png浙公网安备33021202000488号   

icp.png浙ICP备2021020529号-1  |  浙B2-20240490  

关注我们 :gzh.png    weibo.png    LOFTER.png 

客服