四乘四键盘控制LED数码管显示电路Word文件下载.doc

上传人:b****3 文档编号:15504201 上传时间:2022-11-02 格式:DOC 页数:15 大小:1.49MB
下载 相关 举报
四乘四键盘控制LED数码管显示电路Word文件下载.doc_第1页
第1页 / 共15页
四乘四键盘控制LED数码管显示电路Word文件下载.doc_第2页
第2页 / 共15页
四乘四键盘控制LED数码管显示电路Word文件下载.doc_第3页
第3页 / 共15页
四乘四键盘控制LED数码管显示电路Word文件下载.doc_第4页
第4页 / 共15页
四乘四键盘控制LED数码管显示电路Word文件下载.doc_第5页
第5页 / 共15页
点击查看更多>>
下载资源
资源描述

四乘四键盘控制LED数码管显示电路Word文件下载.doc

《四乘四键盘控制LED数码管显示电路Word文件下载.doc》由会员分享,可在线阅读,更多相关《四乘四键盘控制LED数码管显示电路Word文件下载.doc(15页珍藏版)》请在冰豆网上搜索。

四乘四键盘控制LED数码管显示电路Word文件下载.doc

主要内容如下:

1.根据矩阵式键盘的特点,进行键盘控制系统的整体研究与设计。

2.LED实时显示信息。

3.采用软件编程方法实现按键信息的提取和显示。

二、系统硬件设计方案

1.芯片的选择

STC89C52RC单片机是51系列单片机的一个成员,是8051单片机的简化版。

内部自带8K字节可编程FLASH存储器,拥有2K+字节的EEPROM作为程序存储器的拓展。

由于STC89C52RC具有下图中的配置,因此具有结构简单、造价低廉、效率高的特点,省去了外部的RAM、ROM和接口器件,减少了硬件的开销,节省了成本,提高了系统的性价比

STC89C52RC的主机系统图:

STC89C52RC的实物图:

2.系统原理图

2.1时钟电路

时钟电路用来提供单片机片内各种位操作的时间基准。

51单片机芯片内部有一个高增益反相放大器,用于构成时钟振荡电路,XTAL1为该放大器的输入端、XTAL2为该放大器的输出端。

借助内部时钟方式或外部时钟方式形成时钟。

如STC89C52RC的主机系统图所示在其外接晶体振荡器(简称晶振)或陶瓷谐振器就构成了内部振荡方式,片内高增益反相放大器与作为反馈元件的片外石英晶体或陶瓷谐振器一起可构成一个自激振荡器并产生振荡时钟脉冲。

STC89C52RC的主机系统图中外接晶体以及电容C1和C2构成并联谐振电路,它们起稳定振荡频率、快速起振的作用,其值为30pF左右,晶振频率选11.0529MHz。

2.2复位电路

计算机在启动运行时都需要复位,是CPU和系统中的其它部件都处于一个确定的初始状态,并从这个状态开始工作。

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

复位后不会影响内部RAM中的数据,仅将PC指向0000H,SP指向07H。

复位操作形式有两种,即上电自动复位和按键手动复位。

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

STC89C52RC的主机系统图中R1和C3组成上电复位电路,R取值为10KΩ,C3为10uF。

2.3矩阵式键盘电路

STC89C52RC单片机的并行口接4*4矩阵键盘,以P1.0-P1.3作输入线,以P1.4-P1.7作输出线;

P1口输出按键信息,在数码管上显示按键“0-F”序号。

如STC89C52RC的主机系统图中所示。

2.4译码显示电路

显示器是最常用的输出设备,与单片机应用系统接口的显示器主要是LED显示器和LCD显示器。

本系统输出结果用一个LED显示。

LED七段数码显示器由8个发光二极管组成显示字段,根据内部发光二极管的连接形式不同,LED有共阴极和共阳极两种,如下图所示。

译码器显示电路:

