CN101399635A - 通讯波特率自适应方法、装置以及主机 - Google Patents

通讯波特率自适应方法、装置以及主机 Download PDF

Info

Publication number
CN101399635A
CN101399635A CNA2008101677697A CN200810167769A CN101399635A CN 101399635 A CN101399635 A CN 101399635A CN A2008101677697 A CNA2008101677697 A CN A2008101677697A CN 200810167769 A CN200810167769 A CN 200810167769A CN 101399635 A CN101399635 A CN 101399635A
Authority
CN
China
Prior art keywords
baud rate
slave
external interrupt
timer
calibration code
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
CNA2008101677697A
Other languages
English (en)
Inventor
潘奇银
熊勇
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
ZTE Corp
Original Assignee
ZTE Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by ZTE Corp filed Critical ZTE Corp
Priority to CNA2008101677697A priority Critical patent/CN101399635A/zh
Publication of CN101399635A publication Critical patent/CN101399635A/zh
Pending legal-status Critical Current

Links

Images

Abstract

本发明公开了一种通讯波特率自适应方法、装置以及主机,该方法包括:在从机接收主机发送的波特率校准码后,从机的内置定时器以预定频率从波特率校准码引起的电平的下降沿开始计数,到电平的上升沿停止计数,并得到计数值;从机根据计数值获取波特率发生寄存器常数,并根据波特率发生寄存器常数设置波特率发生寄存器。通过上述技术方案,实现了在不增加硬件的情况下,对通讯波特率进行自适应调整,降低了硬件制造的成本,能够适用于任何通讯波特率的应用场合,并且尤其适用于从机晶振不稳定的应用场合。

Description

