基于单片机的时钟设计_第1页
基于单片机的时钟设计_第2页
基于单片机的时钟设计_第3页
基于单片机的时钟设计_第4页
基于单片机的时钟设计_第5页
已阅读5页,还剩56页未读 继续免费阅读

下载本文档

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

文档简介

1、摘要摘要随着时间的推移,事物的发展越来越趋向于高科技,单片机的出现,受到了社会各界的广泛关注,这是由于单片机具备丰富的功能。单片机的特点为:尺寸小,价格低,抗干扰强,开发容易等。运用的范围也很广,如检测,仪表,电子,机电等设备的各方面都有不可或缺的作用。多功能电子钟是我们最常见的计时工具之一,用STC89C52单片机研究的多功能电子钟系统,加上必要电路,构成了一个能调整误差的多功能数字电子钟。本文论述了其工作原理,对各个功能模块进行了详细的分析和研究,此外还对系统的工作流程以及具备的各项功能进行详细的介绍,从而判断设计方案正确与否。使用C语言对系统的软件部分进行编程,再用keil进行调试分析,

2、通过PROTEL99SE进行电路模拟,可以让单片机显示年、月、日、时、分、秒、周并具有校准功能和和闹钟提醒功能,除此之外还具有测量环境的温湿度功能。关键词 : 电子钟;STC89C52; 单片机IAbstractWith the passage of time, the development of things tends to be more and more high-tech. The emergence of single-chip computers has attracted widespread attention from all walks of life, which i

3、s due to the rich functions of single-chip computers. The characteristics of MCU are: small size, low price, strong anti-interference, easy development and so on. The scope of application is also wide, such as detection, instrumentation, electronics, mechanical and electrical equipment in all aspect

4、s have an indispensable role. Multifunctional electronic clock is one of the most common timing tools. The multi-functional electronic clock system studied by STC89C52 microcontroller and the necessary circuit constitute a multi-functional digital clock that can adjust errors. In this paper, the wor

5、king principle of the system is discussed, and the function modules are analyzed and studied in detail. In addition, the working flow and functions of the system are introduced in detail, so as to judge whether the design scheme is correct or not. The software part of the system is programmed by C l

6、anguage, then debugged and analyzed by keil, and simulated by PROTEL99SE. The microcontroller can display the year, month, day, hour, minute, second, week, and has the function of calibration and alarm clock reminder. Besides, it also has the function of measuring the temperature and humidity of the

7、 environment.Key words : electronic clock; STC89C52; Single chip microcomputerIII目录摘要IAbstractII目录IV第一章 绪论71.1课题研究的意义71.2设计要求71.3系统的关键技术71.4设计思路8第二章 电子钟简介112.1 电子时钟简介112.2电子时钟的基本特点112.3电子时钟的原理11第三章 方案论证与设计133.1单片机芯片的选择方案和论证133.1.1单片机的选择143.1.2显示器的选择153.1.3电源的选择153.2总体框图设计15第四章 主要元件介绍174.1 STC89C52单片

8、机的介绍174.1.1 STC89C52单片机主要功能及PDIP封装174.1.2STC89C52引脚介绍174.1.3 STC89C52最小系统介绍193.2 DS1302时钟芯片介绍204.2.1DS1302引脚介绍214.2.2DS1302使用方法214.3 1602字符液晶介绍234.3.1 1602液晶概述234.3.2 1602引脚介绍234.3.3 1602字符液晶使用方法24第五章 系统的硬件设计255.1单片机简介255.2Protel99SE简介265.2时钟电路模块设计275.3误差校正模块设计295.4显示模块的设计315.5 DHT11温湿度采集模块33第六章 系统的

9、软件设计376.1程序开发软件简介386.2程序流程图416.3 DS1302时钟程序流程图436.4 LCD显示程序流程图44第七章 系统的调试与分析477.1系统制作477.2硬件调试487.3软件调试51第八章 总结55致 谢57参考文献59附录61附录A:中文译文61附录B:英文原文61V第一章 绪论1.1课题研究的意义时间就是金钱,说明时间对我们来说很珍贵,怎么去掌控时间,分配时间是从古至今都不能忽视的问题。随着时代的不断进步,电子技术水平也在不断的提升,时间作为我们最宝贵的财富,对于时钟的准确度要求也在不断提高。从而导致人们对时间更方便,更精确,更灵活的追求,传统的时钟已经不能完全

10、满足人们日益增长的需求了。电子产品的更新换代速度是很快的,所以需要设计出更适合人们使用的多功能数字电子钟。许多电子钟都已经有了闹钟功能,计时功能,温度检测功能等,同时单片机在电子钟领域的运用范围是非常广的。以单片机为载体设计一个的多功能数字电子钟,不仅需要熟悉单片机的设计原理而且也需要研究单片机的扩展的应用。另外越来越流行的液晶显示的多功能电子钟,被大范围应用在个人住宅以及各种公共场所中,还有定时功能,自动打铃,自动报警,定时开关等功能都是钟表数字化的普及拓展的功能。电子钟的数字化极大的方便了人们的需求,精确度也超过传统的时钟,还对传统时钟的功能进行了完善和创新,其计时功能更加精确使用方便。可

