多功能电子时钟设计Word文档格式.docx
- 文档编号:22600893
- 上传时间:2023-02-04
- 格式:DOCX
- 页数:57
- 大小:391.95KB
多功能电子时钟设计Word文档格式.docx
《多功能电子时钟设计Word文档格式.docx》由会员分享,可在线阅读,更多相关《多功能电子时钟设计Word文档格式.docx(57页珍藏版)》请在冰豆网上搜索。
然而遇到重大事情的时候,一旦忘记时间,就会给自己或他人造成很大麻烦。
平时我们要求上班准时,约会或召开会议必然要提及时间;
火车要准点到达,航班要准点起飞;
工业生产中,很多环节都需要用时间来确定工序替换时刻。
所以说能随时准确的知道时间并利用时间,是我们生活和工作中必不可少的[1]。
想知道时间,手表当然是一个很好的选择,但是,在忙碌当中,我们还需要一个“助理”及时的给我们提醒时间。
所以,计时器最好能够拥有一个定时系统,随时提醒容易忘记时间的人。
最早能够定时、报时的时钟属于机械式钟表,但这种时钟受到机械结构、动力和体积的限制,在功能、性能以及造价上都没办法与电子时钟相比。
电子钟是采用电子电路实现对时、分、秒进行数字显示的计时装置,广泛应用于个人家庭,车站,码头办公室等公共场所,成为人们日常生活中不可少的必需品。
由于数字集成电路的发展和石英晶体振荡器的广泛应用,使得数字钟的精度,远远超过老式钟表,钟表的数字化给人们生产生活带来了极大的方便,而且大扩展了钟表原先的报时功能。
诸如定时自动报警、0按时自动打铃、定时广播、自动起闭路灯、定时开关烘箱、通断动力设备、甚至各种定时电气的自动启用等,所有这些,都是以钟表数字化为基础的。
因此,研究数字钟及扩大其应用,有着非常现实的意义。
一.2电子时钟的功能
电子时钟主要是利用电子技术将时钟电子化、数字化,拥有时间精确、体积小、界面友好、可扩展性能强等特点,被广泛应用于生活和工作当中。
当今市场上的电子时钟品类繁多,外形小巧别致。
也有体型较大的,诸如公共场所的大型电子报时器等。
电子时钟首先是数字化了的时间显示或报时器,在此基础上,人们可以根据不同场合的要求,在时钟上加置其他功能,比如定时闹铃,万年历,环境温度、湿度检测,环境空气质量检测,USB扩展口功能等。
本设计电子时钟主要功能为:
1.具有时间显示和手动校对功能,24小时制;
2.具有年、月、日显示和手动校对功能;
3.具有闹铃功能;
4.具有贪睡功能;
5.掉电后无需重新设置时间和日期;
6.采用交直流供电电源。
交流供电为主,直流电源为后备辅助电源,并能自动切换。
第二章电子时钟设计方案分析
电子闹钟既可以通过纯硬件实现,也可以通过软硬件结合实现,根据电子时钟里的核心部件——秒信号的产生原理,通常有以下两种形式:
二.1FPGA设计方案
现场可编程门阵列(FieldProgrammableGateArray,FPGA),是20世纪70年代发展起来的一种可编程逻辑器件,是目前数字系统设计的主要硬件基础。
FPGA在结构上由逻辑功能块排列为阵列,并由可编程的部连线连接这些功能块,来实现一定的逻辑功能。
可编程逻辑器件的设计过程是利用EDA开发软件和编程工具对器件进行开发的过程。
由于EDA技术拥有系统的模拟和仿真功能,可读性、可重复性、可测性非常好,所以利用EDA开发FPGA是目前比较流行的方式。
当然,有时根据需要,也会应用MAX+plus开发集成环境进行设计。
正因为FPGA在设计过程中方便、快捷,而且FPGA技术功能强大,能够应用其制作诸如基代码发生器、数字频率计、电子琴、电梯控制器、自动售货机控制系统、多功能波形发生器、步进电机定位控制系统、电子时钟等。
应用FPGA能够将时钟设计为为四种类型:
全局时钟、门控时钟、多级逻辑时钟和波动式时钟。
多时钟系统能够包括上述四种时钟类型的任意组合[2][3][4]。
二.2单片机设计方案
单片机是微型机的一个主要分支,它在结构上的最大特点使把CPU、存储器、定时器和多种输入/输出接口电路集成在一块超大规模集成电路芯片上。
就其组成和功能而言,一块单片机芯片就是一台计算机。
单片机具有如下特点:
有优异的性能价格比;
1集成度高、体积小、有很高的可靠性;
2控制功能强;
3低功耗、低电压,便于生产便携式产品;
4外部总线增加了I2C、SPI等串行总线方式,进一步缩小了体积,简化了结构;
5单片机的系统扩展、系统配置较典型、规,容易构成各种规模的应用系统。
所以单片机的应用非常广泛,在智能仪表、机电一体化、实时控制、分布式多机系统以及人们的生活中均有用武之地。
单片机应用的重要意义还在于,它从根本上改变了传统的控制系统设计思路和设计方法。
从前必须由模拟电路或数字电路实现的大部分功能,现在已能用单片机通过软件方法来实现了。
这种用软件代替硬件的控制技术,是对生产控制技术的一次革命。
利用单片机的智能性,可方便地实现具有智能的电子钟设计。
单片机均具有时钟振荡系统,利用系统时钟借助微处理器的定时器/计数器可实现电子钟功能。
然而系统时钟误差较大,电子钟的积累误差也可能较大,所以可以通过误差修正软件加以修正,或者在设计中加入高精度时钟日历芯片,以精确时间。
另外很多功能不同的单片机是兼容的,这就更便于实现产品的多功能性。
第三章基于单片机的电子时钟硬件设计
在比较了第二章的三种实现方案之后,考虑单片机货源充足、价格低廉,可软硬件结合使用,能够较方便的实现系统的多功能性,故采用单片机作为本设计的硬件基础。
三.1主要IC芯片选择
三.1.1微处理器选择
目前在单片机系统中,应用比较广泛的微处理器芯片主要为8XC5X系列单片机。
该系列单片机均采用标准MCS-51核,硬件资源相互兼容,品类齐全,功能完善,性能稳定,体积小,价格低廉,货源充足,调试和编程方便,所以应用极为广泛。
例如比较常用的AT89C2051单片机,带有2KBFlash可编程、可擦除只读存储器(E2PROM)的低压、高性能8位CMOS微型计算机。
拥有15条可编程I/O引脚,2个16位定时器/计数器,6个中断源,可编程串行UART通道,并能直接驱动LED输出。
仅仅是为了完成时钟设计或者是环境温度采集设计,应用AT89C2051单片机完全可以实现。
但是将两种功能结合在一片单片机上,就需要更多的I/O引脚,故本设计采用具有32根I/O引脚的AT89C51单片机。
AT89C51单片机是一款低功耗,低电压,高性能CMOS8位单片机,片含4KB(可经受1000次擦写周期)的FLASH可编程可反复擦写的只读程序存储器(EPROM),器件采用CMOS工艺和ATMEI公司的高密度、非易失性存储器(NURAM)技术制造,其输出引脚和指令系统都与MCS-51兼容。
片的FLASH存储器允许在系统可改编程序或用常规的非易失性存储器编程器来编程。
因此,AT89C51是一种功能强,灵活性高且价格合理的单片机,可方便的应用在各个控制领域。
AT89C51具有以下主要性能:
1.4KB可改编程序Flash存储器;
2.全静态工作:
0——24Hz;
3.128×
8字节部RAM;
4.32个外部双向输入/输出(I/O)口;
5.6个中断优先级;
2个16位可编程定时计数器;
6.可编程串行通道;
7.片时钟振荡器。
此外,AT89C51是用静态逻辑来设计的,其工作频率可下降到0Hz,并提供两种可用软件来选择的省电方式——空闲方式(IdleMode)和掉电方式(PowerDownMode)。
在空闲方式中,CPU停止工作,而RAM、定时器/计数器、串行口和中断系统都继续工作。
在掉电方式中,片振荡器停止工作,由于时钟被“冻结”,使一切功能都暂停,只保存片RAM中的容,直到下一次硬件复位为止[8]。
图3.1AT89C51芯片PDIP封装引脚图
AT89C51为适应不同的产品需求,采用PDIP、TQFP、PLCC三种封装形式,本系统采用双列直插PDIP封装形式,如图3.1。
时钟日历芯片选择
3.1.2.1常用时钟日历芯片比较
在电子时钟设计中,常用的实时时钟芯片有DS12887、DS1216、DS1643、DS1302。
每种芯片的主要时钟功能基本相同,只是在引脚数量、备用电池的安装方式、计时精度和扩展功能等方面略有不同。
DS12887与DS1216芯片都有嵌式锂电池作为备用电池;
X1203引脚少,没有嵌入式锂电池,跟DS1302芯片功能相似,只是相比较之下,X1203与AT89S51搭配使用时占用I/O口较多。
DS1643为带有全功能实时时钟的8K×
8非易失性SRAM,集成了非易失性SRAM、实时时钟、晶振、电源掉电控制电路和锂电池电源,BCD码表示的年、月、日、星期、时、分、秒,带闰年补偿。
同样,DS1643拥有28只管脚,硬件连接起来占用微处理器I/O口较多,不方便系统功能拓展和维护。
故而从性价比和货源上考虑,本设计采用实时时钟日历芯片DS1302。
3.1.2.2DS1302简介
DS1302是美国DALLAS公司推出的一种高性能、低功耗的实时时钟日历芯片,附加31字节静态RAM,采用SPI三线接口与CPU进行同步通信,并可采用突发方式一次传送多个字节的时钟信号和RAM数据。
实时时钟可提供秒、分、时、日、星期、月和年,一个月小于31天时可以自动调整,且具有闰年补偿功能。
工作电压宽达2.5~5.5V。
采用双电源供电(主电源和备用电源),可设置备用电源充电方式,提供了对后备电源进行涓细电流充电的能力。
有主电源和备份电源双引脚,而且备份电源可由大容量电容(>1F)来替代。
需要强调的是,DS1302需要使用32.768KHz的晶振。
3.1.2.3DS1302引脚说明
DS1302引脚图参照图3.2。
图3.2DS1302芯片引脚图
其的引脚功能参照表3.1。
表3.1DS1302引脚功能说明
引脚号
名称
功能
1
VCC1
备份电源输入
2
X1
32.768KHz晶振输入
3
X2
32.768KHz晶振输出
4
GND
地
5
RST
控制移位寄存器/复位
6
I/O
数据输入/输出
7
SCLK
串行时钟
8
VCC2
主电源输入
3.1.2.4DS1302的控制字和读写时序说明
在编程过程中要注意DS1302的读写时序。
DS1302是SPI总线驱动方式。
它不仅要向寄存器写入控制字,还需要读取相应寄存器的数据。
要想与DS1302通信,首先要先了解DS1302的控制字。
DS1302的控制字如表3.2。
表3.2DS1302控制字(即地址及命令字节)
BIT7
BIT6
BIT5
BIT4
BIT3
BIT2
BIT1
BIT0
RAM
A4
A3
A2
A1
A0
RD
控制字的作用是设定DS1302的工作方式、传送字节数等。
每次数据的传输都是由控制字开始。
控制字各位的含义和作用如下:
1.BIT7:
控制字的最高有效位,必须是逻辑1,如果它为0,则不能把数据写入到DS1302中。
2.BIT6:
如果为0,则表示存取日历时钟数据,为1表示存取RAM数据;
3.BIT5至BIT1(A4~A0):
用A4~A0表示,定义片寄存器和RAM的地址。
定义如下:
当BIT6位=0时,定义时钟和其他寄存器的地址。
A4~A0=0~6,顺序为秒、分、时、日、月、星期、年的寄存器。
当A4~A0=7,为芯片写保护寄存器地址。
当A4~A0=8,为慢速充电参数选择寄存器。
当A4~A0=31,为时钟多字节方式选择寄存器。
当BIT6=1时,定义RAM的地址,A4~A0=0~30,对应各子地址的RAM,地址31对应的是RAM多字节方式选择寄存器。
4.BIT0(最低有效位):
如为0,表示要进行写操作,为1表示进行读操作。
控制字总是从最低位开始输出。
在控制字指令输入后的下一个SCLK时钟的上升沿时,数据被写入DS1302,数据输入从最低位(0位)开始。
同样,在紧跟8位的控制字指令后的下一个SCLK脉冲的下降沿,读出DS1302的数据,读出的数据也是从最低位到最高位。
图3.3DS1302数据读写时序
DS1302的数据读写方式有两种,一种是单字节操作方式,一种是多字节操作方式。
每次仅写入或读出一个字节数据称为单字节操作,每次对时钟/日历的8字节或31字节RAM进行全体写入或读出的操作,称其为多字节操作方式。
当以多字节方式写时钟寄存器时,必须按数据传送的次序依次写入8个寄存器。
但是,当以多字节方式写RAM时,不必写所有31字节。
不管是否写了全部31字节,所写的每一个字节都将传送至RAM。
为了启动数据的传输,CE引脚信号应由低变高,当把CE驱动至逻辑1的状态时,SCLK必须为逻辑0,数据在SCLK的上升沿串行输入。
无论是读周期还是写周期,也无论送方式是单字节传送还是多字节传送,都要通过控制字指定40字节中的哪个将被访问。
在开始8个时钟周期把命令字(具有地址和控制信息的8位数据)装入移位寄存器之后,另外的时钟在读操作时输出数据,在写操作时输入数据,所有的数据在时钟的下降沿变化。
所有写入或读出操作都是先向芯片发送一个命令字节。
对于单字节操作,包括命令字节在,每次为2个字节,需要16个时钟;
对于时钟/日历多字节模式操作,每次为7个字节,需要72个时钟;
而对于RAM多字节模式操作,每次则为32字节,需要多达256个时钟。
这里仅给出单字节读写时序,如图3.3。
多字节操作方式与其类似,只是后面跟的字节数不止一个。
3.2.1.5DS1302的片寄存器
表3.3DS1302有关日历、时间的寄存器
读寄
存器
写寄
BIT3
BIT2
BIT1
BIT0
围
81H
80H
CH
10秒
秒
00-59
83H
82H
10分
分
85H
84H
10
时
1-12
0-23
AM/PM
87H
86H
10日
日
1-31
89H
88H
10月
月
8BH
8AH
周日
1-7
8DH
8CH
10年
年
00-99
8FH
8EH
WP
—
通过控制字对DS1302片寄存器进行寻址之后,即可就所选中寄存器的各位进行操作。
片各寄存器及各位的功能定义如表3.3。
DS1302有关日历、时间的寄存器共有10个,时钟/日历包含在其中的7个写/读寄存器,这7个寄存器分别是秒、分、小时、日、月、星期和年。
小时寄存器(85H、84H)的位7用于定义DS1302是运行于12小时模式还是24小时模式。
当为12小时制式时,位5为“0”表示AM;
为“1”表示PM。
在24小时制式下,位5是第二个10小时位(20~23时)。
秒寄存器(81H、80H)的位7定义为时钟暂停标志(CH)。
当该位置为1时,时钟振荡器停止,DS1302处于低功耗状态;
当该位置为0时,时钟开始运行。
一般在设置时钟时,可以停止其工作,设定完之后,再启动其工作。
控制寄存器(8FH、8EH)的位7是写保护位(WP),其它7位均置为0。
在任何片时钟/日历寄存器和RAM,在写操作之前,WP位必须为0,否则将不可写入。
当WP位为1时,写保护位防止对任一寄存器的写操作。
因此,通过置写保护位,可以提高数据的安全性。
另外,还有慢速充电控制寄存器和RAM寄存器。
如表3.4。
表3.4充电控制寄存器和RAM寄存器各位定义
充电控制寄存器
TCS
DS
RS
RAM寄存器
慢速充电寄存器控制着DS1302的慢速充电特性。
寄存器的BIT4~BIT7(TCS)决定是否具备充电性能:
仅在编码为1010的条件下才具备充电性能,其他编码组合不允许充电。
BIT2和BIT3选择在VCC2和VCC1之间是一个还是两个二极管串入其中。
如果编码DS是01,选择一个二极管;
如果编码是10,选择两个二极管;
其他编码将不允许充电。
该寄存器的BIT0和BIT1用于选择与二极管相串联的电阻值。
其中编码RS=01为2KΩ,RS=10为4KΩ,RS=11为8KΩ,而RS=00将不允许进行充电。
因此,根据慢速充电寄存器的不同编码可得到不同的充电电流。
其具体计算如公式3.1:
I充电=(V0-VD-VE)/R(3.1)
式中:
V0——所接入的5.0V工作电压;
VD——二极管压降,一个按0.7V计算;
R——慢速充电控制寄存器0和1位编码决定的电阻值;
VE——VCC1脚所接入的电池电压。
RAM寄存器寻址空间一次排列的31字节静态RAM可为用户使用,备用电源位RAM提供了掉电保护功能。
寄存器和RAM的操作通过命令字节的BIT6加以区别。
当BIT6为“0”时对RAM区进行寻址;
否则将对时钟/日历寄存器寻址。
其操作方法与前述相同[9][10][11]。
具体驱动程序参见附录A。
三.2电子时钟硬件电路设计
电子闹钟至少要包括秒信号发生器、时间显示电路、按键电路、供电电源、闹铃指示电路等几部分。
另外,本设计要求该电子钟能够采集环境温度,所以还需要温度采集芯片。
硬件电路框图参照图3.7。
该系统使用AT89C51单片机作为核心,通过读取时钟日历芯片DS1302和温度传感器DS18B20的数据,完成此电子时钟的主要功能——时钟/日历和环境温度采集。
使用比较通用的8段共阴数码管,做7位显示,分别显示时/年,分/月,秒/日,以及环境温度值。
图3.7多功能电子时钟硬件系统框图
键盘是为了完成时钟/日历的校对和日历/温度的显示功能。
由于此电子时钟要求具有闹铃功能,所以设计有闹铃电路,进行声音响铃。
整个电路使用了两种电源,+5V电源将为整个电路供电。
而+3V电源仅作为DS1302的备用电源。
当+5V电源被切断后,DS1302启用+3V电源,可以保持DS1302继续工作。
当+5V电源恢复供电,LED依旧显示当前时间,而不会因为断电使系统复位到初始化时间,避免了重新校时的麻烦。
具体电路图请参见附录C。
三.2.1时钟电路设计
系统时钟应用了实时时钟日历芯片DS1302,其连接如图3.8。
该硬件电路设计简单,抗干扰能力强。
如图,AT89C51单片机P1.7直接接DS1302的RST端,上电后,AT89C51的P1.7脚自动输出高电平。
P1.5作为串行时钟接口,P1.6作为时钟数据的I/O。
DS1302采用双电源供电,平时由+5V电源供电,当+5V掉电之后,由图中BT1(+3V备用电池)供电。
特别需要注意X1和X2两端连接的晶振Y1,该晶振频率为32.768KHz。
图3.8系统时钟电路
三.2.2显示电路
就时钟而言,通常可采用LCD显示或LED显示。
对于一般的段式LCD,需要专门的驱动电路,而且LCD显示的可视性较差;
对于具有驱动电路和微处理器接口的液晶显示模块(字符或点阵),一般采用并行接口,对微处理器
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 多功能 电子 时钟 设计