[发明专利]基于单片机输入捕获功能的波特率自适应方法有效
申请号: | 201110221090.3 | 申请日: | 2011-08-03 |
公开(公告)号: | CN102306136A | 公开(公告)日: | 2012-01-04 |
发明(设计)人: | 郑坚江;霍斌斌 | 申请(专利权)人: | 宁波三星电气股份有限公司 |
主分类号: | G06F13/42 | 分类号: | G06F13/42 |
代理公司: | 宁波市鄞州甬致专利代理事务所 33228 | 代理人: | 代忠炯 |
地址: | 315191 浙江省宁*** | 国省代码: | 浙江;33 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 基于 单片机 输入 捕获 功能 波特率 自适应 方法 | ||
1. 一种基于单片机输入捕获功能的波特率自适应方法,其特征在于:通过使用单片机通用GPIO口的下降沿触发中断功能和定时器计数功能,捕获所接收数据产生的两个下降沿,计时这两个下降沿之间的时间来求出其最小码元宽度,并根据求出的最小码元宽度来确定主机的波特率;
具体实现方法包括以下步骤:
步骤101:对一个定时器的一个输入捕获通道进行初始化,同时开启所述输入捕获通道的通用GPIO下降沿输入中断,并禁止所述输入捕获通道的下降沿输入捕获中断;
步骤102:对最小码元宽度及与输入捕获相关的各个状态量、标志进行初始化,初始全局捕获结果标志为没有捕获到两个下降沿,捕获状态机为等待捕获第一个下降沿输入;
步骤103:等待中断产生,如果产生GPIO下降沿输入中断则进入步骤104,如果产生输入捕获通道的下降沿输入捕获中断则进入步骤201;
步骤104:所述输入捕获通道上的GPIO下降沿输入中断触发;
步骤105:判断所述输入捕获通道下降沿输入捕获中断是否完成两个下降沿捕获,若是,进入步骤109,不是,则进入步骤106;
步骤106:判断所述输入捕获通道的捕获状态机是否只捕获到了第一个下降沿,若是,回到步骤103,不是,则进入步骤107;
步骤107:由于所述输入捕获通道第一个下降沿也没有捕获到,判断所述输入捕获通道的下降沿输入捕获中断是否开启,若是,回到步骤103,不是,则进入步骤108;
步骤108:开启所述输入捕获通道的下降沿输入捕获中断并回到步骤103;
步骤109:判断捕获的最小码元宽度是否是相关波特率的最小码元宽度,若是,进入步骤110,不是,则回到步骤102;
步骤110:判断捕获的最小码元宽度是否可以确定所接收数据的波特率,若是,进入步骤111,不是,则回到步骤102;
步骤111:对自身波特率进行调整处理;
步骤112:完成一次自适应处理,并禁止所述输入捕获通道的下降沿输入捕获中断,通用GPIO下降沿输入中断继续开启并回到步骤102,等待下一次UART通信的起始位下降沿触发GPIO下降沿输入中断,
步骤201:所述输入捕获通道的下降沿输入捕获中断触发;
步骤202:判断捕获状态机是否是正在等待捕获第一个下降沿输入,若是,进入步骤203,不是,则进入步骤204;
步骤203:读取所述定时器的第一次计数值T1,并保存计数值,初始自己的捕获状态机为等待捕获第二个下降沿输入中断并进入步骤210;
步骤204:读取所述定时器的第二次计数值T2,并判断所述计时器的计数是否溢出,若是,进入步骤205,不是,则进入步骤206;
步骤205:对计数值T1、T2清零并进入步骤209;
步骤206:计算(T2-T1)/2的值,即捕获的最小码元宽度,并判断这次所得最小码元宽度是否小于上次所得最小码元宽度,若是,进入步骤207,不是,则进入步骤209;
步骤207:更新保存的最小码元宽度值;
步骤208:标记全局捕获结果标志为已经完成捕获两个下降沿;
步骤209:初始自己的捕获状态机为等待捕获第一个下降沿输入中断;
步骤210:退出所述输入捕获通道的下降沿输入捕获中断并回到步骤102。
2. 根据权利要求1所述的基于单片机输入捕获功能的波特率自适应方法,其特征在于:在进入所述的步骤101之前,需将所述输入捕获通道引脚与UART的RXD引脚相连且要求该 GPIO口具有下降沿输入中断功能。
3. 根据权利要求1所述的基于单片机输入捕获功能的波特率自适应方法,其特征在于:
在进入所述的步骤101之前,需定义好不同波特率在所述输入捕获通道相对应的计时节拍下最小码元宽度的计数值。
4. 根据权利要求1所述的基于单片机输入捕获功能的波特率自适应方法,其特征在于:
在判断最小码元宽度时,要捕获“两个下降沿”,在每次UART开始通信时的第一个下降沿,也就是起始位的下降沿,总会开启所述输入捕获通道的下降沿输入捕获中断。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于宁波三星电气股份有限公司,未经宁波三星电气股份有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201110221090.3/1.html,转载请声明来源钻瓜专利网。