单片机实验:矩阵式键盘输入识别

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);}
}

单片机实验:矩阵式键盘输入识别相关推荐

  1. 单片机 实现计算机键盘录制,用单片机实现PC键盘输入.doc

    用单片机实现PC键盘输入 用单片机实现PC键盘输入用单片机实现PC键盘输入.txt跌倒了,爬起来再哭~~~低调!才是最牛B的炫耀!!不吃饱哪有力气减肥啊?真不好意思,让您贱笑了.我能抵抗一切,除了诱惑 ...

  2. 51单片机模拟数字键盘输入以及图像显示+Proteus仿真

    51单片机模拟数字键盘输入以及图像显示+Proteus仿真 关于取模 取模软件:pctolcd2002 文字取模方式:阴码–列行式,逆向 主程序代码 //*********************** ...

  3. 51单片机学习-矩阵式键盘的应用

    1.电路结构 行线Row0~3接到P0.0~P0.3端口,通过4个1K上拉电阻接+5V,置"1",作为输入状态:列线Col0~3接到P2.0~P2.3端口,作为输出状态.按键设在行 ...

  4. 单片机实例14——4×4矩阵式键盘识别技术(硬件电路图+汇编程序+C语言程序)

    14. 4×4矩阵式键盘识别技术 1. 实验任务 如图4.14.2所示,用AT89S51的并行口P1接4×4矩阵键盘,以P1.0-P1.3作输入线,以P1.4-P1.7作输出线:在数码管上显示每个按键 ...

  5. Protues 基于51单片机的DS18B20温度采集:键盘输入温度上下限_超出设定温度范围报警_8数码管显示

    功能实现: 1.设计单片机与16按键的矩阵式键盘接口以及8数码管的接口电路,测试显示和按键功能. 2.设计单片机与DS18B20的接口电路,实现数字温度信息的采集,然后编程处理采集到的数据,得到温度值 ...

  6. 单片机中的矩阵式键盘(0-F)

    键盘分为编码键盘和非编码键盘.键盘上闭合键的识别由专用的硬件编码器实现,并产生编码号或键值的称为编码键盘,如计算机键盘.而靠软件编程来识别的键盘称为非编码键盘,在单片机组成的各种系统中,用的较多的是非 ...

  7. 【51单片机】矩阵键盘逐行扫描法仿真实验+超详细Proteus仿真和Keil操作步骤

    [51单片机]矩阵键盘逐行扫描法仿真实验+超详细Proteus仿真和Keil操作步骤 一.环境 二.硬件部分 1. Proteus新建工程 2. 添加元件 3.连接线路 4.硬件效果 三.软件部分 1 ...

  8. 单片机实验说明<四>矩阵键盘与LCD基本使用

    实验四 矩阵键盘识别设计 设计要求: 对4×4矩阵式键盘电路的键值进行编码,编程实现在LCD液晶显示器上显示每个按键的"0-F"序号 电路设计: 软件代码: #include &q ...

  9. 51单片机开发 矩阵键盘中断实验与简易计算器及proteus仿真

    51单片机开发 矩阵键盘中断实验与简易计算器及proteus仿真 文章目录 51单片机开发 矩阵键盘中断实验与简易计算器及proteus仿真 实验内容 一.实验一 矩阵键盘中断实验 数码管显示 1.仿 ...

最新文章

  1. 转:经典论文翻译导读之《Google File System》
  2. 封头名义厚度如何圆整_松原封头价格
  3. 漫步数理统计二十二——二项及相关分布
  4. Error creating object Microsoft Data Access Components 2.1 (or later) have been properly installed
  5. 个人地理数据库与文件地理数据库的区别
  6. php 获取文件加的名称
  7. Detours的使用
  8. 产品申请UL标志包括以下几个步骤
  9. 解释一下智能客户端技术
  10. 面试经验--Lowe Profero
  11. 火灾自动报警系统 300W广播功率放大器
  12. 消消乐游戏算法实现(三消乐)
  13. html写樱花树,写樱花树的作文
  14. 人工智能狂潮_患有社交媒体狂潮? 使用这些工具从一个地方管理所有帐户
  15. Masking操作,即只关注图像的一部分
  16. 数据服务门槛再提升,这个“TOP1玩家”凭何再度领军?
  17. AlexNet论文翻译(中英文对照版)-ImageNet Classification with Deep Convolutional Neural Networks
  18. 知网文献使用EndNote X9在word插入参考文献
  19. antv x6踩坑记录二
  20. java 以某某结尾_Java中删除第一个集合中以某某开头的元素,删除第二个集合中以某某结尾的元素,并合并成一个集合...

热门文章

  1. ava.lang.IllegalArgumentException: At least one base package must be specified at org.springframewo
  2. Calendar获取日期所在周、月份第一天、最后一天以及前一周内所有时间
  3. python教程app下载地址_Python爬取APP下载链接的实现方法
  4. Android9.0 紧急号码配置
  5. 4月刊佳文推荐:开发者的眼界
  6. 神经网络的三种训练方法,神经网络常用训练方法
  7. 计算机系统:异常控制流
  8. 前端与后台(学习自某B站Up主)
  9. iOS开发:获取系统WiFi名称,WiFi列表,WiFi强度,WiFi设置密码,WiFi副标题标签
  10. PowerBuilder打印QRCode