打印

tiva中有把浮点数变为字符串的库函数吗

[复制链接]
628|12
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
zhanghqi|  楼主 | 2017-1-15 19:05 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
沙发
午夜粪车| | 2017-1-15 19:07 | 只看该作者
什么意思?不是很明白你说的什么,能再解释一下这个现象吗

使用特权

评论回复
板凳
zhanghqi|  楼主 | 2017-1-15 19:09 | 只看该作者
想用串口输出浮点数,但是串口好像不支持浮点输出,我想把浮点数变成字符串在输出,有没有什么库函数直接调用啊?大神帮忙一下,tiva的库函数我还不熟,,谢谢各位了

使用特权

评论回复
地板
wyjie| | 2017-1-15 19:12 | 只看该作者
不用库函数就可以实现的,串口支持浮点数输出的,你把串口发送函数printf重新定义一下就可以。

使用特权

评论回复
5
yszong| | 2017-1-15 19:13 | 只看该作者
前提是你的串口驱动要做好

使用特权

评论回复
6
zhanghqi|  楼主 | 2017-1-15 19:16 | 只看该作者
我直接调用UARTprintf,但是看看你面封装的程序,貌似不支持浮点输出,我想有没有那个函数直接把浮点数转换成字符串,这样就能输出了

使用特权

评论回复
7
lizye| | 2017-1-15 19:19 | 只看该作者
在你的串口驱动中,定义一下这个函数,确认前面你的驱动都配置好了
int fputc(int ch, FILE *f)
{
    UARTCharPut(UART0_BASE, c);
}
然后这样调用

float p=1.2334;
printf("a =%f",p);

就可以输出浮点了

使用特权

评论回复
8
jiaxw| | 2017-1-15 19:20 | 只看该作者
这个好实现的么,,直接的先扩大响应的倍数(10的倍数),输出的时候在变成相应的ASCII码的输出即可的

使用特权

评论回复
9
zhanghqi|  楼主 | 2017-1-15 19:22 | 只看该作者
这个方法想过,感觉有点麻烦,想直接调用封装好的函数,然后就问一下啦!

使用特权

评论回复
10
zhenykun| | 2017-1-15 19:28 | 只看该作者
重新封装printf,差不多也就这几种方式

使用特权

评论回复
11
jlyuan| | 2017-1-15 19:30 | 只看该作者

封装好的库函数的应该是有的,,

使用特权

评论回复
12
heweibig| | 2017-1-15 19:32 | 只看该作者
没有sprintf吗

使用特权

评论回复
13
zhanghqi|  楼主 | 2017-1-15 19:34 | 只看该作者
我已找到了,用sprintf可以

使用特权

评论回复
发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则

852

主题

11757

帖子

5

粉丝