CN105553628B - 一种串行通讯波特率检测方法及装置 - Google Patents
一种串行通讯波特率检测方法及装置 Download PDFInfo
- Publication number
- CN105553628B CN105553628B CN201510880724.4A CN201510880724A CN105553628B CN 105553628 B CN105553628 B CN 105553628B CN 201510880724 A CN201510880724 A CN 201510880724A CN 105553628 B CN105553628 B CN 105553628B
- Authority
- CN
- China
- Prior art keywords
- data
- signal
- baud rate
- data valid
- communication apparatus
- 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.)
- Active
Links
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L1/00—Arrangements for detecting or preventing errors in the information received
- H04L1/20—Arrangements for detecting or preventing errors in the information received using signal quality detector
Landscapes
- Engineering & Computer Science (AREA)
- Quality & Reliability (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Communication Control (AREA)
Abstract
本发明涉及一种串行通讯波特率检测方法及装置,该装置包括一个可编程逻辑器件,所述可编程逻辑器件配置有数据有效检测器和数据宽度计数器,所述数据有效检测器检测通讯设备输入信号是否是空闲状态,判断通信设备输入信号是否为“有效”状态,当所述数据宽度计数器检测到数据有效检测器的数据有效信号为“有效”状态,开始计数。该方法通过检测通讯设备接收信号的有效性来判断其所传输字所需的时间,并通过对串行通讯传输字宽度的测量,从而判断其波特率。该装置不需要测量数据流位的消耗时间,降低了对装置的配置要求,实现了对未知通讯设备波特率的快速检测,给使用人员带来了很大方便。
Description
技术领域
本发明属于通信领域,具体涉及一种串行通讯波特率检测方法及装置。
背景技术
在工业控制、电信等控制系统中以及其他一些设备中,经常会使用RS232/422/485等串行通讯接口作为控制台或监控接口,在使用过程中,有时会不知道通讯设备工作波特率而无法正确设置系统的工作参数。每当遇到这种情况,常用的方法是找说明书查看或者找设计人员询问或者逐个尝试常用的波特率,这种方法给通讯设备的使用带来了很多不便。
现有的通讯设备波特率检测方法是通过测量通讯设备接收信号的位所消耗的时间,来获取通讯波特率,从而要求检测装置具有高精度时钟,如申请号为201010614318.0的专利文献《一种多路串行通讯接口波特率自动检测电路及方法》,而申请号为200910065713.5的专利文献《带有波特率检测设置功能的UART装置及其检测设置方法》公开了一种通过检测上升沿、下降沿来确定数据流位,从而计算设定时间内的数据宽度,由于要判断上升沿和下降沿,也要求检测装置具有高精度时钟,所以,对装置的配置要求高。
发明内容
本发明提供了一种串行通讯波特率检测方法及装置,以解决现有的通讯设备波特率检测方法要求检测装置具有高精度时钟的问题。
为解决上述技术问题,本发明串行通讯波特率检测装置包括一个可编程逻辑器件,所述可编程逻辑器件配置有数据有效检测器和数据宽度计数器,所述数据有效检测器检测通讯设备输入信号是否是空闲状态,然后判断通信设备输入信号是否为有效状态,当所述数据宽度计数器检测到数据有效检测器的数据有效信号为“有效”状态,开始计数。
该装置还包括通讯波特率比较判断器,所述通讯波特率比较判断器根据数据宽度计数器的计数值,比较判断出通讯波特率。
该装置设置于监控计算机的接口中。
串行通讯波特率检测方法包括
1)对数据有效检测器对应数据位进行写操作,启动数据有效检测器对通信设备接收信号进行检测;
2)对数据有效检测器对应数据位进行读操作,若数据有效检测器的数据有效信号为“有效”状态,数据宽度计数器计数,直至数据有效检测器的数据有效信号为“无效”状态;
3)对数据宽度计数器对应数据位进行读操作,获得数据字的宽度计数值,经比对后判断出通信设备的波特率。
所述数据有效检测器对通信设备接收信号进行检测的步骤包括:
a)数据有效信号设置为“无效”状态,检测开始;
b)判断通讯设备接收信号是否为空闲状态,如果否,则等待,否则,进行步骤c);
c)判断通讯设备接收信号是否为有效状态,如果否,则等待,否则,数据有效信号设置为“有效”状态;
d)继续判断通讯设备接收信号是否为有效状态,如果是,则等待,否则,数据有效信号设置为“无效”状态,检测结束。
所述判断通讯设备接收信号是否为空闲状态的方法是:根据第一预设电压区间,当通讯设备接收信号电压值位于第一预设电压区间内,判断通讯设备接收信号为空闲状态。
所述判断通讯设备接收信号是否为有效状态的方法是:根据第二预设电压区间,当通讯设备接收信号电压值位于第二预设电压区间内,判断通讯设备接收信号为有效状态。
对数据宽度计数器对应数据位进行写操作时,要首先进行清零操作。
本发明的方法及装置通过检测通讯设备接收信号的有效性来判断其所传输字所需的时间,并通过对串行通讯传输字宽度的测量,从而判断其波特率,该装置不需要测量数据流位的消耗时间,也无需判断数据流的上升沿和下降沿,仅需判断电压值的大小即可计算出数据宽度,不要求检测装置具有高精度时钟,降低了对装置的配置要求,而且实现了对未知通讯设备波特率的快速检测,给使用人员带来了很大方便。
附图说明
图1是本发明的通信波特率自适应装置原理示意图。
具体实施方式
下面结合附图,对本发明的技术方案作进一步详细明。
串行通讯波特率检测装置实施例
如图1所示,本实施例的装置包括一个可编程逻辑器件,所述可编程逻辑器件中配置了数据有效检测器1、数据宽度计数器2。数据有效检测器检测通讯设备输入信号是否是空闲状态,然后判断通信设备输入信号是否为有效状态,当数据宽度计数器检测到数据有效检测器的数据有效信号为“有效”状态,开始计数。
其中,数据有效检测器用于检测通讯设备输入信号状态,并设置数据有效信号位;,数据宽度计数器用于根据数据有效信号位,对有效数据宽度进行计数。
波特率检测装置设于监控计算机的通讯接口中。
该装置设置有通讯波特率比较判断器,用于根据数据宽度计数器的计数值,比较判断出通讯波特率,当然也可以进行人工比较获取波特率。
该装置可设置串行通讯收发器3在可编程逻辑器件中,也可以是另外的独立部件。
串行通讯波特率检测方法实施例
该方法是基于上述检测装置的,具体包括以下步骤:
(1)对数据宽度计数器2对应数据位进行写操作,将其清零,数据宽度计数器2进入计数状态,如果数据有效检测器1送来的“数据有效”信号为“有效”状态,则数据宽度计数器2计数直至“数据有效”信号变为“无效”状态,;
(2)对数据有效检测器1对应数据位进行写操作,启动数据有效检测器1对通讯设备接收信号“Rx”进行检测;
(3)对数据有效检测器1对应数据位进行读操作,根据相应的数据位判断检测是否完成,若未完成,则等待,若完成则执行下一步;
(4)对数据宽度计数器2对应数据位进行读操作,获得数据字的宽度计数值,经比对后判断出通讯设备的波特率。
所述数据有效检测器1的数据有效检测步骤包括:
(1)“数据有效”信号设置为“无效”状态,启动检测;
(2)判断此时通讯设备输入信号“Rx”是否为空闲状态,如果否,则等待,如果是则进行下一步;
(3)判断此时通讯设备输入信号“Rx”是否为有效状态,如果否,则等待,如果是则进行下一步;
(4)“数据有效”信号设置为“有效”状态,判断此时通讯设备输入信号“Rx”是否为有效状态,如果是,则等待,如果否则进行下一步;
(5)数据有效信号设置为“无效”状态,检测完成。
下面以RS-232-C标准为例说明“数据有效”信号的检测:
EIA-RS-232C对电气特性、逻辑电平和各种信号线功能都作了规定。在TxD和RxD上:
逻辑1(MARK)=-3V~-15V
逻辑0(SPACE)=+3~+15V
通过检测“Rx”信号的电压即可以判断当前是否有数据传输。当电压介于-3~+3V之间即可认为是“空闲”状态。
对波特率的判别基于如下依据:
串行数据的格式为:起始位+数据位+奇偶校验位+停止位,其中起始位1bit,数据位5~8bit,校验位0、1bit,停止位1、1.5和2bit。一个串行通讯的传输字长为7~12位,字长变化为0.5位。常见波特率传输时间见表1。
在完成一次操作后,读出数据宽度计数器2中的值,并根据该数据字传输的时间,与表1中的数值比较即可得到对应的波特率。
表1不同波特率字传输所需时间表
本实施例是基于两个字传输中间的空闲来判断一个字的长度的,对于无空闲的传输不适用。
另外,波特率为38400中7到8bit字的传输时间和57600中的10.5到12bit字的传输时间基本一致,在使用中需结合数据位的宽度进行判断,否则可能会造成误判。
Claims (8)
1.一种串行通讯波特率检测装置,其特征在于,该装置包括一个可编程逻辑器件,所述可编程逻辑器件配置有数据有效检测器和数据宽度计数器,所述数据有效检测器检测通讯设备输入信号是否是空闲状态,然后判断通信设备输入信号是否为有效状态,当所述数据宽度计数器检测到数据有效检测器的数据有效信号为“有效”状态,开始计数,空闲状态指的是通讯设备输入信号不满足向后传输条件的状态,有效状态指的是通讯设备输入信号满足向后传输条件的状态。
2.根据权利要求1所述串行通讯波特率检测装置,其特征在于,该装置还包括通讯波特率比较判断器,所述通讯波特率比较判断器根据数据宽度计数器的计数值,比较判断出通讯波特率。
3.根据权利要求1所述串行通讯波特率检测装置,其特征在于,该装置设置于监控计算机的接口中。
4.一种采用权利要求1所述装置的串行通讯波特率检测方法,其特征在于,该方法包括如下步骤:
1)对数据有效检测器对应数据位进行写操作,启动数据有效检测器对通信设备接收信号进行检测;
2)对数据有效检测器对应数据位进行读操作,若数据有效检测器的数据有效信号为“有效”状态,数据宽度计数器计数,直至数据有效检测器的数据有效信号为“无效”状态;
3)对数据宽度计数器对应数据位进行读操作,获得数据字的宽度计数值,经比对后判断出通信设备的波特率。
5.根据权利要求4所述串行通讯波特率检测方法,其特征在于,所述数据有效检测器对通信设备接收信号进行检测的步骤包括:
a)数据有效信号设置为“无效”状态,检测开始;
b)判断通讯设备接收信号是否为空闲状态,如果否,则等待,否则,进行步骤c);
c)判断通讯设备接收信号是否为有效状态,如果否,则等待,否则,数据有效信号设置为“有效”状态;
d)继续判断通讯设备接收信号是否为有效状态,如果是,则等待,否则,数据有效信号设置为“无效”状态,检测结束。
6.根据权利要求5所述串行通讯波特率检测方法,其特征在于,所述判断通讯设备接收信号是否为空闲状态的方法是:根据第一预设电压区间,当通讯设备接收信号电压值位于第一预设电压区间内,判断通讯设备接收信号为空闲状态。
7.根据权利要求5所述串行通讯波特率检测方法,其特征在于,所述判断通讯设备接收信号是否为有效状态的方法是:根据第二预设电压区间,当通讯设备接收信号电压值位于第二预设电压区间内,判断通讯设备接收信号为有效状态。
8.根据权利要求5所述串行通讯波特率检测方法,其特征在于,对数据宽度计数器对应数据位进行写操作时,要首先进行清零操作。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201510880724.4A CN105553628B (zh) | 2015-12-05 | 2015-12-05 | 一种串行通讯波特率检测方法及装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201510880724.4A CN105553628B (zh) | 2015-12-05 | 2015-12-05 | 一种串行通讯波特率检测方法及装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN105553628A CN105553628A (zh) | 2016-05-04 |
CN105553628B true CN105553628B (zh) | 2018-11-16 |
Family
ID=55832580
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201510880724.4A Active CN105553628B (zh) | 2015-12-05 | 2015-12-05 | 一种串行通讯波特率检测方法及装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN105553628B (zh) |
Families Citing this family (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN106788920B (zh) * | 2016-12-19 | 2019-08-23 | 珠海格力电器股份有限公司 | 一种波特率偏差检测方法、装置及空调室内机 |
CN110266405A (zh) * | 2019-05-10 | 2019-09-20 | 珠海格力电器股份有限公司 | 设备通讯信号偏差检测系统 |
CN113238974A (zh) * | 2021-05-19 | 2021-08-10 | 青岛信芯微电子科技股份有限公司 | 一种总线带宽效率统计方法、装置、和设备及介质 |
CN116760508B (zh) * | 2023-08-18 | 2023-11-07 | 荣耀终端有限公司 | 一种波特率设置方法及系统 |
Citations (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5982837A (en) * | 1997-06-16 | 1999-11-09 | Lsi Logic Corporation | Automatic baud rate detector |
CN1570899A (zh) * | 2004-04-25 | 2005-01-26 | 赵红刚 | 电脑与串口外接模块自动匹配通信的方法 |
CN101626288A (zh) * | 2009-08-10 | 2010-01-13 | 中国航空工业集团公司洛阳电光设备研究所 | 带有波特率检测设置功能的uart装置及其检测设置方法 |
CN102315983A (zh) * | 2010-12-30 | 2012-01-11 | 杭州鼎利环保科技有限公司 | 一种多路串行通讯接口波特率自动检测电路及方法 |
CN103036823A (zh) * | 2012-12-14 | 2013-04-10 | 中船重工(武汉)凌久电子有限责任公司 | 基于fpga的波特率快速自适应方法、处理器及接收端 |
CN103618588A (zh) * | 2013-11-26 | 2014-03-05 | 中国科学院嘉兴微电子与系统工程中心 | 一种自动波特率检测方法及检测模块 |
CN203574663U (zh) * | 2013-11-26 | 2014-04-30 | 中国科学院嘉兴微电子与系统工程中心 | 一种自动波特率检测模块 |
CN105068966A (zh) * | 2015-08-19 | 2015-11-18 | 长沙威胜信息技术有限公司 | 串口自动识别方法 |
-
2015
- 2015-12-05 CN CN201510880724.4A patent/CN105553628B/zh active Active
Patent Citations (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5982837A (en) * | 1997-06-16 | 1999-11-09 | Lsi Logic Corporation | Automatic baud rate detector |
CN1570899A (zh) * | 2004-04-25 | 2005-01-26 | 赵红刚 | 电脑与串口外接模块自动匹配通信的方法 |
CN101626288A (zh) * | 2009-08-10 | 2010-01-13 | 中国航空工业集团公司洛阳电光设备研究所 | 带有波特率检测设置功能的uart装置及其检测设置方法 |
CN102315983A (zh) * | 2010-12-30 | 2012-01-11 | 杭州鼎利环保科技有限公司 | 一种多路串行通讯接口波特率自动检测电路及方法 |
CN103036823A (zh) * | 2012-12-14 | 2013-04-10 | 中船重工(武汉)凌久电子有限责任公司 | 基于fpga的波特率快速自适应方法、处理器及接收端 |
CN103618588A (zh) * | 2013-11-26 | 2014-03-05 | 中国科学院嘉兴微电子与系统工程中心 | 一种自动波特率检测方法及检测模块 |
CN203574663U (zh) * | 2013-11-26 | 2014-04-30 | 中国科学院嘉兴微电子与系统工程中心 | 一种自动波特率检测模块 |
CN105068966A (zh) * | 2015-08-19 | 2015-11-18 | 长沙威胜信息技术有限公司 | 串口自动识别方法 |
Non-Patent Citations (2)
Title |
---|
"UART波特率发生电路设计";赵琳娜,赵煌,李红征;《电子与封装》;20100912;第10卷(第9期);第1681-1070页 * |
"一种新颖的UART 自适应波特率发生器的设计";周建华,万书芹,薛忠杰;《集成电路设计与开发》;20071218;第32卷(第12期);第1052-1055页 * |
Also Published As
Publication number | Publication date |
---|---|
CN105553628A (zh) | 2016-05-04 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN105553628B (zh) | 一种串行通讯波特率检测方法及装置 | |
CN101626288A (zh) | 带有波特率检测设置功能的uart装置及其检测设置方法 | |
CN105068966A (zh) | 串口自动识别方法 | |
KR100898645B1 (ko) | 활성 전원 관리 상태로부터의 탈출 대기 시간의 최적화 | |
CN101710857A (zh) | 串行通信波特率自适应方法及其装置 | |
CN107147553B (zh) | 从站波特率及帧格式的调整方法、调整装置及调整设备 | |
CN110647486B (zh) | 一种PCIe链路训练方法、端设备及通讯系统 | |
CN103618588A (zh) | 一种自动波特率检测方法及检测模块 | |
CN108011692A (zh) | 一种用于单片机的数据通信方法 | |
TWI408931B (zh) | 資料通訊裝置、及通訊控制方法、以及程式産品 | |
CN107688521A (zh) | 一种服务器电源在位检测电路及检测方法 | |
CN108390752A (zh) | 信号接收方法 | |
CN102768561B (zh) | 一种双桥片主板冗余的设计方法 | |
CN203574663U (zh) | 一种自动波特率检测模块 | |
US20110141605A1 (en) | Rate verification of an incoming serial alignment sequence | |
US5612961A (en) | Method and system for verification of the baud rate for an asynchronous serial device residing within a data processing system | |
CN201893806U (zh) | Fc时钟同步发生系统 | |
CN101442380B (zh) | 基于高速串行接口编码方式的误码率测试方法与装置 | |
CN1784855B (zh) | 至少部分响应于确定空闲条件存在而至少部分反激活接收器的方法、装置及系统 | |
CN107368439B (zh) | 主控元件以及数据传输方法 | |
CN104699651A (zh) | 一种表用rs485收发数据的方法 | |
CN115421801A (zh) | 一种通过串口对外设参数配置的方法及系统 | |
CN112013506B (zh) | 用于通讯检测的方法及装置、空调 | |
CN103631740B (zh) | Sd卡在spi模式下传输自适应字节对齐的电路 | |
CN109144937B (zh) | 一种多路串口高可靠性传输方法 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |