为什么我今天才发现我的oled可以正常显示3位数以内的数字,不能正常显示4位数以上的数字 代码如下:
void OLED_ShowNum(uint8_t x,uint8_t y,uint32_t num,uint8_t len,uint8_t size2)
{
uint32_t t,temp;
uint32_t enshow=0;
for(t=0;t {
temp=(num/oled_pow(10,len-t-1))%10;
if(enshow==0&&t<(len-1))
{
if(temp==0)
{
OLED_ShowChar(x+(size2/2)*t,y,' ');
continue;
}
else enshow=1;
}
OLED_ShowChar(x+(size2/2)*t,y,temp+'0');
}
}
main函数:
uint32_t nu=8234;
OLED_ShowNum(0,4,nu,4,16); |