多功能电子时钟系统设计报告_第1页
多功能电子时钟系统设计报告_第2页
多功能电子时钟系统设计报告_第3页
多功能电子时钟系统设计报告_第4页
多功能电子时钟系统设计报告_第5页
已阅读5页,还剩55页未读 继续免费阅读

下载本文档

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

文档简介

1、JIANGSU UNIVERSITY OF TECHNOLOGY 电子系统设计综合训练多功能电子时钟系统设计学院名称: 电气信息工程学院 专 业: 电气工程及其自动化 班 级: 10 电 子 xx 姓 名: xxxx 学 号: xxxxx 指导教师姓名: 薛 波 俞 洋 2013年09月 多功能电子时钟系统设计摘要随着科技的发展和社会的进步,人们对数字钟的要求也越来越高,多功能数字钟不管在性能还是在样式上都发生了质的变化。数字钟的设计方法有许多种,例如,可用中小规模集成电路组成电子钟;也可以利用专用的电子钟芯片配以显示电路及其所需要的外围电路组成电子钟;还可以利用单片机来实现电子钟等等。这些方

2、法都各有其特点,其中利用单片机实现的电子钟具有编程灵活,并便于功能的扩展。但这里为了学习数字电路,包括对组合逻辑电路与时序电路的学习,采用中小规模集成电路组成数字钟。因此本系统采用单片机作为数字钟的核心控制器,读取时钟芯片的值,并通过显示器显示出来,而且,可以通过按键电路给单片机执行信号,实现正常显示,时钟校准和秒表的切换。采用AT89S52作为主控单片机,时钟模块选用DS1302作为时钟芯片,显示模块选用LCD1602,设置部分选用按键电路。本设计是以单片机为核心,附加必要的外围电路,通过编写C语言将存储在DS1302芯片中的年、月、日、时、分、秒,经过串行输入到单片机内部,对其进行数制的转

3、换在DS1602上显现出来。关键词:LCD160;DS1302;STC89C52;电子钟Multifunction electronic clock system designAbstractWith the development of technology and social progress , people demand more and more digital clock high , multi-functional digital clock regardless of the style or performance on both a qualitative change

4、 . Digital clock design There are many ways , for example , can be composed of small and medium- scale integrated circuits electronic bell ; also be used with a dedicated chip electronic clock display circuit and its peripheral circuit required electronic bell ; chip can also be used to implement el

5、ectronic bell and so on. These methods have their own characteristics , including the use of electronic clock with MCU programming flexibility , functionality and ease of expansion. But here in order to learn digital circuits, including combinational logic circuits and sequential circuits of study,

6、using small and medium scale integrated circuits digital clock . Therefore, the system uses the MCU as the core controller digital clock , clock chip to read the values displayed by the display , and can be performed through the key signal to the microcontroller circuit to achieve normal display, cl

7、ock and stopwatch calibration switch . Using AT89S52 microcontroller as the master clock module selection as the DS1302 clock chip, display module selection LCD1602, setting part of the selection key circuit .This design is a microcontroller as the core , the additional necessary peripheral circuits

8、 , through the preparation of the C language will be stored in the DS1302 chip year, month, day, hour, minute, second, through the serial input to the internal microcontroller , its number system conversion apparent on the DS1602 . Keywords:LCD1602;DS1302;STC89C52;Clock 目 录第1章 绪论21.1 课题的意义和目的21.2 课题

9、的研究内容21.3 课题的任务要求2第2章 系统方案设计32.1系统方案设计32.2 方案的选择与论证42.2.1 方案的比较与论证42.2.2 系统结构实现框图设计4第3章 系统各模块的硬件设计63.1 单片机控制模块设计4 3.1.1单片机的应用及发展现状4 3.1.2 STC89C52单片机模块5 3.1.3 单片机晶振模块设计8 3.1.4 单片机复位电路设计83.2 显示电路模块设计9 3.2.1 LCD1602介绍9 3.2.2 LCD1602字符液晶使用方法10 3.2.3LCD1602液晶显示电路设计123.3时钟电路DS130213 3.3.1 DS1302的性能特性13 3

