做了一个串口通讯程序,硬件那边说我的程序发下来的数据是ASCII码而不是二进制,让我把下发的数据该成二进制
不是很理解这句话的意思,是让我把下发的数据转换成二进制再下发下去吗?但是通过串口下发下去的数据不就是二进制的数么?
是的,就是转换一下而已
除非是他给你的是json里面带的字符串比如 ASCII码的 “1234” 让你转成0x01 0x02 0x03 0x04这样的发下去
你们如果没协议文档我们无法回答。因为串口发送完全是双方协议规定,你没有任何文档说明,谁也怪不了
比如:94 这个数字,在没文档的情况下我可以有10多种表示法
94---------0x94 成不(8421 BCD码)
94-----(byte)94成不,一个byte可以范围可以是0-255,94是可以用一个byte表达的对不
94---0x5e 假设我认为可以是个short,大端表达为: 0x00,0x5e; 也可以用小端表达为 0x5e,0x00
剩下我们就不多说了,所以做这种对接别互相埋怨。先拿对接文档,没文档的话我至少10选1,挑中挑不中就看天意了