丁青青基于单片机的多功能LCD时钟.docx

上传人:b****2 文档编号:23158758 上传时间:2023-05-08 格式:DOCX 页数:21 大小:208.52KB
下载 相关 举报
丁青青基于单片机的多功能LCD时钟.docx_第1页
第1页 / 共21页
丁青青基于单片机的多功能LCD时钟.docx_第2页
第2页 / 共21页
丁青青基于单片机的多功能LCD时钟.docx_第3页
第3页 / 共21页
丁青青基于单片机的多功能LCD时钟.docx_第4页
第4页 / 共21页
丁青青基于单片机的多功能LCD时钟.docx_第5页
第5页 / 共21页
点击查看更多>>
下载资源
资源描述

丁青青基于单片机的多功能LCD时钟.docx

《丁青青基于单片机的多功能LCD时钟.docx》由会员分享,可在线阅读,更多相关《丁青青基于单片机的多功能LCD时钟.docx(21页珍藏版)》请在冰豆网上搜索。

丁青青基于单片机的多功能LCD时钟.docx

丁青青基于单片机的多功能LCD时钟

数理与信息工程学院

《单片机原理及应用》期末课程设计

题目:

基于单片机的多功能LCD时钟

专业:

电子信息工程

班级:

电信041

姓名:

丁青青

学号:

04610102

指导老师:

余水宝

成绩:

17

(2007.1)

 

目录

第1节引言………………………………………………………………………………3

1.1多功能LCD时钟系统概述………………………………………………………3

1.2本设计任务和主要内容…………………………………………………………3

第2节系统主要硬件电路设计…………………………………………………………5

2.1单片机控制系统原理……………………………………………………………5

2.2模块电路设计与比较……………………………………………………………6

2.3各功能模块设计及实现…………………………………………………………7

2.3.1单片机控制系统…………………………………………………………7

2.3.2实时时钟模块……………………………………………………………9

2.3.3温度检测模块……………………………………………………………9

2.3.4高速A/D转换电路模块…………………………………………………10

2.3.5电压有效值转换模块……………………………………………………10

2.3.6键盘模块…………………………………………………………………11

2.3.7液晶模块…………………………………………………………………12

2.3.8频率测量原理模块………………………………………………………12

2.3.9语音报警模块……………………………………………………………13

第3节系统软件设计…………………………………………………………………16

3.1系统主程序设计………………………………………………………………16

3.2时间日期控制子程序…………………………………………………………17

3.3定时中断子程序………………………………………………………………18

第四节结束语……………………………………………………………………………20

参考文献……………………………………………………………………………………21

 

基于单片机的多功能LCD时钟

数理与信息工程学院电信041丁青青

指导老师:

余水宝

第1节引言

近年来,随着我国科技的不断发展,我国经济发展的支柱产业——电子产业获得长足发展,近年来各种电子产品琳琅满目,随处可见,随着电子产品的更新速度的加快,各种功能强大,款式新颖的电子产品不断问世。

电子时钟便是这一发展趋势中的代表,各种功能的电子时钟应有尽有,且功能不断更新。

电子时钟的研究也成为大多数相关专业的学生以及研究人员争先研究的对象,本人根据长时间对市场的关注和对同行对电子时钟的研究,总结前人以有经验特提出此项目设计,此项目结合了前人对电子时钟的研究成果,具有功能强大,设计人性化的特点。

此项目的制作,对提高在校大学生的科研能力以及丰富大学生课外生活具有重要意义。

1.1多功能LCD时钟系统概述

本设计以单片机AT89C51为控制核心,由实时时钟模块、环境温度检测模块、电压检测模块、人机接口模块、报警模块等部分组成。

其中实时时钟采用DS12887可实现年月日时分秒等时间信息的采集和闹钟功能。

温度检测模块由DS18B20集成温度传感器对现场环境温度进行实时检测。

电网检测模块由AD536、ICL7135等实现对电网电压有效值的采样和频率的间接测量及电网电压的欠压、过压检测。

人机接口模块由4×4键盘和LCD12864点阵液晶组成,可实现时间显示、闹钟设置、环境温度测量、电网电压、电网频率显示等功能。

报警模块由报警蜂鸣器和带音乐芯片的扬声器等可实现闹铃控制和电网电压的过压、欠压报警功能。

