串口怎么发送浮点数或者双精度数给上位机

2019-07-14 19:22发布

用的STM32F103单片机,想将采集的数据通过串口发送到电脑上,但是由于数据是小数的所以想发送小数到上位机。各位有没有什么招?
友情提示: 此问题已得到解决,问题已经关闭,关闭后问题禁止继续编辑,回答。
该问题目前已经被作者或者管理员关闭, 无法添加新回复
3条回答
liqijian101
1楼-- · 2019-07-15 02:19
 精彩回答 2  元偷偷看……
无敌金刚
2楼-- · 2019-07-15 05:14
liqijian101 发表于 2017-8-2 19:21
由于浮点是2字节   双精度是4字节,所以发送的时候你可以使用联合体的形式发送。  然后依次发送出四个字节。

先看看 好的话 会采用的  谢谢啦
欧子玉
3楼-- · 2019-07-15 06:15
#include
#include
void send_float(float d)
{
    char buf[32], *temp;

    temp=buf;

    sprintf(temp, "%f", d);

    for (; *temp; ++temp) send_char(*temp);
    send_char(' '); //加一个空格或回车隔开两个数。

}

void send_floats(float *d, int n)  //n为浮点数个数
{
    for (; n; --n) send_float(*d++);   
}

一周热门 更多>