毕业设计基于单片机的作息时间控制器样本_第1页
毕业设计基于单片机的作息时间控制器样本_第2页
毕业设计基于单片机的作息时间控制器样本_第3页
毕业设计基于单片机的作息时间控制器样本_第4页
毕业设计基于单片机的作息时间控制器样本_第5页
已阅读5页,还剩26页未读 继续免费阅读

下载本文档

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

文档简介

摘要校园作息时间控制系统重要用于学校,对某些以24小时为周期开关量进行自动控制。该控制系统是采用8031单片机来实现对上述开关量控制,运用内部时钟来提供时钟信息,设有六位数码管、可以实时显示时间、系统还设有输入键盘,用以修改实时时钟,体现了系统简朴、工作稳定可靠、价廉、控制时间精准及系统体积小等长处。核心词作息时间控制定期器语音芯片8031AbstractThecampusthedailytimetablecontrolsystemwhichismainlyusedinthecampus,itauto-controlsomeswitcheswhichhaveperiodsof24hours.ThiscontrolsystemcarriesouttheswitchparametercontrolsallabovebySCM8031.ItusestheInternalClocktoprovidetheclockinformation.Itcouldshowtherealtimewith6bitdigitaltube.Anditcouldmodifytherealtimeclockwiththeinputkeyboard.Thesystemissimple,therunningissteadyanddependable,thecontrolledtimeisexact,andthephysicalvolumeofthesystemissmall,alltheadvantagesabovecanbeincarnatedinthissystem.Keywords:THEDAILYTIMETABLECONTROL,TIMER,DELAYEDACTION,8031目录1引言 51.1概述 51.2本文研究内容 52作息时间控制器整体设计 53作息时间控制器硬件设计 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致谢 28参考文献 291引言随着计算机技术发展和在控制系统中广泛应用,以及设备向小型化,智能化发展,作为高新技术之一单片机以其体积小,功能强,价格低廉,使用灵活等优势,显示出很强生命力。其功耗低,超高型,低成本,功能完整,在国内越来越受到顾客注重和广泛使用。1.1概述基于单片机作息时间控制,充分发挥它体积小,价格便宜,功耗低,可靠性高长处。可用于学校作息,以便广大师生。同步也可以作为各种时钟控制电路报警装置使用,用途广泛,原理简朴,便于操作和维护等长处。总体上,单片机设计方案在现实生活中也比较容易实现设计。1.2本文研究内容通过对一种能实现时钟显示及定期功能时间系统设计学习,达到单片机应用中数据转换显示,数码管显示原理,动态扫描显示原理,单片机定期中断原理、及单片机有关指令在各方面应用。以8031单片机为核心,由LED数码管、按键、二极管等某些构成,由软件实现打铃时刻表预置与修改,实现实时时间显示、校正和铃响控制。此种响铃器实际为一种可编程时间控制器,它提供定期控制输出接口,可以便地用于各种定期控制。2作息时间控制器整体设计依照设计规定,画出系统框图,如图1所示。该控制系统由单片机,音乐电路,数码显示某些以及键盘某些构成。该控制系统设有6位数码管,可以实时显示时间和定期时间等,系统还设有输入键盘,用以修改实时时钟和定期等操作。软件方面,通过晶振电路和软件设计,实现时钟设计。作息时间表有2套可选取,一套为冬季作息时间,另一套为夏季作息时间。图1设计系统框图3作息时间控制器硬件设计3.1单片机芯片简介设计选用了8031单片机,其引脚图,如图2所示。(1)电源引脚VCC和GNDVCC:电源端,接+5VGND:接地(2)外接晶振引脚XTAL1和XTAL2XTAL1:片内反相放大器输入端,接外部晶振一种引脚。当单片机采用外部时钟信号时,此引脚应接地。XTAL2:片内反相放大器输出端,接外部晶振另一种引脚。当单片机采用外部时钟信号时,外部信号由此引脚接入。(3)输入输出引脚P0:是双向8位三态I/O端口,在不接外存储器与不扩展I/O接口时,可作为准双向口。在访问外存储器时,它分时用于低八位地址总线和8位双向数据总线。P1:是8位双向静态I/O端口。P2:是8位准双向I/O端口,在访问外部存储器时,它作为扩展电路高8位地址总线,送出高8位。P3:是8位准双向I/O端口。普通只用P0和P2作为输入输出引脚。图28031引脚图(4)其她引脚RESET/VPD:复位信号输入端。Vcc掉电后,此引脚可接备用电源,以保持内部RAM数据不丢失。复位电路用了手动复位,VCC掉电期间,此脚可接上备用电源,以保证单片机内部RAM数据不丢失。ALE/PROG:地址锁存容许端。当单片机访问外部存储器时,该隐脚输出信号用于锁存P0端口送出8位地址。其输出信号频率为时钟震荡频率1/6。PSEN:外部程序存储器读选通信号输出端,或称为片外取指信号输出端。从外部程序存储器取指令期间,PSEN在每个机器周期两次有效,其频率为振荡周期1/6;但若此期间有访问外部数据存储器,则两次有效PSEN信号将不浮现。EA/Vpp:当其保持低电平时单片机只访问外部程序存储器,而不论片内与否有程序存储器。3.2扩展电路3.2.1程序存储器(2764)由于8031没有程序存储器,因此扩展了一种8K程序存储器2764。2764引脚图如图3所示。图32764引脚图其重要引脚功能如下:D0~D7:8条双向数据总线,用于读出数据或编程时写入编程代码。A0~A7:地址输入线,扩展时与单片机P2口和P0口相连,用于传送单片机送来地址编码信号。CE:片选端,低电平有效。OE:输出容许端数据输出容许信号线(低电平时,数据处在读出状态)。Vcc:电源端(+5V)。GND:接地端。3.2.2数据存储器(6264)由于8031数据存储器仅为128B,程序运营过程中需要调用大量数据,因此扩展了一种8K数据存储器6264。6264引脚图如图4所示。其重要引脚功能如下:D0~D7:8条双向数据总线,用于读出数据或编程时写入编程代码。A0~A12:地址线,扩展时与单片机P2口和P0口相连,用于传送单片机送来地址编码信号。CE:片选端,低电平有效。OE:输出容许端数据输出容许信号线(低电平时,数据处在读出状态)。WE:写选通信号线,低电平是数据处在写入状态。Vcc:电源端(+5V)。GND:接地端。图46264引脚图3.2.3扩展电路某些接线这某些重要是用来存储数据、程序,是整个系统存储器。将P0口低8位地址锁存后,在接到6264和2764A0~A7上。地址锁存信号ALE接锁存器控制端G,当ALE发生负跳变时,将低8位地址锁存于74LS138中,这时P0口就可以做数据线使用了。当PSEN向OE输出低电平时,2764才可以和单片机之间进行数据互换。同样只有OE片选端输入低电平时,6264才可以进行写信号,只有PSEN和RD同步输出低电平时,读信号才有效。这样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)键涉及:校时,定期,时令选取,显示当前时间。与移位(S12)键配合使用,完毕有关功能。3.4音乐播放电路音乐播放电路某些,选用了美国ISD公司出品ISD1400系列优质单片语音录放集成电路。其引脚图,如图8所示。图8ISD1400引脚图ISD1400电气特性如下:工作电压VDD:5VA0~A7:地址输入端;VCCD:数字电路源;VCCA:模仿电路源;SP+:喇叭(+);SP-:喇叭(-);SCLK:外接时钟可选;ANAIN:模仿量输入;ANAOUT:模仿量输出;AGC:自动增益控制;MIC:驻极体话筒输入;MICREF:驻极体话筒参照输入;PLAYE:边沿触发放音;PLAYL:电平触发放音;REC:录音触发;RECLED:发光二极管接口;NC:空脚。ISD1400系列有下列型号:ISD1408、ISD1410、ISD1412、ISD1416、ISD1420。录放时间分别为:8秒、10秒、12秒、16秒、20秒(ISD14XX——其中型号后两位表达其录音时间长度,单位是秒)[4]。图9ISD1410连接图设计选用ISD1410(录音时间20秒),该芯片与主电路连接图,如图9所示。在该电路中,当P1.0输出一种低电平时,播放音乐,放音时先由软件给出一种地址,74LS377用来实现地址锁存,就是一种语音段首址,在这一放音过程中地址是不能变化,故需要一种锁存器。3.5复位电路8031复位方式可以是自动复位,也可以是手动复位,如图10。此外,RESET/Vpd还是一复用脚,Vcc掉电其间,此脚可接上备用电源,以保证单片机内部RAM数据不丢失。本设计采用手动复位。图10复位电路3.6晶振电路用一种12MHz晶振和两个30Pf瓷片电容构成,为单片机提供原则时钟,其中两个瓷片电容起微调作用.其电路图如图11。图11晶振电路3.7电源电路依系统需要提供+5V直流电源。在此咱们引入220V交流电源通过电源变压器变换成交流低压,再通过桥式整流电路D1~D4和滤波电容C1整流和滤波,在固定式三端稳压器7805Vin和GND两端形成一种并不十分稳定直流电压(该电压经常会由于市电电压波动或负载变化等因素而发生变化)。此直流电压通过7805稳压和C3滤波便在稳压电源输出端产生了精度高、稳定度好直流输出电压。本稳压电源可作为TTL电路或单片机电路电源。三端稳压器是一种原则化、系列化通用线性稳压电源集成电路,以其体积小、成本低、性能好、工作可靠性高、使用简捷以便等特点,成为当前稳压电源中应用最为广泛一种单片式集成稳压器件。电路图如图12。图12电源电路3.8作息时间控制器硬件原理图综上所述,做出本设计硬件原理图,如图13所示。图13作息时间控制器硬件原理图4作息时间控制器软件设计设计运用单片机定期器设计一种时钟,在每次秒加1计时过程中都与规定作息时间比较,如果相等,就进行播放音乐操作,不相等则返回。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,直至计数溢出为止。晶振频率为12MHz,则计数周期Tcy为1μs定期器方式1为16位计数器,计数最大值为216=65536,定期50MS,需要计数50000个1μs(计数周期)。计数初值=65536-50000=1553615536转换为十六进制即为3CB0计数器从3CB0开始计数,计数到65536溢出,产生定期中断。系统晶振为12MHZ,设定定期器每隔50MS溢出中断1次,则循环中断20次延时时间为1秒,上述过程重复60次为1分钟,分计时60次为1小时,小时计时24次则时间重新回到00:00:00[5]。汇编程序如下:ORG0000H;程序执行开始地址LJMPMAIN;跳转主程序ORG000BH;T0中断入口地址LJMPINT0;跳至INT0执行ORG0100HCOUNT EQU20HSECONDEQU21HMINUTEEQU22HHOUREQU23HMAIN:MOVTMOF,#01H;定期器工作方式1MOVTL0,#0B0H;设定初值MOVTH0,#3CHSETBEA;总中断开放SETBET0;容许T0中断SETBTR0;启动T0定期器INT0:PUSHACC;累加器入栈保护PUSHPSW;状态字入栈保护MOVTL0,#0B0H;重装初值MOVTH0,#3CHSETBTR0;启动定期器T0ADDC:INCCOUNTMOVA,TCOUNTCJNEA,#14H,OUTT0;20次中断未到中断退出MOVCOUNT,#00HADDS:INCSECONDLCALLTIME;调用时钟比较子程序(见4.2.2)MOVA,SECONDCJNEA,#60,OUTT0MOVSECOND,#00HADDM:INCMINUTEMOVA,MINUTECJNEA,#60,OUTT0MOVMINTUE,#00HADDH:INCHOURMOVA,HOUR;时数据放入ACJNEA,#24,OUTT0MOVHOUR,#00HOUTT0:POPPSW;恢复状态字(出栈)POPACC;恢复累加器SETBET0;开放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控制码定义作息时间如表3(冬季),表4(夏季)所示,以及与依照作息时间编制数据区如表5(冬季),表6(夏季)所示时间作息8:00~8:45第一节8:55~9:40第二节10:20~11:05第三节11:15~12:00第四节14:00~14:45第五节14:55~15:40第六节15:50~16:35第七节16:45~17:30第八节19:00~21:30晚自习时间作息8:00~8:45第一节8:55~9:40第二节10:20~11:05第三节11:15~12:00第四节14:30~15:15第五节15:25~16:10第六节16:20~17:05第七节17:15~18:00第八节19:30~22:20晚自习表3冬季作息时间 表4夏季作息时间地址数据(时间控制字)1110H~1117HFE080000~FF0800101118H~111FHFE084500~FF0845101120H~1127HFE085500~FF0855101128H~112FHFE094000~FF0940101130H~1137HFE10~FF101138H~113FHFE110500~FF1105101140H~1147HFE111500~FF1115101148H~114FHFE10~FF101150H~1157HFE143000~FF1430101158H~115FHFE151500~FF1515101160H~1167HFE152500~FF1525101168H~116FHFE161000~FF1610101170H~1177HFE16~FF1206101178H~117FHFE170500~FF1705101180H~1187HFE172500~FF1725101188H~118FHFE180000~FF1800101190H~1197HFE193000~FF1930101198H~119FHFE20~FF2011A0H~11A7H00H地址数据(时间控制字)1010H~1017HFE080000~FF0800101018H~101FHFE084500~FF0845101020H~1027HFE085500~FF0855101028H~102FHFE094000~FF0940101030H~1037HFE10~FF101038H~103FHFE110500~FF1105101040H~1047HFE111500~FF1115101048H~104FHFE10~FF101050H~1057HFE140000~FF1400101058H~105FHFE144500~FF1445101060H~1067HFE145500~FF1455101068H~106FHFE154000~FF1540101070H~1077HFE155000~FF1550101078H~107FHFE163500~FF1635101080H~1087HFE164500~FF1645101088H~108FHFE173000~FF1730101090H~1097HFE190000~FF1900101098H~109FHFE213000~FF21301010A0H~10A7H00H表5冬季作息时间数据区 表6夏季作息时间数据区程序所用到片外RAM数据存储单元安排如下:2EH为控制字存储区地址指针暂存单元R0为控制字存储区指针6AH为暂存控制字开关操作码单元6BH~6DH依次为控制字预设秒,分,时数值单元4.2.2控制流程图及程序如图15所示。图15定期比较流程图汇编程序如下:TIME:SETBP1.7JBP1.7,SUMMER;P1.7低电平,跳转SUMMERWINTER:MOVDPTR,#TABLE1SJMPCOMPSUMM:MOVDPTR,#TABLE2COMP:SETBRS0;指向第一组工作寄存器PUSHPSWPUSHACC;堆栈MOVR0,2EH;控制字首地址送R0MOVXA,@R0;取控制字开关操作码MOV6AH,A;暂存6AHINCR0;修改指针MOVXA,@R0;取出控制字预设时值MOV6DH,A;暂存6DH单元INCR0MOVXA,@R0;取出控制字预设分值MOV6CH,A;暂存6CH单元INCR0MOVXA,@R0;取出控制字预设秒值MOV6BH,A;暂存6BH单元INCR0MOV2EH,R0;存入2EH单元MOVA,SECOND;取当前秒值CJNEA,6BH,OUT1;当前秒值与预设秒值,不等跳转MOVA,MINUTE;取当前分值CJNEA,6CH,OUT1;当前分值与预设分值,不等跳转MOVA,HOUR;取当前时值CJNEA,6DH,OUT1;当前时值与预设时值,不等跳转MOVA,6AH;时分秒都相等,取开关操作码CJNEA,#00H,OUT0;开关操作码不为00H,跳转SJMPEXIT;00H,跳转OUT0:MOVP1.0,A;开关操作由P1.0输出控制EXIT:POPPSWPOPACC;出栈CLRRS0OUT1:CLRC;进位清零MOVA,2EHSUBBA,#04H;回答原控制字指针MOV2EH,ASJMPEXITRET控制码:冬时令ORG1010HTABLE1:DBFEH,08H,00H,00H,0FFH,08H,00H,10HDBFEH,08H,45H,00H,0FFH,08H,45H,10HDBFEH,08H,55H,00H,0FFH,08H,55H,10HDBFEH,09H,40H,00H,0FFH,09H,40H,10HDBFEH,10H,20H,00H,0FFH,10H,20H,10HDBFEH,11H,05H,00H,0FFH,11H,05H,10HDBFEH,11H,15H,00H,0FFH,11H,15H,10HDBFEH,12H,00H,00H,0FFH,12H,00H,10HDBFEH,14H,00H,00H,0FFH,14H,00H,10HDBFEH,14H,45H,00H,0FFH,14H,45H,10HDBFEH,14H,55H,00H,0FFH,14H,55H,10HDBFEH,15H,40H,00H,0FFH,15H,40H,10HDBFEH,15H,50H,00H,0FFH,15H,50H,10HDBFEH,16H,35H,00H,0FFH,16H,35H,10HDBFEH,16H,45H,00H,0FFH,16H,45H,10HDBFEH,17H,30H,00H,0FFH,17H,30H,10HDBFEH,19H,00H,00H,0FFH,19H,00H,10HDBFEH,21H,30H,00H,0FFH,21H,30H,10HDB00H夏时令ORG1110HTABLE2:DBFEH,08H,00H,00H,0FFH,08H,00H,10HDBFEH,08H,45H,00H,0FFH,08H,45H,10HDBFEH,08H,55H,00H,0FFH,08H,55H,10HDBFEH,09H,40H,00H,

温馨提示

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

评论

0/150

提交评论