自己做了个简单的串口程序,遇到很多关于字符串转换进制的难题,
大家有串口的源代码吗
參考答案:下面的文字来源:
你看看是否有用?
---------------------------------
按你提供的C2C7FAE1看为16进制数,其10进制值为-***********,如何处理成-99.99要看下位机是如何约定数据的来定.
Text1 = &HC2C7FAE1 或 Text1 = VAL(&HC2C7FAE1)
一般上下位机对数字值传递通常以16位二进制数字传递,而小数点不传递,仅乘一定倍率来实现.同时16位二进制数字按两个8位(ASCII码值)输送,上位机通过程序代码处理成10进制数.
串口传送数据实质是传送ASCII码,如是8位二进制数据,其ASCII码值(10进制)为0-255。用二进制表示为*********** - ***********
16进制表示为 00 - FF
传送数据大于255,则用16位二进制(即2字节ASCII码组成)。10进制范围-32768到+32767。
如有小数,则应由上下位机约定,不进行发送。
串口通信中数制转换必须相当重视。
以上是以二进制方式收发数据。
也可直接以ASCII码的文本方式发送数据,而字节量大