智能定时器设计.doc
《智能定时器设计.doc》由会员分享,可在线阅读,更多相关《智能定时器设计.doc(56页珍藏版)》请在沃文网上搜索。
1、摘要:定时器的数字化给人们生产生活带来了极大的方便,同时定时器的集成化受广大消费的喜爱, 因此得到了广泛的使用。定时器是采用数字电路实现对“时”、“分”、“秒”数字显示的计时装置。定时器的精度、稳定度远远超过老式定时器。在这次设计中,我们采用LED数码管显示时、分、秒,以24 小时计时方式,根据数码管动态显示原理来进行显示,用12MHz的晶振产生振荡脉冲,定时器计数。在此次设计中,电路具有显示时间的其本功能,还可以实现对时间的调整。 本次设计定时器主要通过单片机系统将传输的数据显示在数码显示管和LED灯上,从而实现的闹钟、整点报时、时间显示、校对时间等一系列的的操作。关键词: 定时器; 单片机
2、; STC89C52I目 录摘 要11 引 言11.定时器的背景11.2定时器的意义11.3定时器的应用11.4主要设计任务22 整体设计方案32.1 定时器的功能及设计要求32.2 定时器的实现形式32.3 实现定时器计时的基本方法43 定时器硬件系统的设计63.1 定时器主控电路CPU的选择63.2 定时器主控电路最小应用系统103.3 键盘及其接口113.3.1按键的去抖处理113.3.2定时器按键电路113.4 蜂鸣器电路123.5 数码管显示电路134 定时器软件系统的设计164.1 主程序流程图164.2 中断流程图174.3 定时程序设计195 定时器的系统调试仿真与测试205.
3、1 调试205.2 仿真215.3 测试236 总 结25致 谢26参考文献27附件一:定时器电路图28附件二:元器件清单29附件三:源程序31第1章 引 言1.1数字定时器的背景 20世纪末,电子技术获得了飞速的发展,在其推动下,现代电子产品几乎渗透了社会的各个领域,有力地推动了社会生产力的发展和社会信息化程度的提高,同时也使现代电子产品性能进一步提高,产品更新换代的节奏也越来越快。时间对人们来说总是那么宝贵,工作的忙碌性和繁杂性容易使人忘记当前的时间。忘记了要做的事情,当事情不是很重要的时候,这种遗忘无伤大雅。但是,一旦重要事情,一时的耽误可能酿成大祸。目前,单片机正朝着高性能和多品种方向
4、发展趋势将是进一步向着CMOS化、低功耗、小体积、大容量、高性能、低价格和外围电路内装化等几个方面发展。单片机应用的重要意义还在于,它从根本上改变了传统的控制系统设计思想和设计方法。从前必须由模拟电路或数字电路实现的大部分功能,现在已能用单片机通过软件方法来实现了。这种软件代替硬件的控制技术也称为微控制技术,是传统控制技术的一次革命。单片机模块中最常见的是数字钟,数字钟是一种用数字电路技术实现时、分、秒计时的装置,与机械式时钟相比具有更高的准确性和直观性,且无机械装置,具有更更长的使用寿命,因此得到了广泛的使用。1.2数字定时器的意义定时器是采用数字电路实现对时、分、秒。数字显示的计时装置,广
5、泛用于个人家庭、车站,、码头办公室等公共场所,成为人们日常生活中不可少的必需品,由于数字集成电路的发展和石英晶体振荡器的广泛应用,使得数字钟的精度,远远超过老式定时器, 定时器的数字化给人们生产生活带来了极大的方便,而且大大地扩展了定时器原先的报时功能。诸如定时自动报警、按时自动打铃、时间程序自动控制、定时广播、自动起闭路灯、定时开关烘箱、通断动力设备、甚至各种定时电气的自动启用等,所有这些,都是以定时器数字化为基础的。因此,研究定时器及扩大其应用,有着非常现实的意义。1.3数字定时器的应用 数字定时器已成为人们日常生活中的必需品,广泛用于个人家庭以及车站、码头、剧场、办公室等公共场所,给人们
6、的生活、学习、工作、娱乐带来极大的方便。由于数字集成电路技术的发展和采用了先进的石英技术,使定时器具有走时准确、性能稳定、携带方便等优点,它还用于计时、自动报时及自动控制等各个领域。 1.4主要设计任务本次设计需要完成的设计不仅仅是完成毕业设计而已,更主要的是通过本次本次的设计更好的来回顾三年所学的知识,老师们的辛勤奉献自己究竟学到了什么,同时也是自己对自己即将结束的大学生活画个句号,为即将来到的工作作出了是实际性的准备,不仅仅是以往那种只学习书面知识而已,更多的是锻炼自己实际操作的能力,也算是在进入工作前给自己的一个启发。然而就本次设计的定时器而言要完成的任务有:(1) 完成硬件电路的设计,
7、包括数字钟最小系统设计、按键电路、电源电路、 蜂鸣器电路、二极管指示灯和LED数码管显示电路。(2)完成软件程序的编写和编译,使系统具备如下功能:时间显示、校对 时间、闹铃、报时等功能。(3)完成电路的模拟仿真。(4)完成实物的焊接及测试。第2章 整体设计方案2.1 定时器的功能及设计要求(1)通过单片机内定时器控制走时,准确持续走时,调时不影响走时。(2)在六个数码管上显示时、分、秒及两个小数点。(3)含有闹钟功能,可以选择闹钟开关,可以设定闹铃时间。(4)到达闹钟时刻蜂鸣器警报,可以关掉警报。(5)当时间到整点时,蜂鸣器会短响一声,可以关掉报时。2.2 定时器的实现形式 利用单片机的智能性
8、,可方便的实现具有智能定时器的设计。而且,微处理系统具有时钟振荡系统,利用系统时钟并借助微处理器的定时/计数器功能可以实现数字定时器的功能。定时器电路主要由单片机(STC89C52)主控电路、电源电路、按键控制电路、数码管显示电路、蜂鸣器电路、以及二极管指示灯等几个部分组成,它主要实现时钟的显示,以及对时、分、秒进行调整,即实现调时的功能,其数字定时器系统整体结构如图2-1所示。图2-1 数字定时器的系统框架(1)显示方案 方案一:静态显示就是CPU将要显示的字或字段码送到输出口,显示器就可以显示出所要显示的字符,如果CPU不去改写它,它将一直保持下去;静态显示硬件开销大,电路复杂,信息刷新速
9、度慢。 方案二:动态显示则是一位一位的轮流点亮显示器的各个位(扫描)。对于显示器的每一位而言,每隔一段时间点亮一次;动态显示耗能较小,但编写程序较复杂。动态显示硬件连接简单,信息刷新速度快。由于本次设计是对时间进行显示,所以在此选择的是方案二,采用动态显示。(2) 键盘方案方案一:独立式键盘。独立式键盘的各个按键相互独立,每个按键独立的与一根数据输入线(单片机并行接口或其他芯片的并行接口)连接。独立式键盘配置灵活,软件结构简单。但每个按键必须占用一根接口线,在按键数量不多时,接口占用多。所以,独立式按键常用于按键数量不多的场合。方案二:矩阵式键盘。矩阵式键盘采用的是行列式结构,按键设置在行列的
10、交点上。(当数量接口为8时,可以将4根接口定义为行线,另4根定义为列线,形成4*4键盘,可以配置16个按键。)由于本设计只用了6个按键,不需要采用矩阵式键盘,所以选择第一种方案,采用独立式键盘。(3)计时方案 采用软件控制: 利用单片机内部的定时/计数器进行定时,配合软件定时实现时、分、秒的计时,该方案能够使设计者在设计过程中容易实现,且节省硬件成本,因此本系统将采用软件方法实现计时。2.3 实现定时器计时的基本方法用STC89C52单片机的定时/计数器T0产生一秒的定时时间,作为秒计数时间,当一秒产生时,秒计数加1。STC89C52单片机的内部16位定时/计数器是一个可编程定时/计数器,它既
11、可以工作在13位定时方式,也可以工作在16位定时方式和8位定时方式。只要通过设置特殊功能寄存器TMOD,即可完成。定时/计数器何时工作也是通过TCON特殊功能寄存器来设置的。在此设计中,选择16位定时工作方式。对于T0来说,系统时钟为12MHz,最大定时也只有65536us,即65.536ms,无法达到我们所需要的1秒的定时,因此,必须通过软件来处理这个问题,假设取T0的最大定时为50ms,即要定时1秒需要经过20次的50ms的定时。对于这20次计数,就可以采用软件的方法来统计了。设定TMOD00000001B,即TMOD01H,设置定时/计数器0工作在方式1。下面我们要给T0定时/计数器的T
12、H0,TL0装入预置初值,通过下面的公式可以计算出:TH0(21650000)/256TL0(21650000)MOD取摸256这样,当定时/计数器0计满50ms时,产生一个中断,我们可以在中断服务程序中,对中断次数加以统计,以实现数字钟的逻辑功能。第3章 定时器硬件系统的设计 3.1 定时器主控电路CPU的选择主控电路CPU是系统的核心单元,在执行程序中其关键作用,它的优劣直接关系到系统的性能。本次设计主要以STC89C52单片机为研究核心,分析其内部结构,硬件资源分配等,下面是对STC89C52单片机的介绍: STC89C52RC单片机是新一代高速、低功耗、超强抗干扰的单片机,指令代码完全
13、兼容传统8051单片机,12时钟/机器周期和6时钟/机器周期可以任意选择。主要特性如下: (1)增强型8051单片机,6时钟/机器周期和12时钟/机器周期可以任意选择,指令代码完全兼容传统8051 (2)工作电压:5.5V3.3V(5V单片机)/3.8V2.0V(3V单片机) (3)工作频率范围:040MHz,相当于普通8051的080MHz,实际工作频率可达48MHz (4)用户应用程序空间为8K字节 (5)片上集成512字节RAM (6)通用I/O口(32个),复位后为:P1/P2/P3/P4是准双向口/弱上拉,P0口是漏极开路输出,作为总线扩展用时,不用加上拉电阻,作为I/O口用时,需加
14、上拉电阻。 (7)ISP(在系统可编程)/IAP(在应用可编程),无需专用编程器,无需专用仿真器,可通过串口(RxD/P3.0,TxD/P3.1)直接下载用户程序,数秒即可完成一片 (8)具有EEPROM功能 (9)具有看门狗功能 (10)共3个16位定时器/计数器。即定时器T0、T1、T2 (11)外部中断4路,下降沿中断或低电平触发电路,Power Down模式可由外部中断低电平触发中断方式唤醒 (12)通用异步串行口(UART),还可用定时器软件实现多个UART (13)工作温度范围:-40+85(工业级)/075(商业级)(14)PDIP封装STC89C52RC单片机的工作模式:l 掉
15、电模式:典型功耗0.1A,可由外部中断唤醒,中断返回后,继续执行原程序l 空闲模式:典型功耗2mAl 正常工作模式:典型功耗4Ma7mAl 掉电模式可由外部中断唤醒,适用于水表、气表等电池供电系统及便携设备STC89C52单片机引脚图如图3-1所示。 图3-1 STC89C52引脚图STC89C52引脚功能说明 :VCC(40引脚):电源电压VSS(20引脚):接地P0端口(P0.0P0.7,3932引脚):P0口是一个漏极开路的8位双向I/O口。作为输出端口,每个引脚能驱动8个TTL负载,对端口P0写入“1”时,可以作为高阻抗输入。在访问外部程序和数据存储器时,P0口也可以提供低8位地址和8
16、位数据的复用总线。此时,P0口内部上拉电阻有效。在Flash ROM编程时,P0端口接收指令字节;而在校验程序时,则输出指令字节。验证时,要求外接上拉电阻。P1端口(P1.0P1.7,18引脚):P1口是一个带内部上拉电阻的8位双向I/O口。P1的输出缓冲器可驱动(吸收或者输出电流方式)4个TTL输入。对端口写入1时,通过内部的上拉电阻把端口拉到高电位,这是可用作输入口。P1口作输入口使用时,因为有内部上拉电阻,那些被外部拉低的引脚会输出一个电流(In)此外,P1.0和P1.1还可以作为定时器/计数器2的外部技术输入(P1.0/T2)和定时器/计数器2的触发输入(P1.1/T2EX),具体参见
17、下表3-1所示。在对Flash ROM编程和程序校验时,P1接收低8位地址。表3-1 P1.0和P1.1引脚复用功能引脚号功能特性P1.0T2(定时器/计数器2外部计数输入),时钟输出P1.1T2EX(定时器/计数器2捕获/重装触发和方向控制)P2端口(P2.0P2.7,2128引脚):P2口是一个带内部上拉电阻的8位双向I/O端口。P2的输出缓冲器可以驱动(吸收或输出电流方式)4个TTL输入。对端口写入1时,通过内部的上拉电阻把端口拉到高电平,这时可用作输入口。P2作为输入口使用时,因为有内部的上拉电阻,那些被外部信号拉低的引脚会输出一个电流(In)在访问外部程序存储器和16位地址的外部数据
18、存储器(如执行“MOVX DPTR”指令)时,P2送出高8位地址。在访问8位地址的外部数据存储器(如执行“MOVX R1”指令)时,P2口引脚上的内容(就是专用寄存器(SFR)区中的P2寄存器的内容),在整个访问期间不会改变。在对Flash ROM编程和程序校验期间,P2也接收高位地址和一些控制信号。P3端口(P3.0P3.7,1017引脚):P3是一个带内部上拉电阻的8位双向I/O端口。P3的输出缓冲器可驱动(吸收或输出电流方式)4个TTL输入。对端口写入1时,通过内部的上拉电阻把端口拉到高电位,这时可用作输入口。P3做输入口使用时,因为有内部的上拉电阻,那些被外部信号拉低的引脚会输入一个电
19、流(In)在对Flash ROM编程或程序校验时,P3还接收一些控制信号。P3口除作为一般I/O口外,还有其他一些复用功能,如下表所示3-2所示。表3-2 P3口引脚复用功能引脚号复用功能P3.0RXD(串行输入口)P3.1TXD(串行输出口)P3.2(外部中断0)P3.3(外部中断1)续表3-2引脚号复用功能P3.4T0(定时器0的外部输入)P3.5T1(定时器1的外部输入)P3.6WR(外部数据存储器写选通) P3.7RD(外部数据存储器读选通)RST(9引脚):复位输入。当输入连续两个机器周期以上高电平时为有效,用来完成单片机单片机的复位初始化操作。看门狗计时完成后,RST引脚输出96个
20、晶振周期的高电平。特殊寄存器AUXR(地址8EH)上的DISRTO位可以使此功能无效。DISRTO默认状态下,复位高电平有效。(30引脚):地址锁存控制信号(ALE)是访问外部程序存储器时,锁存低8位地址的输出脉冲。在Flash编程时,此引脚()也用作编程输入脉冲。在一般情况下,ALE以晶振六分之一的固定频率输出脉冲,可用来作为外部定时器或时钟使用。然而,特别强调,在每次访问外部数据存储器时,ALE脉冲将会跳过。如果需要,通过将地址位8EH的SFR的第0位置“1”,ALE操作将无效。这一位置“1”,ALE仅在执行MOVX或MOV指令时有效。否则,ALE将被微弱拉高。这个ALE使能标志位(地址位
21、8EH的SFR的第0位)的设置对微控制器处于外部执行模式下无效。PESN(29引脚):外部程序存储器选通信号PESN是外部程序存储器选通信号。当AT89C51RC从外部程序存储器执行外部代码码PESN在每个机器周期被激活两次,而访问外部数据存储器时,PESN将不被激活。/VPP(31引脚):访问外部程序存储器控制信号。为使能从0000H到FFFFH的外部程序存储器读取指令,EA必须接GND。注意加密方式1时,EA将内部锁定位RESET。为了执行内部程序指令,EA应该接VCC。在Flash编程期间,EA也接收12伏VPP电压。XTAL1(19引脚):振荡器反相放大器和内部时钟发生电路的输入端。X
22、TAL2(18引脚):振荡器反相放大器的输入端。3.2定时器主控电路最小应用系统时钟电路和复位电路是主控电路最小应用系统中必不可少的。定时器时钟电路原理图如图3-2所示:XTAL1和XTAL2分别为反向放大器的输入和输出。该反向放大器可以配置为内部振荡器。石英振荡和陶瓷振荡均可采用。如采外部时钟源驱动器件,XTAL2应不接。有余输入至内部时钟信号要通过一个二分频触发器,因此对外部时钟信号的脉宽无任何要求,但必须保证脉冲的高低电平要求的宽度。图3-2 数字钟时钟电路 复位是使单片机或系统中的其他部件处于某种确定的初始状态。单片机的工作就是从复位开始的,当在单片机的RST引脚引入高电平并保持2个机
23、器周期时,单片机内部就执行复位操作(若该引脚持续保持高电平,单片机就处于循环复位状态)。本次设计定时器主控电路最小系统原理图如图3-3所示。图3-3 主控电路最小系统原理图3.3 键盘及其接口3.3.1按键的去抖处理 按键就是一个简单的开关。当按键按下时,相当于开关闭合;当按键松开时,相当于开关断开。按键在闭合和断开时,触点会存在抖动现象。按键抖动时间一般为5ms10ms,抖动可能造成一次按键的多次处理问题。应采取措施消除抖动的影响。消除的方法很多,本设计采用软件延时的方法来消除抖动。当单片机检测到有按键按下时先定时,然后再检测按键的状态,若仍是闭合状态则认为真的有按键按下。当检测到按键释放时
- 1.请仔细阅读文档,确保文档完整性,对于不预览、不比对内容而直接下载带来的问题本站不予受理。
- 2.下载的文档,不会出现我们的网址水印。
- 3、该文档所得收入(下载+内容+预览)归上传者、原创作者;如果您是本文档原作者,请点此认领!既往收益都归您。
下载文档到电脑,查找使用更方便
20 积分
下载 | 加入VIP,下载更划算! |
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 智能 定时器 设计
