串口通信参数自适应的有关问题
串口通信参数自适应的问题现串口通信软件已经写好了,但是老师要让波特率、奇偶校验、数据位、停止位等参数自
串口通信参数自适应的问题
现串口通信软件已经写好了,但是老师要让波特率、奇偶校验、数据位、停止位等参数自适应。现向各位大神锁求助。给我一些思想和方法就好。 串口通信
[解决办法]
你可以循环测试好各种参数,并试成功就是对的参数!
[解决办法]
需要2边先约定好一个ACK,
比如说先固定一方开机就不停发送"Are you there?"
然后另一方不停调整参数直到收到对应的字符串
如果不约定好的话自适应可靠性很低
[解决办法]
不是吧,波特率不一样也能收到约定好的字符串?
这时就不用校验位了,直接用一个32位的和校验,我就不信在不同的波特率下这也能碰对
[解决办法]自适应实际上是让发送方起始时发送一个固定的识别串。接受方以固定的波特率(例如 9600)下接收。
发送方采用不同波特率时,接受方收到的结果是不同的。因为发送的识别串是已知的,接受方就可以根据接收到的内容判断出发送方的波特率。
识别串的选择有讲究。
双方可以有一个协议。例如,发送方发送一个长串后,就试图接收对方的应答。如果没有收到或收到的不是预期的内容,就再次发送识别串;否则发送确认信号。