10、.3.2 DS1302使用方法13 3.3.3 时钟电路设计153.4 按键模块的设计15 3.4.1模式选择按键15 3.4.2按键设置电路163.5 蜂鸣报警电路模块设计16第4章 系统软件设计94.1 软件设计总体思路184.2主程序流程图19第5章 系统调试与数据分析125.1 硬件电路的制作和调试125.2 软硬件功能分析125.3 测试结果分析12第6章 总结与展望14参考文献15致谢16附录1 电路原理图17附录2 程序19附录3 元器件清单21前言近年来随着计算机在社会领域的渗透和大规模集成电路的发展,单片机的应用正在不断地走向深入,由于它具有功能强,体积小,功耗低,价格便宜,

11、工作可靠,使用方便等特点,因此越来越广泛地应用各个领域。本次电子系统实训是以单片机(STC89C52)为核心,时钟芯片DS1302,LCD1602XI显示部分构成。具体介绍了应用Protues的ISIS软件进行单片机系统的电子时钟设计与仿真的实现方法。该方法既能准确验证所设计的系统是否满足技术要求,又能提高系统设计的效率和质量,降低开发成本,具有推广价值。随着现在通信的发展,移动通信,网络技术,多媒体技术在嵌入式系统中的应用,单片机从4位,8位,16位到32位,其发展历程一直受到广大电子爱好者的极大关注。单片机功能越来越强大,价格却不断下降的优势无疑成为嵌入式系统设计的首选,同时单片机应用领域

12、的扩大也使得更多人加入到基于单片机系统的开发行列,推动着单片机技术的创新进步。然而传统的单片机系统开发除了需要购置如仿真器,编程器,示波器等价格不菲的电子设备外,开发过程也较为繁琐。单片机系统作为一种典型的嵌入式系统,其系统设计包括硬件电路设计和软件编程设计两个方面,其调试过程一般分为软件调试,硬件调试,硬件测试,系统调试3个过程。如果采用单片机系统的虚拟仿真软件-Protues,则不用制作具体的电路板也能够完成以上工作。第1章 绪论1.1 课题的意义和目的为了记录时间,古人发明了文字;为了区分一天中的不同阶段,古人有发明了沙漏等工具。而在快节奏的当今社会,时间更是一个很重要的工具,为了更高效

13、率的完成工作,为了社会的进步与发展,时间更是尤为重要。集成电路制造技术的快速发展,一方面促进了相应设计技术的发展,另一方面也对设计技术提出了更高的要求。而电子时钟是利用电子技术构成时钟功能的装置,与机械式时钟相比具有更高的准确性和直观性,且无机械装置,具有更长的寿命,因此现在越来越得到广泛的使用。现在的电子时钟具有显示、校准、闹钟这些传统机械时钟所具有的功能,另外还具有正点音乐报时、温湿度测量、秒表等新的功能,更加的使用并且生活化。本次实训便是制作电子钟,让我们更加清楚的了解电子钟的功能。1.2 课题的研究内容设计制作一台以控制器为核心的多功能电子时钟系统。1.3 课题的任务要求1.系统具有3

14、种工作模式状态(正常时钟显示模式、系统校准模式、秒表计时模式);系统所有功能,能够通过上位PC机对其操作修改与实时动态显示(PC主机端可利用高级语言进行人机界面设计);2在正常时钟显示模式时,时钟具有显示年、月、日、时、分、秒的功能;3在正常时钟显示模式时,系统具有整点报时的功能,在离整点前10秒时,自动发出鸣叫声,步长1秒,每间隔1秒鸣叫一次,前4响是低音,后1响为高音,共鸣叫5次,最后1响结束时为整点。高音频率为1KHz;4在系统校准模式时,系统具有快速校准时间的功能;5在秒表计时模式时,可兼做比赛时间记录表。秒表记时的精度为0.1秒,由3个键分别控制秒表的启动、清零、记录功能,可连续记录

15、3组时间,并能够显示记录时间;6系统显示器采用LCD液晶显示器1602或其它显示器件,并采用键盘对相关数据进行设置与操作。第2章 系统方案设计2.1系统方案设计2.1.1系统方案设计方案一:MCU显示通信接口PC键盘时钟蜂鸣器复位晶振电源用单片机为核心完成多功能电子时钟的各种功能,由时钟芯片来提供及时方式,再通过蜂鸣器报时,通过键盘来定时,修改时间,实现秒表的启停和存储,通过显示器来显示时间。示意框图如图2-1所示。图2-1 由单片机构成的多功能电子时钟框图方案二:以FPGA为核心来实现多功能电子时钟的功能,以模块化,自上而下的方式来编写程序,然后由时钟芯片来提供及时方式,再通过蜂鸣器报时,闹

