单片机串口接收字符怎么转换成浮点数

51单片机,串口从另外一个单片机接收的字符串,截取的如 mg/L|6.889| 中的6.889,我已经存在数组unsigned char s[5]中,我现在要将这个数6.889进行运算,比如除以10然后在1602上显示,该怎么编程啊?多谢了。

放弃用51来进行浮点运算的这个愚蠢念头。51不适合用来干这个。
既然你截取的是字符串,那么说明发送字符串的一侧具有浮点运算能力。应当把这些任务扔给对方,你只管截取和显示就行了。追问

发送单元的程序我改不了。。。

追答

那么你只能先提取数字段,按照整数或长整数进行你所需的处理(比如除以12之类的),然后将小数点补回。
如果是除以10这种特例,直接挪小数点就行了……

温馨提示:答案为网友推荐,仅供参考
相似回答