如STC89C52RC的主机系统图中所示,P3口连接的电路就是译码器显示电路。

当无按键闭合时,P1.0-P1.3与P1.4-P1.7之间开路。

当有按键闭合时,与闭合按键相连的两条I/0口线之间短路。

判断有无按键按下的方法是:

1.置列线P1.4-P1.7为输入状态,从行线P1.0-P1.3输出低电平,读入列线数据,若某一列线为低电平,则该列线上有键闭合

2.行线轮流输出低电平,从列线P1.4-P1.7读入数据,若有列为低电平,则对应行线上有键按下。

综合1.2两步的结果,可确定按键编号。

但是键闭合一次只能进行一次键功能操作,因此须等到按键释放后,再进行键功能操作,否则按键一次键有可能会连续多次进行同样的键操作。

本显示电路功能简单,为使编程简单,采用直接输出模式,即把P0.0-P0.7端口用8芯排线连接到数码显示模块区域中的a-h端口上,要求:

P0.0对应着a,以此类推。

LED显示段码如下:

三、系统软件设计

系统采用汇编语言编程实现其功能。

汇编语言克服使用机器语言编程的缺点,采用一些符号来代表地址或数据,简单明了。

程序是在Windows7环境下采用protues软件编写的,可实现电路的仿真。

2.程序流程图开始

开始

根据当前状况识别按键

读列线是否按下

Y

键盘初始化

读列线是否有键按下

延时去抖动

显示键值

N

2.相关数据

2.1相关变量:

R3、A、R1、R5、Cy。

2.2相关寄存器:

锁存器(特殊功能寄存器P0-P3)、累加器ACC、堆栈指针SP、数据指针DPTR、程序计数器PC

2.3存储单元:

片内RAM的00H-FFH、片外RAM的0000H-FFFFH、片内ROM的0000H-FFFFH、片外ROM的0000H-FFFFH

2.系统程序设计

ORG 0000H

LJMP MAIN

ORG 0030H

MAIN:

MOV P3,#00H

L1:

MOV R3,#0F7H ;

键盘行扫描的初值

MOV R1,#00H ;

TABLE2的取码指针

L2:

MOV A,R3

MOV P1,A

MOV A,P1

MOV R4,A

SETB C ;

C=1

MOV R5,#04H ;

列扫描数

L3:

RLC A

JNC KEYIN ;

C=0表示有按键

INC R1

DJNZ R5,L3 ;

4列扫描完毕

MOV A,R3 ;

扫描下一行

SETB C

RRC A ;

带进位的右移

MOV R3,A

JC L2 ;

4个行扫描完毕

JMP L1

KEYIN:

MOV R7,#10 ;

消除抖动10ms

D2:

MOV R6,#248

DJNZ R6,$

DJNZ R7,D2

D3:

MOV A,P1 ;

读入的键盘值是否与R4相等

XRL A,R4

JZ D3 ;

按键松开否

MOV A,R1

MOV DPTR,#TABLE2

MOVC A,@A+DPTR

MOV P3,A

TABLE2:

DB 4FH,5BH,06H,3FH,07H,7DH,6DH,66H

DB 7CH,77H,6FH,7FH,71H,79H,5EH,39H

END

四、效果演示

1.仿真演示

2.单片机演示

单片机无法演示仿真结果。

3.测试结果与分析

程序与STC89C52RC单片机的内部结构不相符合。

STC89C52RC的P3口是键盘输入端,P0口是连接LED数码管的输出端。

而仿真中的设计是P1口为键盘输入端,P3口为输出端。

故无法在单片机上实现。

参考文献

单片机课程设计——4×

4矩阵式键盘识别显示电路的设计(豆丁网)

梁喜东组手写绘图板系统设计报告(上海理工大学)

单片机原理及接口技术/胡健主编.北京:

机械工业出版社,2004.10

15

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

当前位置:首页 > 高等教育 > 医学

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

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