电子闹钟说明书_第1页
电子闹钟说明书_第2页
电子闹钟说明书_第3页
电子闹钟说明书_第4页
电子闹钟说明书_第5页
已阅读5页,还剩21页未读 继续免费阅读

下载本文档

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

文档简介

1、页眉本电子闹钟的设计是以单片机技术为核心,采用了小规模集成度的单片机制作的功能相对完善的电子闹钟。硬件设计应用了成熟的数字钟电路的基本设计方法,并详细介绍了系统的工作原理。硬件电路中除了使用at89c51 外,另外还有晶振、电阻、电容、发光二极管、开关、喇叭等元件。在硬件电路的基础上,软件设计按照系统设计功能的要求,运用所学的汇编语言,实现的功能包括时时 -分分 - 秒秒 显示,设定和修改定时时间的小时和分钟、校正时钟时间的小时、分钟和秒、定时时间到能发出一分钟的报警声。一 芯片介绍at89c51 是一种带 4k 字节 flash 存储器的低电压、高性能 cmos 8 位微处理器, 俗称单片机

2、。 at89c51 是一种带 2k 字节闪存可编程可擦除只读存储器的单片机。单片机的可擦除只读存储器可以反复擦除1000 次。该器件采 用atmel高密度 非 易失 存储 器制 造技 术制造, 与工 业标 准的mcs-51 指令集和输出管脚相兼容。由于将多功能8 位 cpu 和闪烁存储器组合在单个芯片中, atmel 的 at89c51 是一种高效微控制器, at89c51 是它的一种精简版本。 at89c51 单片机为很多嵌入式控制系统提供了一种灵活性高且价廉的方案,外形及引脚排列如图1-1 所示。图 1-1 at89c51 引脚图74ls573的八个锁存器都是透明的d 型锁存器,当使能(g

3、)为高时,1 / 241页眉q 输出将随数据( d )输入而变。当使能为低时,输出将锁存在已建立的数据电平上。输出控制不影响锁存器的内部工作,即老数据可以保持,甚至当输出被关闭时,新的数据也可以置入。这种电路可以驱动大电容或低阻抗负载,可以直接与系统总线接口并驱动总线,而不需要外接口。特别适用于缓冲寄存器, i/o 通道,双向总线驱动器和工作寄存器。外形及引脚排列如图 1-2 所示。图 1-2 74ls573 引脚图2 / 242页眉二 硬件电路设计1 时钟电路设计at89c51 系列的单片机的时钟方式分为内部方式和外部方式。内部方式就是在单片机的 xtal1 和 xtal2 的两引脚外接晶振

4、,就构成了自己振荡器在单片机内部产生时钟脉冲信号。外部时钟方式是把外部已经有的时钟信号引入到单片机内部。时钟电路在计算机系统中起着非常重要的作用,是保证系统正常工作的基础。在一个单片机应用系统中,时钟有两方面的含义:一是指为保障系统正常工作的基准震荡定时信号,主要由晶振和外围电路组成,晶振频率的大小决定了单片机系统工作的快慢;二是指系统的标准定时时钟,即定时时间。其电路图如图2-1 所示。图 2-1 时钟电路图2 复位电路设计复位操作完成单片机内电路的初始化,使单片机从一种确定的状态开始运行。当 at89c51 单片机的复位引脚 rst 出现 5ms 以上的高电平时, 单片机就完成了复位操作。

5、 如果 rst 持续为高电平, 单片机就处于循环复位状态,而无法执行程序。 因此要求单片机复位后能脱离复位状态复位操作通常有2种基本形式:上电复位、开关复位。上电复位要求接通电源后,自动实现复位操作。开关复位要求在电源接通的条件下,在单片机运行期间,如果发生死机,用按钮开关操作使单片机复位。其电路图如图2-2 所示。3 / 243页眉图 2-2 复位电路图3 键盘电路设计本次电子闹钟的设计共使用了4 个按键,各个按键的功能如表1 所示。表 1 各按键的接法和功能按键名称连线方法按键功能k1一端接 p1.0,一端接地控制调整当前时间; 同时使闹钟的分加1k2一端接 p1.1,一端接地控制闹钟时间

