微波EDA网,见证研发工程师的成长!
首页 > 硬件设计 > 嵌入式设计 > 数码管电路的制做与驱动

数码管电路的制做与驱动

时间:11-13 来源:互联网 点击:

全局变量
bit fg; //定义一个亮起和熄灭标志

void timer0(void) interrupt 1 using 1 //中断程序
{
if (fg) //当fg为1时点亮6位数码管
{ P2=0xff;
if (i>=6)
{
i=0;
}
else
{
P3=bit_num[i]; //输出位码到P3口
P2=meg_val[i]; //输出段码到P2口
i++;
}
}
else //当fg为0时熄灭数码管
{
if(aa==0)
{
P3=0xff;
P2=0xff;
}
}
aa++;
if (aa>=254) //当aa值累加至254时fg标志翻转。
{
fg=~fg;
aa=0;
}
TH0=0xf8; //重装定时器初值,2ms,值为65536-2000
TL0=0x30;
}


void main(void)
{
P2=0xff; //先将段码关闭
P3=0xff; //将位码关闭
TMOD=0x01;//设置T0为模式1
TH0=0xf8; //装入计数初值高位
TL0=0x30; //装入计数初值低位
EA=1; //总充许
ET0=1; //T0充许
fg=1; //将亮、灭标志设置为亮
TR0=1; //启动中断
while(1);
}

OK!


Copyright © 2017-2020 微波EDA网 版权所有

网站地图

Top