标题: 分享一个51单片机简易秒表 [打印本页]

作者: dnommd343    时间: 2016-12-9 22:37
标题: 分享一个51单片机简易秒表
下面是源代码,接线使用四位共阴的数码管
/*
数码管接口                单片机IO口
01                                P0.0
02                                P0.1
03                                P0.2
04                                P0.3
05                                P0.4
06                                P2.4
07                                P0.5
08                                P2.5
09                                P2.6
10                                P0.6
11                                P0.7
12                                P2.7
*/
#include<STC12C5A60S2.h>
sbit leda=P2^7;
sbit ledb=P2^6;
sbit ledc=P2^5;
sbit ledd=P2^4;
sbit point=P0^2;
void delay(unsigned int i){
        unsigned int j;
        for(;i>0;i--){
                for(j=0;j<600;j++);
        }
}
void show(unsigned int a,bit p){
        if(a==0){P0=0xeb;}
    if(a==1){P0=0x28;}
    if(a==2){P0=0xb3;}
        if(a==3){P0=0xba;}
        if(a==4){P0=0x78;}
        if(a==5){P0=0xda;}
        if(a==6){P0=0xdb;}
        if(a==7){P0=0xa8;}
        if(a==8){P0=0xfb;}
        if(a==9){P0=0xfa;}
        if(p==1){point=1;}
}
void xs(unsigned int a,b,c,d,bit pa,pb,pc,pd,time){
        leda=1;
        ledb=1;
        ledc=1;
        ledd=1;
        leda=0;
        show(a,pa);
        delay(time);
        leda=1;
        ledb=0;
        show(b,pb);
        delay(time);
        ledb=1;
    ledc=0;
        show(c,pc);
        delay(time);
        ledc=1;
        ledd=0;
        show(d,pd);
        delay(time);
        ledd=1;
}
void main(void){
        xs(1,2,3,4,1,0,1,0,1);
}






欢迎光临 (http://www.51hei.com/bbs/) Powered by Discuz! X3.1