11、以进行掌握分配时间,并且还可以研发出温度检测功能等。所以,多功能数字电子钟作为设计课题值得研究。1.2设计要求论文是以单片机为载体做一个多功能数字电子钟。电子钟开启后,LCD屏幕显示年、月、日、时、分、秒、周,还有温湿度,倒计时等,设置4个操作键:分别是时间设置按键,误差调整,闹钟设置按键,时间设置按键。主要研究内容如下:1、具有年、月、日、时、分、秒、周等功能;2、具备年、月、日、时、分、秒、周校准功能;3、具有温湿度测量功能;4、具有阴历时间查询功能;5、具有闹钟设置功能;1.3系统的关键技术本次设计系统采用单片机作为主控制系统,单片机是整个系统最为主要的部分。通过单片机的IO引脚来实现不

12、同的功能不同的数据处理。那么什么是单片机呢?简要的介绍一下单片机的系统,单片机如下图1.1所示。图1.1可以看到单片机就是一个黑色的芯片,这里面的集成度非常的高,是将各种的资源进行缩小,优化然后集成到一个芯片上。白色的引脚是单片机的IO管脚。对系统来说可以作为控制进行输出,也可以作为输入进行数据的采集。单片机的封装是不同的上图1.1中都是单片机,他们的厂家不同,封装不同,一个是贴片的FQTP封装,这种优点就是体积小,做出的产品小型化。另一个STC的是DIP直插封装。优点就是配合上插座可以随意插拔,更换方便。对这两种单片机的使用是不同的,使用的时候具体的需要根据相关的手册来使用。单片机的发展也是

13、在不断的进步,不断的更新。本次系统就是采用这种芯片来实现整体的系统协调。整体的系统运转来实现系统的整体功能。需要掌握的关键技术是控制单片机的IO口。单片机IO如果作为输出,首先需要将引脚的方向设置,设置为输入或者输出。单片机的IO引脚输出的是数字量,这个我们必须要知道。也可以说是输出TTL电平,再次直达表意就是输出“0”或者“1”所有的功能都是在“0”与“1”的组合中来实现的。数据的采集是单片机的IO口作为输入,单片机对传感器件,芯片进行数据的采集。采集到的数据根据编写的程序在单片机中就有了数据。通过运算,处理数据实现其具体的功能状态。完成系统的预期目标。单片机系统中的关键实现点,掌握单片机的

14、应用单片机的数据输入采集,单片机的信号输出,就是掌握了一半的系统关键技术,也为本次的课题设计打下了坚实的基础。1.4设计思路电子时钟能够将时间用数字的形式表现出来,它与老式的钟表相比,显示更加清晰、计时更加精准、取消了内部的机械结构,所以随处可见:小到大家手中的手表,大到各种公共场所以及办公场所使用的大型数字时钟等。这种电子时钟的内部由计时模块、晶振模块;温湿度测量;校时电路;时分秒计数器。此次利用STC89S52单片机来完成对系统的控制工作,系统的显示电路包括闹钟模块,温度测量模块,日期显示器,键盘模块等,此次设计的数字时钟系统能够实现对时间的实时显示,并且能够显示到具体秒数,报警模式和温度

15、控制模块设计用于使用四个键SB0,SB1,SB2,SB3执行正常时钟显示,定时和报警时间设置。数字电子钟由第二信号发生器,计数器,计数器,解码显示器和定时电路。第二个信号发生器通常是通过分频晶体振荡器或555振荡器得到的,秒和分钟都由一个十六进制数和一个十六进制计数器组成,时间由24位数字组成,由24位数字组成。显示部分包括解码和数字显示,定时电路包括门电路和开关。 利用74160N来对输出模式进行选择,可以选择十进制数也可以选择十六进制数,在通过数字显示屏将输出信号进行显示,利用各种内部运算,使用函数信号发生器输出脉冲信号使用。 由于必须校准时钟,因此电路可以选择串行进位模式,每个位可以快速

16、访问脉冲以执行校准。15第二章 电子钟简介2.1 电子时钟简介在此次设计的过程中选择AT89C51单片机作为系统的核心控制单元,通过汇编语言对系统的软件进行编程,显示模块需要显示出六位数字分别对应小时,分钟和秒。最新的电子时钟是基于微控制器的计时工具,使用延迟程序生成1秒钟的特定时间中断,利用60进一的方法实现时钟计时。实现24小时实现计时功能,是我们日常生活中必不可少的东西。2.2电子时钟的基本特点大部分对精度要求较高的定时装置都利用晶振电路进行计时,我们常见的石英钟就是利用了石英技术制成的,其具备较高的准确性,具有良好的稳定性,易用性和调试次数少。将电子技术应用到时钟设计过程中,原有的机械

17、结构被解码装置所取代,液晶显示模块代替了传统的指针显示,进而大大降低了计时误差。对时间的准确显示是电子时钟的基础功能,此外电子时钟还具备校验等一系列功能。2.3电子时钟的原理 电子钟由STC89C52,键盘,8段数码管等组成。60秒为1分,60分钟是1小时,24小时是一天。电路上唯一的控制按钮具有多种功能,您可以实现屏蔽数码管显示屏的功能,通过按下和释放来节省电量。如果按下而不按下按钮就可以实现分钟的累加。累积每分钟增加1,但如果连续按两次按钮,则可以调整小时,然后每按一次又加1小时。第三章 方案论证与设计整个系统的设计需要考虑两个方面的内容:(1)硬件的设计:主要包括了原理的确定,首先需要知

