基于单片机可编程作息时间控制器设计与制作_第1页
基于单片机可编程作息时间控制器设计与制作_第2页
基于单片机可编程作息时间控制器设计与制作_第3页
基于单片机可编程作息时间控制器设计与制作_第4页
基于单片机可编程作息时间控制器设计与制作_第5页
已阅读5页,还剩84页未读 继续免费阅读

下载本文档

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

文档简介

1、江西理工大学专科毕业论文华中理工大学毕业论文(设计任务书课题2010年7 月 5日至2010年11月 2 日共 15 周教育中心专业年级学号姓名教育中心主任指导教师2010 年 7 月 5 日课题来源自选课题的目的、意义要求1、根据教学大纲的要求,独立完成所承担的毕业论文,不得弄虚作假和抄袭别人的论文。2、在毕业论文写作期间,每周至少将论文进展情况通过各种形式和指导老师沟通汇报一次。3、毕业论文严格遵循华理网院毕业论文指导手册规范进行。课题主要内容及进度主要内容:进度安排:毕业论文环节动员、公布指导教师名单:7月5日下达任务书,确定毕业论文选题:7月5日-7月20日撰写开题报告:7月25日-8

2、月25日开题报告修改及提交论文初稿:9月7日-9月16日提交论文的修改稿:9月24日10月11日提交全部终稿文件:10月25日-11月2日论文答辩江西理工大学专科毕业论文发给学生1.设计(论文题目:3.设计(论文课题要求:(1深入实际调研和收集资料、文献查阅,并充分利用图书馆、计算机网络进行资料和文献的查询;(2以正确、合理的专业知识理论为基础,结合实际调研情况进行毕业设计;(3要求对电气控制线路图、系统图、流程图、布置图、生产工艺图等进行计算机绘图,掌握计算机绘图、WORD编辑等能力;(4对于毕业设计中引用的技术数据,应注明出处;(5按照学院规定时间逐步地完成毕业设计,并按照毕业设计的格式要

3、求来书写毕业设计论文。4.实验(上机、调研部分要求内容:(1调研课题相关的主要设备的生产、装配和调试的全部过程;(2调查了解有关环节中存在的技术、工艺问题和解决这些问题的初步设想;(3收集与毕业设计有关的技术数据、图纸资料。5.文献查阅要求:(1查阅有关设计的理论专业知识;(2查阅有关仪器设备、电气、电子装置的型号及主要参数;(3查阅有关技术的数据和工艺流程。6.发出日期:2010 年7 月1 日7.学生完成日期:2011 年4 月15 日指导教师签名:学生签名:附注:1、任务书应附于完成的设计(论文中,并与设计(论文一并提交答辩委员会;2、任务书须由指导教师填写。审批意见:系主任签名:年月日

4、江西理工大学专科毕业论文1、阅读中外文献资料摘要:数字钟是采用数字电路实现对"年、月、日、周、时、分、秒"数字显示的计时装置.由于数字集成电路的发展和石英晶体振荡器的广泛应用,使得数字钟的精度远远超过老式钟表,钟表的数字化给人们生产生活带来了极大的方便,而且大大地扩展了钟表原先的报时功能。可编程作息时间控制器就是其中的一个部分,它能很好的帮助我们完成对操控方面的时序和时间的控制,可见可编程时钟控制器在未来有很大的发展潜力,其研究领域十分宽广,应用领域十分广泛。2、立题依据及主要研究内容:数字钟能长期、连续、可靠、稳定地工作;同时还具有体积小,功耗低等特点,便于携带,使用方便

5、。目前应用广泛是可编程作息时间控制器,它不仅具有数字钟的一般优点,还有控制时间精确,且通过改变单片机的程序能够灵活改变冬、夏季作息时间,同时能够实时显示时间. 能够让我们来掌握运筹时间而不是让时间来催促逼迫我们。可编程作息时间控制器实现了对时间控制的智能化,摆脱了传统由人来控制时间的长短的不便,实现代学校必不可少的设备.本次研究的主要内容是可编程作息时间控制器系统,系统包括:单片机、LCD驱动及显示系统、按键输入系统、功率放大系统和电源组成。利用单片机提供的基信号作为基准计时信号,进行年月日周时分秒计时,根据设定时间完成语音播报,可按照设定的时间进行相应的控制,能够随意设置语音播报时间和内容。

6、3、设计方案及思路:主要的设计方案为:1.硬件设计由单片机系统、输入键盘、功率放大器、显示系统等部分组成。系统扩展了四个按键用于报时及设定时间。利用单片机的DAC为电流型输出,经负载电阻R1、三极管Q1,放大驱动扬声器放音,SPEAKER 可选用4或8扬声器,作为调试和当地语音播报使用,留有音频输出接口经功率放大器驱动音箱。用一个LED 显示作息时间到等相关信息,根据具体需要可控制电铃、播放提示语音等。2.软件设计整个程序分为:主程序、键盘扫描程序、校时子程序、语音子程序等几部分。设计思路由单片机系统、输入键盘、功率放大器、音箱和显示系统等部分组成,构成可编程作息时间控制器系统,要以单片机为核

7、心, 配以输入、输出、显示、控制等外围部件和软件,硬件是软件实现的基础,软件则在硬件的基础上对其资源进行合理调配和使用,从而完成应用系统所要求的任务,二者相互依赖,却一不可。要求如下(1时钟显示:16位LED从左到右依次显示年、月、日、周、时、分、秒,采用24计时。(2按键控制功能:采用4个独立键盘,其中一个为功能键;一个为数字调整键;一个为取消设置键,用来设定时间;另一个为用来设定定时时间。(3时间显示:通电后,系统自动进入时钟显示,从0000:00:00:00:00:00:00:00开始计时,此时可以调整和设置显示的时间。按动小时调整键后小时将会加1,同时也可以调整分和秒,原理和前面的小时

8、设置方法相同,用按键来调整所设置的当前的时间。(4时间调整:按下功能键,系统停止计时显示,进入时间设定状态,系统只显示小时内容,其他时间处于暂停状态;若再按动功能键则用来调整分钟,此时小时和秒都处于停止状态;原理和前面的相同。(5闹钟设置/启闹:按下闹钟设置/启闹键,系统继续计时,从0000:00:00:00:00:00: 00开始显示,此时再按功能键后进入闹钟设置状态,设置过程和时间调整相同,当与所设置的时间相同时,并且定时间到时,音箱开始发声。以上要求用软件编程来实现,通过编程方法可得到主程序、键盘扫描程序、校时子程序、语音播放子程序等几部分, 再利用仿真系统进行功能仿真和调试,最后结合硬

9、件就能得到一个可编程作息时间控制器.4、毕业设计(论文工作计划:2009年12月1日至2010年3月5日相关文献的调研,资料收集2010年3月5日至2010年3月12日系统方案探讨与指导教师问题答疑2010年3月12日至2010年3月19日硬件设计2010年3月19日至2010年3月26日软件设计2010年3月26日至2010年4月2日软件硬件联调2010年4月2日至2010年4月9日完成毕业论文写作江西理工大学专科毕业论文2010年4月9日至2010年4月16日论文指导教师初评,并给出修改意见,学生进行修改2010年4月16日至2010年4月23日完成毕业答辩PPT,准备毕业答辩5、指导教师

10、审核意见:指导教师(签名年月日_ _注:1开题报告由学生填写,须经指导教师审批2阅读文献资料摘要,要比较全面反映题目研究已取得的成果和研究动态3立题依据包括立题的必要性可编程作息时间控制器设计与制作摘要:本文介绍了一款基于AT89S52单片机数字钟的设计,通过多功能数字钟江西理工大学专科毕业论文的设计思路,详细叙述了系统硬件、软件的具体实现过程。论文重点阐述了数字钟硬件中主控制模块、时钟模块、显示模块和相关控制模块等的模块化设计与制作;软件同样采用模块化的设计,本设计实现了时间与闹钟的修改功能、语音播报功能、年、月、日和星期等的显示功能。并且通过对比实际的时钟,查找出了误差的来源,确定了调整误

11、差的方法,尽可能的减少误差,使得系统可以达到实际数字钟的允许误差范围内。本次设计过程在硬件与软件方面是进行同步设计。硬件部分主要由AT89C52单片机,LED显示电路,以及调时按键电路等组成。在单片机的选择上本人使用了AT89C52单片机,该单片机适合于许多较为复杂控制应用场合。显示器使用2片7SEG-MPX8-CA和一片7SEG-MPX4-CA。7SEG-MPX8-CA是一种八个共阳二极管显示器, 7SEG-MPX4-CA是一种四个共阳二极管显示器。为了能更轻松的控制这三片显示器,本人使用了3片74HC164来驱动。74HC164 是 8 位边沿触发式移位寄存器,串行输入数据,然后并行输出。

12、软件方面主要包括日历程序、时间调整程序,公历转阴历程序,显示程序等。程序采用汇编语言编写,以便更简单地实现调整时间及阴历显示功能。关键词:时钟电钟;DS1302;DS18B20;动态扫描;单片机ABSTRACTThis article describes an AT89S52 microcontroller based digital clock design, through multi-functional digital clock design ideas, detailed description of the system hardware and software realiza

13、tion process. Paper focuses on the digitalclock in the main control module hardware, the clock modules, display modules and associated control modules, modular design and production; software as modular design, the design and implementation of the changes of time and alarm functions, voice broadcast

14、 function, year, month, day and week, etc. display. And by comparing the actual clock, find out the source of the error, the error of the method of determining the adjustment, as much as possible to reduce errorsEnable the system to achieve a practical digital clock within allowable error.Hardware m

15、ainly by the AT89C52 microcontroller, LED display circuit, and the tune composed of the circuit when the button. In the SCM choice I used the AT89C52 microcontroller, which is suitable for many of the more complex control applications. Monitor the use of two 7SEG-MPX8-CA and a 7SEG-MPX4-CA. 7SEG-MPX

16、8-CA is a total of eight-yang display 7SEG-MPX4-CA is a total of four-yang diode display. In order to more easily control the three monitors, I use three 74HC164 to drive.74HC164 is an 8-bit edge-triggered shift register, serial input data, and parallel output. The software includes calendar program

17、, time to adjust procedures, turn the lunar calendar programs display programs. Programs written in assembly language used in order to more easily adjust the time and the realization of the lunar calendar display. All programming is complete, the wave software debugging,Key words:Clock electric cloc

18、k:DS1302;DS18B20:DYNAMIC ;SCANSCM目录摘要 (6江西理工大学专科毕业论文ABSTRACT (7前言 (10一.设计要求与方案探讨 (111.1 设计目的与意义 (101.2 设计要求 (111.3 系统基本方案选择探讨 (111.3. 3 LED显示系统选择方案探讨 (13二.硬件设计 (142.1系统电路设计框图 (142.2 系统硬件设计概述 (142.3系统主要基本单元电路的设计 (142. 4 系统电路原理说明 (18三、软件设计 (223.1程序流程框图 (223.2 子程序的设计 (24四、硬件与软件调试 (24.1硬件调试 (254.2软件调试 (

19、274.3调试结果分析与结论 (29五、论文总结 (30参考文献 (30附录一:系统电路图 (31附录二:系统程序清单 (32致谢 (50前言随着人们生活水平的提高和生活节奏的加快,对时间的要求越来越高,精准数字计时的消费需求也是越来越多。二十一世纪的今天,最具代表性的计时产品就是电子数字钟电子万年历,它是近代世界钟表业界的第三次革命。第一次是摆和摆轮游丝的发明,相对稳定的机械振荡频率源使钟表的走时差从分级缩小到秒级,代表性的产品就是带有摆或摆轮游丝的机械钟或表。第二次革命是石英晶体振江西理工大学专科毕业论文荡器的应用,发明了走时精度更高的石英电子钟表,使钟表的走时月差从分级缩小到秒级。第三次

20、革命就是单片机数码计时技术的应用(电子万年历,使计时产品的走时日差从分级缩小到1/600万秒,从原有传统指针计时的方式发展为人们日常更为熟悉的夜光数字显示方式,直观明了,并增加了全自动日期、星期、温度以及其他日常附属信息的显示功能,它更符合消费者的生活需求!因此,这种数字钟的出现带来了钟表计时业界跨跃性的进步 。本文通过对一个能实现按键开关可调整年、月、日、周、时、分、秒,且具有测温功能、定点报时的24小时制的时间系统的设计学习,详细介绍了单片机应用中的定时中断原理、数码管显示原理、动态扫描显示原理等,进一步学习、应用单片机汇编语言系统的实现了各种功能。从而使自身明白使用单片机汇编语言和C语言

21、之间的效率、整体性问题。系统由单片机、独立式按键、时钟芯片、LED数码管、蜂鸣器等部分构成,能实现24小时制年、月、日、周、时、分、秒等时钟显示。同时也可进行年、月、日、周、时、分、秒的校准、定点报时和LED数码管显示。一、设计要求与方案论证1.1设计目的与意义(1在学习了数字电子技术和单片机原理及接口技术课程后,为了加深对理论知识的理解,学习理论知识在实际中的运用,培养动手能力和解决实际问题的经验让学生接触专用时钟芯片DS1302,并会用DS1302芯片开发时钟系统,应用到其他系统中去。熟悉WA VE软件调试程序和仿真.(2、通过实验提高对单片机的认识;(3通过实验提高焊接、布局、电路检查能

22、力;(4、通过实验提高软件调试能力;(5进一步熟悉和掌握单片机的结构及工作原理。(6通过课程设计,掌握以单片机核心的电路设计的基本方法和技术,了解表关电路参数的计算方法。(7通过实际程序设计和调试,逐步掌握系统化程序设计方法和调试技术。(8通过完成一个包括电路设计和程序开发的完整过程,使学生了解开发一单片机应用系统的全过程,为今后从事相应打下基础。1.2 设计要求:具有年、月、日、星期、时、分、秒等功能;时间与阴、阳历能够自动关联;具备年、月、日、星期、时、分、秒校准功能;1.3 系统基本方案探讨方案一:采用89C51芯片作为硬件核心,采用Flash ROM,内部具有4KB ROM 存储空间,

23、能于3V的超低压工作,与工业标准的MCS-51指令集和输出管脚相兼容。由于将多功能8位CPU和闪烁存储器组合在单个芯片中,ATMEL的AT89C51是一种高效微控制器,但是运用于电路设计中时由于不具备ISP在线编程技术, 当在对电路进行硬件与软件调试时,由于对程序的错误修改或对程序的新增功能需要烧入程序时,调试麻烦,并且这样对芯片的多次拔插会对芯片造成一定的损坏。方案二:采用AT89S52,片内ROM全都采用Flash ROM;能以3V的超底压工作;同时也与MCS-51系列单片机完全该芯片内部存储器为8KB ROM 存储空间,具有3个16位定时器/计数器,8个中断源,同样具有AT89C51的功

24、能,且具有ISP 在线编程可擦除技术,当在对电路进行调试时,由于程序的错误修改或对程序的新增功能需要烧入程序时,不需要对芯片多次拔插,所以不会对芯片造成损坏。使得AT89S52为众多嵌入式控制应用系统提供高灵活、超有效的解决方案。可见AT89S52更能满足各方面的设计要求,减少不必要的麻烦,所以选择采用AT89S52作为主控制系统.方案一:直接采用单片机定时计数器提供秒信号,使用程序实现年、月、日、星期、时、分、秒计数。采用此种方案虽然减少芯片的使用,节约成本,但是,实现的时间误差较大。设计的数字钟误差不能太大,所以不采用此方案。方案二:可以采用DS1302时钟芯片,DS1302 是美国DAL

25、LAS公司推出的一种高性能、低功耗、带RAM的实时时钟电路,它可以对年、月、日、周日、时、分、秒进行计时,具有闰年补偿功能,而且精度高工作电压为2.5V 5.5V。采用三线接口与CPU进行同步通信,并可采用突发方式一次传送多个字节的时钟信号或RAM数据。DS1302内部有一个31×8的用于临时性存放数据的RAM寄存器。但增加了主电源/后背电源双电源引脚,同江西理工大学专科毕业论文时提供了对后背电源进行涓细电流充电的能力。所以采用DS1302时钟芯片,更加可靠,稳定。方案一:采用LED 液晶显示屏,液晶显示屏的显示功能强大, 需要专门的驱动电路,而且液晶显示作为一种被动显示,可视性相对

26、较差;对于具有驱动电路和微处理器接口的液晶显示系统(字符或点阵,可显示大量文字,图形,显示多样,清晰可见,但是这次设计显示主要是数字,没有大量文字,图形显示,并且价格昂贵,需要的接口线多,所以在此设计中不会采用LED 液晶显示屏.方案二:采用LED 数码管动态扫描,LED 数码管价格适中,对于显示数字最合适,而且采用动态扫描法与单片机连接时,占用的单片机口线少。综上所述,所以采用了LED 数码管作为显示。1.3 电路设计最终方案决定综上各方案所述,对此次毕业设计的方案选定: 采用AT89S52作为主控制系统; DS1302提供时钟;数字式温度传感器DS18B20作为温度传感器;LED 数码管动

27、态扫描作为显示。二.硬件设计2.1 电路设计方案图2.2 系统硬件设计概述本电路是由AT89S52单片机为控制核心,具有在线编程功能,低功耗,能在3V 超低压工作;时钟电路由时钟芯片DS1302提供,它是一种高性能、低功耗、AT89S52 主控制模 块 DS1302时钟系统LED 数码管动态扫描显示系统 温度采集系统 键盘系统可靠稳定,带RAM的实时时钟电路,它可以对年、月、日、周日、时、分、秒进行计时,具有闰年补偿功能,工作电压为2.5V5.5V。采用三线接口与CPU 进行同步通信,并可采用突发方式一次传送多个字节的时钟信号或RAM数据。DS1302内部有一个31*8的用于临时性存放数据的R

28、AM寄存器。可产生年、月、日、周日、时、分、秒,具有使用寿命长,精度高和低功耗等特点,同时具有掉电自动保存功能;温度的采集由DS18B20构成;显示部份由21个数码管, 74ls138、74ls47译码器等构成。使用LED数码管动态扫描显示方式对数字的显示。2.3 系统主要单元电路的设计At89s52 是一种低功耗、高性能CMOS8位微控制器,是具有40引脚双列直插芯片,具有8K 在系统可编程Flash 存储器。与工业80C51 产品指令和引脚完全兼容。具有以下标准功能:8k字节Flash,256字节RAM,32 位I/O 口线,看门狗定时器,2 个数据指针,三个16 位定时器/计数器,一个6

29、向量2级中断结构,全双工串行口通信。有四个I/O口P0,P1,P2,P3,功能如下: P0 口:P0口是一个8位漏极开路的双向I/O口。作为输出口,每位能驱动8个TTL逻辑电平。对P0端口写“1”时,引脚用作高阻抗输入。当访问外部程序和数据存储器时,P0口也被作为低8位地址/数据复用。在这种模式下,P0具有内部上拉电阻。在flash编程时,P0口也用来接收指令字节;在程序校验时,输出指令字节。程序校验时,需要外部上拉电阻。P1 口:P1 口是一个具有内部上拉电阻的8 位双向I/O 口,p1 输出缓冲器能驱动4 个TTL 逻辑电平。对P1 端口写“1”时,内部上拉电阻把端口拉高,此时可以作为输入

30、口使用。作为输入使用时,被外部拉低的引脚由于内部电阻的原因,将输出电流(IIL。的触发输入(P1.1/T2EX,具体如下表所示。本设计系统设计如下图所示,18引脚和19引脚接时钟电路,XTAL1接外部晶江西理工大学专科毕业论文振和微调电容的一端,在片内它是振荡器倒相放大器的输入,XTAL2接外部晶振和微调电容的另一端,在片内它是振荡器倒相放大器的输出.第9引脚为复位输入端,接上电容,电阻及开关后够上电复位电路,20引脚为接地端,40引脚为电源端. 如图-1 所示 图-1 主控制系统电路为了实现系统报警计时等功能,此设计采用了DS1302实时时钟芯片。DS1302 是美国DALLAS公司推出的一

31、种高性能、低功耗、带RAM的实时时钟电路,它可以对年、月、日、周日、时、分、秒进行计时,具有闰年补偿功能,工作电压为2.5V5.5V。采用三线接口与CPU进行同步通信,并可采用突发方式一次传送多个字节的时钟信号或RAM数据。D S1302内部有一个31×8的用于临时性存放数据的RAM寄存器。DS1302是DS1202的升级产品,与DS1202兼容,但增加了主电源/后备电源双电源引脚,同时提供了对后备电源进行涓细电流充电的能力。图-2示出DS1302的引脚排列,其中Vcc1为后备电源,Vcc2为主电源。在主电源关闭的情况下,也能保持时钟的连续运行。DS1302由Vcc1或Vcc2两者中

32、的较大者供电。当Vcc2大于Vcc1+0.2V时,Vcc2给DS1302供电。当Vcc2小于Vcc1时,DS1302由Vcc1供电。X1和X2是振荡源,外接32.768KHz晶振。RST是复位/片选线,通过把RST输入驱动置高电平来启动所有的数据传送。RST输入有两种功能:首先,RST接通控制逻辑,允许地址/命令序列送入移位寄存器;其次,RST提供终止单字节或多字节数据的传送手段。当RST为高电平时,所有的数据传送被初始化,允许对DS1302进行操作。如果在传送过程中RSTS置为低电平,则会终止此次数据传送,I/O引脚变为高阻态。上电动行时,在VSS大于等于2.5V之前,RST必须保持低电平。

33、中有在SCLK 为低电平时,才能将RST置为高电平,I/O为串行数据输入端(双向。SCLK始终是输入端。DS1302与CPU的连接需要三条线,即SCLK(7、I/O(6、RST(5。下图DS1302与89s52的连接图,其中,时钟的显示用LCD。 图-2 DS1302与主控制系统连接电路如图-5所示,采用LED数码管动态扫描显示,由21个数码管,3-8译码器74LS138接1K限流电阻,再接8550三极管接到共阳数码管的输出端作为选通位码,每位选择相应的列。74ls47接240限流电阻,再接共行的LED数码管的断码。江西理工大学专科毕业论文 图-4 LED动态扫描显示电路电路2.4 系统电路原

34、理及说明(1单片机AT89S52的工作原理:1.1引脚功能及结构具有8K字节在系统可编程Flash存储器、1000次擦写周期、全静态操作:0Hz33Hz 、三级加密程序存储器、32个可编程I/O口线、三个16位定时器/计数器八个中断源、全双工UART串行通道、低功耗空闲和掉电模式、掉电后中断可唤醒、看门狗定时器、双数据指针、掉电标识符等结构与功能。P0 口:P0口是一个8位漏极开路的双向I/O口。作为输出口,每位能驱动8个TTL逻辑电平。对P0端口写“1”时,引脚用作高阻抗输入。当访问外部程序和数据存储器时,P0口也被作为低8位地址/数据复用。在这种模式下,P0具有内部上拉电阻。在flash编

35、程时,P0口也用来接收指令字节;在程序校验时,输出指令字节。程序校验时,需要外部上拉电阻。P1 口:P1 口是一个具有内部上拉电阻的8 位双向I/O 口,p1 输出缓冲器能驱动4 个TTL 逻辑电平。对P1 端口写“1”时,内部上拉电阻把端口拉高,此时可以作为输入口使用。作为输入使用时,被外部拉低的引脚由于内部电阻的原因,将输出电流(IIL。的触发输入(P1.1/T2EX,具体如下表所示。在flash编程和校验时,P1口接收低8位地址字节。引脚号第二功能P1.0 T2(定时器/计数器T2的外部计数输入,时钟输出P1.1 T2EX(定时器/计数器T2的捕捉/重载触发信号和方向控制P1.5 MOS

36、I(在系统编程用P1.6 MISO(在系统编程用P1.7 SCK(在系统编程用P2 口:P2 口是一个具有内部上拉电阻的8 位双向I/O 口,P2 输出缓冲器能驱动4 个TTL 逻辑电平。对P2 端口写“1”时,内部上拉电阻把端口拉高,此时可以作为输入口使用。作为输入使用时,被外部拉低的引脚由于内部电阻的原因,将输出电流(IIL。在访问外部程序存储器或用16位地址读取外部数据存储器(例如执行MOVX DPTR时,P2 口送出高八位地址。在这种应用中,P2 口使用很强的内部上拉发送1。在使用8位地址(如MOVX RI访问外部数据存储器时,P2口输出P2锁存器的内容。在flash编程和校验时,P2

37、口也接收高8位地址字节和一些控制信号。P3 口:P3 口是一个具有内部上拉电阻的8 位双向I/O 口,p2 输出缓冲器能驱动4 个TTL 逻辑电平。对P3 端口写“1”时,内部上拉电阻把端口拉高,此时可以作为输入口使用。作为输入使用时,被外部拉低的引脚由于内部电阻的原因,将输出电流(IIL。P3口亦作为AT89S52特殊功能(第二功能使用,如下表所示。在flash编程和校验时,P3口也接收一些控制信号。端口引脚第二功能P3.0 RXD(串行输入口江西理工大学专科毕业论文P3.1 TXD(串行输出口P3.2 INTO(外中断0P3.3 INT1(外中断1P3.4 TO(定时/计数器0P3.5 T

38、1(定时/计数器1P3.6 WR(外部数据存储器写选通P3.7 RD(外部数据存储器读选通此外,P3口还接收一些用于FLASH闪存编程和程序校验的控制信号。RST复位输入。当振荡器工作时,RST引脚出现两个机器周期以上高电平将是单片机复位。ALE/PROG当访问外部程序存储器或数据存储器时,ALE(地址锁存允许输出脉冲用于锁存地址的低8位字节。一般情况下,ALE仍以时钟振荡频率的1/6输出固定的脉冲信号,因此它可对外输出时钟或用于定时目的。要注意的是:每当访问外部数据存储器时将跳过一个ALE脉冲。对FLASH存储器编程期间,该引脚还用于输入编程脉冲(PROG。如有必要,可通过对特殊功能寄存器(

39、SFR区中的8EH单元的D0位置位,可禁止ALE操作。该位置位后,只有一条MOVX和MOVC指令才能将ALE激活。此外,该引脚会被微弱拉高,单片机执行外部程序时,应设置ALE禁止位无效。PSEN程序储存允许(PSEN输出是外部程序存储器的读选通信号,当AT89C52由外部程序存储器取指令(或数据时,每个机器周期两次P SEN有效,即输出两个脉冲,在此期间,当访问外部数据存储器,将跳过两次PSEN信号。EA/VPP外部访问允许,欲使CPU仅访问外部程序存储器(地址为0000H-FFFFH,EA端必须保持低电平(接地。需注意的是:如果加密位LB1被编程,复位时内部会锁存EA端状态。如EA端为高电平

40、,CPU则执行内部程序存储器的指令。(2 时钟芯片DS1302的工作原理:2.1 引脚功能及结构DS1302的引脚排列,其中Vcc1为后备电源,Vcc2为主电源。在主电源关闭的情况下,也能保持时钟的连续运行。DS1302由Vcc1或Vcc2两者中的较大者供电。当Vcc2大于Vcc1+0.2V时,Vcc2给DS1302供电。当Vcc2小于Vcc1时,DS1302由Vcc1供电。X1和X2是振荡源,外接32.768kHz晶振。RST是复位/片选线,通过把RST输入驱动置高电平来启动所有的数据传送。RST输入有两种功能:首先,RST接通控制逻辑,允许地址/命令序列送入移位寄存器;其次,RST提供终止

41、单字节或多字节数据的传送手段。当RST为高电平时,所有的数据传送被初始化,允许对DS1302进行操作。如果在传送过程中RST置为低电平,则会终止此次数据传送,I/O引脚变为高阻态。上电运行时,在VCC>2.0V之前,RST 必须保持低电平。只有在SCLK为低电平时,才能将RST置为高电平。I/O 为串行数据输入输出端(双向。SCLK为时钟输入端。下图为DS1302的引脚功能图: DS1302封装图2.2D S1302的控制字节DS1302的控制字如表-1所示。控制字节的高有效位(位7必须是逻辑1,如果它为0,则不能把数据写入DS1302中,位6如果0,则表示存取日历时钟数据,为1表示存取

42、RAM数据;位5至位1指示操作单元的地址;最低有效位(位0如为0表示要进行写操作,为1表示进行读操作,控制字节总是从最低位开始输出RAM RD1 A4 A3 A2 A1 A0/ CK /WR表-1 DS1302的控制字格式2.3 数据输入输出(I/O在控制指令字输入后的下一个SCLK时钟的上升沿时,数据被写入DS1302,数据输入从低位即位0开始。同样,在紧跟8位的控制指令字后的下一个SCLK脉冲的下降沿读出DS1302的数据,读出数据时从低位0位到高位7。2.4 DS1302的寄存器DS1302有12个寄存器,其中有7个寄存器与日历、时钟相关,存放的数据位为BCD码形式,其日历、时间寄存器及

43、其控制字见表1。此外,DS1302 还有年份寄存器、控制寄存器、充电寄存器、时钟突发寄存器及与RAM相关的寄存器等。时钟突发寄存器可一次性顺序读写除充电寄存器外的所有寄存器内容。DS1302与RAM相关的寄存器分为两类:一类是单个RAM单元,共31个,每个单元组态为一个8位的字节,其命令控制字为C0HFDH,其中奇数为读操作,偶数为写操作;另一类江西理工大学专科毕业论文为突发方式下的RAM寄存器,此方式下可一次性读写所有的RAM的31个字节,命令控制字为FEH(写、FFH(读。为了实现系统报警计时等功能,此设计采用了DS1302实时时钟芯片。DS1302 是美国DALLAS公司推出的一种高性能

44、、低功耗、带RAM的实时时钟电路,它可以对年、月、日、周日、时、分、秒进行计时,具有闰年补偿功能,工作电压为2.5V5.5V。采用三线接口与CPU进行同步通信,并可采用突发方式一次传送多个字节的时钟信号或RAM数据。DS1302内部有一个31×8的用于临时性存放数据的RAM寄存器。DS1302是DS1202的升级产品,与DS1202兼容,但增加了主电源/后备电源双电源引脚,同时提供了对后备电源进行涓细电流充电的能力。2.1 引脚功能及结构DS1302的引脚排列,其中Vcc1为后备电源,VCC2为主电源。在主电源关闭的情况下,也能保持时钟的连续运行。DS1302由Vcc1或Vcc2两者

45、中的较大者供电。当Vcc2大于Vcc1+0.2V时,Vcc2给DS1302供电。当Vcc2小于Vcc1时,DS1302由Vcc1供电。X1和X2是振荡源,外接32.768kHz晶振。RST是复位/片选线,通过把RST输入驱动置高电平来启动所有的数据传送。RST输入有两种功能:首先,RST接通控制逻辑,允许地址/命令序列送入移位寄存器;其次,RST提供终止单字节或多字节数据的传送手段。当RST为高电平时,所有的数据传送被初始化,允许对DS1302进行操作。如果在传送过程中RST置为低电平,则会终止此次数据传送,I/O引脚变为高阻态。上电运行时,在Vcc2.5V之前, RST必须保持低电平。只有在

46、SCLK为低电平时,才能将RST置为高电平。I/O为串行数据输入输出端(双向。SCLK始终是输入端。三、软件设计图-A 主程序流程图开始 初始化 读、写日期、时间 分离日期时间显示值 显示子程序 农历自动更新子程序 日期、时间修改子程序 闰月子程 返回定时闹铃子程序 图-B计算阳历程序流程图 图-C 时间调整程序流程图 图-D 阴历程序流程图3.2 子程序的设计写1302程序WRITE: CLR SCLKNOPSETB RSTNOPMOV A, 32HMOV R4, #8 WRITE1:RRC A ;送地址给1302NOPNOPCLR SCLK NOPNOPNOPMOV IO, CNOPNOP

47、NOPSETB SCLKNOPNOPDJNZ R4, WRITE1CLR SCLKNOPMOV A, 31HMOV R4, #8WRITE2:RRC ANOP ;送数据给1302CLR SCLKNOPNOPMOV IO, CNOPNOPNOPSETB SCLKNOPNOPDJNZ R4, WRITE2 CLR RSTRET;读1302程序READ:CLR SCLKNOPNOPSETB RSTNOPMOV A, 32HMOV R4, #8 READ1:RRC A ;送地址给1302 NOPMOV IO, CNOPNOPNOPSETB SCLKNOPNOPNOPCLR SCLKNOPNOPDJNZ

48、 R4, READ1MOV R4, #8READ2:CLR SCLKNOP ;从1302中读出数据NOPNOPMOV C, IONOPNOPNOPNOPNOPRRC ANOPNOPNOPNOPSETB SCLKNOPDJNZ R4, READ2MOV 31H, ACLR RSTRET四. 软件硬件联调4.1硬件调试本系统已符合设计基本要求,即可以实现24小时方式;可使用按键开关可现时、分调整。除了满足这些基本要求外,本系统还做了一些创新:通过功能按键开关KEY1进入可进入时间校准系统。KEY2控制秒的校准,KEY3控制分的校准,KEY4控制时的校准。每次一有校准按键按下时,系统会发出不同的声响

49、,以提示用户目前正在校准的是时、分、秒的哪一种。校准完成后仍然是通过功能按键KEY1返回时钟显示。通过更改主程序中定时器的定时初值,可实现不同样式的数字钟显示方式。通过实验测得以下参数如表2所示(程序中定时参数CYCLE在以下简称C:C (ms10C301C C30数码管显示方式静态闪烁拉幕式江西理工大学专科毕业论文最后电子万年历的电路系统较大,对整个电路线路检查一次,逐步去检查每个线路端点,看接线牢固不牢固,可见对于焊接方面更是不可轻视,庞大的电路系统中只要出于一处的错误,则会对检测造成很大的不便,而且电路的交线较多,对于各种锋利的引脚要注意处理,否则会刺被带有包皮的导线,则会对电路造成短路

50、现象。在本成电子万年历的设计调试中遇到了很多的问题。回想这些问题只要认真多思考都是可以避免的,涉及DS1302与CPU的连接时要注意,DS1302与CPU的连接时,在硬件调试程序时可以不加电容器,只加一个32.768kHz 的晶振即可。只是选择晶振时,不同的晶振,误差也较大。另外,还可以在上面的电路中加入DS18B20,同时显示实时温度。只要占用CPU一个口线即可。具有3-4线串行接口,可与任何单片机、IC接口。功耗低,显示状态时电流为2A (典型值,省电模式时小于1A,工作电压为2.4V3.3V,显示清晰。4.2软件调试电子成年历是多功能的数字钟,可以看当前日期(阴、阳历,时间,还有温度的仪

51、器。电子成年历功能很多,所以对于它的程序也较为复杂,所以在编写程序和调试时出现了相对较多的问题。最后经过多次的系统子程序的修改,一步一步的完成,最终解决了软件。一.烧入程序后,看LED数码管能否稳定显示,而且亮度均匀。再通过按键来更改时间是否成功,就是能否修改时间,能就成功。二.修改时间、日期时没有农历没有自动对应上。把不相关的程序暂时屏蔽,地农历的子程序独立调试,如发现在调用农历自动更新时,对十进制和十六进制处理不好,所以会造成错乱。最后把相应的十进制进行修改,使得可以与十六进制对应,这样就行了。4.3调试结果分析与结论(1.在调试中遇到发光二极管、LED数码管为不显示时,首先使用试测仪对电

52、路进行调试,观察是否存在漏焊,虚焊,或者元件损坏;或是软件上有什么问题,有什么错误等。(2.LED 数码管显示不正常,还有亮度不够,首先使用试测仪对电路进行调试,观察电路是否存在短路现象。查看烧写的程序是否正确无误,对程序进行认真修改。在本设计中,为了设计的顺利进行,我在实验箱上进行了部分调试,因为电路太复杂,在实验箱上不可能整体电路进行调试。调试后,我就自己焊接了一个试验板进行调试。以确保最后能很好的完成其各部分功能。最后经过多次的反复调试与分析,可以对电路的原理及功能更加熟悉,同时提高了设计能力与及对电路的分析能力.同时在软件的编程方面得到更到的提高,对编程能力得到加强.同时对所学的知识得

53、到很大的提高与巩固.江西理工大学专科毕业论文五、论文总结在整个设计过程中,充分发挥人的主观能动性,自主学习,学到了许多没学到的知识。这次毕业论文的制作过程是我的一次再学习,再提高的过程。在论文中我充分地运用了大学期间所学到的知识。我从资料的收集中,掌握了很多单片机、LED显示屏的知识,让我对我所学过的知识有所巩固和提高,并且让我对当今单片机、LED显示屏的最新发展技术有所了解。在整个过程中,我学到了新知识,增长了见识。在今后的日子里,我仍然要不断地充实自己,争取在所学领域有所作为。脚踏实地,认真严谨,实事求是的学习态度,不怕困难、坚持不懈、吃苦耐劳的精神是我在这次设计中最大的收益。我想这是一次

54、意志的磨练,是对我实际能力的一次提升,也会对我未来的学习和工作有很大的帮助。在此次设计中,知道了做凡事要有一颗平常的心,不要想着走捷径,一步一脚印。也练就了我们的耐心,做什么事都在有耐心。此次论文中学了很多很多东西,这是最重要的。参考文献1刘勇编数字电路电子工业出版社20042陈正振编电子电路设计与制作广西交通职业技术学院信息工程系20073杨子文编单片机原理及应用西安电子科技大学出版社20064王法能编单片机原理及应用科学出版社20045张友德、赵志英等编单片微型机原理、应用与实验上海:复旦大学出版2003第四版6钱晓揭. 16/32位微机原理、汇编语言及接口技术M.机械工程出版社2005年

55、7吴金. 8051单片机实践与应用M.清华大学出版社,2002年8谢自美.电子线路设计试验测试(第二版M.华中科技出版社2002年9张疑坤,陈善久,裘雪红.单片微型计算机原理及应用M.西安电子科技大出版社2003年10马忠梅编著单片机的C语言应用程序设计北京航空航天大学出版社,1999年11王幸之编著单片机应用系统抗干扰技术北京航空航天大学出版社,2000年2010年4月10日附录二:系统电路图 江西理工大学专科毕业论文附录二:系统程序清单程序如下:CONFIG12 EQU 7FHTEMPH EQU 21HTEMPL EQU 20HREG2 EQU 22HREG3 EQU 23HREG4 EQU 24HDAT EQU P0.7SCLK EQU P3.2IO EQU P3.3RST EQU P3.4Year DATA 66HMONTH DATA 65HWEEK DATA 64HDAY DATA 63HHOUR DATA 62HMINTUE DATA 61HSECOND DATA 60HORG 0000HLJMP STARTORG 001BHLJMP INTT1START: ;初值LCALL ZJSETB EAMOV SCON, #00H ; 串行

温馨提示

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

评论

0/150

提交评论