wolf19860612 发表于 2009-8-6 14:23:32

在液晶上显示浮点数的方法

思路很简单就是将浮点数用sprintf函数转化成字符串,然后用显示字符串函数将其显示就行了。
假设你的液晶驱动函数中显示字符串函数是PutString(unsigned char x,unsigned char y,unsigned char *p)。

显示浮点数的函数就可以如下:

void ShowFloat(unsigned char x,unsigned char y, float num)
{
        char chFloat;
        sprintf(chFloat,"%.3f",num);       //将浮点型num转化成字符串到chFloat,默认输出6位小数点,不足就补零,".3"表示3位小数
        PutString(x,y,(unsigned char *)chFloat);
}

这方法不用去考虑浮点数的大小,不管多大或多小都可以方便的在液晶上显示了

sosingle 发表于 2009-8-6 19:59:50

mark

gliet_su 发表于 2009-8-6 20:45:59

非累死51不可

zajia 发表于 2009-8-6 21:06:21

icc 可以用 "%.3f",吗、

baiquan 发表于 2009-8-6 23:24:03

谢谢楼主
这个函数以前没有接触过
谢谢

tiger1125 发表于 2009-8-7 02:10:20

mark
可能有用

ma9801 发表于 2009-9-14 22:38:57

mark!!

chinazp1 发表于 2009-9-14 23:11:23

用单片机做sprintf效率相当低的……转换时间比刷屏时间长好多

其实可以做通用性差一些但效率高的函数,自己用乘除法转换成字符串

jackielau 发表于 2009-9-15 14:45:25

我在M16上是通过自己写的一个函数来专门作类似工作的

friendljy 发表于 2009-9-15 14:57:06

我也都是自己转。

snoopyzz 发表于 2009-9-15 15:07:45

ftoa
标准库函数...

a69161 发表于 2009-9-15 15:52:18

以前也用过这个函数东东,但是总是闪烁,不知道什么原因,有高手愿意解释一下吗?

mcu5i51 发表于 2009-9-15 17:00:34

计算量太大

makesoft 发表于 2009-9-15 17:02:04

这样用不会有问题的,所谓时间不够一般都是程序结构有问题。

使用printf程序
http://cache.amobbs.com/bbs_upload782111/files_18/ourdev_481215.jpg
(原文件名:工厂配置程序.jpg)
液晶效果
http://cache.amobbs.com/bbs_upload782111/files_18/ourdev_481216.jpg
(原文件名:工厂配置画面.jpg)

ylei12 发表于 2009-9-15 17:16:51

问一下楼上,直接执行“printf”语句就能在液晶上显示内容了?

makesoft 发表于 2009-9-15 17:34:55

【14楼】 ylei12
积分:793
派别:
等级:------
来自:
        问一下楼上,直接执行“printf”语句就能在液晶上显示内容了?

本贴被 ylei12 编辑过,最后修改时间:2009-09-15,17:17:31.

------------------------------------------------------------------


是这样,改写接口程序putchar就可以了
原则上库函数有的,不自己写。

winmcu 发表于 2009-9-15 17:56:48

mark

ninjalp 发表于 2010-3-27 00:07:45

mark

gasolhu 发表于 2010-8-17 22:42:36

强帖留名

li0709 发表于 2011-7-23 07:40:10

收藏

wszyjsw2 发表于 2012-2-16 00:21:20

收藏

lanyuye 发表于 2012-2-16 07:33:09

回复【13楼】makesoft
-----------------------------------------------------------------------

你这个字体挺好看的,是多少*多少的啊?

zzz1367 发表于 2012-2-16 08:57:22

mark 下

wuguoyan 发表于 2012-2-16 09:00:57

mark

huanghj8 发表于 2012-2-18 13:56:01

受教了 待会试试

rusell2012 发表于 2012-6-15 11:21:09

mark,虽然这样用了,但是还是出了个莫名其妙的错误

daiying008 发表于 2013-3-4 13:22:18

mark,可能会用上!@
页: [1]
查看完整版本: 在液晶上显示浮点数的方法