找回密码
 立即注册

QQ登录

只需一步,快速开始

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

单片机数码管动态显示代码

[复制链接]
ID:959863 发表于 2021-8-10 18:35 | 显示全部楼层 |阅读模式
#include<reg52.h>
#defineuint unsigned int
#define  uchar unsigned char
sbitdula=P2^6;
sbitwela=P2^7;
ucharcode table[]={0x06,0x5b,0x4f,0x66,
                    0x6d,0x7d,0x07,0x7f,0x6f,
                    0x77,0x7c,0x39,0x5e,0x79,
                    0x71,0x00,0x80};
ucharcode tablewe[]={0xfe,0xfd,0xfb,0xf7,0xef,0xdf};                                                                       
uintnum,t;
sbitd1=P1^0;
voiddelay(uint);
voidmain()
{
     TMOD=0x01;
                  TH0=(65536-2000)/256;
                  TL0=(65536-2000)%256;
                  EA=1;
                  ET0=1;  
                  TR0=1;   
                  
                  
     
                  
                 num=0;
                  while(1)
                  {
                                                   if(t=1)
                                                   {
                                                                             t=0;
                                                                             
                                                                             wela=1;
                                                                             P0=tablewe[num];
                                                                             wela=0;
                                                                             
                                                                             
                                                                             dula=1;
                                                                             P0=table[num];
                                                                            dula=0;
                                                                             delay(10);
                                                                             
                                                                             
                                                                             num++;
                                                                             if(num==6)
                                                                                 num=0;
                                                                                                      
                                                                             
                                                           }
       }
                  
}
voiddelay(uint b)
{
    uint a, c;
                 for(a=10;a;a--)
                     for(c=b;c;c--);
}
void extern0()interrupt 1
{
     t++;
}
回复

使用道具 举报

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

本版积分规则

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

Powered by 单片机教程网

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