6、k3一端接 p1.2,一端接地定时闹钟时小时加 1;时间显示时分加1k4一端接 p1.3,一端接地刷新当前显示时间4 显示电路设计数码显示有静态显示方式与动态显示方式两种。工作在静态显示方式时,数码管的位线与电源一直相联,每个数码管均处在通电状态,电路的待显示信号经译码驱动电路后分别传输给显示电路,每个数码管同时收到并显示各自接受到的信号。静态显示时每个数码管均联接有7 段线,即每个数码管都需要7 个联接端口,这样显示电路在输出端需要的联接端口数等于 7,数字电路的待显示信号位数越多,显示电路需要的联接端口就越多。工作在动态显示方式时,数码管的位线在扫描控制电路的控制下按设4 / 244页眉定

7、顺序导通,即电路中的数码管是逐个接通电源,数码管的段线以并联的方式与译码电路联接,扫描控制电路按照设定顺序将数字电路的待显示信号逐个传输给数码管,数码管也按照扫描控制电路设定的显示顺序逐个进行字符显示。动态显示时,数码管的位线数增加,每个数码管均有一个位线控制其是否通电,但是数码管的段线却大幅减少,不论待显示信号的个有多少,数码管的段线都是根。比较两种显示方式可以看出,采用静态显示方式时显示电路需要占用比较多的联接端口,即数字电路的输出端占用了比较多的管脚资源,较多的输出联接端使得电路的布线复杂 , 焊点增加,电路板制作成本上升,同时,一直通电的数码管功率损耗数值也较大;而采用动态显示方式时显

8、示电路所需要的输出端口数比较少,间断通电的数码管功率损耗也比较小。由于显示电路的上述特点,因此,此次电子闹钟的设计采用了动态数码显示。5 / 245页眉三 软件实现软件设计的重点在于秒脉冲信号的产生、显示的实现、以及按键的处理等方面。基于软件的秒脉冲信号通常有延时法和定时中断法。延时法一般采用查询方式,在延时子程序前后必然需要查询和处理的程序,导致误差的产生,因此其秒脉冲的精度不高;中断法的原理是,利用单片机内部的定时器溢出中断来实现。1 主模块的设计主模块是系统软件的主框架。结构化程序设计一般有“自上而下”和“自下而上”两种方式, “自上而下”法的核心就是主框架的构建。它的合理与否关系到程序

9、最终的功能的多少和性能的好坏。本系统的主模块的程序框图如图3-1 所示。系统初始化启动走时定时初始化有关变量初始化中断初始化判时或分变化否?y串口初始化刷新显示显示待机指示符判秒到否?y判设置闹铃时间否?秒指示y设定闹铃时间判是否到闹铃时间?y显示刷新闹铃延时图 3-1 主程序流程图2 基本显示模块设计基本显示模块设计的重点是由显示代码取得相应的段码,显示段码数据的并行发送,高精度的计时工具大多数都使用了石英晶体振荡器,由于电子钟,石英表,石英钟都采用了石英技术,因此走时精度高,稳定性好,使用方便,不需要经常调校,数字式电子钟用集成电路计时时,译码代替6 / 246页眉机械式传动,用 led

10、显示器代替显示器代替指针显示进而显示时间,减小了计时误差,这种表具有时,分,秒显示时间的功能,还可以进行时和分的校对,片选的灵活性好。程序流程如图3-2 所示。将 16 进制时分秒数据转化为bcd 显示代码关显示以免显示抖动通过串口将时分秒数据传入数码管打开显示图 3-2 基本显示流程图3 时间设定模块设计时间设定模块的设计要点是按键的去抖处理与“一键多态”的处理。即只涉及4 个键完成了6 位时间参数的设定。软件法去抖动的实质是软件延时,即检测到某一键状态变化后延时一段时间,再检测该按键的状态是否还保持着,如是则作为按键处理,否则,视为抖动,不予理睬。去抖中的延时时间一般参考资料多描述为10m

11、s 左右,实际应用中,应大于20ms,否则,会导致按一次作多次处理,影响程序正常执行。“一键多态”即多功能键的实现思想是,根据按键时刻的系统状态,决定按键采取何种动作,即何种功能,其流程图如图3-3 所示。7 / 247页眉设置键吗?设置模块初始化将在编参数送显示缓冲区闪烁标志为真?将当前位的显示代码置暗代码键吗?调基本显示模块刷新显示根据当前位的性质分别进行处理(含上下限判断)设置键吗?当前编辑的是分各位?结束设定当前编辑位下移(下一位)图 3-3 时间设定流程图4 闹钟功能实现模块设计闹铃功能的实现涉及到两个方面:闹铃时间设定和是否闹铃判别与相应处理。闹铃时间设定模块的设计可参照时间设定模