16、钟,通过键盘来定时,修改时间,实现秒表的启停和存储,通过显示器来显示时间。示意框图如图2-2所示。FPGA显示通信接口PC键盘时钟蜂鸣器图2-2 由FPGA构成的多功能电子时钟框图方案三: 使用常见的芯片和器件搭建电源电路模块,计数模块,显示模块,信号源模块,校准模块和报警模块,然后将所有模块整合起来,进行整体调试以获得所要求的电路。示意框图如图2-3所示。 计数电路校准电路报警电路信号源电源电路显示电路图2-3由电路模块构成的多功能电子时钟框图2.2 方案的选择与论证2.2.1 方案的比较与论证以上三个方案都可以实现多功能电子时钟的功能要求。其中方案一灵活性大,便于修改,成本低,但是经常会有

17、死机情况,重启会复位,需要重新设置时间。方案二使用的是模块化的编写方法,外围电路要求较简单,不会因为掉电后重启就需要重置信息,但是成本高,固化后难以修改。方案三设计需要整理的材料包括各种计数器芯片、实现与、或、非等各种基础逻辑运算所需的芯片、7段数码管、LED点阵、各种可能使用到的开关、7805芯片、变压器、整流桥、电阻、电容、蜂鸣器等。电路较为繁琐,不易大批量生产且调试起来很困难。所以相比较而言,选择成本较低的,便于修改的方案一。第3章 系统各模块的硬件设计3.1 单片机控制模块3.1.1单片机的介绍单片机是指一个集成在一块芯片上的完整计算机系统。尽管他的大部分功能集成在一块小芯片上,但是它

18、具有一个完整计算机所需要的大部分部件:CPU、内存、内部和外部总线系统,目前大部分还会具有外存。同时集成诸如通讯接口、定时器,实时时钟等外围设备。而现在最强大的单片机系统甚至可以将声音、图像、网络、复杂的输入输出系统集成在一块芯片上。 单片机也被称为微控制器(Microcontroler),是因为它最早被用在工业控制领域。单片机由芯片内仅有CPU的专用处理器发展而来。最早的设计理念是通过将大量外围设备和CPU集成在一个芯片中,使计算机系统更小,更容易集成进复杂的而对提及要求严格的控制设备当中。INTEL的Z80是最早按照这种思想设计出的处理器,从此以后,单片机和专用处理器的发展便分道

19、扬镳。 早期的单片机都是8位或4位的。其中最成功的是INTEL的8031,因为简单可靠而性能不错获得了很大的好评。此后在8031上发展出了MCS51系列单片机系统。基于这一系统的单片机系统直到现在还在广泛使用。随着工业控制领域要求的提高,开始出现了16位单片机,但因为性价比不理想并未得到很广泛的应用。90年代后随着消费电子产品大发展,单片机技术得到了巨大的提高。随着INTEL i960系列特别是后来的ARM系列的广泛应用,32位单片机迅速取代16位单片机的高端地位,并且进入主流市场。而传统的8位单片机的性能也得到了飞速提高,处理能力比起80年代提高了数百倍。目前,高端的32

20、位单片机主频已经超过300MHz,性能直追90年代中期的专用处理器,而普通的型号出厂价格跌落至1美元,最高端的型号也只有10美元。当代单片机系统已经不再只在裸机环境下开发和使用,大量专用的嵌入式操作系统被广泛应用在全系列的单片机上。而在作为掌上电脑和手机核心处理的高端单片机甚至可以直接使用专用的Windows和Linux操作系统。下面重点介绍STC89C52:STC89C52是STC公司生产的一种低功耗、高性能CMOS8位微控制器,具有 8K 在系统可编程Flash存储器。STC89C52使用经典的MCS-51内核,但做了很多的改进使得芯片具有传统51单片机不具备的功能。在单芯片上,拥有灵巧的

21、8 位CPU 和在系统可编程Flash,使得STC89C52为众多嵌入式控制应用系统提供高灵活、超有效的解决方案。 具有以下标准功能: 8k字节Flash,512字节RAM, 32 位I/O 口线,看门狗定时器,内置4KB EEPROM,MAX810复位电路,3个16 位定时器/计数器,4个外部中断,一个7向量4级中断结构(兼容传统51的5向量2级中断结构),全双工串行口。另外 STC89C52 可降至0Hz 静态逻辑操作,支持2种软件可选择节电模式。空闲模式下,CPU 停止工作,允许RAM、定时器/计数器、串口、中断继续工作。掉电保护方式下,RAM内容被保存,振荡器被冻结,单片机一切工作停止

