C51矩阵键盘扫描 请解释一下程序 特别是关键步骤 急!!!

网上有关“C51矩阵键盘扫描 请解释一下程序 特别是关键步骤 急!!!”话题很是火热,小编也是针对C51矩阵键盘扫描 请解释一下程序 特别是关键步骤 急!!!寻找了一些与之相关的一些信息进行分析,如果能碰巧解决你现在面临的问题,希望能够帮助到您。

C51 P1端口 4X4键盘说明

这是一个用C51单片机P1端口制作的4X4键盘,p1端口低4位是键盘列扫描线,高4位是键盘行扫描线,

列扫描线是输出,行扫描线是输入。

下面就程序作一个说明

(***)表示注意点

1、首先判断整个键盘有无按下键,只要行扫描线输入不为全1,(1111)即有键按下;

P1 = 0xf0;if((P1&0xf0)!=0xf0) 如果无按键按下,全1,则返回return -1;

如果有键按下则延时,再次判断有无按键按下,Delay();if((P1&0xf0)!=0xf0)如果无按键按下则返回return -1。

有键按下则继续,这个过程就是判键消抖,避免多次读键值,***或者因为按键抖动到读键值的时候无键按下,发生错误,***列扫描线是输出全0,P1 = 0xf0。

2、进入读键值了,与上面不同,每一次判断,***列扫描线只有一根输出为0,即P1=0xfe,0xfd,0xfb,0xf7;

首先列扫描线P1.0,sCode = 0xfe;如果行扫描线全1,则本列无键按下,扫描下一列

sCode = _crol_(sCode,1); ***sCode左移一位,即0xfd,如此扫描4次,行扫描线都全0,则无键按下,

返回return -1;

如果行扫描线不全0,就是有键按下,现在可以读键值了

kCode = ~P1; //P1=EE,ED...

for(i=0;i<16;i++)

{

if(kCode == KeyCodeTable[i])

return i;

}

1.首先kCode = ~P1;***p1值取反行扫描线可能的是1,2,4,8;同样列扫描线对应值1,2,4,8

合起p1有16个值,就是KeyCodeTable[i]表的x11,0x12,0x14,0x18,0x21,0x22,0x24,0x28,

0x41,0x42,0x44,0x48,0x81,0x82,0x84,0x88

如果 if(kCode == KeyCodeTable[i]) 成立,对应的 i 值就是键号。

2.返回i值就是键号,return i;。

uchar Keys_Scan()

{

uchar sCode,kCode,i,k;

P1 = 0xf0;

if((P1&0xf0)!=0xf0) //扫描列

{

Delay();

if((P1&0xf0)!=0xf0)//消抖

{

sCode = 0xfe;

for(k=0;k<4;k++)

{

P1 = sCode;//查找低位

if((P1&0xf0)!=0xf0)//只有等于才执行else P1和0xf0作与为0xf0 与 同真为真,一假为假

{

kCode = ~P1; //P1=EE,ED...

for(i=0;i<16;i++)

{

if(kCode == KeyCodeTable[i])

return i;

}

}

else

sCode = _crol_(sCode,1);

}

}

}

return -1;

}

矩阵键盘有多种键盘算法,如果是行列扫描的话,多个按键同时按下是可以得到所有的键值,如果是线反转法的话,就会有误判的可能。

行列扫描的话,一次只扫描一行按键,而且对应行的按键的状态也会通过互相独立的IO得到。

关于“C51矩阵键盘扫描 请解释一下程序 特别是关键步骤 急!!!”这个话题的介绍,今天小编就给大家分享完了,如果对你有所帮助请保持对本站的关注!

本文来自作者[邻家夏真]投稿,不代表盛龙号立场,如若转载,请注明出处:https://wap.snlon.net/sn/14967.html

(163)