1.2本设计任务和主要内容

本设计以单片机为控制核心,采用模块化设计,共分以下几个功能模块:

单片机控制系统、实时时钟模块、环境温度检测模块、电压检测模块、人机接口模块、语音报警模块等。

1、单片机作为整个硬件系统的核心,它既是协调整机工作的控制器,又是数据处理器。

它由单片机、时钟电路、复位电路等组成。

2、实时时钟芯片采用带RAM的时钟芯片DS12887。

该芯片可以进行时分秒的计数,具有100年日历,可编程接口,还具有报警功能和掉电保存功能,并且可以对其方便的进行程序控制,完全能满足设计的要求。

3、温度检测电路采用DALLAS公司生产的单线数字温度传感器DS18B20,它具有独特的单线总线接口方式,具有接口简单、精度高、抗干扰能力强、工作稳定可靠等特点。

4、电网电压检测电路采用有效值转换芯片AD536和高速A/D芯片ICL7135测量市电有效值,将从变压器引入的交流信号通过AD536转换成直流信号后接入ICL7135,利用单片机读取数据后进行相应的幅值变换得到电压有效值。

利用集成电路芯片测量精度高,误差小、稳定性好,硬件电路实现简单,可减小硬件体积。

5、语音报警电路是提示用户系统的实时状态或对系统进行操作,语音电路可提供整点报时、闹铃以及过压警示等功能。

因此,语音电路所选用的芯片必须具备三种功能:

分段录音、放音、可寻址,根据这些功能要求,本系统选用美国ISD公司的ISD1420。

6、人机接口模块采用7279控制键盘,采用液晶显示。

液晶显示功耗低,轻便防震,由于本设计显示信息比较复杂,采用液晶显示界面友好清晰,操作方便,显示信息丰富。

本设计采用LCD(128×64)显示各种状态。

7、频率测量方案采用测量周期法。

将被测量信号经过过零检测后转换成方波信号,利用单片机查询两个上升沿,在此期间根据晶体振荡器产生的周期为Tc的脉冲送计数器进行计数,设计数值为N,则得被测量信号的周期值Tx,然后取其倒数即为被测量信号的频率。

 

第2节系统主要硬件电路设计

2.1单片机控制系统原理

方案一:

采用CPLD作为主控制器控制外围电路进行电压、频率测量,时钟控制、温度测量、键盘和LED控制、报警控制。

此方案逻辑电路复杂,且灵活性较低,不利于各种功能的扩展,在测电压时将通过A/D测得的数值转化为电压有效值时有一定的困难。

方案二:

采用89C51单片机来实现系统的控制。

键盘用芯片7289控制,时钟芯片采用DS12887,温度传感器采用DS18B20。

市电信号电压可通过更高精度的AD536A、ICL7135等测得,频率可采用测周期法间接测得。

此系统硬件简洁,将复杂的硬件功能用软件实现,因此系统控制灵活,能很好地满足本题的基本要求和扩展要求。

此方案基本原理框图如下图所示。

比较以上两种方案的优缺点,方案二简洁、灵活、可扩展性好,能完全达到设计要求,故采用第二种方案。

图2-1系统总体设计框图

2.2模块电路设计与比较

时钟方案选择:

方案一:

要求显示小时和分钟,因此可以用门电路组合构成时钟发生器,但此方案硬件复杂,稳定性低,且不易控制。

方案二:

采用带RAM的时钟芯片DS12887。

该芯片可以进行时分秒的计数,具有100年日历,可编程接口,还具有报警功能和掉电保存功能,并且可以对其方便的进行程序控制,能很好的符合要求。

故采用方案二。

温度检测方案选择:

方案一:

采用热电偶或热敏电阻作感温元件,但热电偶需冷端补偿,电路设计复杂,热敏电阻虽然精度较高,但需要标准稳定电阻匹配才能使用,而且重复性、可靠性都比较差。

方案二:

采用集成温度传感器DS18B20。

该传感器结构简单,不需外接电路,数据传输采用one-wire。

总线,可用一根I/O数据线即供电又传输数据,在-10℃--+85℃范围内精度为±0.5℃,分辨率较高,重复性和可靠性好。

故采用方案二。

电压有效值测量方案选择:

