最近做的一个linux上的项目,串口需要对上位机的未知波特率自适应,在google了一通之后找到满多的资源,但是都不能满足项目的需要,最后借鉴前人的做法,终于解决了问题,这里把方法记录下来,和大家分享一下。
一、需求
自动检测到上位机的典型波特率(1200,1800,2400,4800,9600,19200,38400,57600,115200)。
二、已知方法
主要参考资料:
1)http://www.iol.ie/~ecarroll/autobaud.html
2)http://documentation.renesas.com/eng/products/region/rtas/mpumcu/apn/autobaud.pdf
网上其它的资料基本上都不超出上面两篇文章的范畴,采用的方法也基本类似,假设本机初始波特率为9600,上位机发送回车符0x0D给本机,则可以归纳为&#x