22、,直到下一个中断或硬件复位为止。最高运作频率35MHz,6T/12T可选。STC89C52RC单片机:8K字节程序存储空间;512字节数据存储空间;内带2K字节EEPROM存储空间;可直接使用串口下载;AT89S52单片机:8K字节程序存储空间;256字节数据存储空间;没有内带EEPROM存储空间;单片机的最小系统如下图所示,18引脚和19引脚接时钟电路,XTAL1接外部晶振和微调电容的一端,在片内它是振荡器倒相放大器的输入,XTAL2接外部晶振和微调电容的另一端,在片内它是振荡器倒相放大器的输出.第9引脚为复位输入端,接上电容,电阻及开关后够上电复位电路,20引脚为接地端,40引脚为电源端.

23、 图3-1为STC89C52的管脚图。图3-1单片机STC89C52引脚图引脚功能简介:单片机的40个引脚大致可分为4类:电源、时钟、控制和I/O引脚。1、 电源(1) VCC芯片电源,接5V;(2) VSS接地端;2、 时钟XTAL1、XTAL2:晶体振荡电路反相输入和输出端。3、 控制线(1) ALE/PROG:地址锁存允许/片内EPROM 编程脉冲ALE功能:用来锁存P0口送出的低8位地址PROG功能:片内有EPROM的芯片,在EPROM编程期间,此引脚输入编程脉冲。(2) PSEN:外ROM读选通信号。(3) RST/VPD:复位/备用电源。RST(Reset)功能:复位信号输入端。V

24、PD功能:在VCC掉电情况下,接备用电源。(4)EA/Vpp:内外ROM选择/片内EPROM编程电源。 EA功能:内外ROM选择端 Vpp功能:片内有EPROM的芯片,在EPROM编程期间,施加编程电源Vpp。4、 I/O线89C52共有4个8位并行I/O端口:P0口、P1口、P2口、P3 口,共32个引脚。P3口还具有第二功能,用于特殊信号输入输出和控制信号(属控制总线)。P0:经上拉电阻后作为液晶模块的数据输入端。P3.5作为LCD1602的RS端P3.4作为LCD1602的RW端P3.3作为LCD1602的EN端P3.7 作为蜂鸣器的输出端P1.0作为DS1302的CLK端P1.1作为D

25、S1302的IO端P1.2作为DS1302的RST端P1.3P1.5作为按键选择端P2.0键盘电路的输入端3.1.3 单片机晶振模块设计单片机晶振的作用是为系统提供基本的时钟信号。没有晶振,就没有时钟周期,没有时钟周期,就无法执行程序代码,单片机就无法工作。单片机工作时,是一条一条地从RoM中取指令,然后一步一步地执行。单片机访问一次存储器的时间,称之为一个机器周期,这是一个时间基准。个机器周期包括12个时钟周期。因为我们选择了12MHZ晶振,它的时钟周期是112us,它的一个机器周期是12×(112)us,也就是1us。电路设计如下图3-2所示:图3-2单片机晶振电路3.1.4 单

26、片机复位电路设计 单片机在启动时都需要复位,以使CPU及系统各部件处于确定的初始状态,并从初态开始工作。89系列单片机的复位信号是从RST引脚输入到芯片内的施密特触发器中的。当系统处于正常工作状态时,且振荡器稳定后,如果RST引脚上有一个高电平并维持2个机器周期(24个振荡周期)以上,则CPU就可以响应并将系统复位。单片机系统的复位方式有:手动按钮复位和上电复位。我们采用的是上电复位,通电后回到初始化。电路如下图3-3所示:图3-3单片机复位电路3.2时钟电路DS13023.2.1DS1302简介DS1302是由美国DALLAS公司推出的一种低功耗、高性能的实时时钟芯片,实时时钟可提供年、月、

