找回密码
 立即注册

QQ登录

只需一步,快速开始

搜索
查看: 2027|回复: 0
收起左侧

51单片机七段数码管显示0-9999

[复制链接]
ID:965231 发表于 2021-9-10 10:47 | 显示全部楼层 |阅读模式
#include<STC12C5A60S2.H>
a[10]={0x03,0x9f,0x25,0x0d,0x99,0x49,0x41,0x1f,0x01,0x09};
sbit KEY1=P2^0;
sbit KEY2=P2^1;
void delay(unsigned int i)
{
        unsigned int j;
        while(i--)
                for(j=600;j>0;j--);
}
void init()
{
        P1=0xff;
        P0M0=0xff;
        P0M1=0x00;
        KEY1=KEY2=1;
}


void main(void)
{
        unsigned int j;
        unsigned char i;
        unsigned int k=1;
        unsigned char s[4];
        init();       
        while(1)
        {
                          while(k%=9999)
                        {
                                if(k<1000) s[0]=0xff; else s[0]=a[k/1000];
                                if(k<100) s[1]=0xff; else s[1]=a[k%1000/100];
                                if(k<10) s[2]=0xff; else s[2]=a[k%100/10];
                                s[3]=a[k%10];
                                j=50;       
                                while(j--)
                                {
                                   for(i=0;i<4;i++)
                                        {
                                                P0=0x01<<i;
                                                P1=s[i];
                                                delay(5);
                                        }
                                }                                                                  
                                k++;                       
                        }                                                                                                       
        }
}


回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

小黑屋|51黑电子论坛 |51黑电子论坛6群 QQ 管理员QQ:125739409;技术交流QQ群281945664

Powered by 单片机教程网

快速回复 返回顶部 返回列表