数码管闪烁算法
最近做了一个大作业,在用数码管显示rtc时间时想让某个数码管位置闪烁,虽然不难,感觉还是能常用到的。
代码如下,这里让case5和7位置闪烁
/**********************************************************
数码管显示年月日
**********************************************************/
int time;
switch(smg_wei)
{
case 0:
num = smg_num[calendar.w_year/1000];
break;//年
case 1:
num = smg_num[calendar.w_year%1000/100];
break;
case 2:
num = smg_num[calendar.w_year%100/10];
break;
case 3:
num = smg_num[calendar.w_year%10];
break;
case 4:
num = smg_num[calendar.w_month/10];
break; //月
case 5:
time++; if(time%20<=10) num = smg_num[calendar.w_month%10];else num=0;
break;
case 6:
num = smg_num[calendar.w_date/10];
break; //日
case 7:
time++; if(time%20<=10) num = smg_num[calendar.w_date%10];else num=0;
break;
}
}
十次让数码管熄灭,十次正常亮起,就闪烁了