18、道系统要实现什么功能,然后需要选择相关的器件,也就是传感器,哪个满足相关的功能设计,着重的进行深入的研究研究是否与系统可以匹配,是否可以作为最终的型号。然后绘制系统的整体电路图。通过这个整体电路图焊接出系统的实物。(2)软件的设计:软件与硬件是一个相辅相成的关系,需要配合才能完成最后要实现的功能。软件的编写主要是对各个子程序进行设计,分模块化的来设计程序,优点在于调试的时候具有针对性,可以一边调试一边观察现象进行修改,最后将子程序进行融合调用来实现系统的整体功能。(3)系统的测试:完成硬件与软件的设计需要按照当初预定的功能进行详细的测试,测试的越加仔细系统的BUG也就会越少,会越加的趋于完美。

19、反复测试,反复的修改是一个成型系统的必备过程,直到最后对整体的性能以及功能满意为止。3.1单片机芯片的选择方案和论证从应用层面上来分析,对单片机的研究应当着重把握“单片”以及“规模”这两个显著特征。前者强调的是单片机设计的组成架构,也就是不仅仅涵盖电阻原件、必要的按键单元、电容原件等,其余的逻辑电路也应当囊括在单片机板上1。从设计的优势上来看,此类设计方法一方面能够减少开发资金投入,降低材料的使用量,另一方面还可以压缩硬件单元的体积,同时增强运行过程的有效性与稳定性等。所以说由NEC主导研发的四位单片机以及摩托罗拉所研制的八位单片机在该方面发挥了较大优势,但是也应当结合实际需要选取是否集成外部

20、存储单元以及数据I/O接口。就现阶段国内的单片机应用来看,收到单片机硬件开发技术以及开发成本的制约,在开发集成化方面还有较大欠缺,因此大部分单片机产品都集成了外部存储功能单元以及数据传输接口,甚至还会把STD总线进行了功能集成,这也在一定层面上忽视单片机的表现特征。从全球市场上来看,占据主要市场的仍旧是八位单片机,其中所包含的产品有Intel8048等等,该系列产品应用于电器生产领域等。随着集成电路技术的发展,单片机和ASIC以及RISC技术有了较为广泛的结合,同时这也是单片机在随后十几年的成长趋势。3.1.1单片机的选择方案一:采用美国微芯的PIC系列单片机,该系列单片机种类多种多样且具有强

21、大的功能,在工业场合中应用较为管饭,相较于其他型号的PIC单片机而言,PIC16F887A型号应用较多,且已有的参考资料较为完善,PIC单片机所有输入输出接口必须为其分配对应的存储地址,从而判定该接口具体的输入输出情况。但是这种单片机在实际应用中需要开发专用的软件下载和烧录器,且价格昂贵。方案二:采用单片机控制模块核心。由于系统的可靠性高,系统的成本低的优势它可称为世界上最小的应用系统。但要求程序长度小于4K,共四个I/O接口供使用。可编程为5伏电压,擦除时间仅为10毫秒,只有8751和的分数之一。与器件相比,设备不易损坏,对电源无要求。当芯片被重写时,可以重复在多个控制领域进行使用。运行状态

22、下的电压区间宽泛(一般维持在2.7V6V范围内)。而主控芯片在静态模式下运行时,其对应的频率区间是。相比之下,使用8751单片机时工作电压范围较窄。该类型单片机数据总线是在P0节点位置处,并且是三态双向数据连接端口,能够实现外接存储单元的读取以及写入。单片机在主控领域具备较强的竞争优势,在正常工作状态下能耗低,运算速度快,运行较为稳定。芯片具备可多次编写多次擦除的储存器,次数可达1000次,程序可存十年。保存时间为十年。在单片机模块的选择中,对比了几个可行的方案,发现该型号的单片机除了稳定性强、低功耗、低价格成本以外,还因为该单片机的封装工艺,使得通过自身的两列管脚直接插入到设备的底座上。该型

23、号的单片机的输入输出端口多,具有P0、P1、P2、P4四个端口,后三个是双向端口,而第一个端口则需要外接上拉电阻才能当常规I/O口使用。该型号的单片机的制度存储器能够根据使用需要进行扩展,支持的最大扩展内存为64KB,而系统的随机存储器大小为256字节。经过以上的对比和总结,系统的主控模块选择单片机。3.1.2显示器的选择方案一:采用数码管显示电路显示,显示效果较好,通过输入电流到对应的管脚控制其发光,可实现温度、日期等多种参数。它广泛用于电器,尤其是家用电器,如显示屏,空调,热水器,冰箱等。通常使用的LED数码管是7段LED,它是由7个LED和一个小圆点LED组成的。这7个LED的ab成“日

