//显示2个数字 //x,y :起点坐标 //len :数字的位数 //size:字体大小 //mode:模式 0,填充模式;1,叠加模式 //num:数值(0~4294967295); void OLED_ShowNum(u8 x,u8 y,u32 num,u8 len,u8 size2) { u8 t,temp; u8 enshow=0; for(t=0;t<len;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'); } }
//显示2个数字 //x,y :起点坐标 //len :数字的位数 //size:字体大小 //mode:模式 0,填充模式;1,叠加模式 //num:数值(0~4294967295); void OLED_ShowNum(uint8_t x,uint8_t y,uint32_t num,uint8_t len,uint8_t size) { uint8_t t,temp; uint8_t enshow=0; for(t=0;t<len;t++) { temp=(num/oled_pow(10,len-t-1))%10; if(enshow==0&&t<(len-1)) { if(temp==0) { OLED_ShowChar(x+(size/2)*t,y,' '); continue; }else enshow=1; } OLED_ShowChar(x+(size/2)*t,y,temp+'0'); } }
/*********************************************************** * 函数名称: * 功能描述: OLED显示一个字符串 * 参数列表:len :数字的位数,size:字体大小,mode:模式 0,填充模式;1,叠加模式 * num:数值(0~4294967295); * 返回结果: * 备 注:在指定位置显示一个字符串 ***********************************************************/ void OLED_SSD1306::show_num(uint8_t x, uint8_t y, uint32_t num, uint8_t len, uint8_t size) { u8 t, temp; u8 enshow = 0; for(t = 0; t < len; t++) { temp = (num / oled_pow(10, len - t - 1)) % 10; if(enshow == 0 && t < (len - 1)) { if(temp == 0) { show_char(x + (size / 2)*t, y, ' '); continue; } else enshow = 1; } show_char(x + (size / 2)*t, y, temp + '0'); } }
//显示2个数字 //x,y :起点坐标 //len :数字的位数 //size:字体大小 //mode:模式 0,填充模式;1,叠加模式 //num:数值(0~4294967295); void OLED_ShowNum(u8 x,u8 y,u32 num,u8 len,u8 size2, u8 mode) { u8 t,temp, size1; u8 enshow=0; if (size2 == 8) { size1 = 6; } else if (size2 == 16) { size1 = 8; } for(t=0; t<len; t++) { temp=(num/oled_pow(10,len-t-1))%10; if(enshow==0&&t<(len-1)) { if(temp==0) { OLED_ShowChar_Mode(x+(size1)*t,y,' ',size2, mode); continue; } else enshow=1; } OLED_ShowChar_Mode(x+(size1)*t,y,temp+'0',size2, mode); } }