方案一:

采用分段逼近式有效值检波电路。

该方法示值虽然是被测电压的有效值,但由于放大器动态范围的限制,对于被测信号会产生一定的波形误差,并且硬件电路搭接复杂,且稳定性能不好。

方案二:

采用真有效值转换芯片AD536和高速A/D芯片ICL7135测量市电有效值。

将从变压器引入的交流信号通过AD536转换成直流信号后接入ICL7135,利用单片机读取数据后进行相应的幅值变换得到电压有效值。

利用集成电路芯片测量精度高,误差小、稳定性好,硬件电路实现简单,可减小硬件体积。

故采用方案二。

频率测量方案选择:

方案一:

直接测频法。

把被测频率信号经过脉冲形成电路后加到闸门的一个输入端,只有在闸门开通时间T(以秒计)内,被计数的脉冲被送到计数器进行计数。

设计数器的值为N,由频率定义式计算得到被测信号频率为发f=N/T。

方案二:

测量周期法。

将被测量信号经过过零检测后转换成方波信号,利用单片机查询两个上升沿,在此期间根据晶体振荡器产生的周期为Tc的脉冲送计数器进行计数,设计数值为N,则得被测量信号的周期值Tx,然后取其倒数即为被测量信号的频率。

经分析,采用直接测频法在测量低频段信号时的相对测量误差较大,但在高频段测量信号的频率有较高的精度。

如果采用测频法测量低频段50Hz频率信号,要想提高精确度,势必会大幅度增加闸门开通时间T,时效性较差。

相反,采用测量信号周期然后取其倒数的方法在低频段测量时精度很高。

因此,本题在测量50Hz左右的市电信号频率时采用方案二。

电压过压、欠压方案选择:

方案一:

采用两片比较器芯片LM311对输入电压与上下门限值进行比较。

根据LM311的输出驱动蜂鸣器报警。

本方案对上下门限值精度和稳定度的要求较高。

方案二:

软件设定比较值。

采用软件编程判断过、欠压值,然后通过单片机口线输出电平驱动蜂鸣器报警。

采用软件判断电压过、欠压,省掉了硬件搭接,节省成本。

故采用方案二。

显示模块的选择:

方案一:

采用数码管显示。

数码管亮度高、体积小、重量轻,但其显示信息简单、有限,在本题目中应用受到很大的限制。

方案二:

采用液晶显示。

液晶显示功耗低,轻便防震。

采用液晶显示界面友好清晰,操作方便,显示信息丰富。

其他设计的考虑:

由于单片机接口线有限,我们采用一片8255扩展口线,做相应的控制。

闹铃响采用带音乐芯片的扬声器,为实现题目中非接触止闹功能,我们可以采用接近开关或无线接收发送模块通过单片机控制闹铃停止。

2.3各功能模块硬件设计及实现

本设计以单片机AT89C51为控制核心,由实时时钟模块、环境温度检测模块、电压检测模块、人机接口模块、语音报警模块等部分组成。

可实现时间显示、闹钟设置、环境温度测量、电网电压、电网频率显示等功能。

报警模块由报警蜂鸣器和带音乐芯片的扬声器等可实现闹铃控制和电网电压的过压、欠压报警功能。

键盘用芯片7279控制,时钟芯片采用DS12887,温度传感器采用DS18B20。

市电信号电压可通过更高精度的AD536A、ICL7135等测得,频率可采用测周期法间接测得。

此系统硬件简洁,将复杂的硬件功能用软件实现,因此系统控制灵活,能很好地满足本设计的基本要求和扩展要求。

硬件设计是整个系统的基础,要考虑的方方面面很多,除了实现此设计基本功能以外,主要还要考虑如下几个因素:

①系统稳定度;②器件的通用性或易选购性;③软件编程的易实现性;④系统其它功能及性能指标;因此硬件设计至关重要。

现从各功能模块的实现逐个进行分析探讨。

2.3.1单片机控制系统

单片机作为整个硬件系统的核心,它既是协调整机工作的控制器,又是数据处理器。

它由单片机、时钟电路、复位电路等组成。

为了简化电路、降低成本、提高可靠性,本系统采用AT89C51作为主控制器,它是一款与MCS51完全兼容且内部自带有4KB的Flash存储器及256KBRAM单元的芯片,因此可以不需另外扩展EEPROM及静态RAM就可以实现所需功能。