24、”字形排列,当某一LED导通时,相应地点和笔画就会亮起来,不同的数字,字母和其他符号由LED不同的明暗组合形成。引线内部连接仅需要绘制它们各自的笔划和公共电极。方案二:采用液晶显示屏显示。与单片机P0口连接,同时外接上拉电阻,通过上下两行来显示时间,两者可同时限制,单片机P2.3、P2.4、P2.5分别与液晶显示模块的复位、读写和使能端口相连,数据显示参考主程序其他时序。液晶显示器中的每一个字符都是由5*7的点阵组成。该显示方式具有控制简单等优势,同其他液晶控制原理相似。由于本文所设计的电子时钟所需显示的内容较为丰富,由此本文显示模块采用方案二。3.1.3电源的选择方案一:采用交流变压器的方式

25、,这种电源设计方式相对而言较为复杂,同时要考虑变压器参数对于系统正常工作产生的影响,由于存在较高的电眼,一次你在设计时需要进行变压、整流以及滤波等操作。这不仅扩大了系统的体积结构,同时也降低了系统的安全性,若发生电源故障可能会导致电路烧毁。方案二:采用USB电源的供电方式,这种供电方式应用较多,例如各种终端移动设备以及常见的移动电源等。因此采用USB接口进行供电实现起来较为方便,且电源的选择十分稳定,实现起来安全性高,在没有特殊供电要求的前提下,这种供电方式已经成为主流。此次系统采用方案二的设计方式。3.2总体框图设计此次设计主控模块选择STC89C52单片机,其编程简便而且支持在线操作,该单

26、片机能耗较低,其最小工作电压为3.3V。时钟模块选择了DS1302,该芯片计时准确,能耗低并且拥有内部储存单元。实时时钟芯片使用周期长,准确度高、能耗低等优点,而且还拥有自动降耗的能力,除了能够显示年月日外,还可以显示时间和星期,而且还具备识别闰年的能力,该芯片能够在2.5V到5.5V的电压下工作,显示模块选择了1602液晶显示器,能耗低,使用周期长,额定电压5V。系统整体框图如下3.1所示。图3.1整体框架图第四章 主要元件介绍4.1 STC89C52单片机的介绍4.1.1 STC89C52单片机主要功能及PDIP封装统体积小,系统的可靠性高,系统的成本低的优势它可称为世界上最小的应用系统。

27、但要求程序长度小于4K,共四个I/O接口供使用。可编程为5伏电压,擦除时间仅为10毫秒,只有8751和的分数之一。有8K系统内可编程闪存。52采用单芯片,具有智能8位CPU和系统内可编程存储的功能,其具备很高的灵活性以及效率。它继承了51系列单片机的全部优点,并且对51系列单片机的各种功能进了优化和完善,在功能上与51系列单片机相比更加丰富。随着对其不断的优化,其内部拥有一个功能强大的8位中央处理器 ,并且其还支持可编程Flash,因而这款单片机被大广泛应用在各种自动控制系统中,它的出现不仅简化了设计流程,还降低了设计难度。而主控芯片在静态模式下运行时,其对应的频率区间是。相比之下,使用875

28、1单片机时工作电压范围较窄。该类型单片机数据总线是在P0节点位置处,并且是三态双向数据连接端口,能够实现外接存储单元的读取以及写入。单片机在主控领域具备较强的竞争优势,在正常工作状态下能耗低,运算速度快,运行较为稳定。芯片具备可多次编写多次擦除的储存器,次数可达1000次,程序可存十年。保存时间为十年。封装如表4.1所示表4.1 STC89C52主要功能主要功能特性兼容51系列单片机8K 用户程序储存器输入输出接口32个256x8bit 数据存储器16位计时器3个0-24MHz工作频率内部中断2个异步串行UART外部中断源2个中断源6个读写中断口线2个3级加密位掉电和低耗能待机唤醒和睡眠4.1

29、.2STC89C52引脚介绍端口:端口是一个双向I/O端口,8位漏极开路,驱动8个逻辑电平来进行数据输出。这样的工作模式,端口内部会出现上拉的阻力,所以在验证程序的时候就需要外部的上拉电阻。 端口:端口也可以进行输入和输出双向作用,并且位数是8位的,和端口一样存在上拉电阻。根据不同的的工作要求,该端口负责接收字节的功能。引脚所具有的的另一个功能 定时器/计数器:、端口:端口也可以进行输入和输出双向作用,并且位数是8位的,和端口一样存在上拉电阻。该端口只能够驱动4个逻辑电平。在用高8位地址来获取16位地址的外部数据存储时,会输出闩锁的内容。在进行其他功能时,该端口也承担着接收外部控制信号的责任。

30、端口:端口也可以进行输入和输出双向作用,并且位数是8位的,和端口一样存在上拉电阻。该端口只能够驱动4个逻辑电平。该端口作为输入端口时是通过上拉电阻升高端口。端口负责输入时,被外部拉下的针脚会由于内部电阻会有输出。端口还承担这单片机的其他功能:接收外部的控制信号。引脚所具有的的另一种功能定时器/计数器:、在进行其他功能时,该端口也承担着接收外部控制信号的责任。RST:在工作过程中起到对输入进行重置的作用,利用的是两个机器周期内的高电平完成的。:当系统需要对外部程序器进行访问或者是进行访问数据存储器时,的作用是将地址的低8位脉冲字节索存。因为通常情况下,的输出时间是固定的,是时钟振荡频率的1/6,

