高级会员

- 积分
- 701
- 金钱
- 701
- 注册时间
- 2017-7-19
- 在线时间
- 91 小时
|
原子哥的LCD_ShowNum(u16 x,u16 y,u32 num,u8 len,u8 size)函数和LCD_ShowxNum(u16 x,u16 y,u32 num,u8 len,u8 size,u8 mode)函数在理论上是没有问题的。
但是在MDK这编译环境中就出现了一个问题。
因为在C++中num中第一位是0的话就表示是以8进制表示(而不是我们想要的十进制)。
例如:num=011,C++中它表示八进制,换算成十进制为:9;最后LCD/OLED中显示的就是9.
又例如:num=021,LCD/OLED中显示为17 (17是021这个八进制的十进制表示)
在例如:num=0123456,LCD/OLED中显示为42798(42798是0123456这个八进制的十进制表示)
至于解决的办法,就是自己设计算法来解决了,或者就不要在num中的第一位加0了。
|
|