单片机最小系统是软硬件系统连接的桥梁。

它包括:

1、单片机89C51

2、键盘管理芯片7289

3、可编程外围并行接口芯片8255

4、4*4键盘

5、LCD12864液晶模块

其中单片机最小系统的电路图如图2-2所示。

图2-2单片机最小系统

单片机的时钟信号用来提供单片机片内各种微操作的时间基准,时钟信号通常用两种电路形式得到:

内部振荡和外部振荡。

MCS-51单片机内部有一个用于构成振荡器的高增益反向放大器,引脚XTALl和XTAL2分别是此放大电器的输入端和输出端,由于采用内部方式时,电路简单,所得的时钟信号比较稳定,实际使用中常采用这种方式,如图2-2所示在其外接晶体振荡器(简称晶振)或陶瓷谐振器就构成了内部振荡方式,片内高增益反向放大器与作为反馈元件的片外石英晶体或陶瓷谐振器一起可构成一个自激振荡器并产生振荡时钟脉冲。

图2-2中外接晶体以及电容C2和C1构成并联谐振电路,它们起稳定振荡频率、快速起振的作用,其值均为30P左右,晶振频率选6MHz。

为了初始化单片机内部的某些特殊功能寄存器,必须采用复位的方式,复位后可使CPU及系统各部件处于确定的初始状态,并从初始状态开始正常工作。

单片机的复位是靠外电路来实现的,在正常运行情况下,只要RST引脚上出现两个机器周期时间以上的高电平,即可引起系统复位,但如果RST引脚上持续为高电平,单片机就处于循环复位状态。

复位后系统将输入/输出(1/0)端口寄存器置为FFH,堆栈指针SP置为07H,SBUF内置为不定值,其余的寄存器全部清0,内部RAM的状态不受复位的影响,在系统上电时RAM的内容是不定的。

复位操作有两种情况,即上电复位和手动(开关)复位。

本系统采用上电复位方式。

图2-2中R9和Cl组成上电复位电路,其值R取为1K,C取为22μF.

2.3.2实时时钟模块

时钟模块采用采用带RAM的时钟芯片DS12887。

该芯片可以进行时分秒的计数,具有100年日历,可编程接口,还具有报警功能和掉电保存功能,并且可以对其方便的进行程序控制,能很好的符合要求。

其电路如图2-3所示。

图2-3DS12887时钟硬件电路图

2.3.3温度检测模块

采用集成温度传感器DS18B20。

该传感器结构简单,不需外接电路,数据传输采用one-wire。

总线,可用一根I/O数据线即供电又传输数据,在-10℃--+85℃范围内精度为±0.5℃,分辨率较高,重复性和可靠性好。

其电路图如图2-4所示。

图2-4DS18B20电路

2.3.4高速A/D转换电路模块

我们采用芯片ICL7135作为高速A/D转换芯片为转换核心,该芯片为

位BCD码输出的的CMOS集成电路,具有精度高,抗干扰能力强,分辨率能达到二万分之一,对电源变化稳定性高、高输入阻抗、自动调零、自动判别极性,性能价格比高。

其输出为4位BCD码,5根扫描线,1根符号位以及“忙”、“运行/保持”、“过量程”、“欠量程”等辅助信号。

完全能满足设计要求的精度指标。

图2-5ICL7135高速A/D转换原理图

2.3.5电压有效值转换电路模块

  我们把市电信号的有效值作为我们测量的参数,具体方法是:

将已经经过电源滤波的市电信号经过变压器后接入真有效值转换芯片AD536,输出与有效值相等的直流信号,将其作为高速A/D转换芯片ICL7135的输入,其中,ICL7135芯片的基准源如右图所示,然后利用单片机读取数据并进行相应的转换运算,从而得到市电信号的有效值。

原理性框图如图2-6所示。

图2-6有效值测量框图

AD536是单片集成的有效值变换器,具有精度高,可靠性好,转换频率范围宽的特点,而且具有分贝输出功能,采用本芯片完全能满足题目要求,而且还可以方便的进行扩展。

图2-7AD536有效值转换电路图

2.3.6键盘模块