通讯波特率自适应方法、装置以及主机
技术领域
本发明涉及通信领域,并且特别地,涉及一种通讯波特率自适应方法、装置以及主机。
背景技术
目前,随着计算机技术的不断发展和人们生活水平的日益提高,越来越多的工业控制、医疗、通讯、消费等电子产品日趋智能化,并且,以微处理器为核心的嵌入式系统得到了日益广泛的应用,其中,对这些智能化设备进行管理成为嵌入式应用的一个重点。用户可以通过设备提供的智能接口,例如,串口、并口、USB口、CAN接口、以太网口等,对智能设备进行管理和监控。
在相关技术中,基于以太网接口的传输控制协议/互联网协议(Transmission Control Protocol/Internet Protocol,简称为TCP/IP)的组网方式是未来发展方向,但是基于成本考虑,目前大多数的工业控制嵌入式设备主要还是以4、8或16位的管理控制单元(Management Control Unit,简称为MCU)为核心,并且都采用传统的异步串行通讯口,以一主多从的方式经由RS232/RS485、调制解调器(MODEM)、低压电力线载波等传输通道进行组网,从而在网管中心实现遥测、遥信、遥控的三遥功能。
在传统的RS232/RS485/RS422串行通讯中,只有通讯双方的波特率相同才能够进行正常通讯,因此通讯波特率是非常重要的参数之一。在相关技术中,一般用晶体振荡器的频率来计算具体的波特率时间常数。但是,当嵌入式设备工作环境改变,而导致晶体振荡频率变化时,设备的通讯波特率也会改变,从而导致从机无法和主机正常通讯。
目前,在相关技术中,主要有标准波特率穷举法、通过硬件检测码元宽度确定波特率两种方法解决上述的问题。其中,标准波特率穷举法要求主机侧的波特率必须在有限的几个固定数值之间变化,例如,在300~19200的标准值之间;在从机侧的工作振荡频率已知且稳定的情况下,从机启动通信程序后,将逐个尝试以不同的波特率接收主机发出的特定字符,直到从机能够正确接收主机发送的特定字符为止。但是,该方法只能应用于标准通讯波特率场合,并不适合于上述晶振频率变化导致波特率变化的应用场合。此外,硬件检测码元宽度确定波特率的方法需要在从机中增加新的硬件装置,这样则增加了硬件制造的成本。
发明内容
考虑到目前嵌入式设备工作环境改变导致晶体振荡频率变化,使得设备的通讯波特率改变从而导致从机无法和主机正常通讯的问题而做出本发明,为此,本发明的主要目的在于提供一种通讯波特率自适应方法、装置以及主机,以解决相关技术中存在的上述问题。
根据本发明的一个方面,提供了一种通讯波特率自适应方法。
根据本发明的通讯波特率自适应方法包括:在从机接收主机发送的波特率校准码后,从机的内置定时器以预定频率从波特率校准码引起的电平的下降沿开始计数,到电平的上升沿停止计数,并得到计数值;从机根据计数值获取波特率发生寄存器常数,并根据波特率发生寄存器常数设置波特率发生寄存器。
此外,在从机接收主机发送的波特率校准码之前,方法进一步包括:从机设置外部中断为下降沿触发且外部中断有效。
此外,在从机接收主机发送的波特率校准码之后,方法进一步包括:在产生外部中断后,从机判断外部中断的类型,其中,外部中断的类型包括下降沿触发和上升沿触发;在从机判断为下降沿触发的情况下,从机将内置定时器清零并启动内置定时器,设置外部中断为上升沿触发。
此外,从机的内置定时器从波特率校准码引起的下降沿开始计数,到上升沿停止计数之后,方法进一步包括:从机将外部中断设置为禁止外部中断。
此外,在从机设置了波特率发生寄存器之后,进一步包括:主机向从机发送通讯命令,其中,主机发送通讯命令的时刻为主机开始向从机发送波特率校准码起经过预定时间段后的时刻。
此外,在从机接收到通讯命令之后,方法进一步包括:在从机接收到主机发送的结束会话命令后,从机设置外部中断为下降沿触发且外部中断有效。
其中,从机根据计数值计算波特率发生寄存器常数的具体处理为:根据公式1计算波特率校准码的低电平宽度Tl T l = m × M f osc , 公式1,其中,M为定时器的计数值,fosc为从机的主频,m为定时器的预定频率是主频的分频数;根据公式2确定波特率校准码码元的时间宽度Tnbit与BPS的关系: T nbit = n BPS , 公式2,其中,Tnbit等于Tl,BPS为从机的通讯波特率,n为检测的波特率校准码的码元个数,并且,通讯波特率与从机主频fosc的关系满足 BPS = f osc X , 其中,X为与波特率发生寄存器常数相关的因子;根据通讯波特率与从机主频fosc的关系以及公式2和公式1得到公式3,并根据公式3计算X; X = m × M n , 公式3;根据X计算波特率发生寄存器常数。
根据本发明的另一方面,提供了一种通讯波特率自适应装置,位于从机。
根据本发明的通讯波特率自适应装置包括:接收模块,用于接收主机发送的波特率校准码;内置定时器,用于以预定频率从波特率校准码引起的电平的下降沿开始计数,到电平的上升沿停止计数,并得到计数值;获取模块,用于根据计数值获取波特率发生寄存器常数,并根据波特率发生寄存器常数设置波特率发生寄存器。
此外,上述装置进一步包括:设置模块,用于设置内置定时器的状态,并将内置定时器的初始状态设置为外部中断为下降沿触发且外部中断有效;判断模块,用于判断外部中断的类型;控制模块,用于在判断模块判断外部中断类型为下降沿触发的情况下,将内置定时器清零后启动内置定时器,并控制设置模块将外部中断设置为上升沿触发;在判断模块判断外部中断为上升沿触发的情况下,控制模块控制内置定时器停止计数,并控制设置模块将外部中断设置为禁止外部中断。
根据本发明的再一方面,提供了一种主机。
根据本发明的主机包括:第一发送模块,用于向从机发送波特率校准码;第二发送模块,用于向从机发送通讯命令,其中,第二发送模块发送通讯命令的时刻为第一发送模块开始向从机发送波特率校准码起经过预定时间段后的时刻。
借助于本发明的技术方案,通过采用MCU内部定时器进行码元宽度检测,实现了在不增加硬件的情况下,对从机的通讯波特率进行自适应调整,降低了硬件制造的成本,能够适用于任何通讯波特率的应用场合,并且尤其适用于从机晶振不稳定的应用场合。
本发明的其它特征和优点将在随后的说明书中阐述,并且,部分地从说明书中变得显而易见,或者通过实施本发明而了解。本发明的目的和其他优点可通过在所写的说明书、权利要求书、以及附图中所特别指出的结构来实现和获得。
附图说明
附图用来提供对本发明的进一步理解,并且构成说明书的一部分,与本发明的实施例一起用于解释本发明,并不构成对本发明的限制。在附图中:
图1是根据本发明实施例的通讯波特率自适应方法的流程图;
图2是根据本发明实施例的通讯波特率自适应方法的详细处理的流程图;
图3是根据本发明实施例的通讯波特率自适应装置的框图1;
图4是根据本发明实施例的通讯波特率自适应装置的框图2;
图5是根据本发明实施例的主机的框图;
图6是根据本发明实施例的10位串行通讯数据格式的示意图;
图7是根据本发明实施例的主机发送波特率校准码时数据线电平状态的示意图;
图8是根据本发明实施例的主机与从机连接关系的示意图;
图9是根据本发明实施例的从机的工作状态转换的示意图。
具体实施方式
功能概述
为了克服波特率穷举法和硬件检测码元宽度确定波特率方法的缺陷,本发明提供了一种主机发送波特率校准码,从机通过其内置的计时器检测通讯数据码元宽度实现通讯波特率自适应的方法,该方法不需增加额外的硬件成本,仅通过从机MCU的定时器检测通讯数据的码元宽度从而进行波特率自适应,该方法适用任何通讯波特率的应用场合,并且尤其适用于从机晶振不稳定的应用场合。
在对本发明上述的技术方案进行详细说明之前,首先对本发明的硬件结构进行说明,该结构主要由内置定时器和外部中断源的微控制器MCU、需要检测的通讯链路组成,各部分的连接信号为发送信号TXD、接收信号RXD和外部中断引脚INTn,其中,MCU通过RXD和TXD与通讯链路相连进行数据的接收和发送,MCU通过INTn监测RXD的电平变化。
以下结合附图对本发明的优选实施例进行说明,应当理解,此处所描述的优选实施例仅用于说明和解释本发明,并不用于限定本发明。
方法实施例
根据本发明的实施例,提供了一种通讯波特率自适应方法,在进行下述的处理之前,从机首先需要将外部中断设置为下降沿触发且外部中断有效。图1是根据本发明实施例的通讯波特率自适应方法的流程图,如图1所示,包括以下处理:
步骤S102,在从机接收主机发送的波特率校准码后,从机的内置定时器以预定频率(从机CPU的m分频)从波特率校准码(0x10)引起的电平的下降沿开始计数(在此之前,冲击已经将外部中断设置为下降沿触发且外部中断有效),到电平的上升沿停止计数,并得到计数值。
在步骤S102中,在从机接收主机发送的波特率校准码后,由于主机发送的波特率校准码会引起外部中断,从机需要判断引起的外部中断的类型是下降沿触发还是上升沿触发;在从机判断外部中断的类型为下降沿触发的情况下,从机将内置定时器清零并启动内置定时器,内置计时器开始计数,此时,从机将外部中断设置为上升沿触发,并在上升沿触发了外部中断后,从机的内置定时器停止计数,将外部中断设置为禁止外部中断,此时,在内置定时器中存储了波特率校准码的计数值。
步骤S104,从机根据计数值获取波特率发生寄存器常数,并根据波特率发生寄存器常数设置波特率发生寄存器。
其中,在步骤S104中,从机根据计数值计算波特率发生寄存器常数的具体处理为:
1、首先根据公式1计算波特率校准码的低电平宽度Tl
T l = m × M f osc ,                                       公式1
其中,M为定时器的计数值,fosc为从机的主频,m为定时器的预定频率是主频的分频数;
2、根据公式2确定波特率校准码码元的时间宽度Tnbit与BPS的关系:
T nbit = n BPS ,     公式2
其中,Tnbit等于Tl,BPS为从机的通讯波特率,n为检测的波特率校准码的码元个数,并且,通讯波特率与从机主频fosc的关系满足 BPS = f osc X ,  其中,X为与波特率发生寄存器常数相关的因子;
3、将 BPS = f osc X 带入公式2,得到 T nbit = n BPS = n × X f osc
4、根据通讯波特率与从机主频fosc的关系以及公式2和公式1得到公式3,并根据公式3计算X;
X = m × M n ,                                          公式3
5、根据X计算波特率发生寄存器常数。
在步骤S104之后,主机向从机发送通讯命令,其中,主机发送通讯命令的时刻为主机开始向从机发送波特率校准码起经过预定时间段后的时刻。也就是说,主机在发送波特率校准码后,需要有一定的时延,等待从机进行校准,在到预定的时延后,主机再向从机发送通讯命令,这样,就可以保证主机和从机之间的通讯。在从机接收到主机发送的结束会话命令后,从机设置外部中断为下降沿触发且外部中断有效,为下一次的校准做准备。
下面,结合附图对上述技术方案的处理流程进行详细的说明。图2是根据本发明实施例的通讯波特率自适应方法的详细处理的流程图,如图2所示,包括以下处理:
第一步,从机设置外部中断为下降沿触发并允许外部中断。
第二步,主机发送波特率校准码0x10。
第三步,从机产生外部中断后判断中断触发类型,如果是下降沿触发,则执行第四步,如果是上升沿触发,则执行第五步。
第四步,从机将定时器的计数寄存器清零并启动定时器计数,然后设置外部中断为上升沿触发。
第五步,从机停止定时器计数,禁止外部中断,然后根据定时器的计数值计算波特率发生寄存器常数,设置波特率发生寄存器,然后执行第六步。
第六步,主机延时一定时间后下发正常的通讯命令。
第七步,主机和从机会话完成后,主机下发结束会话命令,从机收到结束会话命令后执行第一步。
通过上述的处理,在不增加硬件设备的情况下,实现了通讯波特率的自适应。
装置实施例一
根据本发明的实施例,提供了一种通讯波特率自适应装置,图3是根据本发明实施例的通讯波特率自适应装置的框图,如图3所示,包括接收模块30、内置定时器32、获取模块34,下面对上述模块进行详细的说明。
接收模块30,用于接收主机发送的波特率校准码。
内置定时器32,连接至接收模块30,用于以预定频率从波特率校准码引起的电平的下降沿开始计数,到电平的上升沿停止计数,并得到计数值。
获取模块34,连接至内置定时器32,用于根据计数值获取波特率发生寄存器常数,并根据波特率发生寄存器常数设置波特率发生寄存器。
其中,获取模块34中的处理具体为:
1、首先根据公式1计算波特率校准码的低电平宽度Tl
T l = m × M f osc ,                                        公式1
其中,M为定时器的计数值,fosc为从机的主频,m为定时器的预定频率是主频的分频数;
2、根据公式2确定波特率校准码码元的时间宽度Tnbit与BPS的关系:
T nbit = n BPS ,                                         公式2
其中,Tnbit等于Tl,BPS为从机的通讯波特率,n为检测的波特率校准码的码元个数,并且,通讯波特率与从机主频fosc的关系满足 BPS = f osc X , 其中,X为与波特率发生寄存器常数相关的因子。
3、将 BPS = f osc X 带入公式2,得到 T nbit = n BPS = n × X f osc
4、根据通讯波特率与从机主频fosc的关系以及公式2和公式1得到公式3,并根据公式3计算X;
X = m × M n ,                                         公式3
5、根据X计算波特率发生寄存器常数。
如图4所示,上述装置进一步包括设置模块40、判断模块42、控制模块44,下面对上述模块进行详细的说明。
设置模块40,连接至内置定时器32,用于设置内置定时器32的状态,并将内置定时器的初始状态设置为外部中断为下降沿触发且外部中断有效;
判断模块42,用于判断外部中断的类型;
控制模块44,连接至设置模块40、判断模块42、内置定时器32,用于在判断模块42判断外部中断类型为下降沿触发的情况下,将内置定时器32清零后启动内置定时器32,并控制设置模块40将外部中断设置为上升沿触发;在判断模42块判断外部中断为上升沿触发的情况下,控制模块44控制内置定时器32停止计数,并控制设置模块40将外部中断设置为禁止外部中断。
通过上述处理,在不增加新硬件的情况下,实现了通过内置定时器32检测通讯数据的码元宽度进行波特率自适应。
装置实施例二
根据本发明的实施例,提供了一种主机,图5是根据本发明实施例的主机的框图,如图5所示,包括第一发送模块50、第二发送模块52,下面对上述模块进行详细的说明。
第一发送模块50,用于向从机发送波特率校准码;
第二发送模块52,连接至第一发送模块50,用于向从机发送通讯命令,其中,第二发送模块52发送通讯命令的时刻为第一发送模块50开始向从机发送波特率校准码起经过预定时间段后的时刻,也就是说,第一发送模块50在发送波特率校准码后,第二发送模块52向从机发送通讯命令前需要有一定的时延,等待从机进行校准,在到达预定的时延后,第二发送模块52再向从机发送通讯命令,这样,就可以保证主机和从机之前的通讯。
在实际的应用中,第一发送模块50和第二发送模块52可以进行合一设置。
下面,结合附图,结合本发明方法实施例和装置实施例一以及装置实施例二对本发明的进行举例说明。
如图6所示,串口通讯一般采用1个起始位、8个数据位、1个停止位、无奇偶校验传输格式,一个字节共有10位。例如,RXD数据输入后,第一位的起始位为0,最后一位停止位为1,在起始位和停止位之间,有D0到D7八位数据。原则上,只要测得一个码元(即1位数据)的宽度就可以得到实际的通讯波特率,但为了减小误差,本发明实施例检测8个连续码元的宽度,并计算8个连续码元宽度的平均值后得到一个码元的宽度。
当主机发送波特率校准码0x10时,数据线上的电平状态如图7所示,从图7中可以看出,有连续8个低电平(0)的码元。从机在本机RXD引脚下降沿启动定时器进行计数,在上升沿停止定时器计数,则定时器记录的时间就RXD信号的低电平宽度Tl,也就是8个码元的时间宽度。
下面以Atmega32单片机为从机,Atmega128为主机,举例详细介绍根据码元宽度检测法计算从机波特率发生寄存器设置值。
主机与从机的连接关系如图8所示,一个主机和3个从机组成主从网络,其中,主机的TXD通过电平转换后,发送到三个从机,并经过电平转化后,由从机的RXD接收,其中,Atmega32单片机(从机)的RXD引脚和INTn引脚短接,主机与从机的每次会话最长时间是300ms,也就是说在300ms之后,无论从机是否响应主机命令,主机都会轮询下一个从机。下面,对本实施例的流程进行详细的说明。
第一步,从机设置外部中断为下降沿触发并允许外部中断。
在实际应用中,从机有两种工作状态,即波特率检测状态和正常通讯状态。如图9所示,从机上电启动、复位、收到主机的结束会话命令或长时间收不到主机命令时,设置外部中断为下降沿触发,进入波特率检测状态,此状态中从机允许外部中断;在完成波特率检测后(即上升沿触发外部中断后)进入正常通讯状态,此状态中从机禁止外部中断,并且,从机总是不断的在波特率检测状态和正常通讯状态之间进行转换。
第二步,主机发送波特率校准码0x10。也就是说,主机在下发轮询命令或广播命令之前先发送波特率校准码0x10,并且延时100ms后再下发相应的轮询命令或广播命令。
第三步,从机产生外部中断后判断中断触发类型,如果是下降沿触发,则执行第四步,如果是上升沿触发,则执行第五步。
第四步,从机将定时器的计数寄存器清零并启动定时器计数,然后设置外部中断为上升沿触发。
第五步,从机停止定时器计数,禁止外部中断,然后根据定时器的计数值计算波特率发生寄存器常数,设置波特率发生寄存器;
第六步,主机延时100ms后下发正常的通讯命令;
第七步,主机和从机会话完成后,主机下发结束会话命令,从机收到结束会话命令后执行第一步。
在第五步中,波特率发生寄存器常数的计算具体为:
Atmega32单片机采用异步正常串行通讯模式,波特率在与主频有如下关系:
BPS = f osc 16 × ( UBRR + 1 )                                     公式4
其中,UBRR是波特率寄存器值,综合公式 BPS = f osc X , X = m × M 8 和公式4,得到:
X = 16 × ( UBRR + 1 ) = m × M 8                                公式5
UBRR = m × M 128 - 1                                        公式6
在本实施例中,定时器计数频率分频位数m取64,则得到:
UBRR = M 2 - 1                                      公式7
通过上述的计算,就可以得到波特率寄存器值,并可以通过得到的波特率寄存器值设置寄存器,从而实现通讯波特率的自适应。
综上所述,借助于本发明的技术方案,通过采用MCU内部定时器进行码元宽度检测,实现了在不增加硬件的情况下,对从机的通讯波特率进行自适应调整,降低了硬件制造的成本,能够适用于任何通讯波特率的应用场合,并且尤其适用于从机晶振不稳定的应用场合。
以上所述仅为本发明的优选实施例而已,并不用于限制本发明,对于本领域的技术人员来说,本发明可以有各种更改和变化。凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。

