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

(129)

文章推荐

  • 180型号混凝土搅拌机两个电流表都低什么原因

    网上有关“180型号混凝土搅拌机两个电流表都低什么原因”话题很是火热,小编也是针对180型号混凝土搅拌机两个电流表都低什么原因寻找了一些与之相关的一些信息进行分析,如果能碰巧解决你现在面临的问题,希望能够帮助到您。该搅拌机两个电流表都低的原因有电源问题、电机故障。1、电源问题:如果电源线松动或电源电

    2025年09月16日
    158315
  • 宫崎骏的十大作品有哪些-

    网上有关“宫崎骏的十大作品有哪些?”话题很是火热,小编也是针对宫崎骏的十大作品有哪些?寻找了一些与之相关的一些信息进行分析,如果能碰巧解决你现在面临的问题,希望能够帮助到您。第十名《哈尔の移动城堡》2004年纯真与失落永远是宫崎骏の动画主题第九名《千与千寻》人文の追求与关怀传递着宫崎骏深刻の思索第八

    2025年09月16日
    175322
  • 建行云税贷怎么申请?

    网上有关“建行云税贷怎么申请?”话题很是火热,小编也是针对建行云税贷怎么申请?寻找了一些与之相关的一些信息进行分析,如果能碰巧解决你现在面临的问题,希望能够帮助到您。去年建设银行推初了一款名为云税贷的产品,非常适合中小企业申请,有很多企业主想了解一下云税贷是怎么申请的,今天我们就来简单介绍一下,想融

    2025年10月03日
    152301
  • 开挂辅助工具“微乐龙江麻将开挂教程”附开挂脚本详细步骤

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

    2025年10月12日
    118323
  • 实测教程”微信链接拼三张是不是有挂”开挂(透视)辅助教程

     >>>您好:微信链接拼三张是不是有挂,软件加微信【】确实是有挂的,很多玩家在微信链接拼三张是不是有挂这款游戏中打牌都会发现很多用户的牌特别好,总是好牌,而且好像能看到其他人的牌一样。所以很多小伙伴就怀疑微信链接拼三张是不是有挂这款游戏是不是有挂,实际上这款游戏确实是有挂

    2025年10月14日
    117302
  • 实测教程”微乐山西麻将怎么提高胜率”其实确实有挂

     >>>您好:微乐山西麻将怎么提高胜率,软件加微信【】确实是有挂的,很多玩家在微乐山西麻将怎么提高胜率这款游戏中打牌都会发现很多用户的牌特别好,总是好牌,而且好像能看到其他人的牌一样。所以很多小伙伴就怀疑微乐山西麻将怎么提高胜率这款游戏是不是有挂,实际上这款游戏确实是有挂

    2025年11月15日
    114312
  • 教程开挂辅助“微信小程序麻将老是输怎么回事”附开挂脚本详细步骤

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

    2025年11月26日
    91316
  • 鱼钩种类大全解

    网上有关“鱼钩种类大全解”话题很是火热,小编也是针对鱼钩种类大全解寻找了一些与之相关的一些信息进行分析,如果能碰巧解决你现在面临的问题,希望能够帮助到您。鱼钩种类大全图解如下:根据所垂钓的鱼种不同,鱼钩的形状设计也是各有千秋,据说有近两千余种。这些钩形各异的鱼钩在设计时充分考虑了被钓的对象鱼,其体格

    2025年12月02日
    120302
  • 内蒙古通辽离黑龙江哈尔滨公路有多少公里-

    网上有关“内蒙古通辽离黑龙江哈尔滨公路有多少公里?”话题很是火热,小编也是针对内蒙古通辽离黑龙江哈尔滨公路有多少公里?寻找了一些与之相关的一些信息进行分析,如果能碰巧解决你现在面临的问题,希望能够帮助到您。通辽--哈尔滨:全程约602.6公里起点:通辽市1.通辽市内驾车方案1)从起点向正东方向出发

    2025年12月17日
    88314
  • 辅助开挂工具“微乐跑得快怎么拿好牌”详细分享装挂步骤

    无需打开直接搜索微信:本司针对手游进行,选择我们的四大理由:1、软件助手是一款功能更加强大的软件!无需打开直接搜索微信:2、自动连接,用户只要开启软件,就会全程后台自动连接程序,无需用户时时盯着软件。3、安全保障,使用这款软件的用户可以非常安心,绝对没有被封的危险存

    2025年12月21日
    74308
  • pvc和亚克力的区别有哪些

    网上有关“pvc和亚克力的区别有哪些”话题很是火热,小编也是针对pvc和亚克力的区别有哪些寻找了一些与之相关的一些信息进行分析,如果能碰巧解决你现在面临的问题,希望能够帮助到您。如今市场上的塑料制品很多,比较常见的有PVC和亚克力板,那么PVC和亚克力板的区别是什么呢?1、原材料不同PVC板是以PV

    2025年12月29日
    93323
  • 城市雨岛效应怎样解释

    网上有关“城市雨岛效应怎样解释”话题很是火热,小编也是针对城市雨岛效应怎样解释寻找了一些与之相关的一些信息进行分析,如果能碰巧解决你现在面临的问题,希望能够帮助到您。城市中林立的高楼大厦比喻为“钢筋水泥的森林”。而随着“森林”密度不断地增加,尤其一到盛夏,建筑物空调、汽车尾气更加重了热量的超常排放,

    2026年01月28日
    20321

发表回复

本站作者才能评论

评论列表(3条)

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

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

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

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

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

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