51系列单片机配合38脚线解码器完成动态数码管控制电路的设计与实现
发布时间
阅读量:
阅读量
51单片机结合38译码器实现动态数码管控制
以下为相关代码:
#include <REGX51.H>
void delay(void) //延时函数
{
unsigned char i, j;
for (i=0;i<10;i++)
{
for(j=0;j<10;j++);
}
}
void main(void)
{
//译码后所生成的选位数据数组
unsigned char yimaweima[8]={0x0,0x1,0x2,0x3,0x4,0x5,0x6,0x7};
//段码对应的数据数组
unsigned char duanma[16]={0x3f,0x06,0x5b,0x4f,0x66,0x6d,0x7d,0x07,0x7f,0x6f,0x77,0x7c,0x39,0x5e,0x79,0x71};
unsigned char i;
while(1)
{
for(i=0;i<8;i++)
{
P1=yimaweima[i]; //用于选定数码管位置
P0=duanma[i+1]; //将对应的段码值传送到输出端口
delay(); //执行延时操作以维持显示稳定状态
P0=0x00; //进行消影处理,防止残影出现
}
}
}
效果图

还没有任何评论哟~