27、日、时、分和秒的调整,一个月的30天与31天可以自动调整,且具有闰年的自动补偿功能。此款时钟芯片附加31字节的静态RAM,用SPI三线接口与CPU进行同步通信,并可采用突发方式一次传送多个字节的时钟信号和RAM数据。工作电压2.55.5V。采用主电源和备用电源的双电源供电,并且可设置备用电源充电方式,提供了对后背电源进行涓细电流充电的能力。DS1302用于数据记录,特别是对某些具有特殊意义的数据点的记录上,能实现数据与出现该数据的时间同时记录,因此广范应用于多个领域。时钟电路如下图3-4所示:图3-4 DS1302时钟电路3.2.2DS1302引脚介绍Vcc1:主电源;Vcc2:备份电源。当V

28、cc2>Vcc1+0.2V时,由Vcc2向DS1302供电,当Vcc2< Vcc1时,由Vcc1向DS1302供电。SCLK:串行时钟,输入,控制数据的输入与输出;I/O:三线接口时的双向数据线;RST为复位引脚,在读、写数据期间,必须为高,X1 X2为32867Hz晶振管脚,为芯片提供时钟脉冲。引脚图如下3-5所示:图3-5 DS1302引脚图3.2.3DS1302工作原理DS1302在每次进行读、写程序前都必须初始化,先把SCLK端置“0”,接着把RST端置“1”,最后才给予SCLK脉冲。DS1302的控制字,此控制字的位7必须置1,若为0则不能把对DS1302进行读写数据。对

29、于位6,若对程序进行读/写时RAM=1,对时间进行读/写时,CK=0。位1至位5指操作单元的地址。位0是读/写操作位,进行读操作时,该位为1;该位为0则表示进行的是写操作。控制字节总是从最低位开始输入/输出的。DS1302的日历、时间寄存器内容:“CH”是时钟暂停标志位,当该位为1时,时钟振荡器停止,DS1302处于低功耗状态;当该位为0时,时钟开始运行。“WP”是写保护位,在任何的对时钟和RAM的写操作之前,“WP”必须为0。当“WP”为1时,写保护位防止对任一寄存器的写操作。 DS1302在每次进行读、写程序前都必须初始化,先把SCLK端置 “0”,接着把RST端置“1”,最后才给予SCL

30、K脉冲;读/写时序如图5所示。表2为DS1302的控制字,此控制字的位7必须置1,若为0则不能把对DS1302进行读写数据。对于位6,若对程序进行读/写时RAM=1,对时间进行读/写时,CK=0。位1至位5指操作单元的地址。位0是读/写操作位,进行读操作时,该位为1;该位为0则表示进行的是写操作。控制字节总是从最低位开始输入/输出的。表6为DS1302的日历、时间寄存器内容:“CH”是时钟暂停标志位,当该位为1时,时钟振荡器停止,DS1302处于低功耗状态;当该位为0时,时钟开始运行。“WP”是写保护位,在任何的对时钟和RAM的写操作之前,WP必须为0。当“WP”为1时,写保护位防止对任一寄存

31、器的写操作。3.2.4DS1302的使用方法介绍(1) DS1302的控制字节DS1302的控制字如表所示。控制字节最高有效位(位7)必须是逻辑1,如果它为0,则不能把数据写入DS1302中,位6如果0,则表示存取日历时钟数据,为1表示存取RAM数据;位5至位1指示操作单元的地址;最低有效位(位0)如为0表示要进行写操作,为1表示进行读操作,控制字节总是从最低位开始传输表3-1 DS1302控制字1RAMA4A3A2A1A0RDCKWR(2) 数据输入输出(I/O)在控制指令字输入后的下一个SCLK时钟的上升沿时,数据被写入DS1302,数据输入从低位即位0开始。同样,在紧跟8位的控制指令字后

32、的下一个SCLK脉冲的下降沿读出DS1302的数据,读出数据时从低位0位到高位7。其读写时序如下图3-6示图3-6 DS1302读写时序(3)DS1302寄存器DS1302中与时间、日期有关的寄存器共有12个,其中7个存放数据的格式为BCD码格式,其读写地址如下表所示表3-2 DS1302寄存器说明表读寄存器写寄存器Bit7Bit6Bit5Bit4Bit3Bit2Bit1Bit0范围81H80HCH10秒秒00-5983H82H10分分00-5985H84H12010时时0-2324AM/PM1-1287H86H10日日1-3189H88H10月月1-128BH8AH00000周1-78DH8

