1602 键盘显示
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
摘要
在日常生活中,我们经常要通过按键来实现对电子装置的控制,小到手表手机,中到电视电脑,大到各种复杂仪器,都需要通过按键来实现各种操作。本次课程设计作为实践教学的一个重要环节,将以按键控制显示为主题,以1602液晶、MM74C922解码芯片、AT89C52单片机及其接口芯片为核心构造一个键盘控制显示系统,并使用Proteus软件对所设计的电路进行仿真,仿真结果是在1602液晶上显示所按下的键值。
关键词:Proteus仿真A T89C52 1602液晶MM74C922解码芯片
第一章总体设计
1.1电路结构分析
本次设计的目标为单片机控制的键盘识别显示系统,主要采用AT89C52单片机作为核心,由矩阵键盘电路、译码芯片、液晶显示等模块构成,分别对按键信息和显示电路以及软、硬件各个部分进行控制;本设计采用C言编程来实现对单片机的控制。实际运作时,单片机会将检测到的按键信号转换成数字,显示于1602液晶上。系统主要结构可以拆分如下:
①矩阵键盘:按键传送输入信息;此键盘采用的是4X4矩阵键盘,能输入
0~9,+,—,=,空格,返回,清零。
②键盘识别:矩阵键盘连接的是MM74C922解码芯片,通过解码芯片来识
别输入的按键位置。
③AT89C52:采用软件编程来实现按键信息的提取和转换;
④1602液晶:用于显示最终被单片机转换过的按键信息。
由以上构思可以设计此按键显示电路。
1.2总体方案设计
总体电路原理框图:如图 1.2所示
图1.2总体电路原理方框图
本次设计分两步来完成,第一步,解码芯片调试系统,将解码芯片接口连接到矩阵键盘作为AT89C52单片机的输入装置,然后以P2口作为输出端并连接一个数码管观察输出结果。第二步,1602的液晶调试系统,此过程就是将数码管换成1602液晶在进行结果显示。
1.3蜂鸣器模块设计
蜂鸣器模块设计如图 1.3所示
图 1.3 蜂鸣器模块电路图
蜂鸣器的驱动电流比较大一般要500MA~1000MA,所以不能直接接在AT82C52单片机的接口上,需要加一个三极管来进行驱动。
发声源程序如下:
#define BEEP() P1^=0x80 //蜂鸣器定义
void Sounder() //发生函数
{
INT8U i;
for(i=0;i<100;i++)
{
delay(3);BEEP();
}
}
1.4电路图设计
1.4.1解码芯片调试系统电路图如图1.3.1所示:
图 1.4.1解码芯片调试系统电路图
此电路图为解码芯片调试系统电路图,按键位置是由解码芯片进行识别。当按下K0键时,解码芯片进行采集DCBA端输出0000,表示第一个键按下,OA允许输出端为高电平有效,此时蜂鸣器发声提示,数码管则显示0。K9键按下时,解码芯片DCBA端输出0008,表示第九个键按下,OA允许输出端为高电平有效,此时蜂鸣器发声提示,数码管则显示9。KF键按下时,解码芯片DCBA 端输出0015示第九个键按下,OA允许输出端为高电平有效,此时蜂鸣器发声提示,数码管则显示F。仿真结果能完成上述功能,则证明调试成功。
1.4.2 总体电路图如图1.3.2所示
图 1.4.2 总体电路图
此电路为总体电路图设计,当有键按下时,解码芯片会对按键进行识别,并发送相应的代码到P3口,此时蜂鸣器发声提示,经过单片机的处理,按键的值会在1602液晶上进行显示。如果仿真结果能完成上述功能,则证明调试成功。
第二章 硬件电路
2.1 MM74C922解码芯片 2.1.1MM74C922特点及引脚功能
MM74C922具有下列特点:1.功耗低,电压3—5V ;2.三态门输出,与LPTTL 兼容;3.输出锁存按下的最后的键;4.用一个电容器就可以消除键盘抖动;5.两键轮回;6.行具有上拉功能;7.具有芯片内或芯片外时钟;8.最大开关电阻为50K Ω。MM74C922采用18脚双列直插封装,其引脚排列如图2.1.1所示。各引脚功能如下:
Y1—Y4为行键输入端;X1—X4为列键输入端;OSC 为振荡器的外接引线端,可用外部的输入脉冲或电容器;DA —DD 为数据输出端,可与微机直接接口;KBM 为键颤屏蔽端;
OE _____
为数据输出允许端,低电平有效;DAV
为数据输出有效,高电平有效;VCC 为电源端, 接3—5V ;GND 为接地端。
VCC DA DC DD —OE DA V X1
X2
图2.1.1 MM74C922引脚排列图
2.1.2 MM74C92真值表如表2.1.2所示
键盘扫描可采用外部时钟或外接电容来执行。译码器具有芯片的上拉电阻,使开关电阻可以高达50kΩ。开关矩阵中不需要二极管就可以消除多重开关,内部消颤电路仅需要一个单一电容就可以实现。当有键按下时,数据输出有效为高电平;当键释放后,数据输出有效返回到低电平。即使有另外一个键按下,在正常消颤期间后,数据输出有效返回至高电平表明接受新的键输入。在任何两个开关之间备有两键轮回功能。即使某一键释放,内部锁存器仍然锁存住按下的最后的键值。三态门输出便于总线的扩展和运行。
2.21602液晶
2.2.1 1602液晶功能引脚如图2.2.1所示
图 2.2.1 1602液晶功能引脚
2.2.2液晶命令集及双行液晶DDRAM地址如表2.2.2所示
表2.2.2 液晶命令集及双行液晶DDRAM地址
RS为寄存器选择位RS=0时选择命令寄存/状态寄存器,RS=1时选择数据寄存器I/D=1递增,I/D=0递减
S=0时显示屏不移动,S=1时,如果I/D=1且有字符写入时显示屏左移,否则右移D=1显示屏开开,D=0显示屏关
C=1时光标处现在地址计数器所指的位置,C=0时光标不出现
B=1时光标出现闪烁,B=0光标不闪烁
S/C=0时,RL=0则光标左移,否则右移
S/C=1时,RL=0则字符和光标左移,否则右移
DL=1时数据长度为8位,DL=0时为使用D7~D4共4位,分两次发送一个字节N=0为单行显示,N=1时为双行显示
F=1时为5x10点阵字体,F=0时为5x7点阵字体