串口发送浮点型数据的话要怎么处理
1个回答
2015-02-11 · 知道合伙人软件行家
老夭来了
知道合伙人软件行家
向TA提问 私信TA
知道合伙人软件行家
采纳数:1806
获赞数:8100
2008年从事软件开发,拥有多年的python,php,linux工作经验,发布过多个python,php的开源项目。
向TA提问 私信TA
关注
展开全部
你要发送原始数据流 还是 格式化输出?
如果是格式化 按原子说的 ,用sprintf / printf;
如果发送原始内存数据流, 可按下面发送,
发送
float a = 1.23; double b=3.2;
SendBytes( *(u8*)&a ,sizeof(a) );
SendBytes( *(u8*)&b ,sizeof(b) );
上位机接到的 十六进制码,再按同样格式转回来。
如 分别接收到 s1[4] s2[8] 里面, 如果是float 就是4个字节
*(float*)&s1 就是 a
*(double*)&s2 就是b
如果解决了您的问题请采纳!
如果未解决请继续追问
如果是格式化 按原子说的 ,用sprintf / printf;
如果发送原始内存数据流, 可按下面发送,
发送
float a = 1.23; double b=3.2;
SendBytes( *(u8*)&a ,sizeof(a) );
SendBytes( *(u8*)&b ,sizeof(b) );
上位机接到的 十六进制码,再按同样格式转回来。
如 分别接收到 s1[4] s2[8] 里面, 如果是float 就是4个字节
*(float*)&s1 就是 a
*(double*)&s2 就是b
如果解决了您的问题请采纳!
如果未解决请继续追问
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询