独闷闷网

 找回密码
 立即注册
搜索
查看: 4356|回复: 4
打印 上一主题 下一主题
收起左侧

[求助] 数码管0~99999999计数

[复制链接]
跳转到指定楼层
楼主
发表于 2014-9-15 22:18:43 | 显示全部楼层 |只看大图 回帖奖励 |倒序浏览 |阅读模式

马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。

您需要 登录 才可以下载或查看,没有帐号?立即注册

x
#include<reg52.h>
#define uchar unsigned char
sbit duan=P2^6;
sbit wei=P2^7;
uchar code  ledchar[]= {0x3F,0x06,0x5B,0x4F,0x66,0x6D,0x7D,0x07,0x7F,0x6F,0x77,0x7C,0x39,0x5E,0x79,0x71};

uchar   ledbuff[6]= {0xff,0xff,0xff,0xff,0xff,0xff} ;
uchar i=0;
unsigned int cnt=0;

void main()
{
unsigned long sec=0;
EA=1;
TMOD=0x01;
TH1=0xfc;
TL1=0x67;
ET1=1;
TR1=1;   
while(1)
{
if(cnt>=1000)
{
cnt=0;
sec++;
}
ledbuff[0]=ledchar[sec%10];
ledbuff[1]=ledchar[sec/10%10];
ledbuff[2]=ledchar[sec/100%10];
ledbuff[3]=ledchar[sec/1000%10];
ledbuff[4]=ledchar[sec/10000%10];
ledbuff[5]=ledchar[sec/100000%10];
}
}
void interruptTimer() interrupt 1
{
TH1=0xfc;
TL1=0x67;
cnt++;
P0=0xff;
switch(i)
{
case 0:duan=1;i++0=ledbuff[0]=ledchar[0];duan=0;wei=10=0x7f;wei=0;break;
case 1:duan=1;i++0=ledbuff[1]=ledchar[1];duan=0;wei=10=0xbf;wei=0;break;
case 2:duan=1;i++0=ledbuff[2]=ledchar[2];duan=0;wei=10=0xdf;wei=0;break;
case 3:duan=1;i++0=ledbuff[3]=ledchar[3];duan=0;wei=10=0xef;wei=0;break;
case 4:duan=1;i++0=ledbuff[4]=ledchar[4];duan=0;wei=10=0xf7;wei=0;break;
case 5:duan=1;i=0;P0=ledbuff[5]=ledchar[5];duan=0;wei=1;P0=0xfb;wei=0;break;
default:break;
}
}
动态扫描部分不对 没有实现功能

QQ图片20140915221825.png (40.07 KB, 下载次数: 262)

QQ图片20140915221825.png
乐于分享,勇于质疑!
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

QQ|Archiver|手机版|独闷闷网 ( 粤ICP备12007667号-2 )

GMT+8, 2024-5-8 16:39 , Processed in 0.213948 second(s), 20 queries .

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