转] 51单片机C编程(按键控制数码管显示)2011.2.21阅读
(1)下一篇:8位和6位单片机,|返回日志列表赞赞转载
(8)分享评论复制地址编辑
#include 51.h> sbit k1=P3^0; //p30定义为第一个按键 sbit k2=P3^1; //p31定义为第二个按键 char tab[]={0xc0,0xf9,0xa4,0xb0,0x99,0x92,0x02,0xf8,0x00,0x10}; void delay(int x){int i,j; for(i=x;i>0l;i--) {for(j=255;j>0;j--);}}void main(){int n=0; P0=0xc0; //初始显示0 while (1){if(k1==0) //如果第一个按键按下{delay (30); //延时去抖 if(k1==0) //再判断是否按下{++n; //N加1 if(n==10) //如果N等于10,N为0 n=0;}while(k1==0); //等待按键松开}if(k2==0) //如果第二个按键按下{delay (30); //延时去抖 if(k2==0) //再判断是否按下{--n; //N减1 if(n<0) //如果N小于0,N为9 n=9; while(k2==0); //等待按键松开}} P0=tab[n]; //将段码送P0口}}