LCD12864时钟毕业设计带矩阵键盘文档格式.docx
《LCD12864时钟毕业设计带矩阵键盘文档格式.docx》由会员分享,可在线阅读,更多相关《LCD12864时钟毕业设计带矩阵键盘文档格式.docx(40页珍藏版)》请在冰豆网上搜索。
但所需的元件较多,且不容易进行操作,可读性差,一旦设定后,很难再加入其他的功能,当加上日期、时间时增加了编程的难度。
采用液晶(JHD529M1)显示器件,该液晶显示器件与同类型的图形点阵液晶显示模块相比,不论硬件电路结构或显示程序都要简洁得多,且该器件的价格也略低于相同点阵的图形液晶模块。
而且此液晶显示平稳、省电、美观,更容易实现题目要求,对后续的功能兼容性高,同时有中文字库,也可以实现图像显示。
只需将软件作修改即可,可操作性强,也易于读数,能同时显示日期、时间、星期且易于修改。
综上分析,我们采用了第二个方案。
1.3时钟实现
采用软件实现,直接用单片机的定时器编程以实现时钟,优点节省硬件,缺点是编程复杂程序运行的每一步都需要时间,多一步或少一步程序都会影响记时的准确度,准确度较差。
采用专用的时钟芯片实现时钟的记时,专用时钟芯片记时准确,容易控制,能够从芯片直接读出日期、时间、星期,更符合题目要求。
综上分析,我们采用了第二个方案,时钟芯片选择常用的DS1302。
1.4驱对数码管的选择与论证
采用6B595芯片,其主要优点是具有数据存储寄存器,在移位的过程中,输出端的数据可以保持不变,因此可以直接控制数码管的7个段码。
与164相比,595还多有输出端时能/禁止控制端,可以使输出为高阻态。
方案二:
采用74LS164芯片。
74164和74595功能相仿,都是8位串行输入转并行输出移位寄存器。
74164的驱动电流(25mA)比74595(35mA)的要小,这样符合单片机直接输出的电流,省去了部分硬件电路。
而且是14脚封装,体积也小一些。
同时具有数据存储寄存器,在移位的过程中,输出端的数据可以保持不变。
这在串行速度慢的场合很有用处,数码管没有闪烁感。
第二章系统框图及工作原理
2.1系统总体设计结构框图
以AT89S52芯片为核心,当它接到来自按键的信号后,在数码管上显示相应的信息,同时在LCD上也显示相应的信息,并且有已处理好的图片文字也显示出来。
当接到来自时钟芯片的信号时,其内部程序将根据信号的类型进行处理,并且将处理的结果从其他的I/O口送到显示模块。
处理过程所需的时间极短,并且液晶显示的显示时间稳定。
系统设计框图如图1所示
主
控
制
器
LCD显示
键盘控制
时钟控制部分
单片机复位
LED显示
时钟振荡
图1.系统设计框图
2.2系统的硬件电路设计
2.2.1单片机控制部分
1)单片机的内部结构
MCS-51单片机片内主要由振荡电路、中央处理器(CPU)、内部总线、程序存储器、数据存储器、定时器/记数器、中断系统和I/O口等模块组成,各部分通过内部总线紧密地联系在一起。
2)单片机的振荡与时钟
单片机必须在时钟的驱动下才能进行工作,MCS-51系列单片机内部有一个时钟振荡电路,只需外接振荡源,就能产生一定频率的时钟信号送到单片机内部的各个单元,决定单片机的工作速度。
图2就是内部时钟工作方式的电路图,这是一种常用的方式。
这种方式是外接振荡源,一般选石英振荡器。
此电路在加电后延迟大约10ms振荡器起振,在XTAL2引脚产生幅度为3V左右的正弦波时钟信号,其振荡频率主要由石英晶振的频率决定。
电路中两个电容C1、C2的作用有两个:
一是帮助振荡器起振,二是对振荡器的频率起微调作用。
C1、C2的典型值为30pF。
晶振为12MHz。
图2.振荡电路
3)单片机的复位及复位电路
①复位状态
计算机在启动运行时都需要复位,复位使中央处理器CPU和系统中的其他器件都处于一种初始状态,并从这个初始状态工作。
MCS-51系列单片机有一个复位引脚RST。
在MCS-51系列单片机的RST引脚上输入一个高电平信号,该高电平信号至少要维持两个机器周期以上的时间,单片机被复位。
②复位电路
与其他计算机一样,MCS-51单片机系统的复位方法有上电自动复位、手动复位以及“看门狗”复位等。
此最小系统采用手动复位电路。
在系统运行过程中,有时可能对系统需要进行复位,为避免对硬件经常加电和断电造成的损害,我们可以采用手动复位。
这种方法是将一个开关串联一只电阻后,再并联于电容C的两端,在系统运行过程中需要复位时只要使开关闭合,在RST引脚上就会出现一定时间的高电平信号,从而使单片机实现复位。
图3.复位电路
4)当AT89S52芯片接到来自键盘输入的信号以及时钟芯片的信号时,其内部程序将根据信号的类型来处理,并将处理的结果送到相对应的显示模块。
本部分的硬件电路图如下:
图4.单片机控制模块
2.2.2液晶显示模块部分
该模块是由JHD529M1液晶显示器件组成,其器件带中文字库是一种128X64显示模式,具有4位/8位并行、2线或3线串行多种接口方式,内部含有国标一级、二级简体中文字库的点阵图形液晶显示模块;
其显示分辨率为128×
64,内置8192个16*16点汉字,和128个16*8点ASCII字符集.利用该模块灵活的接口方式和简单、方便的操作指令,可构成全中文人机交互图形界面。
可以显示8×
4行16×
16点阵的汉字,也可完成图形显示,低电压低功耗是其又一显著特点。
其引脚功能为:
由于本系统共用一个电源,所以第1,20脚为电源接地端;
第2,19脚为电源正端;
第3脚为对比度选择;
第4脚为显示数据或显示指令数据端;
第5脚为DB7~B0的数据被写到IR或DR;
第6脚为使能信号端;
第7~14脚为DB7~B0的数据线端;
第15脚为串/并口选择端;
第17为复位端,低电平有效;
第18脚为LCD驱动电压输出端。
其模块连接图如下:
图5.液晶显示模块
2.2.3键盘输入部分
本系统中用到16个按键,用P1的8个I/O口接4*4矩阵键盘即可满足需要,软件消除抖动处理,并能准确判断所需执行的相应程序。
其中,P1.4~P1.7为行线,列线为P1.0~P1.3。
判别有无键按下。
将P1口低4位输出为1,把P1.4~P1.7分别置0,一行一行来进行查询,若全为1,表明无按键按下,否则,表明至少有一个键按下。
在判断有键按下后,调用延时子程序,时间为10MS,再判断P1.4~P1.7的状态,如果仍然是有键按下,则确认键被真正按下,否则当做按键抖动处理。
当确认有键按下后,使P10为低电平,读入P1.4~P1.7的状态,若P1.4为0,表示第1行第1列的键S1按下,如此依次类推。
键盘功能如下图:
表2键盘基本功能表
(S1)
(S2)
1
(S3)
2
(S4)
3
(S5)
4
(S6)
5
(S7)
6
(S8)
7
(S9)
8
(S10)
9(日期)
(S11)
A(年)
(S12)
B(月)
(S13)
C(日)
(S14)
D(时)
(S15)E
(取消)(分)
(S16)
F(确定)
其电路图如下:
图6.键盘模块
2.2.4数码管显示部分
LED数码管显示器是由若干个发光二极管组成的,当发光二极管导通时,相应的点或线段就发光,将这些二极管排成一定的图形,控制不同组合的二极管导通,就可以显示出不同的字形。
其中七段数码管就是本部分所用到的,它内部把所有的发光二极管的阳极连接起来,通常为高电平,通过控制每一只发光二极管的阴极电平来使其发光或熄灭,阴极为低电平发光,为高电平熄灭,其com端为位选端。
其电路连接如图7所示:
图7.数码显示模块
2.2.5时钟系统
DS1302涓流充电时钟保持芯片的原理与应用
DS1302通过简单的串行接口与单片机进行通信实时时钟/日历电路,并提供秒分时日日期月年的信息,每月的天数和闰年的天数可自动调整时钟。
操作可通过AM/PM指示决定采用24或12小时格式,DS1302与单片机之间能简单地采用同步串行的方式进行通信。
RAM的读/写数据以一个字节或可多达31个字节的字符组成的方式通信。
DS1302工作时功耗很低保持数据和时钟信息时功率小于1mW,DS1302是由DS1202改进而来增加了以下的特性双电源管脚用于主电源和备份电源供应Vcc,为可编程涓流充电电源附加七个字节存储器,它广泛应用于电话传真便携式仪器以及电池供电的仪器仪表等产品领域。
图8.时钟模块
第三章软件编程
3.1主程序流程图
开机LCD液晶屏幕显示“广西水电学院大专05电子信息一班龚基信毕业设计”信息。
调用系统初始化程序,调用键盘子程序,调用读时间芯片时间子程序,调用时钟芯片初始化/改写程序,调用显示时间日期子程序。
开始
调用延时600MS子程序
T0定时中断初始化
LCD写指令子程序
定时时间为50MS
调用显示时间子程序子程序
调用LCD初始化子程序
调用显示日期子程序
调用键盘子程序
LCD写数据子程序
调用读时间芯片时间子程序
第一行显示完?
N
NY
调用更新显示单元的内容子程序
YN
显示二,三,四行程序
LCD全屏显示程序
Y
3.2键盘程序
判断是否有按键按下,没有则不停查询,如有并调用相应的数码显示子程序和液晶显示子程序。
第一行3键有无键闭合?
有无键闭合?
N
第一行1键有无键闭合?
Y
调用数码管显示子程序
N
LCD字显示子程序
键释放?
4键有无键闭合?
Y
N
2键有无键闭合?
YN
第二行7键有无键闭合?
第二行第5键有无键闭合?
8键有无键闭合?
第6个键有无键闭合?
LCD写指令子