




版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
哈尔滨职业技术学院毕业设计任务书专业电气自动化技术 年级 姓名张志武韩雪学号109060222011109060222027数字电子钟摘要20世纪末,电子技术获得了飞速的发展,在其推动下,现代电子产品儿乎渗透了社会的各个领域,有力地推动了社会生产力的发展和社会信息化程度的提高,同时也使现代电子产品性能进一步提高,产品更新换代的节奏也越来越快。现代生活的人们越来越重视起了时间观念,可以说是时间和金钱划上了等号。对于那些对时间把握非常严格和准确的人或事来说,时间的不准确会带来非常大的麻烦,所以以数码管为显示器的时钟比指针式的时钟表现出了很大的优势。数码管显示的时间简单明了而且读数快、时间准确显示到秒。而机械式的依赖于晶体震荡器,可能会导致误差。数字钟是釆用数字电路实现对“时”、“分”、“秒”数字显示的计时装置。数字钟的精度、稳定度远远超过老式机械钟。在这次设计中,我们采用LED数码管显示时、分、秒,以24小时计时方式,根据数码管动态显示原理来进行显示,用12MHz的晶振产生振荡脉冲,定时器计数。在此次设计中,电路具有显示时间的其本功能,还可以实现对时间的调整。数字钟是其小巧,价格低廉,走时精度高,使用方便,功能多,便于集成化而受广大消费的喜爱,因此得到了广泛的使用。目录第一章绪论TOC\o"1-5"\h\z1单片机的背景 11.2单片机的意义 11.3单片机的应用 1第二章整体设计方案TOC\o"1-5"\h\z1单片机的选择 22.2单片机的基本结构 4第三章数字钟的硬件设计1最小系统设计 93.2LED显示电路 123.3键盘控制电路 14第四章数字钟的软件设计1系统软件设计流程图 164.2数字电子钟的原理图 204.3主程序 204.4时钟设置子程序 214.5定时器中断子程序 214.6LED显示子程序 227按键控制子程序 24第五章系统仿真1PROTUES软件介绍 265.2电子钟系统PROTUES仿真 26第六章调试与功能说明6.2系统性能测试与功能说明 276.3系统时钟误差分析 271硬盘调试 276.4软件调试问题及解决 27\o"CurrentDocument"\h结束语 29参考文献 30致谢 31个人收集整理仅供参考学习上△収軽屢…区鯉戋学辺第一章绪论1.1数字电子钟的背景20世纪末,电子技术获得了飞速的发展,在其推动下,现代电子产品儿乎渗透了社会的各个领域,有力地推动了社会生产力的发展和社会信息化程度的提高,同时也使现代电子产品性能进一步提高,产品更新换代的节奏也越来越快。时间对人们来说总是那么宝贵,工作的忙碌性和繁杂性容易使人忘记当前的时间。忘记了要做的事情,当事情不是很重要的时候,这种遗忘无伤大雅。但是,一旦重要事情,一时的耽误可能酿成大祸。口前,单片机正朝着高性能和多品种方向发展趋势将是进一步向着CMOS化、低功耗、小体积、大容量、高性能、低价格和外圉电路内装化等儿个方面发展。下面是单片机的主要发展趋势。单片机应用的重要意义还在于,它从根本上改变了传统的控制系统设计思想和设汁方法。从前必须山模拟电路或数字电路实现的大部分功能,现在已能用单片机通过软件方法来实现了。这种软件代替硬件的控制技术也称为微控制技术,是传统控制技术的一次革命。单片机模块中最常见的是数字钟,数字钟是一种用数字电路技术实现时、分、秒讣时的装置,与机械式时钟相比具有更高的准确性和直观性,且无机械装置,具有更更长的使用寿命,因此得到了广泛的使用。1.2数字电子钟的意义数字钟是釆用数字电路实现对•时,分,秒•数字显示的计时装置,广泛用于个人家庭,车站,码头办公室等公共场所,成为人们日常生活中不可少的必需品,由于数字集成电路的发展和石英晶体振荡器的广泛应用,使得数字钟的精度,远远超过老式钟表,钟表的数字化给人们生产生活带来了极大的方便,而且大大地扩展了钟表原先的报时功能。诸如定时自动报警、按时自动打铃、时间程序自动控制、定时广播、自动起闭路灯、定时开关烘箱、通断动力设备、棋至各种定时电气的自动启用等,所有这些,都是以钟表数字化为基础的。因此,研究数字钟及扩大其应用,有着非常现实的意义。1.3数字电子钟的应用数字钟已成为人们日常生活中:必不可少的必需品,广泛用于个人家庭以及车站、码头、剧场、办公室等公共场所,给人们的生活、学习、工作、娱乐带来极大的方便。由于数字集成电路技术的发展和采用了先进的石英技术,使数字钟具有走时准确、性能稳定、携带方便上△収軽屢…区鯉戋学辺等优点,它还用于计时、自动报时及自动控制等各个领域。第二章整体设计方案2.1单片机的选择单片机微型计算机是微型计算机的一个重要分支,也是颇具生命力的机种。单片机微型计算机简称单片机,特别适用于控制领域,故又称为微控制器。通常,单片机山单块集成电路芯片构成,内部包含有计算机的基本功能部件:中央处理器、存储器和I/O接口电路等。因此,单片机只需要和适当的软件及外部设备相结合,便可成为一个单片机控制系统。单片机经过1、2、3、3代的发展,正朝着多功能、高性能、低电压、低功耗、低价格、大存储容量、强I/O功能及较好的结构兼容性方向发展。其发展趋势不外乎以下儿个方面:1、 多功能单片机中尽可能地把所需要的存储器和I/O口都集成在一块芯片上,使得单片机可以实现更多的功能。比如A/D、PWM、PCA(可编程计数器阵列)、WDT(监视定时器一-看家狗)、高速I/O口及计数器的捕获/比较逻辑等。有的单片机针对某一个应用领域,集成了相关的控制设备,以减少应用系统的芯片数量。例如,有的芯片以51内核为核心,集成了USB控制器、SMARTCARD接口、MP3解码器、CAN或者1*1忆总线控制器等,LED、LCD或VFD显示驱动器也开始集成在8位单片机中。2、 高效率和高性能为了提高执行速度和执行效率,单片机开始使用RISC、流水线和DSP的设计技术,使单片机的性能有了明显的提高,表现为:单片机的时钟频率得到提高;同样频率的单片机运行效率也有了很大的提升;由于集成度的提高,单片机的寻址能力、片内ROM(FLASH)和RAM的容量都突破了以往的数量和限制。山于系统资源和系统复杂程度的增加,开始使用高级语言(如C语言)来开发单片机的程序。使用高级语言可以降低开发难度,缩短开发周期,增强软件的可读性和可移植性,便于改进和扩充功能。3、 低电压和低功耗上△収軽屢…区鯉戋学辺单片机的嵌入式应用决定了低电压和低功耗的特性十分重要。由于CMOS等工艺的大量采用,很多单片机可以在更低的电压下工作(1.2V或0.9V),功耗已经降低到uA级。这些特性使得单片机系统可以在更小电源的支持下工作更长的时间。4、低价格单片机应用面广,使用数量大,带来的直接好处就是成本的降低。U前世界各大公司为了提高竞争力,在提高单片机性能的同时,十分注意:降低其产品的价格。下面大致介绍一下单片机的主要应用领域和特点。(1) 家用电器领域用单片机控制系统取代传统的模拟和数字控制电路,使家用电器(如洗衣机、空调、冰箱、微波炉、和电视机等)功能更完善,更加智能化和易于使用。(2) 办公自动化领域单片机作为嵌入式系统广泛应用于现代办公设备,如计算机的键盘、磁盘驱动、打印机、复印机、电话机和传真机等。(3) 商业应用领域商业应用系统部分与家用和办公应用系统相似,但更加注重设备的稳定性、可靠性和安全性。商用系统中广泛使用的电子计量仪器、收款机、条形码阅读器、安全监测系统、空气调节系统和冷冻保鲜系统等,都釆用了单片机构成的专用系统。与通用计算机相比,这些系统III于比较封闭,可以更有效地防止病毒和电磁干扰等,可靠性更高。(4) 工业自动化在工业控制和机电一体化控制系统中,除了采用工控计算机外,很多都是以单片机为核心的单片机和多机系统。(5) 智能仪表与集成智能传感器U前在各种电气测量仪表中普遍采用了单片机应用系统来代替传统的测量系统,使得测量系统具有存储、数据处理、查询及联网等智能功能。将单片机和传感器相结合,可以构成新一代的智能传感器。它将传感器变换后的物理量作进一步的变化和处理,使其成为数字信号,可以远距离传输并与计算机接口。(6) 现代交通与航空航天领域通常应用于电子综合显示系统、动力监控系统、自动驾驶系统、通信系统以及运行监视系统等。这些领域对体积、功耗、稳定性和实时性的要求往往比商用系统还要高,因此釆用单片机系统更加重要。目前,我国生产很多型号的单片机,在此,我们采用型号为STC89C52的单片机。因
为:STC89C52是一个低电压,高性能CMOS8位单片机,片内含4kbytes的可反复擦写的Flash只读程序存储器和128bytes的随机存取数据存储器(RAM),器件采用ATMEL公司的高密度、非易失性存储技术生产,兼容标准MCS-52指令系统,片内置通用8位中央处理器和Flash存储单元,内置功能强大的微型讣算机的AT89C52提供了高性价比的解决方案。STC89C52是一个低功耗高性能单片机,40个引脚,32个外部双向输入/输出(I/O)端口,同时内含2个外中断口,2个16位可编程定时讣数器,2个全双工串行通信口,STC89C51可以按照常规方法进行编程,也可以在线编程。其将通用的微处理器和Flash存储器结合在一起,特别是可反复擦写的Flash存储器可有效地降低开发成本。2.2单片机的基本结构HCS-52单片机内部结构8052单片机包含中央处理器、程序存储器(ROM)>数据存储器(RAM)、定时/计数器、并行接口、审行接口和中断系统等儿大单元及数据总线、地址总线和控制总线等三大总线,现在我们分别加以说明:中央处理器:中央处理器(CPU)是整个单片机的核心部件,是8位数据宽度的处理器,能处理8位二进制数据或代码,CPU负责控制、指挥和调度整个单元系统协调的工作,完成运算和控制输入输出功能等操作。数据存储器(RAM)8052内部有128个8位用户数据存储单元和128个专用寄存器单元,它们是统一编址的,专用寄存器只能用于存放控制指令数据,用户只能访问,而不能用于存放用户数据,所以,用户能使用的RAM只有128个,可存放读写的数据,运算的中间结果或用户定义的字型表。I程序存储器I程序存储器11数据存储器11定时计数器Im出时钟Loi—ILoi—I并齐f/o口|I串行逋信口I I中断系筑I图2-1单片机8052的内部结构程序存储器(ROM):8052共有4096个8位掩膜ROM,用于存放用户程序,原始数据或表格。定时/计数器(ROM):8052有两个16位的可编程定时/计数器,以实现定时或计数产生中断用于控制程序转向。并行输入输出(I/O)口:8052共有4组8位I/O口(P0、Pl、P2或P3),用于对外部数据的传输。全双工串行口:8052内置一个全双工串行通信口,用于与其它设备间的串行数据传送,该串行口既可以用作异步通信收发器,也可以当同步移位器使用。中断系统:8052具备较完善的中断功能,有两个外中断、两个定时/计数器中断和一个审行中断,可满足不同的控制要求,并具有2级的优先级别选择。时钟电路:8052内置最高频率达12MHz的时钟电路,用于产生整个单片机运行的脉冲时序,但8052单片机需外置振荡电容。单片机的结构有两种类型,一种是程序存储器和数据存储器分开的形式,即哈佛(Harvard)结构,另一种是釆用通用计•算机广泛使用的程序存储器与数据存储器合二为一的结构,即普林斯顿(Princeton)结构。INTEL的MCS-52系列单片机釆用的是哈佛结构的形式,而后续产品16位的MCS-96系列单片机则釆用普林斯顿结构。下图是MCS-52系列单片机的内部结构示意图。P0.0■-P0.7 :P2・ P2.7―出说曲_—坦拄拄片-RAM
地址8S<>RAMI迺道0駆动團P0.0■-P0.7 :P2・ P2.7―出说曲_—坦拄拄片-RAM
地址8S<>RAMI迺道0駆动團|通迫Z驱动韶|EFROMKOH[堆挨捋计U1XTAL1TAL2TMP1H'1130DflssiH存ss|nr|遇运3递打器|nr中断.申行口定时豁賤規PSW|Pl.0一一Pl.・r P3.O一一P3.7DFTRAJLHHl上理軽矍一区酬戋学?1图2-2MCS-52系列单片机的内部结构MCS-52的引脚说明:MCS-52系列单片机中的8031、8051及8751均采用40Pin封装的双列直接DIP结构,右图是它们的引脚配置,40个引脚中,正电源和地线两根,外置石英振荡器的时钟线两根,4组8位共32个1/0口,中断口线与P3口线复用。现在我们对这些引脚的功能加以说明:MCS-51的引脚说明:MCS-52系列单片机中的8031、8051及8751均采用40Pin封装的双列直接DIP结构,右图是它们的引脚配置,40个引脚中,正电源和地线两根,外置石英振荡器的时钟线两根,4组8位共32个1/0口,中断口线与P3口线复用。现在我们对这些引脚的功能加以说明:图2-3单片机的引脚Pin9:RESET/VpdM时钟电路开始工作,在期以上的高电平,系统图2-3单片机的引脚Pin9:RESET/VpdM时钟电路开始工作,在期以上的高电平,系统计数器PC指向0000H,堆栈指针写入07H,其RESET山拓电平下降为DDOKXTXHTBT-lolTTO12345G7TO12345G721II w LLM11111111K33333333AAGFPPPFFPPFFPFFFPPTT0123456783012345G789111111111120937654321059765432143333333333222222222CC=1F0.0/ADOP0・1/AD1=JPO.2/AD2=1FO.3ZAD3=JFO.4/AE4=JPO.5/AD5PO.G/ADG=JPO.7/AE7=1EA/VFF_=JALE/FROGPESIT=JP2.7ZA15=1F2・6/A14=JF2.5/A13=JF2.4/A12P2・3/A11=JP2.2/A10=1F2.1ZA3=JF2.0/A8图位信号复用脚,当8052通电,RESET引脚上出现24个时钟周即初始复位。初始化后,程序P0-P3输岀口全部为高电平,它专用寄存器被清“0”O低电平后,系统即从0000H地址开始执行程序。然括匸作寄存器R0-R7)的状态,8052址开始执行程序。然括匸作寄存器R0-R7)的状态,8052的初始态。而,初始复位不改变RAM(包80"的复位方式可以是自动复位,也可以是手动复位,见下图4。此外,RESET/Vpd还是一复用脚,掉电其间,此脚可接上备用电源,以保证单片机内部RAM的数据不丢失。Vcc个人收集整理仅供参考学习上电自动复位手动复位电賂Vcc个人收集整理仅供参考学习上电自动复位手动复位电賂图24上电自动和手动复位电路图8051out—-XTA128051out—-XTA12时钟源产XTAL1外部时钟方式内部时钟方式图2-5内部和外部时钟方式图Pin30:ALE/W当访问外部程序器时,ALE(地址锁存)的输出用于锁存地址的低位字节。而访问内部程序存储器时,ALE端将有一个1/6时钟频率的正脉冲信号,这个信号可以用于识别单片机是否工作,也可以当作一个时钟向外输出。更有一个特点,当访问外部程序存储器,ALE会跳过一个脉冲。如果单片机是EPROM,在编程其间,丽将用于输入编程脉冲。Pin29:ml当访问外部程序存储器时,此脚输出负脉冲选通信号,PC的16位地址数据将出现在P0和P2口上,外部程序存储器则把指令数据放到P0口上,由CPU读入并执行。Pin31:EA/VPP程序存储器的内外部选通线,8051和8751单片机,内置有4kB的程序存储器,当EA为高电平并且程序地址小于4kB时,读取内部程序存储器指令数据,而超过4kB地址则读取外部指令数据。如EA为低电平,则不管地址大小,一律读取外部程序存储器指令。
上△収軽矍一区酬曇辺显然,对内部无程序存储器的8031,EA端必须接地。第三章数字钟的硬件设计3.1最小系统设计2PlOuEA/VPP117K12 711.0592M/12MAT89C51jFVCCP0.0P0.1P0.2P0.3P0.4P0.5P0.6PSE14P2.7P2.62PlOuEA/VPP117K12 711.0592M/12MAT89C51jFVCCP0.0P0.1P0.2P0.3P0.4P0.5P0.6PSE14P2.7P2.6P2.5P2.4P2.3P2.2P2.1P2.00-ROM开一……乏二父…56789234039383333113141516171820―P1.0pi」Pl.2Pl.3Pl.4Pl.5Pl.6Pl.7RST/VPDP3.0/RXDIP3.1/TXDALP3.2/INT0P3.3/fWTlP3.4/T0P3.5/1XP3.6/WP3.7/RDXTAL2XTAL1GND228卡2726~2551最小系统~~IIII~~I图3-1单片机最小系统的结构图单片机的最小系统是由电源、复位、晶振、/EA二1组成,下面介绍一下每一个组成部分。电源引脚Vcc40电源端GND20接地端工作电压为5V,另有AT89LV51X作电压则是2.7-6V,引脚功能一样。外接晶体引脚个人收集整理仅供参考学习XTAL119XTAL218XTAL119XTAL218C2T卜C1T卜XTAL2XTAL1外部振荡C2T卜C1T卜XTAL2XTAL1外部振荡
信号XTAL2XTAL1GNDGNDGND1•1•内部方式2.外寤方式图图3-2晶振连接的内部、外部方式图XTAL1是片内振荡器的反相放大器输入端,XTAL2则是输出端,使用外部振荡器时,外部振荡信号应直接加到XTAL1,而XTAL2悬空。内部方式时,时钟发生器对振荡脉冲二分频,如晶振为12MHz,时钟频率就为6MHz。晶振的频率可以在lMHz-24MHz内选择。电容取30PF左右。系统的时钟电路设计是釆用的内部方式,即利用芯片内部的振荡电路。AT89单片机内部有一个用于构成振荡器的高增益反相放大器。引脚XTAL1和XTAL2分别是此放大器的输入端和输出端。这个放大器与作为反馈元件的片外晶体谐振器一起构成一个自激振荡器。外接晶体谐振器以及电容C1和C2构成并联谐振电路,接在放大器的反馈回路中。对外接电容的值虽然没有严格的要求,但电容的大小会影响震荡器频率的高低、震荡器的稳定性、起振的快速性和温度的稳定性。因此,此系统电路的晶体振荡器的值为12MHz,电容应尽可能的选择陶瓷电容,电容值约为22nF。在焊接刷电路板时,晶体振荡器和电容应尽可能安装得与单片机芯片靠近,以减少寄生电容,更好地保证震荡器稳定和可靠地工作。XTAL1复位RST9在振荡器运行时,有两个机器周期(24个振荡周期)以上的高电平出现在此引腿时,将使单片机复位,只要这个脚保持高电平,51芯片便循环复位。复位后P0-P3口均置1引脚表现为高电平,程序计数器和特殊功能寄存器SFR全部清零。当复位脚山高电平变为低电平时,芯片为ROM的00H处开始运行程序。复位是由外部的复位电路来实现的。片内复位电路是复位引脚RST通过一个斯密特触发器与复位电路相连,斯密特触发器用来抑制噪声,它的输出在每个机器周期的S5P2,山复位电路采样一次。复位电路通常采用上电自动复位和按钮复位两种方式,此电路系统釆用的是上电与按钮复位电路。当时钟频率选用6MHz时,C取22
上理軽矍一区酬戋学?1nF,Rs约为200Q,Rk约为1K。复位操作不会对内部RAH有所影响。常用的复位电路如下图所示:VCC
O,+,+C3——LOuFIRestolR3 1〕 IKRESETR2RESET 1I S.2K.GND图3-3常用复位电路图输入输出引脚P0端口[P0.0-P0.7]P0是一个8位漏极开路型双向I/O端口,端口置1(对端口写1)时作高阻抗输入端。作为输出口时能驱动8个TTLo对内部Flash程序存储器编程时,接收指令字节;校验程丿芋时输出指令字节,要求外接上拉电阻。在访问外部程序和外部数据存储器时,P0口是分时转换的地址(低8位)/数据总线,访问期间内部的上拉电阻起作用。P1端口[P1.0-P1.7]P1是一个带有内部上拉电阻的8位双向I/O端口。输出时可驱动4个TTL。端口置1时,内部上拉电阻将端口拉到高电平,作输入用。对内部Flash程序存储器编程时,接收低8位地址信息。P2端口[P2.0—P2.7]P2是一个带有内部上拉电阻的8位双向I/O端口。输出时可驱动4个TTL。端口置1时,内部上拉电阻将端口拉到高电平,作输入用。对内部Flash程序存储器编程时,接收高8位地址和控制信息。在访问外部程序和16位外部数据存储器时,P2口送出高8位地址。而在访问8位地址的外部数据存储器时其引脚上的内容在此期间不会改变。P3端口[P3.0-P3.7]P2是一个带有内部上拉电阻的8位双向I/O端口。输出时可驱动4个TTL。端口置1时,内部上拉电阻将端口拉到高电平,作输入用。对内部Flash程序存储器编程时,接控制信息。除此之外P3端口还用于一些专门功能,具体请看下表。P3引脚兼用功能P3.0串行通讯输入(RXD)P3.1串行通讯输出(TXD)P3.2外部中断0(INTO)P3.3外部中断1(IXT1)P3.4定时器0输入(TO)P3.5定时器1输入(T1)P3.6外部数据存储器写选通WRP3.7外部数据存储器写选通RD表3-1P3端口引脚兼用功能表3.2LED显示电路显示器普遍地用于直观地显示数字系统的运行状态和工作数据,按照材料及产品工艺,单片机应用系统中常用的显示器有:发光二极管LED显示器、液晶LCD显示器、CRT显示器等。LED显示器是现在最常用的显示器之一,如下图所示。图发光二极管(LED)III特殊的半图发光二极管(LED)III特殊的半单独使用,也可以组装成分段式或分段式显示器(LED数码管)山7二极管。外加正向电压时二极管导dp3-4LED显示器的符号图导体材料碑化稼、磷神化镣等制成,可以点阵式LED显示器件(半导体显示器)。条线段围成8字型,每一段包含一个发光通,发出清晰的光。只要按规律控制各发光段壳、灭,就可以显示各种字形或符号。LED数码管有共阳、共阴之分。图是共阳式、共阴式LED数码管的原理图和符号.个人收集整理仅供参考学习:a,b 亡&屯 :a,b 亡&屯 f£Kl共阴視T段数码管bEe共阳极7段数码管图3-5共阳式、共阴式LED数码管的原理图和数码管的符号图显示电路显示模块需要实时显示当前的时间,即时、分、秒,因此需要6个数码管,另需两个数码管来显示横。采用动态显示方式显示时间,硬件连接如下图所示,时的十位和个位分别显示在第一个和第二个数码管,分的十位和个位分别显示在第四个和第五个数码管,秒的十位和个位分别显示在第七个和第八个数码管,其余数码管显示横线。LED显示器的显示控制方式按驱动方式可分成静态显示方式和动态显示方式两种。对于多位LED显示器,通常都是采用动态扫描的方法进行显示,其硬件连接方式如下图所示。上△収軽屢…区鯉戋学辺图3-6数码管的硬件连接示意图数码管使用条件:a、 段及小数点上加限流电阻b、 使用电压:段:根据发光颜色决定;小数点:根据发光颜色决定c、 使用电流:静态:总电流80mA(每段10mA);动态:平均电流4-5mA峰值电流100mA数码管使用注意事项说明:(1)数码管表面不要用手触摸,不要用手去弄引角;(2)焊接温度:260度;焊接时间:5S(3)表面有保护膜的产品,可以在使用前撕下来。3.3键盘控制电路该设计需要校对时间,所以用三个按键来实现。按khour来调节小时的时间,按kmin来调节分针的时间,按ksec来调节秒的时间。下图是按键硬件连接图。STC89C52图3-7按键控制电路的硬件连接图当用手按下一个键时,如图3-8所示,往往按键在闭合位置和断开位置之间跳儿下才稳定到闭合状态的情况;在释放一个键时,也回会出现类似的情况。这就是抖动。抖动的持续时间随键盘材料和操作员而异,不过通常总是不大于10ms。很容易想到,抖动问题不解决就会引起对闭合键的识别。用软件方法可以很容易地解决抖动问题,这就是通过延迟10ms来等待抖动消失,这之后,在读入键盘码。个人收集整理仅供参考学习第四章数字钟的软件设计系统的软件设计也是工具系统功能的设II。前沿抖动 一第四章数字钟的软件设计系统的软件设计也是工具系统功能的设II。前沿抖动 一►各种实质性功能)的设讣和监控软件D—键按下一图按键玛功信号汲形片I机软件的设计主更包括执行软件(完成肮殳计|单片桝的软*莎盘噺热虑以下儿个方面的问题:(1)根据软件功能要求,将系统软件划生坷若F个相对独立的部分,设计岀合理的总体结构,使软件开发清晰、简洁和流程合理;(2)培养良好的编程风格,如考虑结构化程序设计.实行模块化、子程序化。既便于调试、链接,又便于移植和修改;(3) 建立正确的数学模型,通过仿真提高系统的性能,并选取合适的参数;(4) 绘制程序流程图;(5) 合理分配系统资源;(6) 为程序加入注释,提高可读性,实施软件工程;(7) 注意软件的抗干扰设计,提高系统的可靠性。4.1系统软件设计流程图这次的数字电子钟设计用到很多子程序,它们的流程图如下所示。主程序是先开始,然后启动定时器,定时器启动后在进行按键检测,检测完后,就可以显示开始图时间。开始图按键处理是先检测秒按键是否按下, 按键如果按下,秒就加1;如果没有按下,就检测分按键是否按下,分按键如果按启动定时器口果没有按下,就检测时按键是否按下,时按键如果按下,时就加1如果没有按卞,就把时间显示出来。开始TETTIlI钟是否到,1分钟妇果到,Y定时器中断H N图测分按键是否按下,分按键如果按启动定时器口果没有按下,就检测时按键是否按下,时按键如果按下,时就加1如果没有按卞,就把时间显示出来。开始TETTIlI钟是否到,1分钟妇果到,Y定时器中断H N图4-2綁,秒单元就加h如果没到,就检测1分秒按键按下?疋测1小时是否到,1小时如果到,时单元就加1,如果没到,就显示时间。HM开始一秒时间到?时间显示是先秒个位计算显示,然后是秒十位计算显示,再是分个位计算显示,再然后是分十位显示,再就是时个位计算显示,最后是时十位显示。lc2
r-叭是分十位显示,再就是时个位计算显示,最后是时十位显示。lc2
r-叭秒十位计算显awaC3xz—dI-C3xz—dI-CRV^T»LX1M/分个位计算显U.HTMI3LM>L..▼H•«»分十位计算显示丄时个位计算显分个位计算显U.HTMI3LM>L..▼H•«»分十位计算显示丄时个位计算显示图4・5数字钟的原理图在此有必要介绍一下数字电子针时十位计算显工作原理:数字电子钟是一个将“时”,“分在此有必要介绍一下数字电子针时十位计算显工作原理:数字电子钟是一个将“时”,“分S“期为24小时,显示满刻度为23时钟电路主要山显示器“时S“分S示结束”显示于人的视觉器官的计时装置。它的汁时周Q外还有校时功能。因此,一个基本的数字;还有校时电路组成。8个数码管的段选接到单片机的P0口,位选接到单片机的P2口。数码管按照数码管动态显示的工作原理工作,
将标准秒信号送入“秒单元S“秒单元”采用60进制计数器,每累计•60秒发出一个“分脉冲”信号,该信号将作为“分单元”的时钟脉冲。“分单元”也釆用60进制计数器,每累计60分钟,发出一个“时脉冲”信号,该信号将被送到“时单元”。“时单元”采用24进制计15/28时器,可实现对一天24小时的累计。显示电路将“时”、“分”、“秒”通过七段显示器显示出来。校时电路时用来对“时”、“分”、“秒”显示数字进行校对调整,按一下ksec,秒单元就加1,按一下kmin,分就加1,按一下khour,时就加1。4.3主程序#include〈reg52・h>sbitksec二P3°0;sbitkmin二P3°l;sbitkhour二P3"2;unsignedcharsecshi二0,secge=0,minshi=0,minge=0,hourshi=0,hourge=0;unsignedintnum二0,sec二0,min二0,hour二0;unsignedcharcodetable[10]={0x3f,Oxxx,0x5b,0x4f,0x66,0x6d,0x7d,0x07,0x7f,0x6f);voiddelay(unsignedint):voidkeyscan();voiddisplay():main(){TMOD=0x01;THO二(65536-50000)/256;TLO=(65536-50000)%256;EA二1;ETO二1;TRO二1;wh订e(1){display();keyscan();}}voiddelay(unsignedintz){unsignedintx,y;for(x二z;x〉0;x--)for(y=110;y>0;y—);}个人收集整理仅供参考学习4.4时钟设置子程序voidtimeO()interrupt1{num++;THO二(65536-50000)/256;TLO=(65536-50000)%256;}4.5定时器中断子程序voidtimeO()interrupt1{num++;THO二(65536-50000)/256;TLO=(65536-50000)%256;}在这里,我们有必要介绍一下单片机的中断系统,以利于我们的学习。中断技术在单片系统中有着十分重要的作用,它不仅可以提高单片机CPU的效率,也可以对突发事件处理。所谓中断就是当CPU正在执行程序A时,发生了另一个急需处理的事件B,这是CPU暂停当前执行的程序A,立即转去执行处理事件B的程序,处理完事件B后,再返回到程序A继续执行,这个过程被叫做中断。关于中断的概念有下列儿个名词:(1)程序A称为主程序,(2)处理事件B的程序称为中断服务程序,(3)主程序中转向中断服务程序的地方称为断点,(4)引起中断的原因即事件B称为中断源,(5)转去执行中断服务程序称为中断响应。关于中断的概念可以打个如下的比喻。领导(CPU)在自己的房间办公(执行主程序),下属(外设)有问题打电话来请示(中断源),领导停下正在进行的工作,通过电话给下属做指示(执行中断服务程序),指示完后,领导挂断电话,继续做自己的工作(返回主程序继续执行)。中断是一个过程,当中央处理器CPU在处理某件事情时,外部乂发生了另一紧急事件,请求CPU暂停当前的工作而去迅速处理该紧急事件。处理结束后,再回到原来被中断的地方,继续原来的工作。引起中断的原因或发出中断请求的来源,称为中断源。单片机一般允许有多个中断源,当儿个中断源同时向CPU请求中断时,就存在CPU优先响应哪一个中断请求源的问题(优先级问题),一般根据中断源的轻重缓急排队,优先处理最紧上磁輕矍一区酬戋学?1急事件的中断请求,于是便规定每一个中断源都有一个中断优先级别,并且CPU总是响应级别最高的中断请求。当CPU正在处理一个中断源请求的时候,乂发生了另一个优先级比它高的中断源请求,如果CPU能够暂时中止对原来中断处理程序的执行,转而去处理优先级更高的中断源请求,待处理完以后,再继续执行原来的低级中断处理程序,这样的过程称为中断嵌套。4.6LED显示程序voiddisplay(){辻(num~20){num^O;sec++;if(sec==60){sec二0;min++;if(min~60){min=0;hour++;if(hour==24){hour=0;min=0;sec=0;}}))secge=sec%10;secshi=sec/10;minge=min%10;minshi=min/10;hourge=hour%10;个人收集整理仅供参考学习hourshi=hour/10;P2=0xfe;PO=table[secge];delay(5);P2=0xfd;PO=table[secshi];delay(5);P2=0xfb;PO二0x40;delay(5);P2=0xf7;PO=table[minge];delay(5);P2=0xef;PO=table[minshi];delay(5);P2二Oxdf;PO二0x40;delay(5);P2=0xbf;PO=table[hourge];delay(5);P2=0x7f;PO二tableEhourshi];delay(5);}4.7按键控制子程序voidkeyscan(){if(ksec==0){delay(10);仅供参考学习if(ksec==O){sec++;if(sec>=60)sec二0;}while(ksec==0)display();}辻(kmin~0){delay(10);if(kmin==O){min++;辻(min〉二60)min二0;}while(kmin==0)displayO;}辻(khour~0){delay(10);if(khour==0){hour++;if(hour>=60)hour=0;}while(khour==0)displayO;)}第五章系统仿真5.1PROTUES软件介绍
Proteus软件是LabcenterElectronics公司的一款电路设计与仿真软件,它包括ISIS、ARES等软件模块,ARES模块主要用来完成PCB的设计,而ISIS模块用来完成电路原理图的布图与仿真。Proteus的软件仿真基于VSM技术,它与其他软件最大的不同也是最大的优势就在于它能仿真大量的单片机芯片,比如MCS-51系列、PIC系列等等,以及单片机外圉电路,比如键盘、LED、LCD等等。通过Proteus软件的使用我们能够轻易地获得一个功能齐全、实用方便的单片机实验室。5.2电子钟系统PROTUES仿真用PROTUES软件,根据数字电子钟的原理图,画出仿真图,得到的图如下所示。•C3*'TA•••傅XTAL1ZTAIZpomcoP0.VAC1py.K2PWV3PO.^AOiPg.«D5POLADSP0.7/ACT>Q0-~TOT*•y“n40:••F5SIX*LCFimzP1.1fTZB<F1Z21.41s1£1.?PNJWRP2.7>©P2N2PZ3^11nuPZS^GPZA^UP2.?^«•C3*'TA•••傅XTAL1ZTAIZpomcoP0.VAC1py.K2PWV3PO.^AOiPg.«D5POLADSP0.7/ACT>Q0-~TOT*•y“n40:••F5SIX*LCFimzP1.1fTZB<F1Z21.41s1£1.?PNJWRP2.7>©P2N2PZ3^11nuPZS^GPZA^UP2.?^«P3XHXPP3.irX3>P3^RTOP3^KHP3.<TDP3ST1
P3切廉
P3.7IAFMeZ3
TT*10TT图5-1数字钟的PROTES仿真第六章调试与功能说明单片机应用系统的调试包括硬件和软件两部分,但是他们并不能完全分开。一般的方法是排除明显的硬件故障,再进行综合调试,排除可能的软/硬件故障。6.1硬盘调试上△収軽屢…区鯉戋学辺拿到电路板后,首先要检查加工质量,并确保没有任何方面的错误,如短路和断路,尤其要避免电源短路:元器件在安装前要逐一检查,用万用表测其数值,看是否与所用相同;完成焊接后,应先空载上电(芯片座上不插芯片),并检查各引脚的电位是否正确。若一切正常,方可在断电的情况下将芯片插入,再次检查各引脚的电位及其逻辑关系。将万用表的探针放到单片机接电源的引脚上检测一下,看是否符合要求。6.2系统性能测试与功能说明走时:默认为走时状态,按24小时制分别显示“时时-分分-秒秒”,有2个“-”动态显示,时间会按实际时间以秒为最少单位变化。走时调整:按ksec对秒进行调整,按一下加一秒;按kmin对分进
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2025年度家庭财产分割与补办离婚协议书
- 2025年度电工设备故障排查与修复服务合同
- 2025年天然气交易平台服务及佣金分成合同
- 2025年舞蹈学校舞蹈教师职务聘用与教学研究合同
- 2025版危险品货物安全培训及咨询服务合同
- 2025版外教远程在线教学服务合同范本
- 2025年度环保型碎石料购销合同书下载
- 2025版商业地产项目招商外包及城市综合体运营协议
- 2025版散热器行业安全检测与认证合同
- 2025年度食用油安全追溯系统开发与应用合同
- 2025年中级消防设施操作员(维保类)考试题库及答案(浓缩500题)
- 新版外研社小学英语三起点四年级下册全册教案
- 蒸汽管道试压作业方案
- 《餐饮食堂厨房消防安全》知识培训
- 《数字技术应用 基础模块(WPS Office 上册)》 课件全套 第1-3单元 探索数字世界 数字技术应用基础 -编程的魅力 程序设计入门
- 质量控制在银行业中的应用
- 热射病的护理诊断和措施
- 三年级科学教材培训心得
- 鼻的症状学相关知识
- QC/T 1209-2024汽车噪声与振动(NVH)术语和定义
- 中职生劳动教育试题答案
评论
0/150
提交评论