文章推荐

  • 实测教程”微乐斗地主自建房怎么拿好牌”开挂(透视)辅助教程

    ˂pstyle="font-size:16px;font-family:-apple-system,BlinkMacSystemFont,"vertical-align:baseline;font-weight:400;color:#1A1A1A;font-style:normal;

    2025年09月26日
    179308
  • 如何避免购买二手房陷阱这些陷阱要注意

    网上有关“如何避免购买二手房陷阱这些陷阱要注意”话题很是火热,小编也是针对如何避免购买二手房陷阱这些陷阱要注意寻找了一些与之相关的一些信息进行分析,如果能碰巧解决你现在面临的问题,希望能够帮助到您。二手房虽然已经被装修过,可能不用自己在进行装修,可是购买二手房的过程可谓是难啊!所以购买二手房时要注意

    2025年10月04日
    167316
  • 喇叭的阻抗怎么用万用表测

    网上有关“喇叭的阻抗怎么用万用表测”话题很是火热,小编也是针对喇叭的阻抗怎么用万用表测寻找了一些与之相关的一些信息进行分析,如果能碰巧解决你现在面临的问题,希望能够帮助到您。测量喇叭阻抗,只能用欧姆档RX1,测量出是4-6欧姆,喇叭阻抗就是8欧姆,2-3欧姆,喇叭就是4欧姆阻抗。一般喇叭的直流阻抗是

    2025年10月05日
    171318
  • 玩家辅助神器:“微乐山东麻将开挂免费下载安装”开挂(透视)辅助教程

    >亲,微乐山东麻将开挂免费下载安装这款游戏原来确实可以开挂,详细开挂教程1、起手看牌2、随意选牌3、控制牌型4、注明,就是全场,公司软件防封号、防检测、 正版软件、非诚勿扰。2022首推。全网独家,诚信可靠,无效果全额退款,本司推出的多功能作 弊辅助

    2025年10月27日
    153315
  • 昆明到宣威有多少公里

    网上有关“昆明到宣威有多少公里”话题很是火热,小编也是针对昆明到宣威有多少公里寻找了一些与之相关的一些信息进行分析,如果能碰巧解决你现在面临的问题,希望能够帮助到您。驾车路线:全程约237.5公里起点:昆明站1.昆明市内驾车方案1)从起点向正西方向出发,沿站前路行驶140米,右转2)行驶420米

    2025年11月07日
    164303
  • 有哪些比较好的车?

    网上有关“有哪些比较好的车?”话题很是火热,小编也是针对有哪些比较好的车?寻找了一些与之相关的一些信息进行分析,如果能碰巧解决你现在面临的问题,希望能够帮助到您。现在开着英朗GT,6年多了,想换车。就到汽车之家恶查,非常喜欢君越和金牛座,身为纠结。相信有许多小伙伴也遇到一样的情形。君越,金牛座,你会

    2025年11月10日
    137300
  • 推荐一款“微乐山西麻将开挂后特证”附开挂脚本详细步骤

    您好:微乐山西麻将开挂后特证这款游戏是可以开挂的,软件加微信【添加图中微信】确实是有挂的,很多玩家在这款游戏中打牌都会发现很多用户的牌特别好,总是好牌,而且好像能看到其他人的牌一样。所以很多小伙伴就怀疑这款游戏是不是有挂,实际上这款游戏确实是有挂的,添加客服微信【添加图中微信】安装软件.1.微乐

    2025年11月13日
    123309
  • 防冻液从副水箱盖溢出是怎么回事

    网上有关“防冻液从副水箱盖溢出是怎么回事”话题很是火热,小编也是针对防冻液从副水箱盖溢出是怎么回事寻找了一些与之相关的一些信息进行分析,如果能碰巧解决你现在面临的问题,希望能够帮助到您。太平洋汽车网1.防冻液加多,防冻液如果超过水壶上的刻线,汽车在行驶过程中就会造成溢出的情况。2.节温器故障,节温器

    2025年12月04日
    125317
  • 辅助神器“手机跑得快能开挂吗”开挂(透视)辅助教程

    亲,手机跑得快能开挂吗这款游戏可以开挂的,确实是有挂的,很多玩家在这款游戏中打牌都会发现很多用户的牌特别好,总是好牌,而且好像能看到其他人的牌一样。所以很多小伙伴就怀疑这款游戏是不是有挂,实际上这款游戏确实是有挂的通过添加客服微:本司针对手游进行匹配,选择我们的四大理由:1、软件是一

    2025年12月10日
    93313
  • 必看教程“微乐广西麻将开挂教程”开挂(透视)辅助教程

    亲,微乐广西麻将开挂教程这款游戏可以开挂的,确实是有挂的,很多玩家在这款游戏中打牌都会发现很多用户的牌特别好,总是好牌,而且好像能看到其他人的牌一样。所以很多小伙伴就怀疑这款游戏是不是有挂,实际上这款游戏确实是有挂的通过添加客服微:本司针对手游进行匹配,选择我们的四大理由:1、软件是

    2025年12月20日
    121318
  • iphone手机右上角有一个横线的标是什么意思?

    网上有关“iphone手机右上角有一个横线的标是什么意思?”话题很是火热,小编也是针对iphone手机右上角有一个横线的标是什么意思?寻找了一些与之相关的一些信息进行分析,如果能碰巧解决你现在面临的问题,希望能够帮助到您。这个小图标指的是控制中心,它是为了提示你从右上角往下滑动可以调出控制中心,一旦

    2026年01月13日
    117314
  • 乾易通是什么骗局 乾易通是合法的吗

    网上有关“乾易通是什么骗局乾易通是合法的吗”话题很是火热,小编也是针对乾易通是什么骗局乾易通是合法的吗寻找了一些与之相关的一些信息进行分析,如果能碰巧解决你现在面临的问题,希望能够帮助到您。正宇乾易通是传销骗局,乾易通不是合法的。正宇控股集团的“乾易通”涉嫌集资诈骗,很多部门通报了企信易购是网络

    2026年02月18日
    41318

发表回复

本站作者才能评论

评论列表(3条)

  • 邻家夏真的头像
    邻家夏真 2025年10月22日

    我是盛龙号的签约作者“邻家夏真”

  • 邻家夏真
    邻家夏真 2025年10月22日

    本文概览:网上有关“C51矩阵键盘扫描 请解释一下程序 特别是关键步骤 急!!!”话题很是火热,小编也是针对C51矩阵键盘扫描 请解释一下程序 特别是关键步骤 急!!!寻找了一些与之相关...

  • 邻家夏真
    用户102201 2025年10月22日

    文章不错《C51矩阵键盘扫描 请解释一下程序 特别是关键步骤 急!!!》内容很有帮助