怎样将采集到的有符号位的数经串口调试助手发送到PC端

2019-07-21 05:52发布

现有采集的数据是有符号带小数的16进制数,我用显示屏显示出来了有符号带小数的十进制数,怎么用串口把有符号的数发送到电脑啊
        u8 acc_x[2];
        s16 acc_x_;
       float LIS3DSH_acceleration_x;
        acc_x[0]=Lis3dsh_ReadOnebite(0x28);//低八位数据
        acc_x[1]=Lis3dsh_ReadOnebite(0x29);//高八位数据
        acc_x_=(acc_x[1]<<8)+acc_x[0];//采集到的数据
        LIS3DSH_acceleration_x=1.0*acc_x_/32767*2;//量程转化,数据在-2到+2之间

下一步如何用串口将数据发送出去?
while(1)
        {       
        char buf[10];
        acc_x[0]=Lis3dsh_ReadOnebite(0x28);
        acc_x[1]=Lis3dsh_ReadOnebite(0x29);
        acc_x_=(acc_x[1]<<8)+acc_x[0];
        LIS3DSH_acceleration_x=1.0*acc_x_/32767*2;
        buf[0]=acc_x_;
        buf[1]=(acc_x_>>8);       

USART_SendData(USART3,buf[1]);
     while(USART_GetFlagStatus(USART3,USART_FLAG_TXE)==0){};
USART_SendData(USART3,buf[0]);
     while(USART_GetFlagStatus(USART3,USART_FLAG_TXE)==0){};

                }
        }          

   这样发送到串口调试助手的是十六进制数,我还是不能判断十进制数到底是多少  ,求解答,谢谢

友情提示: 此问题已得到解决,问题已经关闭,关闭后问题禁止继续编辑,回答。