31、利用这一特性可以用它来实现计时的功能。但是如果要进行外部数据存储的访问时,系统会自动越过脉冲。系统编程产生的闪存时,引脚还起到输入输入的作用。在可能的情况下,禁止操作可以通过在区域的0号位置安装来实现。因为在0号位置之后只有一个固定的指令才能实现的激活。此外,引脚会稍微升高,不执行内部程序时,需要让禁止位无效。:从外部选取的信号来提供给程序存储器使用。单片机在外部获取指令时,只能产生两次有效的循环,换言之有两个脉冲输出。这时候访问外部数据存储器,系统会自动越过两个信号。:访问外部的程序内存只能够通过来进行。此时的状态应该是处于接地状态。特别的是,此时编程已经加密了的,则在重置期间,状态将在内部

32、锁定。单片机封装图如图4.1所示图4.1 STC89C52 PDIP封装图354.1.3 STC89C52最小系统介绍STC89C52是台湾晶宏科技公司所制造出的一种能耗低、性能完善的51内核结构的芯片。它集成了8K的储存器,便于保存数据信息从而确保数据不丢失等功能。具有三十二个通用IO口,同时还包括三个定时器以及1个外部中断等。在使用时成本比较低廉,具有较高的性价比。其中电源电路、复位电路、时钟电路是构成最小系统必不可少的电路,也是电路正常工作不可忽欧俄的三个部分。 电源电路 芯片引脚VCC与电源模块电联,电源模块的主要功能是为系统其它外接设备供电,在引脚Vcc与GND之间,装有一个0.1u

33、F陶片电容,来提高电路的抗干扰能力,可提升电路的稳定性。时钟电路 时钟电路是通过22PF的陶瓷片电容以及晶体振荡器所构成的,两者结合完成启动电路,为微控制器传递定时指令,控制器进行工作。按照生成方式的差异,又能够分类成内部和外部这两种。在芯片的外部,振荡器以及微调电容连接在XTAL1和XTAL2之间,形成一个比较平稳的自激振荡器,在引脚上输出3V的正弦波复位电路 上电复位电路是在上电瞬间开始工作,芯片工作的瞬间RESET引脚相当于直接连在5V电压上,芯片瞬间进入复位状态。随着5V电压不断给电容充电,R1上的电压两端的电压在逐渐地减小,当某个时刻R3电阻上的电压减小为0V时,芯片将从复位状态退出

34、,进入正常的工作状态。利用RST按键控制芯片复位的按键复位也是同一个道理,只要RST按键被下,且该状态保持的时间不低于15ms以上,芯片即可进入复位状态。RST按键抬起后,芯片自动从复位状态退出。图4.2 STC89C52最小系统3.2 DS1302时钟芯片介绍由Dallas公司主导生产的时钟芯片DS1302是现阶段使用较为广泛的芯片。该类型芯片和主控单片机系统之间是以串行的方式完成数据传输,时间数据包含年、月、日以及时、分、秒等,并且日期是同步完成传递与调整;芯片的外部电源接入较为便捷,主要是由于集成了电源接入引脚节点,不仅如此,在外部电源断电的情况下,内部仍然可以工作。如图4.3所示。图4

35、.3 DS1302封装图4.2.1DS1302引脚介绍各引脚功能为: 时钟芯片的VCC1引脚所接入的是系统工作备用电源模块,而VCC2接入的是系统工作主电源模块。因此前者是作为外部电源断电情况下的备用电源,而后者为系统提供主要工作电源。所以VCC1引脚的接入能够显著提升时钟系统工作的稳定性与可靠性。SCLK:输入串行时钟IO: 双向数据线CE: 输入信号必须随时间具有高读取和写入数据4.2.2DS1302使用方法(1) 时钟芯片DS1302的工作原理:在每次进行读、写程序前完成初始化。对于操作方法,首先将SCLK端子设置为“0”,然后将RST端子设置为“1”,随后输出SCLK脉冲。从DS130

36、2芯片的主要硬件构成上分析,其中涵盖逻辑控制单元、振荡器元件和寄存器。DS1302和单片机的数据传输可以通过RST,I/O以及的数据收发通道来完成。主要的运行阶段可以阐述为:工作初始阶段应当将RST引脚调整为高电平信号,然后借助于信号完成数据指令收发,即从系统的I/O口向DS1302进行传递。(2) DS1302的控制字节DS1302的控制字如表3.2所示。位7必须为1。若为0,则无法将数据写入DS1302。位6为0,就是访问时钟的数据,位6为1就是访问RAM的数据; 5至1表示操作单元的地址;位0如果0就是执行写的操作,位0为1就是执行读的操作,控制字节一般是从低位开始发送的。表4.2 DS

37、1302控制字 (3) 数据输入输出(IO)DS1302的数据在下降沿读取。紧跟在8位控制指令字之后的下一个SCLK脉冲,并且数据从低0位读到高7位。其读写时序如下:图4.4 DS1302读写时序(4)DS1302寄存器写地址如下表所示表4.3 DS1302时钟寄存器第一行秒寄存器,第二行分寄存器,第三行时寄存器。第八行控制寄存器。4.3 1602字符液晶介绍4.3.1 1602液晶概述本产品用到的是显示器。与单片机P0口连接,同时外接上拉电阻,通过上下两行来显示时间,两者可同时限制,单片机P2.3、P2.4、P2.5分别与液晶显示模块的复位、读写和使能端口相连,数据显示参考主程序其他时序。L