Claims (10)

1.一种通讯波特率自适应方法,其特征在于,包括:
在从机接收主机发送的波特率校准码后,所述从机的内置定时器以预定频率从所述波特率校准码引起的电平的下降沿开始计数,到所述电平的上升沿停止计数,并得到计数值;
所述从机根据所述计数值获取波特率发生寄存器常数,并根据所述波特率发生寄存器常数设置波特率发生寄存器。
2.根据权利要求1所述的方法,其特征在于,在所述从机接收所述主机发送的波特率校准码之前,所述方法进一步包括:
所述从机设置外部中断为下降沿触发且外部中断有效。
3.根据权利要求2所述的方法,其特征在于,在从机接收主机发送的波特率校准码之后,所述方法进一步包括:
在产生外部中断后,所述从机判断所述外部中断的类型,其中,所述外部中断的类型包括下降沿触发和上升沿触发;
在所述从机判断为下降沿触发的情况下,所述从机将所述内置定时器清零并启动所述内置定时器,设置所述外部中断为上升沿触发。
4.根据权利要求3所述的方法,其特征在于,所述从机的内置定时器从所述波特率校准码引起的下降沿开始计数,到上升沿停止计数之后,所述方法进一步包括:
所述从机将所述外部中断设置为禁止外部中断。
5.根据权利要求4所述的方法,其特征在于,在所述从机设置了所述波特率发生寄存器之后,进一步包括:
所述主机向所述从机发送通讯命令,其中,所述主机发送所述通讯命令的时刻为所述主机开始向所述从机发送所述波特率校准码起经过预定时间段后的时刻。
6.根据权利要求5所述的方法,其特征在于,在所述从机接收到所述通讯命令之后,所述方法进一步包括:
在所述从机接收到所述主机发送的结束会话命令后,所述从机设置外部中断为下降沿触发且外部中断有效。
7.根据权利要求1所述的方法,其特征在于,所述从机根据所述计数值计算波特率发生寄存器常数的具体处理为:
根据公式1计算所述波特率校准码的低电平宽度Tl
T l = m × M f osc , 公式1
其中,M为所述定时器的计数值,fosc为所述从机的主频,m为所述定时器的所述预定频率是主频的分频数;
根据公式2确定所述波特率校准码码元的时间宽度Tnbit与BPS的关系:
T nbit = n BPS , 公式2
其中,Tnbit等于Tl,BPS为所述从机的通讯波特率,n为检测的所述波特率校准码的码元个数,并且,通讯波特率与所述从机主频fosc的关系满足 BPS = f osc X , 其中,X为与所述波特率发生寄存器常数相关的因子;
根据所述通讯波特率与所述从机主频fosc的关系以及所述公式2和所述公式1得到公式3,并根据所述公式3计算X;
X = m × M n , 公式3;
根据X计算所述波特率发生寄存器常数。
8.一种通讯波特率自适应装置,位于从机,其特征在于,包括:
接收模块,用于接收主机发送的波特率校准码;
内置定时器,用于以预定频率从所述波特率校准码引起的电平的下降沿开始计数,到所述电平的上升沿停止计数,并得到计数值;
获取模块,用于根据所述计数值获取波特率发生寄存器常数,并根据所述波特率发生寄存器常数设置波特率发生寄存器。
9.根据权利要求8所述的装置,其特征在于,所述装置进一步包括:
设置模块,用于设置所述内置定时器的状态,并将所述内置定时器的初始状态设置为外部中断为下降沿触发且外部中断有效;
判断模块,用于判断外部中断的类型;
控制模块,用于在所述判断模块判断外部中断类型为下降沿触发的情况下,将所述内置定时器清零后启动所述内置定时器,并控制所述设置模块将外部中断设置为上升沿触发;在所述判断模块判断外部中断为上升沿触发的情况下,所述控制模块控制所述内置定时器停止计数,并控制所述设置模块将外部中断设置为禁止外部中断。
10.一种主机,其特征在于,包括:
第一发送模块,用于向从机发送波特率校准码;
第二发送模块,用于向所述从机发送通讯命令,其中,所述第二发送模块发送所述通讯命令的时刻为所述第一发送模块开始向所述从机发送所述波特率校准码起经过预定时间段后的时刻。
CNA2008101677697A 2008-09-28 2008-09-28 通讯波特率自适应方法、装置以及主机 Pending CN101399635A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CNA2008101677697A CN101399635A (zh) 2008-09-28 2008-09-28 通讯波特率自适应方法、装置以及主机

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CNA2008101677697A CN101399635A (zh) 2008-09-28 2008-09-28 通讯波特率自适应方法、装置以及主机