12、块,这里着重阐述闹铃判别与处理模块的设计问题。闹铃判别与闹铃处理的关键在于判别何时要进行闹铃。当时十位、时个位、分十位、分个位中任一位发生改变(进位)时,就必须进行闹铃判别。译码显示电路将“时”、“分”、“秒”计数器的输出送到七段显示译码驱动器译码驱动,通过六个七段 led 显示器显示出来。闹铃电路根据计时系统的输出状态产生一脉冲信号,然后加上一个高频或低频信号送到放大电路驱动蜂鸣器发声实现报时。校时电路是直接加一个脉冲信号到时计数器或者分计数器或者秒计数器来对“时”、“分”、“秒”显示数字进行校对调整,其流程图如图3-4 所示。8 / 248页眉闹铃判别处理时十位、个位,分十位、个位改变了是

13、否设置了闹铃中断返回判当前时间是设定时间设置闹铃标志清除闹铃标志中断返回图 3-4 闹钟功能实现流程图9 / 249页眉四 调试1 硬件调试在电路板焊接好后,经硬件调试未能实现预期的实验结果,经过仔细检查发现两个故障:有一个引脚的导线和地线短路;max232的 r1in 和t1out 与串口下载器件的2,3 引脚接反了,导致实验结果不正确。2 软件调试在硬件调试无误的基础上,将程序烧入到at89c51 芯片中,实现了在proteus 中仿真的结果。3 综合调试经过硬件调试和软件调试,各个程序模块的功能都能正确的运行,电子闹钟正确的实现了设计的结果。10 / 2410页眉五 结论通过这次课程设计

14、,使我对单片机这门功课有了更深刻的认识和了解。首先对于硬件电路的工作原理有了进一步系统的学习,同样就有了进一步的认识,使我懂得了理论与实际相结合的重要性,只有理论知识是远远不够的,只有把所学的理论知识与实践相结合起来,才能提高自己的实际动手能力和独立思考的能力。其次,也培养了我在面对问题的时候能够独立思考的能力。但是在这次课程设计中也有不足之处,比如闹钟并不能整点报时,还有在对电子闹钟设定定时时间时只能对时、 分依次加 1,不能对其减 1 操作,这是本次课程设计的不足之处。因此还需要在以后的学习中,拓宽自己的知识面,解决设计的不足。总之,通过这次课程设计不仅使我巩固了本课程所学的基本知识,还使

15、我具有了撰写科研报告的能力,我相信这些能力在我以后的工作或者是再学习中一定会起到不小的作用,一切的辛苦和艰难都是值得的。11 / 2411页眉参考文献1 李群芳,肖看 .单片机原理、接口及应用 - 嵌入式系统技术基础 m ,北京:清华大学出版社, 2005.2 杨金泉 .单片机原理及应用实验指导手册m12 / 2412页眉附录源程序代码:k1 equ p1.0 ; 在程序开始前定义变量k2 equ p1.1k3 equ p1.2k4 equ p1.3org 0000hljmp mainorg 000bhljmp timeorg 0100hmain:mov sp,#50hmov 20h,#00h

16、;时间 bin secondmov 21h,#00h;bin minutemov 22h,#00h;bin hourmov 23h,#01h;闹钟 bin minutemov 24h,#01h;bin hourmov 25h,#00h;定义一个标志位mov 30h,#00h;时间 bcd secondmov 31h,#00h;mov 32h,#00h;bcd minutemov 33h,#00h;mov 34h,#00h;bin hourmov 35h,#00h;mov 36h,#01h;闹铃 bcd minutemov 37h,#00h;mov 38h,#01h;bcd hourmov 39

17、h,#00h;mov tmod,#01h;16 位计数器t0,方式 1mov th0,#03ch ;赋初值mov tl0, #0b0hmov ie,#10000111b;开中断t0,ea=1setb tr0;t0 启动计数mov r2,#14h;计数器mov p2,#0ffh13 / 2413页眉loop:lcall timepro ;调用现在时间与闹铃时间比较程序lcall display1;调用现在时间显示子程序jb k1,m1;判断按键是否按下lcall xiaozhen1;调用消抖程序mov c,25h.0jc a1a1:clr 25h.0lcall settime; 调用设置现在时间

18、子程序ljmp loopm1:jb k2,m2lcall xiaozhen2mov c,25h.0jc a2a2:clr 25h.0lcall setatime;调用设置闹钟的程序ljmp loopm2:jb k4,m3a3:lcall xiaozhen3mov c,25h.0jc a4a4:clr 25h.0m3:ljmp loopsettime:l0:lcall display1jb k2,l1lcall xiaozhen4mov c,25h.0jc a5a5:clr 25h.0inc 22hmov a,22hcjne a,#18h,go12mov 22h,#00hmov 34h,#00h

