unsigned char key()/*按键处理子程序,记录0-9的各位数值,由函数返回值可得到按键值*/ { unsigned char a=0; if(P1_1==0) { delay(10); a=a+1;/*按一次键加一个值*/ while(a>9)/*最多为9*/ {a=0;} while(P1_1==0)/*判断当按键为0,没有释放。*/ {;} delay(10);/*直到按键释放,P1.1为1,执行消抖*/ }
return (a); }
为什么我从实验的数码管看到的是a值不断被加,而不是0到9之间变化 |