38、CD1602液晶显示器中的每一个字符都是由5*7的点阵组成。该显示方式具有控制简单等优势,同其他液晶控制原理相似。如图4.5所示。图4.5 1602字符液晶4.3.2 1602引脚介绍引脚功能描述:表4-4 液晶显示模块引脚介绍编号符号引脚说明编号符号引脚说明1VSS电源地9D2数据2VDD电源正极10D3数据3VL液晶显示偏压11D4数据4RS数据/命令选择12D5数据5R/W读/写选择13D6数据6E使能信号14D7数据7D0数据15BLA背光源正极8D1数据16BLK背光源负极4.3.3 1602字符液晶使用方法(1)基本操作时序表4.5 1602字符液晶读写状态表 图4.6 1602液

39、晶写时序图第五章 系统的硬件设计5.1单片机简介单片机是驱动和数据处理的关键器件,利用单片机的资源和各模块的功能实现整体系统调谐。数据连接通过每个引脚的连接进行,J集成系统中的逻辑处理器,系统中的数据收集器以及系统的控制输出。 单片机的最小系统设置如下图3.1所示。主要是每个引脚的功能的引出,单片机的晶振电路。图5.1 STC89C52系统电路从图5.1可知,一共具有32个通用的IO端口,这些端口有的具有其特殊的引脚功能,其中P3.0接口是单片机的RXD引脚,可以作为单片机的串口采集端,通过这个接口可以读取其它具有UART接口的设备,P3.1是单片机的TXD引脚可以作为串口的数据输出端。通过这

40、个接口可以向具有UART接口的设备写入数据。除此之外这两个引脚也是单片机下载程序的引脚。单片机的第40引脚是单片机的电源,接入的电压在3.6V-5.5V之间,可以说具有宽电压适应的功能。单片机要工作就必须给单片机一个正确的供电电源。单片机的第20引脚是单片机的GND引脚这个与系统供电电源的GND连接。单片机只有正确供电之后才可以正常工作。单片机的第18个引脚是XTAL2,第19个引脚是连接到晶体振荡器电路的两个引脚的XTAL1引脚。单片机接入的晶振是有要求的,只有在一定范围才可以进行正常工作,范围在4M-22.1184M之间大小的晶振都可以正常的进行工作,但是最为常用的是12M晶振与11.05

41、92M的晶振。12M的晶振系统的时钟周期是1us,定时执行准确,11.0592M晶振是适合应用在具有串口通讯的系统中,方便系统的波特率配置。根据项目的具体要求就可以选择出合适的晶振系统。具备以上的两个条件单片机就可以正常的工作了,根据设计的电路进行单片机引脚程序的控制,可以将引脚作为输入或者输出来连接外围的器件电路,实现系统的整体功能,完成系统数据采集、状态检测、数据运算等功能。单片机系统还具有定时系统和中断系统,根据系统的功能,可以选择性地执行单片机的寄存器配置,并选择单片机的功能。下面详细介绍了该型号单片机的主要特点:(1)它是8051单片机的升级优化版本,所以拥有更加强劲的CPU;(2)

42、P3.0/P3.1端口负责芯片的程序编任务;(3)单片机的的工作电压分为3和5V两种;(4)存储器通过片上集成最高达到1280字节;(5)设备的输入输出端口众多;(6)设备的时钟输出有3路;(7)互在系统中可以直接编辑联网供应商;(8)由大规模的集成电路实现可编辑技术列阵/PWN; (9)增强型8051微控制器,6个时钟/机器周期和12个时钟/机器周期是可选的,指令代码与现有的8051完全兼容。 5.2Protel99SE简介Protel99SE软件绘制系统的示意图。设计时,必须创建相应的组件库。该系统包括最基本的组件,包括电阻器,电容器和其他常用组件。但是当找到一个特殊组件时,需要自己构建一

43、个组件库。因此,我们必须学会构建组件。是英国公司开发的一款工具软件。该软件具有传统仿真功能,还能支持单片机等微处理器仿真,是当前性能最为强大、运行可靠性良好的外围器件仿真工具,虽然当前在国内的应用处于起步阶段,但在研究者的推动下已经成为各大高校和科研机构工作者的重要仿真工具。软件的特点:(1) 可生成多种电气连接网络表; (2) 编辑功能强大; (3) 在原理图可选择一级器件; (4) 同时运行原理图和PCB。 (5) 可实现原理图和PCB的相互转换; (6) 满足国际化设计要求; (7) 支持用CUPL语言; (8) 强大的“规则驱动”设计环境; (9) 覆铀可以自动重铺; 内部具有大量的设

