单片机数码管理解
if(cnt>=1000)
{
cnt=0;
sec++;
ledbuff[0]=ledchar[sec%10];
ledbuff[1]=ledchar[sec/10%10];
ledbuff[2]=ledchar[sec/100%10];
ledbuff[3]=ledchar[sec/1000%10];
ledbuff[4]=ledchar[sec/10000%10];
ledbuff[5]=ledchar[sec/100000%10];
}
举例:(sec必须是整数类型,上面程序中sec是秒数)
当sec=5005时;
第一步:5005%10=5(5005%10=5)(个位);
第二步:5005/10%10=0(5005/10=500.5,整数型会省掉小数,剩500%10=0)(十位);
第三步:5005/100%10=0(5005/100=50.05,省掉小数部分剩50%10=0)( 百位);
第四步:5005/1000%10=5(5005/1000=5.005,省掉小数部分剩5%10=5)(千位);
ledbuff[0]=5; (个位)
ledbuff[1]=0;(十位)
ledbuff[2]=0;( 百位)
ledbuff[3]=5; (千位)
最终得数是: 5005