Publications (1)

Publication Number Publication Date
CN101399635A true CN101399635A (zh) 2009-04-01

Family

ID=40517919

Family Applications (1)

Application Number Title Priority Date Filing Date
CNA2008101677697A Pending CN101399635A (zh) 2008-09-28 2008-09-28 通讯波特率自适应方法、装置以及主机

Country Status (1)

Country Link
CN (1) CN101399635A (zh)

Cited By (44)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101917322A (zh) * 2010-08-10 2010-12-15 西安电子科技大学 一种自适应多总线融合方法
CN102201960A (zh) * 2011-04-28 2011-09-28 华南理工大学 一种基于排序脉宽差分的波特率自适应方法
CN102306136A (zh) * 2011-08-03 2012-01-04 宁波三星电气股份有限公司 基于单片机输入捕获功能的波特率自适应方法
CN102324927A (zh) * 2011-05-04 2012-01-18 中颖电子股份有限公司 波特率发生器
WO2012062219A1 (zh) * 2010-11-12 2012-05-18 施耐德电器工业公司 一种波特率自适应的modbus中继器和波特率自适应系统及方法
CN102780700A (zh) * 2012-07-27 2012-11-14 天津市亚安科技股份有限公司 一种视频监控领域实现波特率和协议自适应的方法及装置
CN102904688A (zh) * 2012-10-12 2013-01-30 北京新雷能科技股份有限公司 一种调整波特率的方法和装置
CN102904766A (zh) * 2011-07-27 2013-01-30 深圳英飞拓科技股份有限公司 串行通信波特率识别方法、装置及监控设备
CN103036823A (zh) * 2012-12-14 2013-04-10 中船重工(武汉)凌久电子有限责任公司 基于fpga的波特率快速自适应方法、处理器及接收端
CN103138677A (zh) * 2011-11-29 2013-06-05 江苏林洋电子股份有限公司 一种波特率校准方法、装置及系统
CN103559164A (zh) * 2013-11-05 2014-02-05 深圳市科曼医疗设备有限公司 串口波特率识别方法和装置
CN103905381A (zh) * 2012-12-26 2014-07-02 苏州工业园区新宏博通讯科技有限公司 电表实现波特率自适应通信的方法
CN103902484A (zh) * 2014-03-04 2014-07-02 东莞博用电子科技有限公司 一种芯片升级的自适应方法
CN103973533A (zh) * 2014-05-22 2014-08-06 哈尔滨理工大学 隔离型rs485/rs422中继隔离器的波特率识别方法及数据流控制方法
CN104168080A (zh) * 2013-05-15 2014-11-26 上海贝尔股份有限公司 一种用于自适应波特率的方法、装置和设备
CN104714920A (zh) * 2015-02-13 2015-06-17 暨南大学 一种自适应波特率的信号接收方法
CN104796222A (zh) * 2014-11-21 2015-07-22 湖南先步信息股份有限公司 Can波特率自动匹配的方法
CN104954211A (zh) * 2014-03-27 2015-09-30 江西飞尚科技有限公司 基于rs485工业总线的接入设备智能识别系统
CN105095038A (zh) * 2015-09-14 2015-11-25 西安航空学院 一种检测rs232串口波特率的方法
CN105512068A (zh) * 2015-11-27 2016-04-20 宁波三星医疗电气股份有限公司 一种实现波特率自适应的模拟uart的方法
CN105653491A (zh) * 2016-01-04 2016-06-08 上海斐讯数据通信技术有限公司 一种串口通信波特率调整方法及系统
CN106326156A (zh) * 2016-08-30 2017-01-11 西安翔腾微电子科技有限公司 基于自适应波特率的单端口通信处理电路和方法
CN106340177A (zh) * 2016-11-02 2017-01-18 北京华电知企能源技术服务有限公司 一种电表宽带载波通信接口波特率自动匹配系统及其控制方法
CN106411483A (zh) * 2016-08-23 2017-02-15 华立科技股份有限公司 一种检测仪表通讯波特率准确度的方法及系统
CN107357219A (zh) * 2017-08-30 2017-11-17 江南大学 一种自适应工业网关
CN108255767A (zh) * 2016-12-29 2018-07-06 广州周立功单片机科技有限公司 射频读卡器与主机的串行通信方法和系统
CN108347303A (zh) * 2017-12-28 2018-07-31 杭州句力科技有限公司 一种电梯显示板自动匹配方法、电子设备及存储介质
CN109075742A (zh) * 2018-08-06 2018-12-21 深圳市汇顶科技股份有限公司 波特率校准电路及串口芯片
CN109683567A (zh) * 2018-12-20 2019-04-26 上海欧秒电力监测设备有限公司 基于rs485网络中系统时钟同步方法
CN110011778A (zh) * 2018-12-20 2019-07-12 上海欧秒电力监测设备有限公司 基于rs485网络中系统同步采样方法
CN110048923A (zh) * 2019-04-19 2019-07-23 博能传动(苏州)有限公司 一种多模块多波特率自适应的高速串行异步通信解决方法
CN110413558A (zh) * 2019-07-15 2019-11-05 广芯微电子(广州)股份有限公司 一种实现低功耗串口模块动态分频方法
CN111314018A (zh) * 2019-11-01 2020-06-19 珠海格力电器股份有限公司 波特率自适应调节处理系统及方法、信息数据处理终端
CN111412580A (zh) * 2020-03-30 2020-07-14 美的集团股份有限公司 波特率校准方法、空调器及计算机可读存储介质
CN112069098A (zh) * 2020-09-14 2020-12-11 上海东软载波微电子有限公司 波特率识别方法及装置
CN112217603A (zh) * 2020-05-06 2021-01-12 青岛鼎信通讯股份有限公司 一种基于电表串口的波特率自适应设计
CN112445744A (zh) * 2019-08-28 2021-03-05 意法半导体(大西部)公司 I2c通信
CN112689245A (zh) * 2020-12-20 2021-04-20 苏州浪潮智能科技有限公司 一种设备通信方法、装置、电子设备及存储介质
CN112821985A (zh) * 2020-12-31 2021-05-18 珠海格力电器股份有限公司 编码器的控制方法及控制装置、伺服电机、编码器
CN114095300A (zh) * 2021-11-10 2022-02-25 天津兆讯电子技术有限公司 自适应速率的数据读写方法及设备
CN114338266A (zh) * 2021-12-21 2022-04-12 珠海一微半导体股份有限公司 一种can控制器的波特率校准方法及校准电路
CN114884627A (zh) * 2022-07-12 2022-08-09 珠海普林芯驰科技有限公司 一种波特率同步方法
CN115866453A (zh) * 2022-11-30 2023-03-28 宁夏隆基宁光仪表股份有限公司 基于集中器的电表的时钟同步方法及时钟同步系统
CN116501679A (zh) * 2023-06-21 2023-07-28 北京智芯微电子科技有限公司 面向高速串行总线通信的自适应波特率生成方法及芯片