33、CH10年年00-998FH8EHWP0000000第一行秒寄存器,CH为时钟暂停标志位,该位为1时时钟停止,该位为0时时钟运行。第二行分寄存器,bit0bit6表示分钟数,因采用BCD编码,所以低四位最大能表示的数字为9,计数满向高三位进1。第三行时寄存器,12/24用来定义DS1302小时的运行模式,12小时模式下bit5为1表示PM下午,bit5为0表示AM上午。第八行控制寄存器,bit7是写保护位WP,当WP为1时,写保护位可防止对任一寄存器的写操作,在任何的对时钟和RAM的写操作之前,WP位必须为0 此外,DS1302 还有年份寄存器、控制寄存器、充电寄存器、时钟突发寄存器及与RAM

34、相关的寄存器等。时钟突发寄存器可一次性顺序读写除充电寄存器外的所有寄存器内容。 DS1302与RAM相关的寄存器分为两类:一类是单个RAM单元,共31个,每个单元组态为一个8位的字节,其命令控制字为C0HFDH,其中奇数为读操作,偶数为写操作;另一类为突发方式下的RAM寄存器,此方式下可一次性读写所有的RAM的31个字节,命令控制字为FEH(写)、FFH(读)。3.3按键控制模块采用独立式按键,因为独立式按键的电路配置灵活,软件简单,每个按键只占用一根I/O接口线,并且用的数量不多,所以采用独立式按键。大概要采用8个按键分别命名为K0到K7,K1键是每种模式的退出,然后都是正常显示时钟时间,K

35、3进入校准模式,此时K4表示秒、分、时的切换。K0是进入秒表模式,K3是启动和记录,K2是暂停,K4是清零,K5、K6、K7是三组数据的记录。在正常显示时间下,K2进入定时模式,K3显示分,K4显示时,K5、K6是时间的上下波动。电路图如下3-7所示:图3-7 按键电路3.4显示模块3.4.1LCD1602简介1602液晶也叫1602字符型液晶,它是一种专门用来显示字母、数字、符号等的点阵型液晶模块。它由若干个5X7或者5X11等点阵字符位组成,每个点阵字符位都可以显示一个字符,每位之间有一个点距的间隔,每行之间也有间隔,起到了字符间距和行间距的作用,正因为如此所以它不能很好地显示图形(用自定

36、义CGRAM,显示效果也不好)。1602LCD是指显示的内容为16X2,即可以显示两行,每行16个字符液晶模块(显示字符和数字)。电路如下3-8所示:图3-8 液晶显示电路3.4.1 1602LCD的引脚功能 表3-3 LCD1602引脚接口说明表引脚符号引脚说明引脚符号引脚说明1VSS电源地9D2数据2VDD电源正极10D3数据3VL液晶显示偏压11D4数据4RS数据/命令选择12D5数据5R/W读/写选择13D6数据6E使能信号14D7数据7D0数据15BLA背光源正极8D1数据16BLK背光源负极第1脚:VSS为地电源。第2脚:VDD接5V正电源。第3脚:VL为液晶显示器对比度调整端,接

37、正电源时对比度最弱,接地时对比度最高,对比度过高时会产生“鬼影”,使用时可以通过一个10K的电位器调整对比度。第4脚:RS为寄存器选择,高电平时选择数据寄存器、低电平时选择指令寄器。第5脚:R/W为读写信号线,高电平时进行读操作,低电平时进行写操作。当RS和R/W共同为低电平时可以写入指令或者显示地址,当RS为低电平R/W高电平时可以读忙信号,当RS为高电平R/W为低电平时可以写入数据。第6脚:E端为使能端,当E端由高电平跳变成低电平时,液晶模块执行命令。第714脚:D0D7为8位双向数据线。第15脚:背光源正极。第16脚:背光源负极。3.4.2 1602LCD的字符液晶字库1602液晶模块内

38、部的字符发生存储器(CGROM)已经存储了160个不同的点阵字符图形,如下表所示,这些字符有:阿拉伯数字、英文字母的大小写、常用的符号、和日文假名等,每一个字符都有一个固定的代码,比如大写的英文字母“A”的代码是01000001B(41H),显示时模块把地址41H中的点阵字符图形显示出来,我们就能看到字母“A” 。 表3-4 LCD1602显示代码表 高位低位0000001000110100010101100111101010111100110111101111XXXX00000Pp-PXXXX0001!1AQaqäqXXXX0010“2BRbrXXXX0011#3CScsXXXX0

