论文部分内容阅读
串口是计算机常用的数据通信设备接口,同时也是工业生产设备和仪表仪器上最常用的数据收发设备。串行通信由于他具备使用灵活方便,实现简单,传输数据稳定可靠,设备成本低廉等众多优点,在工业生产中的数据采集或者实时观测控制系统这类数据速率要求不高,但是需要高稳定性和可靠性的场合中广泛应用。随着生产自动化的推进和智能控制的发展,串口参数的自动匹配算法在近年来成为了串口通信方向的研究热点。论文在目前串行通信波特率自适应算法的基础上,增加了对串口数据位参数自动匹配的研究,从而得到了一种更通用的串口参数自适应算法。 论文研究了目前存在的几种波特率自适应算法,根据Linux下串口参数配置的特点,理论分析和实验比较串口波特率和数据位在不同设置情况下对数据传输的影响。论文依据串口参数的特性,规定协议文件内容。发送端串口多次发送协议文件,接收端规定校验位为N,停止位1的情况下,先通过分段特征值匹配法完成串口的波特率匹配。然后重新设定接收端的参数:数据位、校验位和停止位为8N1完成一次接收。对所有发送端可能设置的数据位进行分析,讨论对应参数下可能出现的字符序列。再根据接收端收到的字符特性进行分析归类,从而完成串口数据位的匹配。通过实验证明论文算法有效可行,具有良好的稳定性,能自动匹配串口波特率和数据位。 论文在Linux环境下使用C语言和shell脚本进行编程实现算法。在串行通信收发两端设置相同校验位和停止位的情况下,能准确快速匹配不同波特率和数据位的串口,在目前只能完成波特率自适应的技术上增加了数据位参数的自动识别功能。该算法为数据位和波特率在通信中改变的情况提供了一种良好的解决方式。为工作速率较低,实时性要求不高的工业领域的数据传输和控制领域提供了一种重要的理论方法,为其实现自动化控制和生产奠定了理论基础。