Cited By (73)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101917322A (zh) * 2010-08-10 2010-12-15 西安电子科技大学 一种自适应多总线融合方法
CN101917322B (zh) * 2010-08-10 2012-07-25 西安电子科技大学 一种自适应多总线融合方法
US8929425B2 (en) 2010-11-12 2015-01-06 Schneider Electric Industries Sas Modbus repeater with self-adaptive baud rate and self-adaptive baud rate system and method
WO2012062219A1 (zh) * 2010-11-12 2012-05-18 施耐德电器工业公司 一种波特率自适应的modbus中继器和波特率自适应系统及方法
CN102467477A (zh) * 2010-11-12 2012-05-23 施耐德电器工业公司 一种波特率自适应的Modbus中继器和波特率自适应系统及方法
CN102467477B (zh) * 2010-11-12 2014-10-15 施耐德电器工业公司 一种波特率自适应的Modbus中继器和波特率自适应系统及方法
CN102201960B (zh) * 2011-04-28 2013-08-21 华南理工大学 一种基于排序脉宽差分的波特率自适应方法
CN102201960A (zh) * 2011-04-28 2011-09-28 华南理工大学 一种基于排序脉宽差分的波特率自适应方法
CN102324927B (zh) * 2011-05-04 2014-06-04 中颖电子股份有限公司 波特率发生器
CN102324927A (zh) * 2011-05-04 2012-01-18 中颖电子股份有限公司 波特率发生器
CN102904766B (zh) * 2011-07-27 2017-05-17 深圳英飞拓科技股份有限公司 串行通信波特率识别方法、装置及监控设备
CN102904766A (zh) * 2011-07-27 2013-01-30 深圳英飞拓科技股份有限公司 串行通信波特率识别方法、装置及监控设备
CN102306136B (zh) * 2011-08-03 2015-04-22 宁波三星电气股份有限公司 基于单片机输入捕获功能的波特率自适应方法
CN102306136A (zh) * 2011-08-03 2012-01-04 宁波三星电气股份有限公司 基于单片机输入捕获功能的波特率自适应方法
CN103138677A (zh) * 2011-11-29 2013-06-05 江苏林洋电子股份有限公司 一种波特率校准方法、装置及系统
CN103138677B (zh) * 2011-11-29 2016-06-22 江苏林洋能源股份有限公司 一种波特率校准方法、装置及系统
CN102780700A (zh) * 2012-07-27 2012-11-14 天津市亚安科技股份有限公司 一种视频监控领域实现波特率和协议自适应的方法及装置
CN102780700B (zh) * 2012-07-27 2014-12-10 天津市亚安科技股份有限公司 一种视频监控领域实现波特率和协议自适应的方法及装置
CN102904688A (zh) * 2012-10-12 2013-01-30 北京新雷能科技股份有限公司 一种调整波特率的方法和装置
CN103036823B (zh) * 2012-12-14 2015-06-17 中船重工(武汉)凌久电子有限责任公司 基于fpga的波特率快速自适应方法、处理器及接收端
CN103036823A (zh) * 2012-12-14 2013-04-10 中船重工(武汉)凌久电子有限责任公司 基于fpga的波特率快速自适应方法、处理器及接收端
CN103905381A (zh) * 2012-12-26 2014-07-02 苏州工业园区新宏博通讯科技有限公司 电表实现波特率自适应通信的方法
CN104168080A (zh) * 2013-05-15 2014-11-26 上海贝尔股份有限公司 一种用于自适应波特率的方法、装置和设备
CN103559164A (zh) * 2013-11-05 2014-02-05 深圳市科曼医疗设备有限公司 串口波特率识别方法和装置
CN103902484B (zh) * 2014-03-04 2017-11-21 深圳博用科技有限公司 一种芯片升级的自适应方法
CN103902484A (zh) * 2014-03-04 2014-07-02 东莞博用电子科技有限公司 一种芯片升级的自适应方法
CN104954211A (zh) * 2014-03-27 2015-09-30 江西飞尚科技有限公司 基于rs485工业总线的接入设备智能识别系统
CN103973533A (zh) * 2014-05-22 2014-08-06 哈尔滨理工大学 隔离型rs485/rs422中继隔离器的波特率识别方法及数据流控制方法
CN103973533B (zh) * 2014-05-22 2017-06-20 哈尔滨理工大学 隔离型rs485/rs422中继隔离器的波特率识别方法及数据流控制方法
CN104796222A (zh) * 2014-11-21 2015-07-22 湖南先步信息股份有限公司 Can波特率自动匹配的方法
CN104714920B (zh) * 2015-02-13 2017-08-08 暨南大学 一种自适应波特率的信号接收方法
CN104714920A (zh) * 2015-02-13 2015-06-17 暨南大学 一种自适应波特率的信号接收方法
CN105095038A (zh) * 2015-09-14 2015-11-25 西安航空学院 一种检测rs232串口波特率的方法
CN105095038B (zh) * 2015-09-14 2018-03-23 西安航空学院 一种检测rs232串口波特率的方法
CN105512068A (zh) * 2015-11-27 2016-04-20 宁波三星医疗电气股份有限公司 一种实现波特率自适应的模拟uart的方法
CN105653491A (zh) * 2016-01-04 2016-06-08 上海斐讯数据通信技术有限公司 一种串口通信波特率调整方法及系统
CN105653491B (zh) * 2016-01-04 2018-07-13 上海斐讯数据通信技术有限公司 一种串口通信波特率调整方法及系统
CN106411483A (zh) * 2016-08-23 2017-02-15 华立科技股份有限公司 一种检测仪表通讯波特率准确度的方法及系统
CN106411483B (zh) * 2016-08-23 2019-10-25 华立科技股份有限公司 一种检测仪表通讯波特率准确度的方法及系统
CN106326156B (zh) * 2016-08-30 2024-04-05 西安翔腾微电子科技有限公司 基于自适应波特率的单端口通信处理电路和方法
CN106326156A (zh) * 2016-08-30 2017-01-11 西安翔腾微电子科技有限公司 基于自适应波特率的单端口通信处理电路和方法
CN106340177A (zh) * 2016-11-02 2017-01-18 北京华电知企能源技术服务有限公司 一种电表宽带载波通信接口波特率自动匹配系统及其控制方法
CN108255767A (zh) * 2016-12-29 2018-07-06 广州周立功单片机科技有限公司 射频读卡器与主机的串行通信方法和系统
CN108255767B (zh) * 2016-12-29 2020-05-15 广州立功科技股份有限公司 射频读卡器与主机的串行通信方法和系统
CN107357219A (zh) * 2017-08-30 2017-11-17 江南大学 一种自适应工业网关
CN108347303A (zh) * 2017-12-28 2018-07-31 杭州句力科技有限公司 一种电梯显示板自动匹配方法、电子设备及存储介质
CN109075742B (zh) * 2018-08-06 2022-04-12 深圳市汇顶科技股份有限公司 波特率校准电路及串口芯片
CN109075742A (zh) * 2018-08-06 2018-12-21 深圳市汇顶科技股份有限公司 波特率校准电路及串口芯片
CN110011778A (zh) * 2018-12-20 2019-07-12 上海欧秒电力监测设备有限公司 基于rs485网络中系统同步采样方法
CN109683567A (zh) * 2018-12-20 2019-04-26 上海欧秒电力监测设备有限公司 基于rs485网络中系统时钟同步方法
CN110011778B (zh) * 2018-12-20 2020-07-07 上海欧秒电力监测设备有限公司 基于rs485网络中系统同步采样方法
CN110048923A (zh) * 2019-04-19 2019-07-23 博能传动(苏州)有限公司 一种多模块多波特率自适应的高速串行异步通信解决方法
CN110413558A (zh) * 2019-07-15 2019-11-05 广芯微电子(广州)股份有限公司 一种实现低功耗串口模块动态分频方法
CN112445744A (zh) * 2019-08-28 2021-03-05 意法半导体(大西部)公司 I2c通信
CN112445744B (zh) * 2019-08-28 2024-04-02 意法半导体(大西部)公司 I2c通信
CN111314018A (zh) * 2019-11-01 2020-06-19 珠海格力电器股份有限公司 波特率自适应调节处理系统及方法、信息数据处理终端
CN111314018B (zh) * 2019-11-01 2021-07-13 珠海格力电器股份有限公司 波特率自适应调节处理系统及方法、信息数据处理终端
CN111412580A (zh) * 2020-03-30 2020-07-14 美的集团股份有限公司 波特率校准方法、空调器及计算机可读存储介质
CN112217603A (zh) * 2020-05-06 2021-01-12 青岛鼎信通讯股份有限公司 一种基于电表串口的波特率自适应设计
CN112069098A (zh) * 2020-09-14 2020-12-11 上海东软载波微电子有限公司 波特率识别方法及装置
CN112069098B (zh) * 2020-09-14 2022-04-15 上海东软载波微电子有限公司 波特率识别方法及装置
CN112689245B (zh) * 2020-12-20 2022-12-27 苏州浪潮智能科技有限公司 一种设备通信方法、装置、电子设备及存储介质
CN112689245A (zh) * 2020-12-20 2021-04-20 苏州浪潮智能科技有限公司 一种设备通信方法、装置、电子设备及存储介质
CN112821985A (zh) * 2020-12-31 2021-05-18 珠海格力电器股份有限公司 编码器的控制方法及控制装置、伺服电机、编码器
CN114095300A (zh) * 2021-11-10 2022-02-25 天津兆讯电子技术有限公司 自适应速率的数据读写方法及设备
CN114338266A (zh) * 2021-12-21 2022-04-12 珠海一微半导体股份有限公司 一种can控制器的波特率校准方法及校准电路
CN114338266B (zh) * 2021-12-21 2024-02-23 珠海一微半导体股份有限公司 一种can控制器的波特率校准方法及校准电路
CN114884627A (zh) * 2022-07-12 2022-08-09 珠海普林芯驰科技有限公司 一种波特率同步方法
CN114884627B (zh) * 2022-07-12 2022-09-13 珠海普林芯驰科技有限公司 一种波特率同步方法
CN115866453A (zh) * 2022-11-30 2023-03-28 宁夏隆基宁光仪表股份有限公司 基于集中器的电表的时钟同步方法及时钟同步系统
CN115866453B (zh) * 2022-11-30 2023-10-20 宁夏隆基宁光仪表股份有限公司 基于集中器的电表的时钟同步方法及时钟同步系统
CN116501679A (zh) * 2023-06-21 2023-07-28 北京智芯微电子科技有限公司 面向高速串行总线通信的自适应波特率生成方法及芯片
CN116501679B (zh) * 2023-06-21 2023-11-21 北京智芯微电子科技有限公司 面向高速串行总线通信的自适应波特率生成方法及芯片

