我在网上看到说 可以转换成字符型 进行传输
也有例子,如下:
unsigned char buf[4]; //将float强制转换成char 四个字进行串口传输
float f=39.4;
buf[0]=((unsigned char *)&f)[0];
buf[1]=((unsigned char *)&f)[1];
buf[2]=((unsigned char *)&f)[2];
buf[3]=((unsigned char *)&f)[3];
串口传输:
。。。。。。
for(cont=3;cont>=0;cont--)
{
ScicRegs.SCITXBUF=buf[cont];
}
浮点数34.9,IEEE754标准十六进制显示是0x42 0x0B 0x99 0x9A,但是 我在串口助手上看到的却是:0x9A 0x0B 0x9A 0x0B
这到底是为什么呢 ? 帮帮忙 |