39、100$4DTdtXXXX0101%5EUeuoXXXX0110&6FVfvXXXX01117GWgwXXXX1000(8HXhxfXXXXX1001)9IYiy-1yXXXX1010*:JZjz千XXXX1011+;Kk万XXXX1100,<L¥l|XXXX1101-=Mm÷XXXX1110。>NnñXXXX1111/?O-oö3.4.3LCD1602的使用方法 LCD1602基本操作时序如下表所示表3-5时序操作说明表操作输入输出读状态RSL,RWH,EHD0D7状态字写指令RSL,RWL,D0D7指令码,E高脉冲无读数据RSH,

40、RWH,EHD0D7数据写数据RSH,RWL,D0D7数据,E高脉冲无3.5 蜂鸣报警电路模块设计当S8550三极管的基极为低电平时,三极管则导通,然后蜂鸣器的上端变为高电平则可以进行整点报时。电路如下图3-9所示:图3-9 蜂鸣器电路第4章 系统软件设计在硬件设计的基础上,根据硬件设计的各个模块,完成软件设计。利用独立式按键控制定时、校时、秒表功能设计,由时钟电路提供计时方式,同时通过液晶显示器显示时间。4.1 总程序设计思路及总流程图总流程图如下4-1所示:图4-1 总程序流程图第5章 系统调试与数据分析5.1 硬件电路的制作和调试5.1.1硬件电路的焊接通过合理的布局,用了一天的时间完成

41、了电路的焊接。5.1.2硬件电路的调试电路的焊接并不是一次成功的,遇到的问题如下:(1)电路完成后,通过USB接通到电脑上发现不能够正常供电。通过模拟万用表查找电路发现单片机未供电,连通之后依然没有通电,后发现是电脑USB接口不够灵敏的问题换掉之后便正常通电了。(2)通电后LCD1602一直是蓝屏,调试软件依然不能够使液晶正常显示,多次失败后,借用了其他同学的STC89C52芯片,程序烧进去后可显示字符。(3)虽然可以显示字符但是发现时间经过校准之后无法保存,退出之后,时间依然是初始化时间。后经过查找资料,发现是校准程序那部分的问题,即时间校准虽写到了时钟芯片上但未正确读取。(4)在正常显示模

42、式下,进入秒表后,时间快了2倍。后跟沈美晶同学研究讨论加了一个秒表中断,改变精度通过多次尝试最后是时间较为精准。5.2 软硬件功能分析本次综合实训设计的多功能电子时钟可以显示年、月、日、时、分、秒,有整点报时,能够快速校准全新的时间,有秒表计时功能并且可以记录3组数据,功能介绍如下:(1) 正常显示功能:将程序下载到单片机里后就会进入正常显示,ZCXS就是表示正常显示,模块实物图如下5-1所示:图5-1 正常显示(2) 校时功能: 当按下校时按键后就会显示调节界面JaoZhun就是表示调节,进入后就可以调节年,在按一下校时按键就可以对月进行校时,以此类推,以此可以调节日、时、分、秒,实物图如下

43、图5-2所示:图5-2 时钟校准(3) 秒表计时功能: 当按下进入校准模式按键后再按下进入按键就可以进入秒表计时界面,当按下记录按键后则可以对时间进行记录,依次按三次可以记录三组数据实物图如下图5-3所示:图5-3 秒表计时(4) 清零功能:进入秒表模式后,按下清零键(也是进入秒表的按键)后就会把当前计时的时间变为零并且把三组记录时间也清零,如下图5-4所示:图5-4 秒表清零5.3 测试结果分析(1) 当硬件通电后,则LCD1602显示器则会根据DS1302的初始化时间进行显示并开始计时。(2) 按下校时按键后就会进入校时模式,开始进入的时候默认的是在年的位置,可以继续按校时按键依次可以调节

44、月、日、星期、时、分、秒。选定区域后可以通过上调按键和下调按键进行校时,调好后可以按退出键,进入正常显示模式,并且显示之前自己校时的时间。(3) 按下校时按键再接着按下秒表计时按键后则会进入秒表计时模式,按下校时的上调按键就可以对时间进行记录,可以按三下进行三次记录,再按下显示按键就可以把三组计时数据进行显示。第6章 总结与展望本设计主要是对多功能数字时钟的秒、分、时、天、月、年、周,整点报时,定时闹钟等进行软件仿真,没有做出具体的实物,因此本设计要想运用于实际,还有好多方面需要进一步加强与改进,比如,在实际应用中,由于存在按键,故定会存在机械震动,所以按键消抖模块是必不可少的。 在

