基于DS1302和LCD1602的数字电子钟设计.docx
- 文档编号:25462465
- 上传时间:2023-06-09
- 格式:DOCX
- 页数:12
- 大小:120.45KB
基于DS1302和LCD1602的数字电子钟设计.docx
《基于DS1302和LCD1602的数字电子钟设计.docx》由会员分享,可在线阅读,更多相关《基于DS1302和LCD1602的数字电子钟设计.docx(12页珍藏版)》请在冰豆网上搜索。
基于DS1302和LCD1602的数字电子钟设计
摘要………………………………………………………………………1
Abstract…………………………………………………………………2
第一章引言…………………………………………………………3
1.DS1302时钟芯片简介………………………………………………3
2.单片机介绍…………………………………………………………4
第二章系统硬件设计………………………………………………8
第三章系统软件设计………………………………………………9
3.1DS1302读写程序…………………………………………………9
3.2LCD1602读写程序………………………………………………10
第四章注意事项……………………………………………………12
第五章结语…………………………………………………………13
参考文献………………………………………………………………14
致谢……………………………………………………………………15
基于DS1302与LCD1602的数字电子钟设计
ThedesignofdigitalelectricclockbasedontheDS1302andLCD1602
摘要:
本文主要介绍基于AT89S52单片机微处理芯片与DS1302时钟芯片和LCD1602液晶显示模块组成的数字式电子时钟的电路软硬件设计。
可以精确调整年、月、日以及小时、分钟和秒的信息。
该电子时钟具有走时准确、系统掉电时间数据不丢失、功耗低等特点。
并可用于其他对时间有要求的控制系统。
关键词:
单片机;DS1302;LCD1602;数字时钟
Abstract
ThispapermainlyintroducesthehardwareandsoftwaredesignofdigitalelectronicclockwhichismadeupoftheAT89S52MCU,DS1302clockchipandLCD1602module.Itcanaccuratelyadjusttheinformationoftheyear,month,day,hour,minutesandseconds.Thiselectronicclockhasthecharacteristicsofworkingaccurately,keepingthetimedatewhensystemlosingpower,andlowpowerconsumptions.
Keywords:
singlechip;DS1302;LCD1602;Digitalclock
一.引言
1.DS1302时钟芯片简介[1]
DS1302是美国DALLAS公司推出的一种高性能、低功耗的具有涓流充电功能的实时时钟芯片。
因具有其价格低廉、性能稳定的优点而被广泛应用于对时间精度有较高要求的各种智能化仪器仪表中。
DS1302实时时钟芯片的主要性能特点:
1.1实时时钟/日历电路可提供秒、分、时、日、星期、月和年的信息,当某个月小于31天时可以自动调整,且具有闰年补偿功能
1.2内含31字节静态RAM
1.3采用SPI总线与CPU进行通信,只需要三个口线:
(1)RST(复位线),
(2)I/O(数据线),(3)SCLK(串行时钟线)
1.4双电源(主电源和备用电源)供电,保证系统掉电时间数据不丢失,可设置备用电源涓流充电功能
1.5电压宽度可达2.0~5.5V
1.6体积小,8脚DIP封装或8脚SOIC封装
DS1302引脚分配图如图
(1)所示
单片机介绍
单片微型计算机简称单片机,是典型的嵌入式微控制器(MicrocontrollerUnit),常用英文字母的缩写MCU表示单片机,它最早是被用在工业控制领域。
单片机由芯片内仅有CPU的专用处理器发展而来。
最早的设计理念是通过将大量外围设备和CPU集成在一个芯片中,使计算机系统更小,更容易集成进复杂的而对体积要求严格的控制设备当中。
INTEL的Z80是最早按照这种思想设计出的处理器,从此以后,单片机和专用处理器的发展便分道扬镳。
早期的单片机都是8位或4位的。
其中最成功的是INTEL的8031,因为简单可靠而性能不错获得了很大的好评。
此后在8031上发展出了MCS51系列单片机系统。
基于这一系统的单片机系统直到现在还在广泛使用。
随着工业控制领域要求的提高,开始出现了16位单片机,但因为性价比不理想并未得到很广泛的应用。
90年代后随着消费电子产品大发展,单片机技术得到了巨大提高。
随着INTELi960系列特别是后来的ARM系列的广泛应用,32位单片机迅速取代16位单片机的高端地位,并且进入主流市场。
而传统的8位单片机的性能也得到了飞速提高,处理能力比起80年代提高了数百倍。
目前,高端的32位单片机主频已经超过300MHz,性能直追90年代中期的专用处理器,而普通的型号出厂价格跌落至1美元,最高端的型号也只有10美元。
当代单片机系统已经不再只在裸机环境下开发和使用,大量专用的嵌入式操作系统被广泛应用在全系列的单片机上。
而在作为掌上电脑和手机核心处理的高端单片机甚至可以直接使用专用的Windows和Linux操作系统。
单片机比专用处理器更适合应用于嵌入式系统,因此它得到了最多的应用。
事实上单片机是世界上数量最多的计算机。
现代人类生活中所用的几乎每件电子和机械产品中都会集成有单片机。
手机、、计算器、家用电器、电子玩具、掌上电脑以及鼠标等电脑配件中都配有1-2部单片机。
而个人电脑中也会有为数不少的单片机在工作。
汽车上一般配备40多部单片机,复杂的工业控制系统上甚至可能有数百台单片机在同时工作!
单片机的数量不仅远超过PC机和其他计算的总和,甚至比人类的数量还要多。
单片机又称单片微控制器,它不是完成某一个逻辑功能的芯片,而是把一个计算机系统集成到一个芯片上。
相当于一个微型的计算机,和计算机相比,单片机只缺少了I/O设备。
概括的讲:
一块芯片就成了一台计算机。
它的体积小、质量轻、价格便宜、为学习、应用和开发提供了便利条件。
同时,学习使用单片机是了解计算机原理与结构的最佳选择。
单片机内部也用和电脑功能类似的模块,比如CPU,内存,并行总线,还有和硬盘作用相同的存储器件,不同的是它的这些部件性能都相对我们的家用电脑弱很多,不过价钱也是低的,一般不超过10元即可......用它来做一些控制电器一类不是很复杂的工作足矣了。
我们现在用的全自动滚筒洗衣机、排烟罩、VCD等等的家电里面都可以看到它的身影!
......它主要是作为控制部分的核心部件。
它是一种在线式实时控制计算机,在线式就是现场控制,需要的是有较强的抗干扰能力,较低的成本,这也是和离线式计算机的(比如家用PC)的主要区别。
单片机芯片
单片机是靠程序运行的,并且可以修改。
通过不同的程序实现不同的功能,尤其是特殊的独特的一些功能,这是别的器件需要费很大力气才能做到的,有些则是花大力气也很难做到的。
一个不是很复杂的功能要是用美国50年代开发的74系列,或者60年代的CD4000系列这些纯硬件来搞定的话,电路一定是一块大PCB板!
但是如果要是用美国70年代成功投放市场的系列单片机,结果就会有天壤之别!
只因为单片机的通过你编写的程序可以实现高智能,高效率,以及高可靠性!
由于单片机对成本是敏感的,所以目前占统治地位的软件软件还是最低级汇编语言,它是除了二进制机器码以上最低级的语言了,既然这么低级为什么还要用呢?
很多高级的语言已经达到了可视化编程的水平为什么不用呢?
原因很简单,就是单片机没有家用计算机那样的CPU,也没有像硬盘那样的海量存储设备。
一个可视高级语言编写的小程序里面即使只有一个按钮,也会达到几十K的尺寸!
对于家用PC的硬盘来讲没什么,可是对于单片机来讲是不能接受的。
单片机在硬件资源方面的利用率必须很高才行,所以汇编虽然原始却还是在大量使用。
一样的道理,如果把巨型计算机上的操作系统和应用软件拿到家用PC上来运行,家用PC的也是承受不了的。
可以说,二十世纪跨越了三个“电”的时代,即电气时代、电子时代和现已进入的电脑时代。
不过,这种电脑,通常是指个人算机,简称PC机。
它由主机、键盘、显示器等组成。
还有一类计算机,大多数人却不怎么熟悉。
这种计算机就是把智能赋予各种机械的单片机(亦称微控制器)。
顾名思义,这种计算机的最小系统只用了一片集成电路,即可进行简单运算和控制。
因为它体积小,通常都藏在被控机械的“肚子”里。
它在整个装置中,起着有如人类头脑的作用,它出了毛病,整个装置就瘫痪了。
现在,这种单片机的使用领域已十分广泛,如智能仪表、实时工控、通讯设备、导航系统、家用电器等。
各种产品一旦用上了单片机,就能起到使产品升级换代的功效,常在产品名称前冠以形容词——“智能型”,如智能型洗衣机等。
现在有些工厂的技术人员或其它业余电子开发者搞出来的某些产品,不是电路太复杂,就是功能太简单且极易被仿制。
究其原因,可能就卡在产品未使用单片机或其它可编程逻辑器件上。
各引脚功能为:
1(VCC2)主电源输入引脚
2、3(X1、X2)外接晶振引脚
4(GND)电源地输入引脚
5(CE/RST)复位引脚
6(I/O)数据输入/输出引脚
7(SCLK)串行时钟引脚图
8(VCC1)备用电源输入引脚
图
(1)DS1302引脚分配图
2.LCD1602液晶模块简介[2]
1602液晶也叫1602字符型液晶,它是一种专门用来显示字母、数字、符号等的点阵型液晶模块。
它由若干个5×7或者5×11点阵字符位组图
(2)LCD1602引脚分配图
成,每个点阵字符位都可以显示一个字符。
模块采用数字式接口,能够方便地与单片机等控制类芯片进行通信。
由于其具有体积小、重量轻、显示质量高、功耗低等诸多优点而被广泛用于智能化仪器仪表的显示器件。
LCD1602引脚分配图如图
(2)所示
各引脚功能为:
1(VSS)电源地
2(VCC)+5V电源
3(VO)液晶对比度调节端
4(RS)数据/命令选择端
5(R/W)读/写选择端
6(E)使能信号端
7~14(DB0~DB7)八位双向数据总线
15(BLA)背光源正极
15(BLK)背光源负极
二.系统硬件设计
硬件电路设计是该系统设计的第一步。
主控芯片采用美国ATMEL公司的AT89S52系列单片机,时钟芯片为DS1302,显示器件采用1602液晶显示模块。
在1602液晶模块的第一行显示年、月、日,第二行显示时、分、秒。
通过对液晶模块的地址设置使数字显示在屏幕的正中央已达到美观的效果。
三个按键S1、S2、S3分别与单片机的P1.4、P1.5、P1.6三个I/O口线相连,S1为系统设置键,S2为加1键,S3为减1键。
当第一次上电时,系统日期初始化为“2000-01-01”,时间初始化为“00:
00:
00”。
通过S1、S2、S3可以设置成当前时间,当时间设置完成后,系统可进入正常走时状态。
在正常走时状态下,随时可以通过S1、S2、S3三个按键调整时间和日期。
系统硬件连接原理图如图(3)所示。
图(3)系统硬件连接原理图
三.系统软件设计[3]
软件是单片机应用系统的灵魂,是整个系统的核心部分。
如果把硬件比作人的手臂那么软件就是人的大脑,手臂的一切动作的执行都要受控于大脑。
同样,对DS1302时钟芯片和1602液晶显示模块的操作都是通过相应的软件程序来控制的。
3.1DS1302读写程序
任何一款数字芯片都有自己的操作时序,只有完全按照芯片厂商提供的操作时序进行编程才可以使其正常工作。
DS1302的读写时序如图(4)所示。
按照此时序图编制的写操作程序如下:
voidWrite1302(uchardat)
{
uchari;
SCLK=0;//拉低SCLK,为脉冲上升沿写入数据做好准备
delay
(2);//稍微等待,使硬件做好准备
for(i=0;i<8;i++)//连续写8个二进制位数据
{
DATA=dat&0x01;//取出dat的第0位数据写入1302(低位在前,高位在后)
delay
(2);//稍微等待,使硬件做好准备
SCLK=1;//上升沿写入数据
delay
(2);//稍微等待,使硬件做好准备
SCLK=0;//重新拉低SCLK,形成脉冲
dat>>=1;//将dat的各数据位右移1位,准备写入下一个数据位
}
}
同理,读操作程序为:
ucharRead1302()
{
uchari,dat;
delay
(2);//稍微等待,使硬件做好准备
for(i=0;i<8;i++)//连续读8个二进制位数据
{图(4)DS1302读写时序
dat>>=1;
if(DATA==1)//如果读出的数据是1
dat|=0x80;//将1取出,写在dat的最高位
SCLK=1;//将SCLK置于高电平,为下降沿读出数据做好准备
delay
(2);
SCLK=0;//拉低SCLK,形成下降沿脉冲读出数据
delay
(2);
}
}
3.2LCD1602读写程序
和DS1302一样,LCD1602也有自己的读写时序,具体如图(5)所示。
由于1602内部数据处理速度远快于51系列单片机指令执行速度,故可省略对其进行数据读取的操作,直接对其进行写操作。
写操作时序读操作时序
图(5)LCD1602读写操作时序
按照此时序图,编制的写数据程序如下:
voidwrite_date(uchardate)
{
lcdrw=0;//写数据线必须为低电平才允许写入命令或数据
lcdrs=1;//RS数据线为高时可以写入数据(为低为写入指令)
lcden=0;//拉低使能信号电平,为上升沿写入数据做好准备
delay
(1);//短暂延时,使硬件做好准备
P0=date;//将数据送往P0口
delay
(1);
lcden=1;//上升沿将数据写入液晶模块
delay
(1);
lcden=0;//拉低使能信号
}
四.注意事项
时钟芯片DS1302的正确使用是电子时钟系统的关键所在,由于DS1302内部没有备用电池和晶体振荡器,故需要外接。
备用电源可以选用3V纽扣电池或者容量在0.1F以上的电解电容,晶振须选用32.768KHz的晶体振荡器,如果对时间精度要求不是特别严格,晶振两端的6pF瓷片电容可以不加。
(实际模拟试验证实,在不加6pF电容的情况下24小时误差大约为4秒钟,加上电容后误差可以控制在24小时1秒钟)。
五.结语
基于最典型的51内核单片机技术的电子时钟的设计与实现,介绍了基于AT89S52单片机微处理芯片与DS1302时钟芯片和LCD1602液晶显示模块组成的数字电子时钟的系统软硬件设计。
参考文献:
[1]DS1302使用说明书.武汉:
武汉力源电子股份
[1]DS1302中文资料.广州:
广州周立功单片机发展,2007
[2]SMC1602ALCM使用说明书.长沙:
长沙太阳人电子,2005.
[3]谭浩强著.C程序设计(第二版).北京:
清华大学出版,2004.
致谢
本论文是在导师的精心指导下完成的,在此向曹老师表示深深的谢意。
三年来,不管是在生活上还是在学业上,学院的老师和领导都给了我各方面的悉心关怀和指导,导师渊博的知识、严谨的学术作风、宽厚的为人、兢兢业业的工作态度、忘我的敬业精神,使我受益匪浅,为我树立了永远的学习榜样,将激励我在今后的学习和工作不断前进。
感谢徐老师、王老师等在各方面给与我的大力帮助和支持。
研究成果的取得,尤其离不开亲人和朋友同学的关心与支持,他们使我坚强的后盾,给了我无私的帮助。
借此机会,我要向我的亲人老师还有同学朋友们表示最诚挚的致意,在此我永远祝福他们。
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 基于 DS1302 LCD1602 数字 电子钟 设计