资源描述
课程设计说明书
课程名称
单片机原理及接口技术
设计题目
LCD电子钟的制作
专业
机械
班级
1105
学生姓名
雷阳 李杨 何延福
学号
20116397
完成日期
2014.6.13
课程设计任务书
姓 名: 院 (系): 制造科学与工程
专 业:机械 班 号: 1105
任务起至日期: 2014 年 5月 15 日至 2014 年 6 月 13 日
课程设计题目:
《LCD电子钟的制作》
已知技术参数和设计要求:
(1)AT89C51单片机
(2)DS1302定时器
(3)DS1232看门狗
(4)LCD1602液晶显示
(5)8*10K上拉电阻
预期设计效果:
设计一个基于单片机的电子时钟,要求能够实现时、分、秒。
工作计划安排:
2014年5月15日-18日:收集和课程设计有关的资料,熟悉课题任务何要求
2014年5月18日-20日:总体方案设计
204年6月11日-14日:硬件电路设计
2014年6月10日:软件设计
2014年6月13日:整理书写设计说明书
2014年6月15日:答辩
同组设计者及分工:
独立完成!
成绩评定: 指导教师签字:
2014年 6月 13日
LCD电子时钟的制作
摘要:
本设计采用LCD液晶屏幕显示系统,以ATC89C51单片机为核心,由键盘、定时闹铃、日期提醒、温度显示等功能模块组成。基于题目基本要求,本系统对时间显示、闹铃方式进系统行了重点设计。本系统大部分功能由软件来实现,吸收了硬件软件化的思想,大部分功能通过软件来实现,使电路简单明了,系统稳定性大大提高。本系统不仅成功的实现了要求的基本功能,多数发挥部分也得到了实现,而且还具有一定的创新功能。
关键字:
AT89SC51单片机、LCD液晶显示、双电源供电、定时闹铃
第一章:绪论
第二章:总体设计要求
第三章:总体设计方案
3.1方案的选择与论证
3.2总体方案
第四章:系统主要硬件简介
4.1 AT89SC51
4.2 LCD1602
4.3 DS1302
第五章:系统硬件设计
5.1 AT89SC51单片机最小系统
5.2温度测量模块
5.3 时钟模块
5.4 LCD液晶显示模块
5.5 键盘模块
5.6 系统电源
5.7 整体电路
第六章:系统软件设计
6.1主程序流程图
6.2时间设定程序流程图
6.3 温度测量流程图
6.4 闹铃设定流程图
第七章:备注
7.1 参考文献
7.2 程序
第一章:绪论
在新的世纪我们已经步入了第二个十年,随着全球经济的复苏和发展,由于在世界范围内人类需求的巨大释放,以及消费结构的升级,同时传统能源的稀缺以及带来的环境的破坏,都将带来新一轮的科技革命的巨变。因此,更适合人类社会协调、健康、可持续发展的新能源、新材料等便应运而生。LCD作为一种新的材料,LCD的设计制造技术与应用水平上都得到了迅速的提高,生产也得到了迅速的发展,并逐步形成产业,成为光电子行业的新兴产业领域。
然而随着人们生活节奏的加快,时间对人们的重要性也越来越重要,因此,拥有一个不错的时钟对人们的生活将带来很大的方便。时钟,自从它发明的那天起,就成为人类的朋友,但随着时间的推移,科学技术的不断发展,人们对时间计量的精度要求越来越高,应用越来越广。怎样让时钟更好的为人民服务,怎样让我们的老朋友焕发青春呢?这就要求人们不断设计出新型时钟
第二章:总体设计要求
2.1设计要求
(1)使用集成数字电路或单片机作为主控制芯片;
(2)使用LCD来显示现在的时间,显示格式为:
上行显示:年-月-日;
下行显示:时时:分分:秒秒;
(3)使用时钟芯片DS1302实现时钟定时;
(4)具有闹铃功能,一旦时间到则发出警报声;
(5)具有调整日期与时间的功能。
2.2设计内容
(1)查阅相关资料,整体构思,
(2)进行调研和总体设计,并绘制系统方框图和主程序流程图等;
(3)详细设计:
1)LCD显示电路的设计及功能实现
2)实时时钟电路的设计及其功能实现
3)按键设置电路的设计及其功能实现
第三章:总体设计方案
3.1方案的选择与论证
3.1.1显示部分:
显示部分是本次设计的重要部分,一般有以下两种方案:
方案一:采用LED显示,分静态显示和动态显示。对于静态显示方式,所需的译码驱动装置很多,引线多而复杂,且可靠性也较低。而对于动态显示方式,虽可以避免静态显示的问题,但设计上如果处理不当,易造成亮度低,有闪烁等问题。
方案二:采用LCD显示。LCD液晶显示具有丰富多样性、灵活性、电路简单、易于控制而且功耗小等优点,对于信息量多的系统,是比较适合的。
鉴于上述原因,我们采用方案二。
3.1.2数字时钟
数字时钟是本设计的核心的部分。根据需要可采用以下两种方案实现:
方案一:方案完全用软件实现数字时钟。原理为:在单片机内部存储器设三个字节分别存放时钟的时、分、秒信息。利用定时器与软件结合实现1秒定时中断,每产生一次中断,存储器内相应的秒值加1;若秒值达到60,则将其清零,并将相应的分字节值加1;若分值达到60,则清零分字节,并将时字节值加1;若时值达到24,则将时字节清零。该方案具有硬件电路简单的特点,但当单片机不上电,程序将不执行。而且由于每次执行程序时,定时器都要重新赋初值,所以该时钟精度不高。
方案二:方案采用Dallas公司的专用时钟芯片DS1302。该芯片内部采用石英晶体振荡器,其芯片精度不大于10ms/年,且具有完备的时钟闹钟功能,因此,可直接对其以用于显示或设置,使得软件编程相对简单。为保证时钟在电网电压不足或突然掉电等突发情况下仍能正常工作,芯片内部包含锂电池。当电网电压不足或突然掉电时,可使系统自动转换到内部锂电池供电系统。而且即使系统不上电,程序不执行时,锂电池也能保证芯片的正常运行,以备随时提供正确的时间。
基于时钟芯片的上述优点,本设计采用方案二完成数字时钟的功能。
3.1.3温度采集
由于现在用品追求多样化,多功能化,给系统加上温度测量显示模块,能够方便人们的生活,使该设计具有人性化。
方案一:采用热敏电阻,可满足40摄氏度至90摄氏度测量范围,但热敏电阻精度、重复性、可靠性较差,对于检测小于1摄氏度的信号是不适用的。
方案二:采用温度传感器DS18B20。DS18B20可以满足从-55摄氏度到+125摄氏度测量范围,且DS18B20测量精度高,增值量为0.5摄氏度,在一秒内把温度转化成数字,测得的温度值的存储在两个八位的RAM中,单片机直接从中读出数据转换成十进制就是温度,使用方便。
基于DS18B20的以上优点,我们决定选取DS18B20来测量温度。
3.1.4闹铃部分
一般的时钟都带有闹铃,实现闹铃方式可采用以下两种:
方案 一:将闹钟信息存放在非易失储存器中。该方案即使在完全的掉电的情况下也不会造成闹钟信息的丢失,但该方案成本较高且难于实现。
方案二:将闹钟信息存放在单片机自带的存储器中。该方案成本低而且易于实现,但是一但掉电会造成之前信息的丢失。
基于成本及易于实现的角度,我们选择方案二。
3.1.5电源模块
方案一:采用干电池作为系统电源。但需经常换电池,不符合节约型社会的要求。
方案二:采用直流稳压电源作为系统主电源,干电池作为辅助电源。不仅不需要经常更换电源,并且当市电停止时能够采用干电池做为系统电源,使用更加安全可靠。
基于以上分析,我们决定采用方案二
3.2总体方案
3.2.1工作原理:
本设计采用AT89SC51单片机作为本系统的控制模块。单片机可把由DS18B20、DS1302、AT24C02中的数据利用软件来进行处理,从而把数据传输到显示模块,实现温度、日历和闹铃的显示。以LCD液晶显示器为显示模块,把单片机传来的数据显示出来,并且显示多样化。在显示电路中,主要靠按键来实现各种显示要求的选择与切换。
如图1
第四章:系统主要硬件简介
4.1 AT89C51单片机简介
AT89C51 是美国ATMEL 公司生产的8 位Flash ROM 单片机。其最突出的优点是片内ROM 为Flash ROM,可擦写1000 次以上,应用并不复杂的通用ROM 写入器就能方便的擦写,读取也很方便,价格低廉,具有片程序ROM 二级保密系统。因此可灵活应用于各种控制领域。
AT89C51 包含以下一些功能部件:
(1)一个8 位CPU ;
(2)一个片内振荡器和时钟电路;
(3)4KB Flash ROM ;
(4)128B 内RAM;
(5)可寻址64KB 的外ROM 和外RAM 控制电路;
(6)两个16 位定时/计数器;
(7)21 个特殊功能寄存器;
(8)4 个8 位并行I/O 口;
(9)一个可编程全双工串行口;
(10)5 个中断源,可设置成2 个优先级。
AT89C51 单片机一般采用双列直插DIP 封装,共40 个引脚,图2-1 为其引脚排列图。40 个引脚大致可分为4 类:电源、时钟、控制各I/O 引脚。
图2-1 AT89C51引脚图
2.1.1 电源
Vcc——芯片电源,接+5V;GND——接地端。
2.1.2 时钟
XTAL1、XTAL2——晶体振荡电路反相输入端和输出端。
2.1.3 控制线
控制线共有4 根,其中3 根是复用线。所谓复用线是指具有两种功能,正常使用时是一种功能,在某种条件下是另一种功能。
1、ALE/ PROG ——地址锁存允许/片内EPROM 编程脉冲。
(1)ALE 功能:用来锁存P0 口送出的低八位地址。
AT89C51 在并行扩展外存储器时,P0 口用于分时传送低8 位地址和数据信号,且均为二进制数。当ALE 信号有效时,P0 口传送的是低8 位地址信号;ALE 信号无效时,P0 口传送的是低8 位地址信号。在ALE 信号的下降沿,锁定P0 口传送的内容,即低8 位地址信号。
需要指出的是,当CPU 不执行访问外RAM 指令,ALE 以时钟振荡频率1/6 的固定频率输出,因此ALE 信号也可作为外部芯片CLK 时钟或其他需要。但是,当CPU 执行MOVX 指令时,ALE 将跳过一个ALE 脉冲。
(2) PROG 功能:片内EPROM 的芯片,在EPROM 编程期间,此引脚输入编程脉冲。
2、 PSEN ——外ROM 读选通信号。
89C51 读外ROM 时,每个机器周期内PSEN 两次有效输出。PSEN 可作为外ROM芯片输出允许OE 的选通信号。在读内ROM 或读外RAM 时, PSEN 无效。
3、RST/VPD——复位/备用电源。
(1)正常工作时,RST 端为复位信号输入端,只要在该引脚上连续保持两个机器周期以上高电平,AT89C51 芯片即实现复位操作,复位后一切从头开始,CPU 从0000H 开始执行指令。
(2)VPD 功能:在VCC 掉电情况下,该引脚可接上备用电源,由VPD 向片内RAM供电,以保持片内RAM 中的数据不丢失。
4、EA /VPP——内外ROM 选择/片内EPROM 编程电源。
(1) EA 功能:正常工作时, EA 为内外ROM 选择端。AT89C51 单片机ROM 寻址范围为64KB,其中4KB 在片内,60KB 在片外。当EA 保持高电平时,先访问内ROM,但当PC 值超过4KB 时,将自动转向执行外ROM 中的程序。当EA 保持低电平时,则只访问外ROM,不管芯片内有否内ROM。
(2)VPP 功能:片内有EPROM 的芯片,在EPROM 编程期间,此引脚用于施加编程电源。
2.1.4 I/O引脚
AT89C51 有P0、P1、P2、P3 4 个8 位并行I/O 端口,共32 个引脚。
P0 口是一组8 位漏级开路型双向I/O 口,也即地址/数据总线复用口。作为输出口用时,每位能以吸收电流的方式驱动8 个TTL 逻辑门电路,对端口写1 时,又可作高阻抗输入端用。在访问外部程序和数据存储器时,它是分时多路转换的地址(低8 位)/数据总线,在访问期间激活了内部的上拉电阻。在Flash 编程时,P0 端口接收指令字节;而在验证程序时,则输出指令字节。验证时,要求外接上拉电阻。
P1 口是带内部上拉电阻的双向I/O口,向P1口写入1时P1口被内部上拉为高电平,可用作输入口。当作为输入脚时被外部信号拉低的P1口会因为内部上拉而输出一个电流。Flash编程和程序校验期间,P1接收低8位地址。
P2 口是带内部上拉电阻的双向I/O口,向P2口写入1时P2口被内部上拉为高电平可用作输入口,当作为输入脚时被外部拉低的P2口会因为内部上拉而输出电流。在访问外部程序存储器或16位地址的外部数据存储器(例如执行MOVX @DPTR指令)时,P2口送出高8位地址数据,当使用8位寻址方式(MOVX@RI)访问外部数据存储器时,P2口发送P2特殊功能寄存器的内容,在整个访问期间不改变。Flash编程和程序校验时,P2也接收高位地址和一些控制信号。
P3 口是带内部上拉电阻的双向I/O口,向P3口写入1时P3口被内部上拉为高电平可用作输入口,当作为输入脚时被外部拉低的P3口会因为内部上拉而输出电流。P3口除了作为一般的I/O口线外,更重要的是它的第二功能,如表2-1所示:
表2-1 P3端口的特殊功能
端口引脚
兼 用 功 能
P3.0——RXD
串行输入口
P3.1——TXD
串行输出口
P3.2——/INT0
外部中断0
P3.3——/INT1
外部中断1
P3.4——T0
定时器0的外部输入
P3.5——T1
定时器1的外部输入
P3.6——/WR
外部数据存储器写选通输出
P3.7——/RD
外部数据存储器读选通输出
4.2 LCD1602简介
4.2.1 LCD简述
LCD 液晶显示器是 Liquid Crystal Display 的简称,LCD 的构造是在两片平行的玻璃当中放置液态的晶体,两片玻璃中间有许多垂直和水平的细小电线,透过通电与否来控制杆状水晶分子改变方向,将光线折射出来产生画面。LCD可以分为为两种类型,一种是文字模式LCD,一种是绘图模式LCD。
LCD1602属于字符型液晶,能够同时显示16x2即32个字符。可以与8位CPU相联,指令功能强可以组合成各种输入、显示、移位方式以满足不同要求。显示黄绿带背光,显示对比度可以调节,正常工作电压(VDD)为+5V,工作电流约为2mA(不计背光功耗),同时可靠性高寿命达50,000小时(25℃)。
4.2.2 LCD1602特性 具有如下特性:
·+5V供电,亮度可以调整。
·内藏振荡电路,系统内含重置电路。
·提供各种控制命令,如清除显示器、字符闪烁、光标闪烁、显示移位等多种功能
·显示数据RAM共有80个字节
·字符产生器ROM有60个5*7点阵字型。
·字符产生器RAM可由用户自行定义8个5*7的点阵字型。
4.2 LCD1602简介 4.2.1 LCD简述
LCD 液晶显示器是 Liquid Crystal Display 的简称,LCD 的构造是在两片平行的玻璃当中放置液态的晶体,两片玻璃中间有许多垂直和水平的细小电线,透过通电与否来控制杆状水晶分子改变方向,将光线折射出来产生画面。LCD可以分为为两种类型,一种是文字模式LCD,一种是绘图模式LCD。
LCD1602属于字符型液晶,能够同时显示16x2即32个字符。可以与8位CPU相联,指令功能强可以组合成各种输入、显示、移位方式以满足不同要求。显示黄绿带背光,显示对比度可以调节,正常工作电压(VDD)为+5V,工作电流约为2mA(不计背光功耗),同时可靠性高寿命达50,000小时(25℃)。 4.2.2 LCD1602特性 具有如下特性:
·+5V供电,亮度可以调整。
·内藏振荡电路,系统内含重置电路。
·提供各种控制命令,如清除显示器、字符闪烁、光标闪烁、显示移位等多种功能 ·显示数据RAM共有80个字节
·字符产生器ROM有60个5*7点阵字型。
·字符产生器RAM可由用户自行定义8个5*7的点阵字型。
4.2.3 LCD1602的引脚定义
字符型LCD1602的引脚定义为下表1
字符型LCD1602的引脚定义为下表1
引脚号
引脚名
电平
输入/输出
作用
1
Vss
电源地
2
Vcc
电源(+5V)
3
Vee
对比调整电压
4
RS
0/1
输入
0=输入指令
1=输出指令
5
R/W
0/1
输入
0=向LCD写入指令或数据
1=从LCD读取信息
6
E
1,1→0
输入
使能信号,1是读取信息
1→0(下降沿)执行指令
7→14
DB0→DB7
0/1
输入/输出
数据总线
15
A
Vcc+
LCD背光源正极
16
K
接地
LCD背光源负极
4.2.4 LCD内部的内存
LCD内部存储器共分三种,分别为CGROM、CGRAM和DDROM。CGROM内存储着192个5*7点阵的字型,这些字型均已固定。CGRAM此区域只有64个字节,可将用户将自行设计的字型写入LCD中,一个字的大小为5*7个点阵,共可存储8个字型,其显示码为00H到07H。
DDRAM就是显示数据RAM,用来寄存待显示的字符代码。共80个字节,其地址和屏幕的对应关系如下表2:
显示位置
1
2
3
4
5
6
7
……
40
DDRAM
地址
第一行
00H
01H
02H
03H
04H
05H
06H
……
27H
第二行
40H
41H
42H
43H
44H
45H
46H
……
67H
也就是说想要在LCD1602屏幕的第一行第一列显示一个"A"字,就要向DDRAM的00H地址写入“A”字的代码就行了。
4.2.5 LCD控制指令
LCD控制指令包含以下几项:
消除显示器,光标归位设置,设置字符进入模式,显示器开关,显示光标移位,功能设置,CGRAM、DDRAM地址设置等等。
第五章:系统硬件设计
5.1 STC89C52RC单片机最小系统:
最小系统包括晶体振荡电路、复位开关和电源部分。图3为STC89C52RC单片机的最小系统。
图3 最小系统电路图
5.2温度测量模块:
温度测量传感器采用DALLAS公司DS18B20的单总线数字化温度传感器,测温范围为-55℃~125℃,可编程为9位~12位A/D转换精度,测温分辨率达到0.0625℃,采用寄生电源工作方式,CPU只需一根口线便能与DS18B20通信,占用CPU口线少,可节省大量引线和逻辑电路。接口电路如图4所示。
图4 DS18B20测量电路
5.3时钟模块:
时钟模块采用DS1302芯片,DS1302是DALLAS公司推出的涓流充电时钟芯片内含有一个实时时钟/日历和31字节静态RAM通过简单的串行接口与单片机进行通信实时时钟/日历电路提供秒分时日日期月年的信息每月的天数和闰年的天数可自动调整时钟操作可通过AM/PM指示决定采用24或12小时格式DS1302与单片机之间能简单地采用同步串行的方式进行通信仅需用到三个口线:
RST复位、I/O数据线、SCLK串行时钟。时钟/RAM的读/写数据以一个字节或多达31个字节的字符组方式通信。DS1302工作时功耗很低,保持数据和时钟信息时功率小于1mW,其接线电路如图5
图5 时钟电路
5.4 LCD液晶显示模块
LCD液晶显示模块采用LCD1602型号,具有很低的功耗,正常工作时电流仅2.0mA/5.0V。通过编程实现自动关闭屏幕能够更有效的降低功耗。LCD1602分两行显示,每行可显示多达16个字符。LCD1602液晶模块内部的字符发生存储器(CGROM)已经存储了160个不同的点阵字符图形,通过内部指令可实现对其显示多样的控制,并且还能利用空余的空间自定义字符。其接线如图7
图7 LCD显示电路
5.5 键盘模块
它是整个系统中最简单的部分,根据功能要求,本系统共需四个按键:功能移位键、功能加键、功能减键、立刻跳出调整模式键采用独立式按键。
5.6 系统电源:
双电源设计是本设计的重点。220V交流转5V直流稳压电源会更加安全、实用。当没有交流电时,系统采用干电池供电;当接通交流电时,则电路自动切换到交流电供电,并且对干电池进行慢性充电。电路图如图8:
图8 电源电路
5.7 整体电路:
系统整体电路如图9 所示:
图9 系统总体电路图
第六章:系统软件设计
6.1主程序流程如图10:
图10 系统主程序流程
6.2时间设定程序流程如图11
图11 显示时间子程序流程
6.3 温度测量流程图如图12
图12 温度测量程序流程图
6.4 闹铃设定流程图如图13
图13 闹铃设定程序流程图
第七章:备注
7.1参考文献
[1]求是科技. 单片机典型模块设计实例导航. 北京:人民邮电出版社. 2005.8
[2]徐淑华, 程退安等.单片微型机原理及应用. 哈尔滨:哈尔滨工业大学出版社. 2005.1
[3]孙余凯. 精选实用电子电路260例. 北京:电子工业出版社. 2007.6
[4]殷春浩, 崔亦飞. 电磁测量原理及应用. 徐州:中国矿业大学出版社. 2003.7
[5]《LCD1602A数据手册》
[6]《DS1302数据手册》
[7]《DS18B20数据手册》
程序:
展开阅读全文