51单片机04矩阵按键逐行扫描,行列扫描代码.docVIP

  • 55
  • 0
  • 约3.29千字
  • 约 9页
  • 2016-12-06 发布于湖北
  • 举报

51单片机04矩阵按键逐行扫描,行列扫描代码.doc

51单片机04矩阵按键逐行扫描,行列扫描代码

矩阵键盘扫描原理? 方法一: ????????????? 逐行扫描:我们可以通过高四位轮流输出低电平来对矩阵键盘进行逐行扫描,当低四位接收到的数据不全为1的时候,说明有按键按下,然后通过接收到的数据是哪一位为0来判断是哪一个按键被按下。? 方法二: ????????????? 行列扫描:我们可以通过高四位全部输出低电平,低四位输出高电平。当接收到的数据,低四位不全为高电平时,说明有按键按下,然后通过接收的数据值,判断是哪一列有按键按下,然后再反过来,高四位输出高电平,低四位输出低电平,然后根据接收到的高四位的值判断是那一行有按键按下,这样就能够确定是哪一个按键按下了。? //行列扫描 #includereg51.h #define?GPIO_KEY?P0 #define?GPIO_LCD?P2 unsigned?char?code?a[17]= {~0xfc,~0x60,~0xda,~0xf2,~0x66,~0xb6,~0xbe,~0xe0, ~0xfe,~0xf6,~0xee,~0x3e,~0x9c,~0x7a,~0xde,~0x8e,~0x00}; //按位取反的用法 void?delay10ms(); void?keydown();//要与下面的定义一致 void?main() { ??GPIO_LCD=a[16];//初始化数码管 ??while(1)

文档评论(0)

1亿VIP精品文档

相关文档