串口发送和接受float型数据????
在单片机中怎么样用串口发送和接受float型的数据?求解答 这个正好我也刚做好了。单片机用c语言的共用体,上位机我用vb,定义一个api, memorycopy
手机不方便。自己搜一下 union {
float x;
uchar s;
}F32_SNW;
F32_SNW.x=256.256;
tmp0=F32_SNW.s;
tmp1=F32_SWW.s;
tmp2=F32_SNS.s;
tmp3=F32_SNS.s; 2楼得程序 可以具体的说说吗?没有注释,看的不是很明白的?这个是发送的,那么接收该怎么样的操作,接收到了四个字节之后,该如何处理呢? 接收到之后,按照高地位合成,之后强制转换成float类型就可以了。 mark 好 回复【3楼】panstephan
-----------------------------------------------------------------------
2楼都写成这样还不明白啊。接收的时候一样啊,还是用这个联合体, 不错 或者定义一个unsigned char的指针啦
float a;
unsigned char *pa;
unsigned char b;
pa = (unsigned char*)&a;
b = *(pa + 3);
b = *(pa + 2);
b = *(pa + 1);
b = *(pa + 0);
发送b就行了。。。接收时反之。。。
页:
[1]