[发明专利]一种识别串口通信波特率的方法及可读取存储介质有效
申请号: | 202010224681.5 | 申请日: | 2020-03-26 |
公开(公告)号: | CN111427818B | 公开(公告)日: | 2023-04-14 |
发明(设计)人: | 谢兵;李毅 | 申请(专利权)人: | 重庆智慧水务有限公司 |
主分类号: | G06F13/28 | 分类号: | G06F13/28 |
代理公司: | 重庆华科专利事务所 50123 | 代理人: | 谭小琴 |
地址: | 400052 *** | 国省代码: | 重庆;50 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 识别 串口 通信 波特率 方法 读取 存储 介质 | ||
1.一种识别串口通信波特率的方法,包括获取串口信号的过程与发送串口信号的过程,其特征在于,包括如下步骤:
通过捕获定时器获取串口信号同步码中相邻的两次上升沿与下降沿信号间的定时计数值;
将获取到的所述定时计数值通过波特率计算公式,得到动态波特率参数;
将计算出的所述动态波特率参数去设置从设备的串口寄存器,使所述从设备中串口信号的通信波特率与主设备中串口信号的通信波特率保持一致;
其中,所述波特率计算公式计算方法如下:
要求的
要求的
其中,周期T与PCLK根据设备中识别采用的的中央处理器数值恒定、波特率因子BRGR=256×U0DLM+U0DLL、K为两次上升沿信号的定时计数的差值;
将(2)式叠代入1式后计算得出:
分别计算出U0DLM与U0DLL两个动态波特率参数。
2.根据权利要求1所述的识别串口通信波特率的方法,其特征在于,所述捕获定时器获取到串口信号同步码中相邻的两次上升沿与下降沿信号间的定时计数值,具体包括如下步骤:
将串口信号接入单片机捕获引脚,产生两次上升沿信号与下降沿信号;
将所述捕获定时器初始化,用于捕获第一次下降沿信号,并判断是否捕获到第一次下降沿信号,若未捕获到所述第一次下降沿信号,则继续捕获所述第一次下降沿信号,直至所述第一次下降沿信号被捕获,再设置所述捕获定时器,用于捕获第一次上升沿信号。
3.根据权利要求2所述的识别串口通信波特率的方法,其特征在于,若所述捕获定时器未捕获到所述第一次上升沿信号,则判断所述捕获定时器捕获是否接收超时;若所述捕获定时器捕获未接收超时,则继续捕获所述第一次上升沿信号,直至所述第一次上升沿信号被捕获;若所述捕获定时器捕获接收超时,所述捕获定时器则重新初始化;
若所述捕获定时器捕获到所述第一次上升沿信号,通过CPU可读取定时器读取低电平的定时计数值,并通过单片机判断所述第一次上升沿信号是否为干扰信号。
4.根据权利要求2或3所述的识别串口通信波特率的方法,其特征在于,若判断出所述第一次上升沿信号是干扰信号,则结束信号的捕获过程;若判断出所述第一次上升沿信号不是干扰信号,则完成第一次上升沿信号的捕获,通过CPU可读取定时器读取并记录所述定时计数值CAP_01在timer计数器中,上传所述定时计数值后timer计数器清零,并通过捕获定时器进行第二次下降沿信号捕获。
5.根据权利要求4所述的识别串口通信波特率的方法,其特征在于,若所述捕获定时器未捕获到所述第二次下降沿信号,则判断所述捕获定时器捕获是否接收超时;若所述捕获定时器捕获未接收超时,则继续捕获所述第二次下降沿信号,直至所述第二次下降沿信号被捕获;若所述捕获定时器捕获接收超时,所述捕获定时器则重新初始化;
若所述捕获定时器捕获到所述第二次下降沿信号,通过所述CPU可读取定时器读取高电平的定时计数值,并通过所述单片机判断所述第二次下降沿信号是否为干扰信号;
若判断出所述第二次下降沿信号是干扰信号,则结束信号的捕获过程;若判断出所述第二次下降沿信号不是干扰信号,则完成第二次下降沿信号的捕获,然后timer计数器清零,并通过捕获定时器进行第二次上升沿信号捕获。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于重庆智慧水务有限公司,未经重庆智慧水务有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/202010224681.5/1.html,转载请声明来源钻瓜专利网。
- 上一篇:一种PLC程序监控系统及方法
- 下一篇:一种大数据的数据存储系统及方法