图2-8键盘显示电路图

2.3.7液晶模块

液晶显示模块具有体积小、功耗低、显示内容丰富等特点,现在字符型液晶显示模块已经是单片机应用设计中最常用的信息显示器件

功能介绍:

LCD12864-12(黄色背光)是一款具有4位/8位并行、2线或3线串行多种接口方式,内部含有国标一级、二级简体中文字库的点阵图形液晶显示模块;其显示分辨率为128×64,内置8192个16*16点汉字,和128个16*8点ASCII字符集.利用该模块灵活的接口方式和简单、方便的操作指令,可构成全中文人机交互图形界面。

可以显示8×4行16×16点阵的汉字.也可完成图形显示.低电压低功耗是其又一显著特点。

由该模块构成的液晶显示方案与同类型的图形点阵液晶显示模块相比,不论硬件电路结构或显示程序都要简洁得多,且该模块的价格也略低于相同点阵的图形液晶模块。

2.3.8频率测量原理模块

本系统测量市电信号的频率,即50Hz左右的频率信号,属于低频段信号频率测量,基于此实际,我们采用测量输入信号周期然后取倒数的方法测量信号的频率,即测周法,这样能提高测量的精度,测量信号周期的原理框图图2-9所示,波形示意图如图2-10所示。

图2-9信号周期测量原理图

图2-10频率测量计数波形示意图

2.3.9语音报警模块

语音电路的作用是提示用户对控制器进行操作并进行报警。

语音电路所选用的芯片必须具备三种功能:

分段录音、放音、可寻址。

根据这些功能要求,本系统选用美国ISD公司的ISD1420作为语音电路的核心芯片。

ISD1420录音电路通过开关控制录音控制端REC和地址线A0-A7,放音电路通过AT89C51的P口控制PLAYER放音。

ISD1420引脚图如图2-11所示。

图2-11ISD1420引脚图

ISD1420内置了若了干操作模式,可用最少的外围器件实现最多的功能。

操作模式也由地址端控制;当A7和A6都为1时,其它地址端置高就选择某个(或某几个)模式。

因为操作模式和直接寻址互相排斥。

操作模式可由微控制器,也可由硬件实现。

使用操作模式有两点注意:

1)所有操作最初都是从0地址,即存储空间的起始端开始。

后续操作根据所选用的模式可从其它的地址开始。

此外,A4模式中,当电路由录转为放时地址计数器复位为0,而由放转为录则不复位。

2)当控制信号(/PLAYL、/PLAYE或/REC)变低,同时A6和A7为高时,执行操作模式。

这种操作模式一直有效,除非控制信号再次由高变低,芯片重新锁存当前的地址/模式端电平,然后执行相应操作。

ISD1420操作模式如表2-1所示。

表2-1ISD1420操作模式

ISD1420语音提示电路如图2-12所示。

图2-12语音提示电路如图

第3节系统软件设计

硬件平台结构一旦确定,大的功能框架即形成。

软件在硬件平台上构筑,完成各部分硬件的控制和协调。

系统功能是由软硬件共同实现的,由于软件的可伸缩性,最终实现的系统功能可强可弱,差别可能很大。

因此,软件是本系统的灵魂。

软件采用模块化设计方法,不仅易于编程和调试,也可减小软件故障率和提高软件的可靠性。

同时,对软件进行全面测试也是检验错误排除故障的重要手段。

由于编程多涉及到数值运算,比较复杂,还有LCD的菜单界面设计都是需要多重选择判断,用我们平时常用的汇编语言编程是很难实现的,这里我们选用了移值性好、结构清晰、能进行复杂运算的C语言来实现编程。

3.1系统主程序设计

为实现系统功能,系统软件共设九个运行状态(见图3-1中S1-S9)和一个中断处理程序(SR)。

各部分功能描述如下:

S1:

时钟日期显示状态,89c51从ds12887循环读取时间日期值并显示;时间值与闹钟设置值比较,若定时到,则进入闹铃状态(S8);从7135读取电压值并与上下限电压比较,若过压或欠压则进入报警状态(S9)。

S2:

时间设置状态。

进行时间和日期的设置,写入ds12887中。

S3:

温度显示状态。

从ds12b80中读取温度值显示。

S4:

闹钟设置。

