高级会员

- 积分
- 842
- 金钱
- 842
- 注册时间
- 2012-2-8
- 在线时间
- 19 小时
|
发表于 2012-7-11 16:01:00
|
显示全部楼层
我改了一个,可以显示,不知妥否
红色表示改过的地方,用原子的例子修改额
void LCD_ShowNum(u16 x,u16 y,s32 num,u8 len,u8 size)
{
u8 t,temp,fu = 0;
u8 enshow=0;
if(num<0){
num = - num;
fu = 1 ;
}
for(t=0;t<len;t++)
{
temp=(num/mypow(10,len-t-1))%10;
if(enshow==0&&t<(len-1))
{
if(temp==0)
{
if(fu){
LCD_ShowChar(x+(size/2)*t,y,'-',size,0);
fu = 0;
}
else LCD_ShowChar(x+(size/2)*t,y,' ',size,0);
continue;
}else enshow=1;
}
LCD_ShowChar(x+(size/2)*t,y,temp+'0',size,0);
}
} |
|