用单片机一直发送一个float型的数

[复制链接]
4010|30
wyjie 发表于 2014-4-21 20:25 | 显示全部楼层
用sprintf  把浮点数转换为字符串
zhenykun 发表于 2014-4-21 20:25 | 显示全部楼层
使用单片机发送数据主要的是根据你规定的格式,或者使用默认的格式应该都可以
huangchui 发表于 2014-4-21 20:26 | 显示全部楼层
同意6楼的做法,简单明了,我也是怎么操作
zhanghqi 发表于 2014-4-21 20:26 | 显示全部楼层


sprintf 的速度超级慢,在12MHz的51上一个 sprintf 经常要消耗掉很多毫秒的时间;鉴定完毕!
zhenykun 发表于 2014-4-21 20:27 | 显示全部楼层
一般放大取整发送
zhenykun 发表于 2014-4-21 20:28 | 显示全部楼层
把浮点数转换成16进制数在发送


long FloatTohex(float HEX)//浮点数到十六进制转换
{
         return *( long *)&HEX;
}
 楼主| yszong 发表于 2014-4-21 20:29 | 显示全部楼层
嗯,知道了,多谢
 楼主| yszong 发表于 2014-4-21 20:29 | 显示全部楼层
结贴了
zjswuyunbo 发表于 2014-4-22 09:45 | 显示全部楼层
zhanghqi 发表于 2014-4-21 20:26
sprintf 的速度超级慢,在12MHz的51上一个 sprintf 经常要消耗掉很多毫秒的时间;鉴定完毕! ...

ms级别。。。。。。。擦 原来这么慢。。。。。。。。。
深泰电子工作室 发表于 2014-4-22 15:52 | 显示全部楼层
可以像上面朋友说的,先转换成整数,再发送。
wjt_tyy 发表于 2014-4-22 19:58 | 显示全部楼层
楼主如果觉得发送四个字节麻烦,可以试试sprintf
您需要登录后才可以回帖 登录 | 注册

本版积分规则

快速回复 在线客服 返回列表 返回顶部