显示选择菜单,可选择闹钟开、闹钟开、闹钟时间设置。

S5:

电压及频率显示状态。

循环检测电压有效值与频率并显示。

S6:

时制选择。

按1键选择24小时时制,按2键选择12小时时制。

S7:

设置闹钟时间状态。

S8:

闹铃状态。

接通音乐芯片。

S9:

报警状态。

接通过压或欠压报警。

SR:

中断服务程序。

读取键盘按键值并根据系统所处的不同的状态设置标志位。

为了保证系统的可靠运行,必须要有良好的软件相配合,而且要有友好的人机对话功能,鉴于以上要求,该系统软件部分主要由主程序、中断子程序、延时子程序、提示音产生子程序等几大模块组成。

主程序流程图如图3-1所示。

 

图3-1软件整体流程图

主程序比较简单,初始化完成后,调用时间日期显示设置程序,取得时钟显示,并根据当前系统状态调用相应的子程序。

这里有六个基本的子程序供调用,分别对应系统的各种功能状态。

分别是时间日期显示程序、时间设置程序、温度显示子程序、闹钟设置子程序和电压及频率显示子程序,时间格式选择子程序等。

3.2时间日期控制子程序

图3-2校时调时子程序

由系统结构框图可以看出,数字钟显示通过AT89C51的IO口来控制。

89c51从ds12887循环读取时间日期值并显示,时间值与闹钟设置值比较,若定时到,则进入闹铃状态,从7135读取电压值并与上下限电压比较,若过压或欠压则进入报警状态,从ds12b80中读取温度值显示,显示选择菜单,可选择闹钟开、闹钟开、闹钟时间设置。

读取键盘按键值并根据系统所处的不同的状态设置标志位。

循环检测电压有效值与频率并显示。

为了保证系统的可靠运行,必须要有良好的软件相配合,而且要有友好的人机对话功能。

3.3定时中断子程序

为了保证系统的可靠运行,在主程序之外还增加了定时中断程序。

如果用户在设定的时间内没有任何操作,就自动挂机,防止系统陷入死等。

由于定时中断程序的挂机操作是从中断处理程序中直接跳转到主程序中,没有清除中断标志位,这使得主程序不能正常执行。

因此,监控程序使用了一项技术,将需要跳转的程序地址压入堆栈,并重新调用RETI从一个不存在的中断程序中退出,使单片机清除中断标志位,并从刚压入堆栈的地址开始执行。

程序流程图如图3-3所示。

图3-3定时中断子

 

第四节结束语

本设计以单片机AT89C51为控制核心,由实时时钟模块、环境温度检测模块、电压检测模块、人机接口模块、报警模块等部分组成。

其中实时时钟采用DS12887可实现年月日时分秒等时间信息的采集和闹钟功能。

温度检测模块由DS18B20集成温度传感器对现场环境温度进行实时检测。

电网检测模块由AD536、ICL7135等实现对电网电压有效值的采样和频率的间接测量及电网电压的欠压、过压检测。

人机接口模块由4×4键盘和LCD12864点阵液晶组成,可实现时间显示、闹钟设置、环境温度测量、电网电压、电网频率显示等功能。

报警模块由报警蜂鸣器和带音乐芯片的扬声器等可实现闹铃控制和电网电压的过压、欠压报警功能。

本系统以89C51为核心部件,利用软件编程,通过键盘控制和液晶显示实现了时钟功能、闹钟功能,并完成了对环境温度和市电信号频率及有效值的测量显示,能实现本设计的基本要求和发挥部分。

如在本设计中能很好的显示时间和日期,通过按键的设置来调节闹钟,修改时间日期的显示以及时间格式的显示功能,另外本设计还具有温度显示及电压,频率显示的功能等。

在本设计中尽量做到了硬件电路简单稳定,减小电磁干扰和其他环境干扰,,充分发挥软件编程的优点,减小因元器件精度不够引起的误差。

由于时间有限和本身知识水平的发挥,我们认为本系统还有需要改进和提高的地方,例如选用更高精度的元器件,硬件电路更加精确稳定,软件测量算法进一步的改进与完善等。

 

展开阅读全文
相关资源
猜你喜欢
相关搜索
资源标签

当前位置:首页 > PPT模板 > 商务科技

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1