键盘扫描显示实验报告
实验五 键盘扫描实验 实验报告
键盘扫描实验实验报告
一、实验目的
1. 掌握线反转法键盘扫描原理。
2. 了解单片机的输入和输出过程,理解单片机的数据采集过程。
二、实验内容
单片机外接4x4键盘,通过线反转法判断按下的键,并在数码管上显示按键对应的数字。
第一行从左到右分别是开关K0, K1, K2, K3,第二行从左到右分别是K4, K5, K6, K7以此类
推。当按下Kn时,在数码管上显示数字n。
三、实验原理
线翻转法:先对行(R0-R3)置0,对列(R4-R7)置1。当有键被按下时,会把按键所在的列的电位从1变0,记录下位置;然后再将行列翻转,记录下按下键的所在行,两数进行或运算,就可以得到一个唯一表示按下键的数字。
例如:假定R0-R7分别与单片机的P2.0-P2.7相连。先把R4-R7置1,R0-R3置0(通过指令MOV P2, #0F0H实现)。当键K5被按下时,R5电位被拉低为低电平。此时,P2口表示的数为:1101 0000(0xD0);然后再置R4-R7为0,R0-R3为1,此时,R1电位被拉低为低电平,此时,P2口表示的数为:0000 1101(0x0D)。将两数相与取反,得到:0010 0010。
四、实验过程
1. 连接好单片机及其外围设备电路
2. 编写汇编程序
ORG LJMP Key
LJMP K7: CJNE R2, #82H, K8
ORG 0100H MOV P0, #0F8H Init: CLR P1.3 LJMP Key
MOV P0, #0C0H K8: CJNE R2, #14H, K9 Key: MOV P2, #0F0H MOV P0, #080H
键盘扫描实验设计报告
目录
第一章引言 (1)
1.1 键盘及LED扩展电路概述 (1)
1.2 系统的主要功能 (1)
第二章系统的硬件设计 (2)
2.1 系统的硬件构成及功能 (3)
2.2 主控模板硬件设计 (3)
2.3 ARM芯片及引脚说明 (3)
2.4 LED数码显示管 (6)
2.5 键盘设计 (8)
第三章系统的软件设计 (12)
3.1 软件总体功能设计 (12)
3.2各功能模块软件设计 (16)
第四章结束语 (18)
致谢 (18)
参考文献 (18)
附录 (19)
第一章引言
1.1键盘及LED扩展电路概述
键盘及LED扩展电路主要是由74HC164移位寄存器、数码显示管、按键、电阻、电容、导线等构成的。将8个按键用总线分别与两个74HC164移位寄存器、数码显示管联接起来,两个74HC164移位寄存器联接起来。一个用来存段码,一个用来存位码。在没有按键动作时,74HC164 移位寄存器的数据输入端AB(A 和B 作为一个2 个输入端的与门为74HC164 提供数据,在此电路里并联)的输入电平为1,供电路产生移位逻辑时钟脉冲信号的输入端CP也为1 电平。此时按下键就给了CP 端一个低电平,当键松开后CP端即恢复高电平,于是CP端就得到了一个输入翻转兼移位的低电平脉冲信号.当74HC164得到了一个0 数据的同时输出端Q7~Q0 的数据将全部左移一位。通过DATA端持续给其传送数据,当装满寄存器后开始循环,而寄存器与数码显示管是相通的,寄存器把对应位的高、低电平传给数码管,使符合条件(段码、位码)的0-9在数码管上显示出来。
行列式键盘扫描显示
单片机实验六行列式键盘扫描显示
一.实验目的
1.通过实验掌握查询式键盘的原理和编程方法
2.理解按键防抖技术。
二.实验内容
数码管为共阴型,P0输出7段码,开机运行数码管显示P,当按键按下时,数码管显示相应的数字键号(1-F)。
三.实验原理图
四.实验步骤
1.在KEIL4中编写、调试、编译程序。
2.在PRTUSE中设计电路,加载HEX文件运行仿真,按各键观察LED的显示。
3.在实验箱上用杜邦线连接JP4和JP8,JP10和JP3,打开实验箱电源开关,下载*.hex文件到单片机,按键观查运行状态。
五.实验参考程序
ORG 0000H
AJMP START
ORG 0030H
START: MOV P0,#73H
AN: MOV R1,#0FEH
MOV P1,R1
JNB P1.4, K1_1
JNB P1.5, K2_1
JNB P1.6, K3_1
JNB P1.7, K4_1
MOV A,R1
RL A
MOV R1,A
MOV P1,R1
JNB P1.4, K1_2
JNB P1.5, K2_2
JNB P1.6, K3_2
JNB P1.7, K4_2
MOV A,R1
RL A
MOV R1,A
MOV P1,R1
JNB P1.4, K1_3
JNB P1.5, K2_3
JNB P1.6, K3_3
JNB P1.7, K4_3
MOV A,R1
RL A
MOV R1,A
MOV P1,R1
JNB P1.4, K1_4
JNB P1.5, K2_4
JNB P1.6, K3_4
JNB P1.7, K4_4
AJMP AN
K1_1: AJMP K11
键盘显示板实验报告
课程设计报告
实验名称:键盘显示板实验报告
学院:电气工程与自动化学院
专业班级:自动化113班
学号:07号
姓名:陈奎
指导老师:王祖麟教授
2012/7/28
目录
第一章:器材准备 3
1.1:所需器材: 3
1.2:制作过程: 3
1.3:制作原理: 4 第二章:键盘显示板制作 5
2.1:原理图 5
2.2:PCB 6
2.3:注意事项 6
2.4:实验目的 7 第三章:总结: 9
第一章:器材准备
1.1:所需器材
铜板(100mm*75mm),开关(8个),电阻500Ω(8个),5KΩ(4个),74HC595(2个) ,打印机,美工刀与直尺,剪刀,玻璃板,塑料饭盒,盐酸,双氧水,盛水桶,木筷或竹筷,台钻,洗板水,热转印机、电烙铁等等,焊锡若干,砂纸。
1.2:制作过程:
1:用电脑制作原理图,进而利用自动不限生成PCB,所用软件为AltiumDesignerSummer09、。
2:打印:用电脑将绘制好的PCB图打印出来,由于是双面板,所以要打印两张,可以用热转印纸或者白色广告纸,打印如果断线太多就要重新打印。
3:将铜板用砂纸打磨,然后将打印纸中一张对准板子,贴上去,保持纸张不要移动,让背后包紧,放进热转印机中,热转印机的温度必须在150度以上,但是不要超过200摄氏度,铜板出来后,待其冷却后,小心的拿掉广告纸,在预先画好的四个角上的黑点处打洞,然后用铁丝将另一张也按照黑点和铜板固定好,固定在另一面,这是要注
意两变得孔,可以在打两个孔校正一下,准确无误后即可放入热转印机中,同样出来待其冷却后在揭去广告纸。
4:腐蚀铜板,制作电路图。拿出铜板后,检查是否断线,断线的地方用黑色碳素笔棉花,待墨迹干却后,将其投入双氧水和盐酸3:1配置的腐蚀液中,时时观察,冒气泡时就来回拨动板子,待其上面的铜片腐蚀完以后,夹出板子,用清水冲先干净上面的腐蚀液。
单片机键盘显示实验报告
单片机的键盘和显示实验报告
㈠实验目的
1.掌握单片机I/O的工作方式;
2.掌握单片机以串行口方式0工作的LED显示;
3.掌握键盘和LED显示的编程方法。
㈡实验器材
1.G6W仿真器一台
2.MCS—51实验板一台
3.PC机一台
4.电源一台
㈢实验内容及要求
实验硬件线路图见附图
从线路图可见,8051单片机的P1口作为8个按键的输入端,构成独立式键盘。四个LED显示器通过四个串/并移位寄存器74LS164接口至8051的串行口,该串行口应工作在方式0发送状态下,RXD端送出要显示的段码数据,TXD则作为发送时钟来对显示数据进行移位操作。
编写一个计算器程序,当某一键按下时可执行相应的加、减、乘、除运算方式,在四个显示器上显示数学算式和最终计算结果。
注:①通过按键来选择加、减、乘、除四种运算方式。
②输入两个数字均为一位十进制数,可预先放在内存中。
㈣实验框图(见下页)
㈤思考题
1.当键盘采用中断方式时,硬件电路应怎样连接?
P1.4~P1.7是键输出线,P1.0~P1.3是扫描输入线。输入与门用于产生按键中断,其输入端与各列线相连,再通过上拉电阻接至+5 V电源,输出端接至8051的外部中断输入端。
2.74LS164移位寄存器的移位速率是多少?
实验中要求计算的式子和结果之间相差一秒,移位寄存器的移位速率应该是每秒一位吧。其实这个问题确实不知道怎么回答。。。。。
LED 显示用的段码与教科书所提供的不同,本实验采用如下段码:
显示数符段码显示数符段码
0BBH A DBH
109H B F1H
2EAH C B2H
VHDL键盘去抖动计数器
实验三键盘扫描显示实验
一、实验目的
1.了解普通4×4键盘扫描的原理。
2.掌握组合逻辑电路和时序逻辑电路的混和设计。
3.进一步加深七段码管显示过程的理解。
二、实验仪器及设备
1、4×4键盘阵列。
2、FPGA主芯片。
3、可变时钟源。
4、七段码显示区。
5、LED显示模块。
三、实验原理
本实验主要完成的实验是完成4×4键盘扫描的,然后获取其键值,并对其进行编码,从而进行按键的识别,并将相应的按键值进行显示。
键盘扫描的实现过程如下:对于4×4键盘,通常连接为4行、4列,因此要识别按键,只需要知道是哪一行和哪一列即可,为了完成这一识别过程,我们的思想是,首先固定输出4行为高电平,然后输出4列为低电平,在读入输出的4行的值,通常高电平会被低电平拉低,如果读入的4行均为高电平,那么肯定没有按键按下,否则,如果读入的4行有一位为低电平,那么对应的该行肯定有一个按键按下,这样便可以获取到按键的行值。同理,获取列值也是如此,先输出4列为高电平,然后在输出4行为低电平,再读入列值,如果其中有哪一位为低电平,那么肯定对应的那一列有按键按下。
获取到行值和列值以后,组合成一个8位的数据,根据实现不同的编码在对每个按键进行匹配,找到键值后在7段码管和LED显示。
四、实验内容
(1)本实验内容是完成4×4键盘的扫描,然后将正确的键值进行显示,实验步骤如下:
1、编写键盘扫描和显示的VHDL代码。
2、用MaxPlusII对其进行编译仿真。
3、在仿真确定无误后,选择芯片ACEX1K EP1K30QC208。
4、给芯片进行管脚绑定,在此进行编译。
4led 动态扫描显示及按键实验感想
4led 动态扫描显示及按键实验感想
在完成4LED动态扫描显示及按键实验后,我深深感受到了科技的实际应用与电路设计的美妙结合。这不仅是一次对于理论知识的学习和巩固,更是一次将知识转化为实践的宝贵体验。
实验中,我们通过编程控制4个LED灯的亮灭,使其按照特定的模式进行动态扫描。这其中涉及到了数字信号处理、逻辑门电路、微控制器等多个知识点。每一个LED灯的亮与灭,都代表着一串代码的执行,每一次的动态扫描,都是程序在控制板上跑动的轨迹。
在实验过程中,我深刻体会到了编程的魅力。通过编写程序,我可以精确地控制每一个LED灯的亮灭时间,甚至可以创造出复杂的扫描效果。而按键的部分更是增添了实验的趣味性。通过按键,我可以随时改变LED的扫描模式,每一次按键,都像是给程序注入了一个新的灵魂,使其焕发出不同的光彩。
当然,实验过程中也遇到了不少困难。例如,如何确保4个LED 灯能够均匀地亮起与熄灭,如何处理按键抖动问题等。但正是这些问题的存在,使得整个实验更加具有挑战性。通过不断地尝试、调试,我最终克服了这些困难,也更加深入地理解了相关知识。
这次实验让我认识到,理论知识的学习固然重要,但只有将其应用于实践中,才能真正体会到知识的价值。同时,实验中的每一个细节、每一个问题,都是对自身能力的锻炼与提升。通过不断地实践与
尝试,我相信自己能够更好地掌握知识,更好地将理论知识与实践相结合。
未来,我计划进一步深入学习微控制器编程、电路设计等相关知识,希望能够为未来的科技应用做出更大的贡献。同时,我也希望能够将这次实验的经验分享给更多的同学,共同探索科技的奥秘。
单片机实验报告实验5行列式键盘实验
学号姓名专业电气工程及其自动化班级
实验5 行列式键盘实验
一、实验目的
(1)、学习掌握行列式键盘接口方法
(2)、学习掌握行列式键盘编程方法。
二、实验内容
用单片机P1口接4*4键盘,P0口接共阳数码管,编程实现键字的显示。P1.0-P1.3为行,P1.4-P1.7为列。先给端口设处置FEH,相当于给第一行置0,然后分写列值,如果对应的列值为0,说明该行与该列交叉处的键是按下的,接下来扫描第二行,与第一行的操作相同。这就是行列式键盘扫描原理。当扫描到某行的键按下时,就退出扫描,然后取键值,再将键值对应的额编码送P0端口显示。
三、实验设备
计算机(已安装Keil和Proteus软件)
元器件:A T89C51, CAP, CAP-ELEC, CRYSTAL, RES, 7SEG-COM-AN-GRN, RESPACK-7, BUTTON
四、实验硬件电路
实验源程序:
#include<reg51.h>
charled_mod[]={0x3f,0x06,0x5b,0x4f,0x66,0x6d,0x7d,0x07,0x6f,0x77,0x7c,0x58,0x5e,0x79,0x7 1};
char
key_buf[]={0xee,0xde,0xbe,0x7e,0xed,0xdd,0xbd,0x7d,0xeb,0xdb,0xbb,0x7b,0xe7,0xd7,0xb7,0x 77};
char getkey(void)
{char key_scan[]={0xef,0xdf,0xbf,0x7f};
char i=0,j=0;
汇编数码显示及键盘实验实验报告
数码显示及键盘实验
【实验内容】
1 、数码管显示0-7
2 、独立按键识别
【需要了解的知识】
1 、GPIC设定
2 、数码管动态扫描显示原理,键盘扫描工作原理,输入与输出及其处理【实验预习】
仔细预读实验指导电子文档的实验六、七及其前面的实验流程
【实验设备】
Keil C51 软件、ICE52仿真驱动、MEFIash编程软件、USB驱动程序【实验过程】
实验一数码管显示0-7
实验任务:
1 )先将“ 0-7 ”数码管的段码值写入存储器中,使8位数码管从右至左显示0-7.
实验步骤:
1)首先在硬盘上建立一个文件夹;
2 )启动Keil C51软件;
3 )执行Keil C51 软件的菜单“ Project|New Project .......... ”,弹出一个名为“Create NewProject ”的对话框。输入工程文件名,选择保存路径uv2后缀,
点击“保存”按钮;
4 )紧接着弹出“Options for Target ‘Target 1'”为刚才的项目选择ATMEL 的AT89S52的CPU选择之后,点击“确定”按钮;
5 )接下来弹出一个对话框提示你是否要把标准8051的启动代码添加项目
中去,此时,点击“否”按钮;
6 )执行菜单“ File|New……”,出现一个名为“ Text1 ”的文档。接着执行菜单“File|Save ”弹出一个名为“ SaveAs”的对话框,将文件名改为“ .asm” 后缀,然后保存;
7 )添加源程序文件到工程中,一个空的源程序文件建成。单击Keil C51
软件左边项目工作窗口“Targetl ”上的“ +”,将其展开。然后右击“Source GroupT 文件夹弹出下拉菜单,单击其中的“ Add Files to Group 'Source Groupl'”项;
实验五 键盘扫描实验 实验报告
实验五键盘扫描实验实验报告
一、实验目的
本次实验的主要目的是深入了解键盘扫描的工作原理,掌握键盘扫
描的编程实现方法,以及提高对硬件接口和软件编程的综合应用能力。
二、实验设备
1、计算机一台
2、实验开发板一套
3、下载线一根
4、键盘一个
三、实验原理
键盘扫描的基本原理是通过逐行或逐列扫描键盘矩阵,检测按键的
按下和释放状态。常见的键盘扫描方式有行列式扫描和编码式扫描。
在行列式扫描中,将键盘的行线和列线分别连接到微控制器的输入
输出端口。通过依次将行线设置为低电平,同时读取列线的状态,来
判断是否有按键按下。如果在某一行被设置为低电平时,对应的列线
检测到低电平,则表示该行和该列交叉处的按键被按下。
编码式扫描则是利用专门的编码芯片对键盘进行扫描和编码,微控
制器只需读取编码芯片输出的按键编码即可确定按键的状态。
四、实验步骤
1、硬件连接
将实验开发板与计算机通过下载线连接好。
将键盘连接到实验开发板的相应接口。
2、软件编程
选择合适的编程语言和开发环境,如 C 语言和 Keil 开发环境。
定义键盘的行线和列线所对应的端口。
编写扫描函数,实现键盘扫描的逻辑。
在主函数中调用扫描函数,并根据返回的按键值进行相应的处理,如显示按键字符或执行特定的操作。
3、编译下载
对编写好的程序进行编译,检查是否有语法错误。
将编译生成的可执行文件下载到实验开发板中。
4、实验测试
按下键盘上的不同按键,观察实验开发板上的显示或输出结果是否正确。
检查是否能够准确检测到按键的按下和释放,以及是否存在按键抖动等问题。
五、实验结果与分析
1、实验结果
键盘扫描显示实验原理及分析报告
键盘扫描显示实验原理及分析报告
学 院 计算机工程学院
专 业 计算机科学与技术
年级班别 09计算机科学与技术1班
学 号 2009404010131
学生姓名 李雅旖
指导教师 李 永
2012年01月
JINGCHU UNIVERSITY OF TECHNOLOGY
目录
一、内容提要
二、实验目的
三、实验要求
四、实验器材
五、实验电路
六、实验说明
七、实验框图
八、实验程序
九、实验分析
十、实验心得
十一、参考文献
一、内容提要
单片机技术日趋成熟的今天,其灵活的硬件电路的设计和软件的设计,让单片机得到了广泛的应用,几乎是从小的电子产品,到大的工业控制,单片机都起到了举足轻重的作用。单片机在人们的生活中得到广泛的应用。
本文介绍了基于单片机的键盘扫描显示实验,详细讨论了它从软件上实现的过程,以及硬件接口的原理及其实现,根据输出的列码和读取的行码来判断按下的是什在么键,即有按键时向列扫描码地址(0e101H)逐列输出低电平,然后从行码地址(0e103H)读回,理解读取键盘按键的原理,和最简单的单片机接口原理
二、实验目的:
1、掌握键盘和显示器的接口方法和编程方法。
2、掌握键盘扫描和LED八段数码管显示器的工作原理。
二、实验要求:
在上一个实验的基础上,利用实验仪提供的键盘扫描电路和显示电路,做一个扫描键盘和数码显示实验,把按键输入的键码在六位数码管上显示出来。
实验程序可分成三个模块:
1、键输入模块:扫描键盘、读取一次键盘并将键值存入键值缓冲单元。
2、显示模块:将显示单元的内容在显示器上动态显示。
3、主程序:调用键输入模块和显示模块。
矩阵键盘显示实验
矩阵键盘显示实验报告
20 -20 学年第学期
学院电子信息学院
课程矩阵键盘显示实验姓名
学号
指导老师
日期 20XX年XX月XX日
矩阵键盘显示实验
一、实验目的
1、掌握矩阵键盘检测的原理和方法;
2、掌握按键消抖的方法;
3、再次熟悉数码管的显示。
二、实验任务
从4×4矩阵键盘输入4位字符(如“15EF”),并显示于4位数码管。三、实验原理
在键盘中按键数量较多时,为了减少I/O口的占用,通常将按键排列成矩阵形式,如图1-1所示。在矩阵键盘中,每条水平线和垂直线在交叉处不直接连通,而是通过一个按键加以连接。
图1-1 矩阵键盘
矩阵键盘的按健识别方法很多,其中最常见的方法是行扫描法。行扫描法又称为逐行(或列)扫描查询法,是一种最常用的按键识别方法,下面介绍矩阵键盘的扫描过程。
(1)判断有无键按下
第一步:向所有的列输出口线输出低电平;
第二步:然后将行线的电平状态读入;
第三步:判断读入的行线值。若无键按下,所有的行线仍保持高电平状态;若有键按下,行线中至少应有一条线为低电平。
(2)去除按键的抖动
去抖原理:当判断到键盘上有键按下后,则延时一段时间再判断键盘的状态,若仍为有键按下状态,则认为有一个键按下,否则当作按键抖动来处理。
(3)按键识别(列或行扫描法)
在确认有键按下后,即可进入确定具体闭合键的过程。其方法是:依次将列(行)线置为低电平,即在置某根列(行)线为低电平时,其列(行)线为高电平,再逐行(列)检测各行(列)线的电平状态。若某行为低电平,则该行线与置为低电平的列线交叉处的按键就是闭合的按键。
(4)求按键的键值
单片机4X4键盘扫描和显示课程设计
表示任意一个十六进制数)分别表示键盘的第二行、第二行、第四
行;OxXE、OxXD、OxXB、0xX7(X表示任意一个十六进制数)则分别表示键盘的第一列、第二列、第三列和第四列。例如0xD7是键盘的第二行第四列的按键
对于数码管的连接,采用了共阳极的接法,其下拉电阻应保证芯片不会因为电流过大而烧坏。
五、电路设计及功能说明
4X4键盘的十六个按键分成四行四列分别于P1端口的八条I/O 数据线相连;两个七段数码管分别与单片机的P0 口和P2 口的低七位I/O数据线相连。数码管采用共阳极的接法,所以需要下拉电阻来分流。结合软件程序,即可实现 4 X4键盘的接口及显示的设计。当按下键盘其中的一个按键时,数码管上会显示出该按键在4X4键盘上的行值和列值。所以实现了数码管显示按键位置的功能
二、实验内容
"3
■审
■ "X I
►Tf
9
fe
设计并实现一 4 X 4键盘的接口,并在两个数码管上显示键盘所在的行与列。 即将8255单元与键盘及数码管显示单元连接,编写实验程序扫描键盘输入,
并
将扫描结果送数码显示,键盘采用4 X 4键盘,每个数码管值可以为0到F, 16 个数。将键盘进行编号记作0—F 当按下其中一个按键时将该按键对应的编号在 一个数码管上显示出来,当按下下一个按键时便将这个按键的编号在下一个数码 管上显示出来,且数码管上可以显示最近 6次按下按键的编号。
基本原理
1•电路设计及功能说明
2•硬件原理框图及电路图(包括接口芯片简介) 电路图:
叫"11
I —0 - 0
E E
可编辑
2
・q 戟
r :
fQfiWEl
键盘扫描显示实验报告
实验六键盘扫描显示实验
一、实验目的
1 、掌握键盘和显示器的接口方法和编程方法。
2 、掌握键盘扫描和LED八段码显示器的工作原理。
二、实验连线
将JP4和JP8通过8PIN排线连接,JP10和JP3通过8PIN排线连接
三、实验内容
把矩阵键盘上的按键输入的键码在静态数码管上显示出来。
四、实验步骤
实验采用线反转法
①打开keil软件---新建工程---新建文件
②编写程序:
#include<reg51.h>
#define uint unsigned int
#define uchar unsigned char
uchar
shuzu[3][4]={0xc0,0xf9,0xa4,0xb0,0x99,0x92,0x82,0xf8,0x80,0x90,0x88,0x83} ; uint i;
uint j;
void delay(uint n){
while(--n);
}
void keyscan(){
uchar temp;
P3=0x0f;
delay(1000);
temp=P3^0x0f;
switch(temp)
{case 0x02 : i=0;break;
case 0x04 : i=1;break;
case 0x08 : i=2;break;
default :break;
}
P3=0xf0;
delay(1000);
temp=P3^0xf0;
switch(temp)
{case 0x10 : j=0;break;
case 0x20 : j=1;break;
case 0x40 : j=2;break;
case 0x80 : j=3;break;
单片机 矩阵键盘实验 实验报告
单片机矩阵键盘实验实验报告
实验名称:单片机矩阵键盘实验
实验目的:掌握单片机矩阵键盘的原理和应用,能够使用单片机按键输入
实验内容:利用Keil C51软件,采用AT89C51单片机实现一个4x4的矩阵键盘,当按下任何一个按键时,将相应的键值传输到液晶显示屏上进行显示。
实验步骤:
1、搭建实验电路,将矩阵键盘与单片机相连,连接好电源正负极,然后将电路焊接成一个完整的矩阵键盘输入电路。
2、打开Keil C51软件,新建一个单片机应用工程,然后编写代码。
3、通过代码实现对矩阵键盘输入的扫描功能,当按下任何一个按键时,将相应的键值传输到液晶显示屏上进行显示。
4、编译代码,生成HEX文件,下载HEX文件到单片机中,将单片机与电源相连,然后就可以测试了。
5、测试完成后,根据测试结果修改代码,重新编译生成HEX 文件,然后下载到单片机中进行验证。
实验结果:
经过测试,实验结果良好,能够准确地输入按键的值,显示在液晶屏上。
实验感想:
通过这次实验,我深深地认识到了矩阵键盘技术的重要性以及应用价值,同时也更加深入了解单片机的工作原理和应用技术,这对我的学习和工作都有很好的帮助。
键盘扫描实验
实验键盘扫描显示实验
一、实验要求
编写程序,将键盘上的值显示在第八位LED七段数码管上。
二、实验目的
1.掌握LED七段数码管动态显示的原理。
2.学习键盘扫描的原理及其编程方法。
三、实验说明
图1 矩阵键盘原理图
电路如图1所示。键盘矩阵输入电路采用行列扫描法实现。将行线接输出口,列线接到输入口,采用列扫描法,先将某一行输出为低电平,其它行输出为高电平,用输入口来查询列线上的电平,逐次读入列值,如果行线上的值为0时,列线上的值也为0,则表明有按键按下。否则,接着读入下一列,直到找到该行有按下的键为止。如该行没有找到有按键按下,就按此方法逐行找下去,直到扫描完全部的行和列,并显示键值。
四、实验电路连线
此实验不需要连线。
五、程序框图
开始
数码管消隐启动T0计时中断
计时至0.1ms
扫描键盘
按键消抖
发送位码和段码
显示数字
六、程序代码
#include
sbit P_HC595_SER = P4^0; //pin 14 SER data input
sbit P_HC595_RCLK = P5^4; //pin 12 RCLk store (latch) clock
sbit P_HC595_SRCLK = P4^3; //pin 11 SRCLK Shift data clock
unsigned char code rui[]={
// 0 1 2 3 4 5 6 7 8 9 A B C D E F
0x3F,0x06,0x5B,0x4F,0x66,0x6D,
0x7D,0x07,0x7F,0x6F,0x77,0x7C,
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
键盘扫描显示实验报告
一、实验要求
利用实验箱提供的键盘扫描和显示电路,做一个键盘和数码显示实验,把按键输入的键码在六位数码管上显示出来。
实验程序可分为三个模块:
1、键输入模块:扫描键盘、读取一次键盘并将键值存入键值缓冲单元。
2、显示模块:将显示单元的内容在显示器上动态显示。
3、主程序:电影键输入模块和显示模块。
二、实验目的
1、掌握键盘和显示器的接口方法和编程方法。
2、掌握键盘扫描和LED八段码显示器的工作原理。
三、实验框图
四、实验电路及连线
硬件连接图
五、实验总结