#include<reg51.h>#include<stdio.h>#define MDE P0#define LED1 P1void delay(int a){ while(a--);}void main(){ while(1) { int n,i=0x80,a; int x,k; MDE=0x7f; do { a=MDE;//没有直接用MED,好像会有问题 x=a%0x10;//就是这里来使步骤减少。有问题??? switch(x) { case 0x07:k=1;break; case 0x0B:k=2;break; case 0x0D:k=3;break; case 0x0E:k=4;break; default:k=0; } i/=0x02; a+=i; MDE=a; }while(a<=0xEF&&k==0); a-=i; do { n-=1; if(a<=0xEF) { a/=0x10; LED1=a; delay(10000); } LED1=0xFF; delay(10000); }while(n>=0); }} //本来用了一些定义函数调用,后来还是写在了一起逐行扫描 4*4的矩阵键盘 想法是按不同的键后面四个灯会熄灭不同和次数不同
可是烧入单片机没有这样。。。求指导,编这个码其实也可以看出我是想偷懒,不然就要写16种结果,。在线等大神。。
目前暂无任何回答
- 0 回答
- 0 关注
- 1534 浏览
添加回答
举报
0/150
提交
取消