单片机实验:矩阵式键盘输入识别
单片机实验:矩阵式键盘输入识别
1.实验内容
编写 c 语言程序,设计一个 4X4 的矩阵键盘,键盘的号码 0~15,要求编写出一个键盘输入扫描程序,要求单片机能根据键盘排列顺序,能将按下去键盘号正确识别出来,并采用两个数码管分别键盘号码的个位和十位。
2.Proteus参考电路图
3.实验程序
#include<reg51.h>
#define uchar unsigned char
#define uint unsigned int
sbit L1=P1^0;
sbit L2=P1^1;
sbit L3=P1^2;
sbit L4=P1^3;
sbit L5=P3^0;
uchar dis[]={0xc0,0xf9,0xa4,0xb0,0x99,0x92,0x82,0xf8,0x80,0x90};
uchar key;
uint time;
void delay(time)
{uint j;for(j=0;j<time;j++);
}
void display(uchar k)
{L5=0;delay(5);L5=1;P0=dis[k/10];delay(5);P2=dis[k%10];
}
void main()
{uchar temp;uchar i;key=0x00;while(1){P1=0xef;for(i=0;i<=3;i++){if(L1==0) { key=0+4*i;}if(L2==0) { key=1+4*i;}if(L3==0) { key=2+4*i;}if(L4==0) { key=3+4*i;}delay(500);temp=P1;temp=temp|0x0f;temp=temp<<1;temp=temp|0x0f;P1=temp;}display(key);}
}
单片机实验:矩阵式键盘输入识别相关推荐
- 单片机 实现计算机键盘录制,用单片机实现PC键盘输入.doc
用单片机实现PC键盘输入 用单片机实现PC键盘输入用单片机实现PC键盘输入.txt跌倒了,爬起来再哭~~~低调!才是最牛B的炫耀!!不吃饱哪有力气减肥啊?真不好意思,让您贱笑了.我能抵抗一切,除了诱惑 ...
- 51单片机模拟数字键盘输入以及图像显示+Proteus仿真
51单片机模拟数字键盘输入以及图像显示+Proteus仿真 关于取模 取模软件:pctolcd2002 文字取模方式:阴码–列行式,逆向 主程序代码 //*********************** ...
- 51单片机学习-矩阵式键盘的应用
1.电路结构 行线Row0~3接到P0.0~P0.3端口,通过4个1K上拉电阻接+5V,置"1",作为输入状态:列线Col0~3接到P2.0~P2.3端口,作为输出状态.按键设在行 ...
- 单片机实例14——4×4矩阵式键盘识别技术(硬件电路图+汇编程序+C语言程序)
14. 4×4矩阵式键盘识别技术 1. 实验任务 如图4.14.2所示,用AT89S51的并行口P1接4×4矩阵键盘,以P1.0-P1.3作输入线,以P1.4-P1.7作输出线:在数码管上显示每个按键 ...
- Protues 基于51单片机的DS18B20温度采集:键盘输入温度上下限_超出设定温度范围报警_8数码管显示
功能实现: 1.设计单片机与16按键的矩阵式键盘接口以及8数码管的接口电路,测试显示和按键功能. 2.设计单片机与DS18B20的接口电路,实现数字温度信息的采集,然后编程处理采集到的数据,得到温度值 ...
- 单片机中的矩阵式键盘(0-F)
键盘分为编码键盘和非编码键盘.键盘上闭合键的识别由专用的硬件编码器实现,并产生编码号或键值的称为编码键盘,如计算机键盘.而靠软件编程来识别的键盘称为非编码键盘,在单片机组成的各种系统中,用的较多的是非 ...
- 【51单片机】矩阵键盘逐行扫描法仿真实验+超详细Proteus仿真和Keil操作步骤
[51单片机]矩阵键盘逐行扫描法仿真实验+超详细Proteus仿真和Keil操作步骤 一.环境 二.硬件部分 1. Proteus新建工程 2. 添加元件 3.连接线路 4.硬件效果 三.软件部分 1 ...
- 单片机实验说明<四>矩阵键盘与LCD基本使用
实验四 矩阵键盘识别设计 设计要求: 对4×4矩阵式键盘电路的键值进行编码,编程实现在LCD液晶显示器上显示每个按键的"0-F"序号 电路设计: 软件代码: #include &q ...
- 51单片机开发 矩阵键盘中断实验与简易计算器及proteus仿真
51单片机开发 矩阵键盘中断实验与简易计算器及proteus仿真 文章目录 51单片机开发 矩阵键盘中断实验与简易计算器及proteus仿真 实验内容 一.实验一 矩阵键盘中断实验 数码管显示 1.仿 ...
最新文章
- 转:经典论文翻译导读之《Google File System》
- 封头名义厚度如何圆整_松原封头价格
- 漫步数理统计二十二——二项及相关分布
- Error creating object Microsoft Data Access Components 2.1 (or later) have been properly installed
- 个人地理数据库与文件地理数据库的区别
- php 获取文件加的名称
- Detours的使用
- 产品申请UL标志包括以下几个步骤
- 解释一下智能客户端技术
- 面试经验--Lowe Profero
- 火灾自动报警系统 300W广播功率放大器
- 消消乐游戏算法实现(三消乐)
- html写樱花树,写樱花树的作文
- 人工智能狂潮_患有社交媒体狂潮? 使用这些工具从一个地方管理所有帐户
- Masking操作,即只关注图像的一部分
- 数据服务门槛再提升,这个“TOP1玩家”凭何再度领军?
- AlexNet论文翻译(中英文对照版)-ImageNet Classification with Deep Convolutional Neural Networks
- 知网文献使用EndNote X9在word插入参考文献
- antv x6踩坑记录二
- java 以某某结尾_Java中删除第一个集合中以某某开头的元素,删除第二个集合中以某某结尾的元素,并合并成一个集合...
热门文章
- ava.lang.IllegalArgumentException: At least one base package must be specified 	at org.springframewo
- Calendar获取日期所在周、月份第一天、最后一天以及前一周内所有时间
- python教程app下载地址_Python爬取APP下载链接的实现方法
- Android9.0 紧急号码配置
- 4月刊佳文推荐:开发者的眼界
- 神经网络的三种训练方法,神经网络常用训练方法
- 计算机系统:异常控制流
- 前端与后台(学习自某B站Up主)
- iOS开发:获取系统WiFi名称,WiFi列表,WiFi强度,WiFi设置密码,WiFi副标题标签
- PowerBuilder打印QRCode