44、计模板供使用。5.2时钟电路模块设计 电子闹钟包含信号发生器、显示模块、案件模块以及电源模块,系统硬件电路图如下图5.2。系统以AT89C52单片机为核心,通过单片机实现对时钟模块数据的读取,并实现时钟的预期功能。DS1302虽然具有计时的功能,不过它本身是没有调时和显时功能的。在这种情况下,不可避免地要使用单片机STC89C52,它可以用作桥接LCD显示器和DS1302,并利用微控制器的输入/输出端口,实现调整时间的能力。使用单片机STC89C52实现数据显示和调整是整个系统的关键。在整个系统中,单片机的P0端口用作液晶显示器的显示端口。液晶显示器上显示的数据全部通过P0端口发送,并使用P1

45、端口。制作调节按键的电路连接接口,使MCU可以更好地显示和调整时间。 DS1302电子时钟的总体设计如下图所示。键盘设计用于完成时钟/日历校对和日历/时钟显示功能。整个电路有两个电源,其+ 5V为电源进行供电,+ 3V作为时钟模块的备用电源。当系统主电源被切断后启用备用电源,安波镇时钟模块正常工作,当主电源恢复之后显示模块仍然会显示当前的正确时间,而不会因为主电源的断开而重置时间,有效避免了重新校准。DS1302是一种DALLAS涓流充电芯片。根据图5-2中的内容,VCC1和VCC2为供电端口以及备用供电端口。DS1302会选择二者电压较大的作为供电接口。所以,当芯片掉电后。仍然能保证时钟的正

46、常运行连。 X1和X2为晶振接口,通过该接口能够为芯片提供晶振频率为32.768KHz振荡信号。 RST为复位接口和芯片选择接口,当该接口处在高电平状态时进行数据交换。 该接口有两种不同的用途。首先,通过该接口能够运行各种命令,并将命令对应的序列传输到寄存器中。其次,通过该接口能够对数据传输进行暂停。当该接口为高电平状态时,全部数据传输将会被复位,为DS1302的启动创造条件。在数据传输过程中该接口变为低电平状态,数据传输断开,输入输出接口转为高阻态。在对DS1302进行上电的过程中,RST接口始终处于低电平状态,当VCC接口的电压超过2.5V后,当SCLK为低电平并且输入输出接口处在数据接收

47、状态,此时可以将RST转成高电平。从而实现对SCLK的控制。图5.2 DS1302的硬件接线图图5是DS1302时钟程序的流程图。当芯片运行时,它进入初始化。当出现中断信号时,芯片上的数据被传送到MCU进行处理并通过数码管显示,然后按下菜单按钮。按下此按钮时,数据将传输到时钟芯片并在设置完成后显示。如果不按下按钮,它将直接发送到EPROM。图5 DS1302时钟程序流程图闹钟设置:闹钟电路的设计是通过与DS1302实时对比实现闹铃的功能,采用按键设置闹铃的小时与分钟,当闹铃的小时与DS1302小时相等时候,通过比较闹铃的分钟与时钟读取的分钟,设定闹铃的时间是相一分钟,当超过一分钟之后闹铃不在响

48、。倒计时功能:这里的倒计时实际采用的是DS1302的显示时钟秒的差值,这个差值是60秒与时钟秒的差值,时钟DS1302每走一秒,倒计时就会减少1秒,当减少到0时候为60秒重新开始。5.3误差校正模块设计时间是一个基本物理量,具有连续、自动流失等特性,结合时间的概念和实践误差相关理论,可定义电子钟误差S=S1-S2,S1嗲表程序运行的秒;S2代表标准秒。S0时代表走时误差为“慢”;反之,S0代表“快”。在本文所设计的电子时钟中,误差来源于晶体频率误差和延时误差。延迟实践过长或果断都会造成时间走时误差。按键电路设计的主要功能是实现数据输入和参数设置。硬件原理是用独立按键设计。其中一个独立按键连接到

49、GND接口,另一个连接到单片机的输入和输出接口。当MCU的输入/输出接口被轻微拉动时,按钮被触发,当GND接通时,MCU的引脚将检测到低电平信号。当MCU检测到信号时,MCU检查是否有按钮按下决定。处理并执行对应的操作。设计按钮时,通常会有一个防止抖动的过程,这是因为MCU的检测速度太快。为避免这个过程,通常会在MCU检测到按键时设计防止抖动的程序。抖动时间为5-10 ms左右。按键电路的硬件电路如图5.3所示。本次设计的按键主要是实现误差的校整,可以将误差最小校正在1S,通过按键可以设置年、月、日、时、分、秒、周的参数。 图5.4是误差小校正模块的一个工作流程图。首先对DS1302进行初始化

50、,去除写保护,使数据可写入,由于脉冲存在将产生高电平。等到需要校时的时候,这些数据就会存储到新的地址,再读取的时候就可以一把这些新的地址读到1602液晶屏上,这就完成了校时。图5.4 DS1302校正模块流程图5.4显示模块的设计显示电路LCD1602模块有两种形式,其一为背光显示,其二为带电源的显示模块,详细电路图如下。图5.5 1602LCD尺寸图参数:显示容量:字符;电压:;电流:;最优电压数值:5V;字符规格:引脚说明第1脚:接地。第2脚:系统工作主要供电接口,接入的是5V电压值。第3脚:VL代表的是显示模块的参数调整接口,主要是对工作状态下的数据显示对比度进行控制。第4脚:RS表示寄

