51单片机数码管,静态显示学号40399244,求C语言程序怎么写 求附带电路图
展开全部
#include<reg51.h>
#define uchar unsigned char
uchar code ledtab[]={0x3f,0x06,0x5b,0x4f,0x66,0x6d,0x7d,0x07,0x7f,0x6f,0x40};//0-9
unsigned char scanled;
unsigned char disdat[8]="40399244";
void t1isr() interrupt 3 //显示
{
TH1=0xec;
TL1=0x78;
switch(scanled)
{
case 0:
P2=0x01;
P0=~ledtab[disdat[7]-0x30];
break;
case 1:
P2=0x02;
P0=~ledtab[disdat[6]-0x30];
break;
case 2:
P2=0x04;
P0=~ledtab[disdat[5]-0x30];
break;
case 3:
P2=0x08;
P0=~ledtab[disdat[4]-0x30];
break;
case 4:
P2=0x10;
P0=~ledtab[disdat[3]-0x30];
break;
case 5:
P2=0x20;
P0=~ledtab[disdat[2]-0x30];
break;
case 6:
P2=0x40;
P0=~ledtab[disdat[1]-0x30];
break;
case 7:
P2=0x80;
P0=~ledtab[disdat[0]-0x30];
break;
default:break;
}
scanled++;
scanled%=8;
}
main()
{
TMOD=0x10;
TH1=0xec;
TL1=0x78;
TR1=1;
ET1=1;
EA=1;
scanled=0;
while(1);
}
展开全部
。。。。。。。需要仿真么。。。。原理就是一位一位的扫描 速度快了就分不清了
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
加分就给你写,毕竟还要画图
本回答被网友采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
2015-04-19
展开全部
网上一搜一堆
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询