上位机接受的串口发来的数是几进制数啊?如果单片机发的是16进制,那上位机收到的就是16进制吗?急求

或者是怎么设置参数能决定收到的是几进制数?
2025-03-05 05:53:26
推荐回答(2个)
回答1:

要说是几进制,那么肯定是2进制嘛。

在硬件层面上看,串行通信的数据肯定是一位一位的传的,一次一般可以传8位。
也可以设置是一次传9位,但多出来的一位一般来说是校验位,所以说数据还是8位,即一个字节。
具体这一个字节是什么含义,由通信的双方约定,双方要怎么理解一个字节的数据,与通信本身没有关系。你理解成数字也好,理解也字符也好,通信不管这事,通信只负责传送。
就像我给你发一封信,装到信封里面就是信,投递员只管把信交给你,不管里面是写的中文还是英文甚至火星文,只要你能理解就好,不管你能不能理解,都与投递员无关。

所以,如果你想收到16进制的数据,就要求对方发送16进制的数据。

回答2:

不管是十六进制还是ASCII格式,其他传送的都是二制。只是后期的处理不同而已。上位机的数据总是8位的。