51、存器选取节点。第5脚:R/W代表的是数据信号读写接口,若获取的是高电平信号,直接进入数据读取流程,在低电平状态下进行数据写入流程。第6脚:在E接口端定义为工作使能端,发生电平信号翻转之后,显示模块进入工作环节。第714脚:系统8位双向交互通信。第15以及16脚:接入背光+/-极信号。图5.6 1602LCD电路图图5.7展示了1602的工作流程。首先,也是进行初始化,然后写入数据,下一步就检测是否有数据写入,如果没有数据写入,就一直处于等待钟,等到有数据写入为止,有数据写入就读出数据并显示。图5.7 1602流程图5.5 DHT11温湿度采集模块本设计采用STC89C52单片机的外部中断部分以

52、及LCD1602部分完成测量和显示部分,利用DHT11数字温湿度传感器完成数据采集,DHT11可实现温度和湿度的高效测量,具有单线制串行接口,无需额外部件;超长的信号传输距离;超低能耗;全部校准,数字输出;保证产品具有良好的稳定性和卓越星,该传感器内置有一个温度感应元件和湿度感应元件,使其成为该类应用中,在苛刻应用场合的最佳选择。此次设计的系统利用DHT11传感器来实现对环境温湿度的检测功能,DHT11温湿度传感模块相较于传统的传感器而言具有更大的测量优势,例如可实现温度和湿度信息的同时测量,因而相较于传统的测量系统而言结构更为简单,且可有效节省与单片机的通信结构,具有较强的抗静电功能。该传感

53、器最为突出的特点就是将温、湿度传感以及加热器、信号转换、A/D转换汇聚在一起。引脚图如图5.7。 图5.7DHT11传感器实物图(1)引脚介绍:连接电源正极。读取数据。无作用。Pin4(VDD)接地。(2)接口说明 :如当导线的长度不超过20米时,上拉电阻的阻值选择5K,当导线的长度不超过20米时,需要对上拉电阻的阻值进行详细的计算。如图5.8:图5.8DHT11典型应用电路使用它的原因:1、DHT11时序简单。2、DHT11是国产的,参考手册是中文的,没有英文可以看懂。3、功能很少,就只有一个功能,测量温湿度。该器件使用单总线协议,但我们还需要知道电源范围为3.5-5.5V。超出此范围可能会

54、损坏传感器,超过此范围,传感器可能会读取不正确的温度和湿度数据或从根部发生故障。因此,操作时要小心。HT11使用单总线协议,一次传输40位数据。换句话说,必须一次读取DHT11数据40次。也就是说,必须读取40位。前16位数据与湿度有关,中间16位与温度有关,后8位用于验证。验证成功表明温度和湿度结果是正确的。可以使用这些温度和湿度值,如果验证不对,则表示读取的时错误的温度和湿度值。可能是时序错误,或者是传感器的问题。由于时间有限就不进行采样了。第六章 系统的软件设计软件设计的实质是编写系统的软件程序。此次设计需要编写个两方面的程序,分别为主程序以及控制程序。在编写程序的过程中需要符合以下要求

55、:(1)按照软件设计功能需求,将系统模块整体分成一个个独立的部分,结构也要清晰合理,使软件开发更加流畅、合理、方便;(2)养成良好的编码方式习惯,如注意初始化模块的合理使用、合理使用懒加载、合理使用参数断言。这样的话可以方便的进行代码的调试、移植、修改。(3)利用仿真描绘合理的电路图模拟演示;(4)制作程序流程图;(5)资源分配合理化;(6)改善软件干扰预防并确保系统稳定性。控制系统需要正常的操作和操作,但软件的设计和硬件设计必须紧密耦合,以确保系统的正常运行并实现正常运行以满足项目要求和目标。在软件编程的过程中通常会使用模块化的编程方案。该方法是对系统程序进行分解,将其划分为每个函数的子程序

56、,并根据每个函数编写程序代码。软件设计成功后,必须对硬件进行测试,只有在系统硬件中实现实际硬件要求时才能成功。实际上创建了软件的语言来控制硬件。每个程序功能都有特殊含义。执行部分的设计完成后,应启动主程序设计,结合系统的设计要求对控制程序进行编写,利用最佳的主程序,并根据实时情况对两个类进行适当的排序。硬件电路的正常操作需要软件的协作,主要设计的程序是单片机系统的执行程序。单片机控制IO引脚实现外围电路的操作,根据系统的要求来编写程序。(1)在编写程序的时候选择C语言进行程序的编写,掌握基本的C语言语法与用法。(2在编程的过程中需要编程软件的支持,利用KEIL完成编程工作,需要安装KEIL软件。(3)熟练掌握单片机的工作原理,利用设置在单片机内部的储存单元以及输入输出接口来实现对外部设备的控制。需要掌握外围器件的使用方法。(4)编写程序结束后需要将程序转化为以.HEX结尾的可执行文件,并且将该文件载入到单片机中,查看系统整体的运行情况。以上的4步是编程的基本步骤,同时还有一些技巧与方法,采用模块化的编程思路进行编程,并逐一调试与各模块相对应的程序,在一些时候会节省一些时间减轻工作量。6.1程序开发软件简介在单片机系统的开发和应用,我开

温馨提示

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

评论

0/150

提交评论