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://www.snlon.net/sn/14967.html

(44)

文章推荐

  • 胶原蛋白是粉状的好还是液体的好

    网上有关“胶原蛋白是粉状的好还是液体的好”话题很是火热,小编也是针对胶原蛋白是粉状的好还是液体的好寻找了一些与之相关的一些信息进行分析,如果能碰巧解决你现在面临的问题,希望能够帮助到您。20岁不必每天都吃,因为体内胶原蛋白还不会过量流失。要吃也吃粉剂,液体和胶囊都不要考虑。胶囊含量低,液体添加

    2025年09月18日
    66318
  • 中山市最新楼盘有哪些?

    网上有关“中山市最新楼盘有哪些?”话题很是火热,小编也是针对中山市最新楼盘有哪些?寻找了一些与之相关的一些信息进行分析,如果能碰巧解决你现在面临的问题,希望能够帮助到您。中山市最新楼盘:1星汇云锦南区2君悦·新座石岐区3雅居乐铂爵山火炬区4紫园东区5京珠花园东升镇6城

    2025年09月26日
    66300
  • 实操教程“微乐河南麻将万能开挂器通用版”(原来确实是有挂)

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

    2025年09月26日
    73321
  • 辅助神器“微乐陕西三代怎么免费开挂”(详细开挂教程)

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

    2025年09月27日
    64309
  • 搏击和散打哪个更实用

    网上有关“搏击和散打哪个更实用”话题很是火热,小编也是针对搏击和散打哪个更实用寻找了一些与之相关的一些信息进行分析,如果能碰巧解决你现在面临的问题,希望能够帮助到您。自由搏击和散打哪个更实用,更偏向于自由搏击。因为自由搏击中的地面技技术,在实战中更容易制服对手,散打由于是有规则的竞技,限制肘膝的使用

    2025年09月28日
    67312
  • 必看教程“微乐广东麻将有没有挂”附开挂脚本详细步骤

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

    2025年09月30日
    59306
  • 离职了医保卡里的钱能取出来吗

    网上有关“离职了医保卡里的钱能取出来吗”话题很是火热,小编也是针对离职了医保卡里的钱能取出来吗寻找了一些与之相关的一些信息进行分析,如果能碰巧解决你现在面临的问题,希望能够帮助到您。离职了,医保卡里的钱不能取出来。医保卡里的资金通常是专门用于医疗消费的,不能直接取出。只有在特定情况下,如医保卡使用终

    2025年10月04日
    61301
  • 白酒公司怎么样运营呢?

    网上有关“白酒公司怎么样运营呢?”话题很是火热,小编也是针对白酒公司怎么样运营呢?寻找了一些与之相关的一些信息进行分析,如果能碰巧解决你现在面临的问题,希望能够帮助到您。白酒公司怎样营运呢?谢谢邀请!对白酒企业而言,营运就是为消费者提供比竞争对手提供更能满足其需求的产品或服务。营运的目的就是要以消费

    2025年10月06日
    64311
  • 辅助神器“微乐安徽麻将怎样免费开挂”附开挂脚本详细步骤

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

    2025年10月20日
    51320
  • 元旦该给老师买什么礼物-不是圣诞节的

    网上有关“元旦该给老师买什么礼物?不是圣诞节的”话题很是火热,小编也是针对元旦该给老师买什么礼物?不是圣诞节的寻找了一些与之相关的一些信息进行分析,如果能碰巧解决你现在面临的问题,希望能够帮助到您。1.子曰:三人行,必有我师焉。古语云:师者,传道授业解惑也。俗话说:教师是太阳底下最光辉的职业。我认为

    2025年10月24日
    40318
  • 化学试剂的化学试剂的蒸馏和精馏

    网上有关“化学试剂的化学试剂的蒸馏和精馏”话题很是火热,小编也是针对化学试剂的化学试剂的蒸馏和精馏寻找了一些与之相关的一些信息进行分析,如果能碰巧解决你现在面临的问题,希望能够帮助到您。在化学分析、仪器分析、无机制备、有机合成以及其他的科学实验工作中经常会遇到所用的化学试剂纯度不够,或买不到所需纯度

    2025年10月26日
    44301
  • 哪些大学社团值得参加?

    网上有关“哪些大学社团值得参加?”话题很是火热,小编也是针对哪些大学社团值得参加?寻找了一些与之相关的一些信息进行分析,如果能碰巧解决你现在面临的问题,希望能够帮助到您。大学社团丰富多彩,选择自己喜欢的固然重要,但是更应该选择一些能帮助个人成长,能实现个人价值的一些社团,比如:辩论协会、志愿服务社团

    2025年10月31日
    29318

发表回复

本站作者才能评论

评论列表(3条)

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

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

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

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

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

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