找回密码
 立即注册

QQ登录

只需一步,快速开始

搜索
查看: 1600|回复: 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++;                       
                        }                                                                                                       
        }
}


分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友
收藏收藏 分享淘帖 顶 踩
回复

使用道具 举报

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

本版积分规则

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

Powered by 单片机教程网

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