共阴极的数码管
#include <reg51.h>
typedef unsigned int uint;
typedef unsigned char uchar;
uchar s[]={0x3F,0x06,0x5B,0x4F,0x66,0x6D,0x7D,0x07,0x7F,0x6F};
sbit btn_0=P1^0;
uchar num=0,flag=0;
void delay(uint n){
uint i=0,j=0;
for(i=0;i<n;i++){
for(j=0;j<255;j++){
}
}
}
void button(){
if(btn_0==0&&flag==0){
flag=1;
}
if(flag==1&&btn_0==1){
num++;
flag=0;
}
}
void deal(){
P2=s[num];
if(num==10){
num=0;
}
}
void main(){
while(1){
button();
deal();
}
}