[发明专利]一种异步串口通信波特率自适应方法有效
申请号: | 202110383333.7 | 申请日: | 2021-04-09 |
公开(公告)号: | CN113032320B | 公开(公告)日: | 2022-10-18 |
发明(设计)人: | 耿守浩 | 申请(专利权)人: | 山东大学 |
主分类号: | G06F13/42 | 分类号: | G06F13/42 |
代理公司: | 青岛晸投知识产权代理事务所(普通合伙) 37353 | 代理人: | 李常芳 |
地址: | 250100 *** | 国省代码: | 山东;37 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 异步 串口 通信 波特率 自适应 方法 | ||
本发明提出了一种异步串口通信波特率自适应方法,支持多种具有相同协议报文首字节的串口通信协议。根据串口设备的通信协议规约,选取协议格式报文首字节作为敏感字节。通过对敏感字节进行变速采样分析,实现了在一个字节采样时间内完成串口通信波特率自适应过程。
技术领域
本发明涉及通信技术领域,特别涉及一种异步串口通信波特率自适应方法。
背景技术
在工业控制、智能仪表、电力通讯等行业领域内,经常使用串行通信方式为数据交换的手段。一般情况下,异步串行通信方式的通信双方需要事先约定传输速率及数据格式,通信双方地位对等,这种一对一的发送和接收数据能够正常进行。而在仪表信息采集中常会遇到一对多的通信情况,同一RS485或RS232电路上接有多种不同波特率且不同通信协议的设备,这种情况下,设备要实时接收所有透传数据,其接口需实时接收不同波特率、不同通信协议的数据。
目前常见的波特率自适应方法是波特率穷举法和最小电平宽度计算法。波特率穷举法通过以不同速率发送特定字节方式反复尝试通信波特率,过程中要求发送冗余的同步字节,降低了有效数据传输效率,实际应用性不强。最小电平宽度计算法通过精确检测最小电平宽度估算通信波特率,需要较大的缓存空间来捕获最小电平,硬件资源要求高。
发明内容
针对实际应用需要及现有技术存在的缺陷,本发明的目的在于提供一种实用性强、实现方法简单有效的异步串口通信波特率自适应方法。
为实现上述目的,本发明一种异步串口通信波特率自适应的方法所采用的技术方案如下:
预设敏感字节,并设定串口波特率自适应范围;
初始化采样模块参数,检测到异步串口出现通讯数据信号后,开始对接口上数据信号采样;
完成一个字节采样后分析采样结果;
通过采样结果判断敏感字节采样进度,调整采样模块参数并处理采样数据;
采样结果与敏感字节一致,结束采样并确定波特率;
所述的预设敏感字节是选取串口上要传输数据的第一个字节作为判定依据,敏感字节数大于等于1,串口波特率自适应范围是符合异步串行通信协议规范的有限整数集合{B1,B2,…,Bn-1,Bn},集合元素满足为整数,异步串口通信的波特率是该有限整数集合中元素之一,选取集合元素作为当前被测试波特率B。
所述的初始化采样模块参数是从串口波特率自适应范围内选取最大值Bmax,配置采样频率f,f取值是大于两倍Bmax的整倍数值;为避免下降沿边缘毛刺信号,首次采样在等待时间后进行。
所述的完成一个字节采样后分析采样结果是指以当前被测试波特率B传输一个字节所需时间内完成采样,当前被测试波特率B下所配置采样频率为f,并以为一组进行采样分析,根据采样定律判断采样电平高低。
所述的根据采样结果判断敏感字节采样进度是指通过判断采样结果与预设敏感字节一致性来调整采样进度;如果不一致,则从串口波特率自适应范围中依次选取比上一次被测试波特率Bn小的值Bn-1作为当前被测试波特率B,采样频率调整为敏感字节长度为L,定时器的计时时间T调整为采样模块在时间后继续进行采样过程;处理采样数据是指将上一次被测试波特率Bn的采样数据按照间隔进行数据抽样;如果一致,则当前被测试的波特率B与串口波特率准确匹配,完成异步串口通信波特率自适应过程结束。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于山东大学,未经山东大学许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/202110383333.7/2.html,转载请声明来源钻瓜专利网。