Similar Documents

Publication Publication Date Title
CN101399635A (zh) 通讯波特率自适应方法、装置以及主机
US4597082A (en) Transceiver for multi-drop local area networks
US8660034B2 (en) Method and system for monitoring activity of a remote link partner to trigger training of Ethernet channels to support energy efficient Ethernet networks
CN103036823B (zh) 基于fpga的波特率快速自适应方法、处理器及接收端
CN101989926B (zh) 用于能量高效的以太网系统和方法
CN101404556B (zh) 一线总线的通讯方法
CN101150809B (zh) 移动终端处理器串口唤醒与流控的方法
JP2020074102A (ja) Usb電力搬送ソーシングデバイスのための省電力モード
CN102306136B (zh) 基于单片机输入捕获功能的波特率自适应方法
CN102833127B (zh) 具有不对称低功耗空闲的能效以太网
CN103684678A (zh) 一种用于uart的波特率自适应方法、装置及uart
SE533636C2 (sv) Anordning vid bussförbindelse i CAN-system
JP2009260970A (ja) サービス連続性を維持しつつパッシブ光ネットワークにおける電力消費量を低減するための方法および装置
EP3576353B1 (en) Flexible data rate handling in a data bus receiver
CN105790756B (zh) 一种利用uart通讯校准时钟的方法及装置
CN102053935A (zh) 一种基于modbus串行通讯协议的通讯方法
EP1700190B1 (en) Optimizing exit latency from an active power management state
CN109218005A (zh) 一种无自协商信号的以太网设备的并行检测方法
CN105119788A (zh) 以太网网口系统及其网络环境自适应方法、以太网设备
US7447168B2 (en) System and method for auto-negotiation in a data communication device
CN204465598U (zh) 一种基于modbus的多协议转换警情信息远程传输系统
Ma et al. A sensor network for buildings based on the DALI bus
WO2006057590A1 (en) A device for a can system
CN208076997U (zh) 一种设备云端监控管理系统
CN103631740B (zh) Sd卡在spi模式下传输自适应字节对齐的电路

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
C12 Rejection of a patent application after its publication
RJ01 Rejection of invention patent application after publication

Application publication date: 20090401