51单片机串口通信 数据大于八位(256)怎么办 一旦超过就失真啦 能分开传吗 ?接收端怎么设置

2025-04-12 12:35:55
推荐回答(3个)
回答1:

怎么个失真法呢?!
串口通信本来一次基本发送/接收都是一个字节的,就是八位。
SBUF收发寄存器是八位的,如果你发送时赋给他的值是500,SBUF也只能取500的对应二进制的低八位,不知道你说的是不是这样的溢出失真。
而每一次接收后就会使RI相应置1,SBUF缓存着刚刚接收的一个字节数据,要及时转存处理,要不然下次发送/接收又会被新的数据代替。就这样一个一个字节的重复就形成许多字节的连续收发。
串口这东西很好用的,通信也很方便的很多地方会用到。

回答2:

一个字节一个的发送!多字节连发……
一个字节是8位,两个就是16位了。
接收方,连续接收多个字节(实际上还是一个一个的接收)
自己尝试着做做,可以提高自己的能力。

回答3:

我刚做了传送12位的