19、mov 35h,#00h14 / 2414页眉ljmp l0l1:jb k3,l2lcall xiaozhen5mov c,25h.0jc a6a6:clr 25h.0inc 21hmov a,21hcjne a,#3ch,go11mov 21h,#00hmov 32h,#00hmov 33h,#00hljmp l0go11:mov b,#0ahdiv abmov 32h,bmov 33h,aljmp l0go12:mov b,#0ahdiv abmov 34h,bmov 35h,aljmp l0l2:jb k4,l0lcall xiaozhen3mov c,25h.0jc axax: clr

20、 25h.0retsetatime:lcall display2 ;调用闹钟设置,闹铃响时的显示程序n0: lcall display2jb k3,n1lcall xiaozhen6mov c,25h.0jc a715 / 2415页眉a7: clr 25h.0inc 24hmov a,24hcjne a,#24,go22mov 24h,#00hmov 38h,#00hmov 39h,#00hljmp n0n1:jb k1,n2lcall xiaozhen7mov c,25h.0jc a8a8:clr 25h.0inc 23hmov a,23hcjne a,#60,go21mov 23h,#0

21、0hmov 36h,#00hmov 37h,#00hljmp n0go21:mov b,#0ahdiv abmov 36h,bmov 37h,aljmp n0go22:mov b,#0ahdiv abmov 38h,bmov 39h,aljmp n0n2:jb k4,n0lcall xiaozhen3mov c,25h.0jc a9a9:clr 25h.016 / 2416页眉rettimepro:mov a,21hmov b,23hcjne a,b,bkmov a,22hmov b,24hcjne a,b,bksetb 25h.0mov c,25h.0jc xxxx:lcall timeou

22、tbk:rettimeout:x1:lcall bzlcall display2clr 25h.0jb k4,x1retbz:clr p3.7mov r7,#250t2:mov r6,#124t3:djnz r6,t3djnz r7,t2setb p3.7jb k4,xylcall xiaozhen3mov c,25h.0jc xy1xy:retxy1:ljmp loopxiaozhen1:lcall display1jb k1,xiaozhen1mov c,k1jc xiaozhen1lcall delay17 / 2417页眉mov c,k1jc xiaozhen1stop1:mov c,

23、k1jnc stop1lcall delaymov c,k1jnc stop1setb 25h.0retxiaozhen2:lcall display2jb k2,xiaozhen2mov c,k2jc xiaozhen2lcall delaymov c,k2jc xiaozhen2stop2:mov c,k2jnc stop2lcall delaymov c,k2jnc stop2setb 25h.0retxiaozhen3:lcall display1jb k4,xiaozhen3mov c,k4jc xiaozhen3lcall delaymov c,k4jc xiaozhen3stop

24、3:mov c,k4jnc stop3lcall delaymov c,k4jnc stop318 / 2418页眉setb 25h.0retxiaozhen4:lcall display1jb k2,xiaozhen4mov c,k2jc xiaozhen4lcall delaymov c,k2jc xiaozhen3stop4:mov c,k2jnc stop4lcall delaymov c,k2jnc stop4setb 25h.0retxiaozhen5:lcall display1jb k3,xiaozhen5mov c,k3jc xiaozhen5lcall delaymov c

25、,k3jc xiaozhen5stop5:mov c,k3jnc stop5lcall delaymov c,k3jnc stop5setb 25h.0retxiaozhen6:lcall display2jb k3,xiaozhen6mov c,k3jc xiaozhen6lcall delay19 / 2419页眉mov c,k3jc xiaozhen6stop6:mov c,k3jnc stop6lcall delaymov c,k3jnc stop6setb 25h.0retxiaozhen7:lcall display2jb k1,xiaozhen7mov c,k1jc xiaozh

26、en7lcall delaymov c,k1jc xiaozhen7stop7:mov c,k1jnc stop7lcall delaymov c,k1jnc stop7setb 25h.0retdelay:mov r4,#14hdl00:mov r5,#0ffhdl11:djnz r5,dl11djnz r4,dl00rettime:push accpush pswmov th0,#03chmov tl0,#0b0hdjnz r2,ret0mov r2,#14hmov a,20h20 / 2420页眉clr cinc acjne a,#3ch,go1mov 20h,#0mov 30h,#0mov

温馨提示

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

评论

0/150

提交评论