45、实际生活中,数字钟还需要扩展功能,如,自动报时功能,记忆存储功能等。 当今,数字钟的运用可谓多种多样,生活中的计时功能,工业上运用在自动控制系统中,航空航天领域多种仪器仪表也用到了数字钟,还有医疗上,交通上等等。相信在未来,数字钟的运用还会更加的广泛,更好的方便人们的生活。参考文献1 谢维成, 杨加国. 单片机原理与应用及C51程序设计(第2版)M. 北京: 清华大学出版社, 2009: 183-186.2 肖金球. 单片机原理与接口技术M. 北京: 清华大学出版社, 2003.3 罗印升. 单片机微机原理与应用. 北京: 机械工业出版社M, 2012: 111-127.4 宋晓梅.

46、 现代电子系统设计教程M. 北京: 北京大学出版社, 2011.5 李广飞. 单片机课程设计实例指导M. 北京: 北京航空航天大学出版社,2005:77-95.6 宋晓梅. 现代电子系统设计教程M. 北京:北京大学出版社,2011.7 谭会生,张昌凡. EDA技术及应用M. 西安:西安电子科技大学出版社,2002. 8 谢幻如.多媒体教学软件设计M.北京:电子工业出版社,1999.9 王开军,姜宇柏. 面向CPLD/FPGA的VHDL设计M. 北京:机械工业出版社,2006.10 吕思忠. 数子

47、电路实验与课程设计M. 哈尔滨工业大学出版社,2001.11 朱巧明.用VB来开发辅助教学软件J.苏州大学学报(自然科学版),1998. 12 张强,刘可薇.基于FPGA的多功能数字钟的设计与实现J. 仪器仪表用户,2008.13万敏. 北京理工大学ASIC 研究所. VHDL 语言100 例详解M. 北京:清华大学出版社,1999. 14 刘睿劼. 基于FPGA的多功能数字钟设计J. 电脑与电,2009,5. 致谢四周的时间说长不长,

48、说短不短,这次综合实训是在薛波老师和俞洋老师的耐心指导下完成的。在课题的研究过程中,尤其是薛波老师对我谆谆教诲,对我的设计能够定时的悉心指导。在我遇到困难时,能够从大方向上指导我。薛老师在教学上执着、严谨、宽厚待人、亦师亦友,给我很大的鼓舞,使我在今后的工作和生活中受益匪浅。在此谨向尊敬的导师致以最诚挚的谢意。经过综合实训的整个过程,我感觉到扎实的基础知识和灵活使用必要工具的重要性,深刻体会到网络资源的好处,在遇到困难时都能在网络上得到很好的答案,论坛上也有很多热心的朋友,他们很乐意给予我帮助,在此也一并向这些无名的雷锋表示感谢。在进行综合实训的过程中,对我的同学和朋友,我感激不尽,仅以此文献

49、给他们,特别是我的同学:陶慧,沈美晶,王思等,他们陪我一起走过艰难的历程,给予我关心与帮助。回顾这过去的四周时间,感谢学校给我这么好的学习环境。我会用我的努力回报学校,回报社会,创造出最大的自我价值附录1 电路原理图多功能电子时钟原理图:附录2 程序#include<reg52.h>#include<intrins.h>#define uint unsigned int#define uchar unsigned char#define nop _nop_void write_command(uchar tempdata); void chuan();/*引脚定义*/s

50、bit BusyFlag=P07;sbit ALARM_BEEP = P24; /报警喇叭/LCD控制接口sbit E=P25; sbit RW=P26;sbit RS=P27;/DS1302数据接口sbit rst=P34;sbit sclk=P32;sbit io=P33;/KEY输入接口sbit KEY_OK=P10;sbit KEY_STOP=P11;sbit KEY_UP=P12;sbit KEY_SET=P13;sbit KEY_DOWN=P14;sbit bit7=ACC7; /单片机内部移位寄存器ACC声明;sbit bit0=ACC0;/显示界面 LCD1602uchar LCD_4,LCD_3,LCD_2,LCD_1,LCD_0;uchar code LCDData ="0123456789" uchar code dot_tab ="0112334456678899" uchar f

温馨提示

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

评论

0/150

提交评论