假设4x4矩阵按键,行为h1,h2,h3,h4;列为L1,L2,L3,L4;按键值=a;
代码:
viod anjian() //按键子函数,每次只能按下1个按键。将这个函数放到10毫秒中断中执行。
{
n=0;//按键初值,0为没有按键按下
//扫描第一行
h1=1;h2=0;h3=0;h4=0;
L1=1;L2=1;L3=1;L4=1;
if(L1==0) a=11;//按键值=11是指第1行第1列
if(L2==0) a=12;//按键值=12是指第1行第2列
if(L3==0) a=13;//按键值=13是指第1行第3列
if(L4==0) a=14;//按键值=14是指第1行第4列
//扫描第2行
h1=0;h2=1;
if(L1==0) a=21;//按键值=21是指第2行第1列
if(L2==0) a=22;//按键值=22是指第2行第2列
if(L3==0) a=23;//按键值=23是指第2行第3列
if(L4==0) a=14;//按键值=24是指第2行第4列
//扫描第3行
h2=0;h3=1;
if(L1==0) a=31;
if(L2==0) a=32;
if(L3==0) a=33;
if(L4==0) a=34;
//扫描第4行
h3=0;h4=1;
if(L1==0) a=41;
if(L2==0) a=42;
if(L3==0) a=43;
if(L4==0) a=44;
} |