论坛元老
 
- 积分
- 10662
- 金钱
- 10662
- 注册时间
- 2017-4-14
- 在线时间
- 2780 小时
|
发表于 2018-6-2 15:45:27
|
显示全部楼层
你就是不愿意帖子里面搜索呀,这是之前回复的http://www.openedv.com/forum.php?mod=viewthread&tid=269823&page=1#pid828966
1:放大100或者1000倍,对256取余 取商,放进去 wendu=30.25;
shidu=60;
tx-buf[0]=wendu*100/256;
tx-buf[1]=wendu*100%256;
shidu类似
接收端还原就可以了
wendu=tx-buf[0]*256+tx-buf[1];
2:sprintf 进去
sprintf(tx-buf,“%f,%f”,wendu,shidu)
3:结构体共同体
typedef struct _data_struct{
float wendu; //占用4字节
float shidu; //占用4字节
//可以继续添加,累加和小于等于32就可以了
}data_struct;
typedef union _data_union
{
u8 tx_buff[32];
data_struct data_temp;
}data_union;
主函数里面
data_union data;
data.data_temp.wendu=wendu;
data.data_temp.shidu=shidu;
发动的时候发送
data.tx_buff就可以了
|
|