74HC573直通方式做驱动,接共阳数码管
数码管结构原理,共阴和共阳
共阴,共阳段码16进制代码
/*************************
main()
{
uchar char_i,dynamic_num;
uint time_j;
char_i = dynamic_num = 0;
while(1)
{
dataPort = charArray[char_i]; //取位码
ctrlPort = bitArray[dynamic_num + char_i]; //取段码,显示字符值
delay(NUM_A); //扫描间隙,利用人眼暂留原理,动态点亮各数码管
char_i++;
time_j++;
if(bit_NUM == char_i) //8个数码管是否完成扫描?如完成,则重新选择第一个数码管
{
char_i = 0;
}
if(NUM_B == time_j) //保持当前字符(数值)显示一段时间后,更新字符,则下一次各数码管的显示值比前一次+1,
//给人感觉好像数值是从左往右在动态流动一样
{
time_j = 0;
dynamic_num++;
if(NUM_C == dynamic_num)
{
dynamic_num = 0;
}
}
}
}
delay(...)
{...}
显示效果: