CN114095296B - 波特率自适应系统、方法及装置 - Google Patents
波特率自适应系统、方法及装置 Download PDFInfo
- Publication number
- CN114095296B CN114095296B CN202010859953.9A CN202010859953A CN114095296B CN 114095296 B CN114095296 B CN 114095296B CN 202010859953 A CN202010859953 A CN 202010859953A CN 114095296 B CN114095296 B CN 114095296B
- Authority
- CN
- China
- Prior art keywords
- baud rate
- register
- slave
- adaptive
- rising edge
- 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
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L12/00—Data switching networks
- H04L12/28—Data switching networks characterised by path configuration, e.g. LAN [Local Area Networks] or WAN [Wide Area Networks]
- H04L12/40—Bus networks
- H04L12/4013—Management of data rate on the bus
- H04L12/40136—Nodes adapting their rate to the physical link properties
-
- 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/0001—Systems modifying transmission characteristics according to link quality, e.g. power backoff
- H04L1/0002—Systems modifying transmission characteristics according to link quality, e.g. power backoff by adapting the transmission rate
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02D—CLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
- Y02D30/00—Reducing energy consumption in communication networks
- Y02D30/50—Reducing energy consumption in communication networks in wire-line communication networks, e.g. low power modes or reduced link rate
Landscapes
- Engineering & Computer Science (AREA)
- Quality & Reliability (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Communication Control (AREA)
- Information Transfer Systems (AREA)
Abstract
一种波特率自适应方法,所述方法包含步骤:预先设置波特率校准字符帧并判断待计数的上升沿数量;从机接收到串行通信数据的起始位的第一个上升沿后,使用内置的定时器开始计数并将计数值记录在内置的寄存器;根据所述寄存器的比特位数、所述寄存器的速率设置与串行端口的通信模式决定计算权重值;再根据系统工作时钟频率、所述计算权重值以及所述寄存器所记录的值计算出自适应波特率,并以计算所得的波特率设置串行端口。本发明还提供一种系统及装置。本发明可以自动设置串行端口的波特率。
Description
技术领域
本发明是有关于通信技术领域,尤其关于一种波特率自适应系统、方法及装置。
背景技术
在进行串行通信之前,主机和从机需要沟通好双方通信的波特率、数据位、停止位和数据校验方式,否则无法进行正常通信。
Modbus是工业上常用的串行通信协议,该网络架构具有一个主机,所有通信指令都有主机发出。理论上,Modbus网络可支持多达274远程从属控制器,最长的通信距离可以达到1200米。如果每个设备都要进行手动设置,不仅浪费时间,在一些复杂的工业环境还存在安全隐忧,设置有些设备在设置后需要进行断电重启。
发明内容
有鉴于此,本发明的目的在于提供一种波特率自适应系统、方法及装置,可以根据发送端发送的校准字符帧,自动设置串行端口的波特率,以便后续进行串行通信。
本发明提供一种波特率自适应方法,所述方法包含以下步骤:从机根据预先设置的波特率校准字符帧确定待计数的上升沿数量主机发送所述波特率校准字帧;所述从机接收到串行通信数据的起始位的第一个上升沿后,使用内置的定时器开始计数,在接收到所述待计数的上升沿数量的最后一个上升沿后结束计数,将所述定时器的计数值记录在内置的寄存器;所述从机根据所述寄存器的比特位数、所述寄存器的速率设置与串行端口的通信模式决定计算权重值;所述从机根据系统工作时钟频率、所述计算权重值以及所述寄存器所记录的值计算自适应波特率;以及所述从机根据所述自适应波特率设置所述串行端口。
本发明还提供一种波特率自适应系统,所述系统包括主机及从机,所述主机与所述从机之间经由串行总线连接;所述从机根据预先设置的波特率校准字符帧确定待计数的上升沿数量;所述主机经由所述串行总线发送所述波特率校准字帧;所述从机接收到串行通信数据的起始位的第一个上升沿后,使用内置的定时器开始计数,在接收到所述待计数的上升沿数量的最后一个上升沿后结束计数,将所述定时器的计数值记录在内置的寄存器;所述从机根据所述寄存器的比特位数、所述寄存器的速率设置与串行端口的通信模式决定计算权重值;所述从机根据系统工作时钟频率、所述计算权重值以及所述寄存器所记录的值计算自适应波特率;以及所述从机根据所述自适应波特率设置所述串行端口。
本发明还提供一种波特率自适应装置,其特征在于,所述装置包含:串行端口;处理器,其中,所述处理器还包括定时器及寄存器;以及存储器,用于存储至少一个计算机程序,其中,所述计算机程序包含由所述处理器执行的指令,使得所述处理器执行以下步骤:根据预先设置的波特率校准字符帧确定待计数的上升沿数量;接收到串行通信数据的起始位的第一个上升沿后,使用所述定时器开始计数,在接收到所述待计数的上升沿数量的最后一个上升沿后结束计数,将所述定时器的计数值记录在所述寄存器;根据所述寄存器的比特位数、所述寄存器的速率设置与串行端口的通信模式决定计算权重值;根据系统工作时钟频率、所述计算权重值以及所述寄存器所记录的值计算自适应波特率;以及根据所述自适应波特率设置所述串行端口。
相较于现有技术,所述波特率自适应系统、方法及装置,透过接收到的校准字符串帧,即可自动设置串行端口的波特率,免于手动设置,有效解决人工设置串行端口通信带来的问题。
附图说明
图1为根据本发明一实施例的波特率自适应系统的架构图。
图2为根据本发明一实施例的波特率自适应方法的流程图。
图3为根据本发明一实施例的波特率自适应装置的方块图。
主要元件符号说明
波特率自适应系统 | 100 |
主机 | 110 |
从机 | 120 |
步骤 | S202~S212 |
处理器 | 122 |
定时器 | 1222 |
寄存器 | 1224 |
存储器 | 124 |
串行端口 | 126 |
具体实施方式
请参阅图1,所示为本发明一实施例中波特率自适应系统100的架构图。所述系统100包含主机110及从机120,所述主机110及从机120经由串行总线进行通信连接。本实施例中虽然以一个从机120进行说明,但在实际应用中,所述主机110可以与多个从机120进行通信连接。
请参阅图2,所示为本发明一实施例中波特率自适应方法的流程图,所述方法应用于所述系统100中,在执行所述方法之前,所述主机110和所述从机120预先设置波特率校准字符帧。在本实施例中,所述波特率校准字符帧为十六进制0x55,由于0x55的二进制为01010101,加上串行通信数据的起始位和停止位,刚好包含五个上升沿和五个下降沿,连续高低电平的切换可以使得双方准确识别通信的开始与结束。所述方法具体包括以下步骤:
步骤S202,所述从机120根据所述波特率校准字符帧确定待计数的上升沿数量。
步骤S204,所述主机110发送所述波特率校准字符帧。
步骤S206,所述从机120根据待计数的上升沿数量,在接收到起始位的第一个上升沿后使用内置的定时器开始计数,在接收到最后一个上升沿后结束计数,所述定时器得到一计数值,所述从机120将该计数值记录在内置的寄存器中。
在本实施例中,所述从机120内置的定时器在接收到第五个上升沿后结束计数。
步骤S208,所述从机120根据所述寄存器的比特位数、寄存器的速率设置与串行端口的通信模式决定计算权重值。
步骤S210,所述从机120根据系统工作时钟频率、所述计算权重值以及所述寄存器记录的值计算自适应波特率。
具体地,所述从机120在使用接收信号宽度计算自适应波特率时,必须使用自身的系统工作时钟频率FOSC。
所述寄存器在每次计算信号宽度的时候,都会累计一个值,该值总计为波特率信号宽度的计算周期。
所述计算权重值,具体地,可以根据下表决定,其中,所述寄存器的比特位数包括8比特及16比特,所述寄存器的速率设置包括低速模式及高速模式,以及所述串行端口的通信模式包括异步及同步:
当取得计算权重值后,进一步根据波特率计算公式:FOSC/[计算权重值×(寄存器记录的值+1)],计算得到自适应波特率。
步骤S212,所述从机120根据计算得到的自适应波特率设置所述串行端口。
也就是说,在所述系统100中,所述主机110可以以任意波特率进行指令发送,所述从机120计算取得自适应波特率后,以自适应波特率设置串行端口,即可与所述主机110进行通信。
请参阅图3,所示为本发明一实施例中波特率自适应装置的方块图,在本实施例中,所述装置为所述从机120。所述从机120包含处理器122、存储器124以及串行端口126。所述处理器122与所述存储器124及所述串行端口126电性连接。所述处理器122可以是微控制器、微处理器或其他具有运算处理能力的电路,被配置为执行或处理存储在所述存储器124中的指令、数据以及计算机程序。所述存储器124包含只读存储器(ROM)、随机存取内存(RAM)、磁盘存储介质装置、光存储介质装置、闪存装置、电气、光学或其他物理/有形(例如,非暂时性)等计算机可读存储介质,用于存储控制所述从机120运行的一个或多个计算机程序,并且由所述处理器122执行。在本实施例中,所述处理器122还包括定时器1222及寄存器1224。在本实施例中,所述存储器124存储或编码有计算机程序,用于供所述处理器122执行如图2所示的波特率自适应方法中的步骤S202、S204~S212。
总结来说,本发明的波特率自适应系统、方法及装置,解决了串行通信中手动设置从机波特率的问题,从机以自适应波特率与主机进行通信,经由特定波特率校准字符减少自适应波特率的误差,并充分利用从机处理器的定时器及寄存器资源。
值得注意的是,以上实施例仅用以说明本发明的技术方案而非限制,尽管参照较佳实施例对本发明进行了详细说明,本领域的普通技术人员应当理解,可以对本发明的技术方案进行修改或等同替换,而不脱离本发明技术方案的精神和范围。
Claims (8)
1.一种波特率自适应方法,其特征在于,所述方法包含以下步骤:
从机根据预先设置的波特率校准字符帧确定待计数的上升沿数量;
主机发送所述波特率校准字符帧;
所述从机接收到串行通信数据的起始位的第一个上升沿后,使用内置的定时器开始计数,在接收到所述待计数的上升沿数量的最后一个上升沿后结束计数,将所述定时器的计数值记录在内置的寄存器;
所述从机根据所述寄存器的比特位数、所述寄存器的速率设置与串行端口的通信模式决定计算权重值;
所述从机根据系统工作时钟频率、所述计算权重值以及所述寄存器所记录的值计算自适应波特率,具体处理为:所述自适应波特率=所述系统工作时钟频率/[所述计算权重值×(所述寄存器记录的值+1)];以及
所述从机根据所述自适应波特率设置所述串行端口。
2.根据权利要求1所述的方法,其特征在于,所述波特率校准字符帧预先设置为十六进制0x55。
3.根据权利要求1所述的方法,其特征在于,所述串行端口的通信模式包括异步及同步。
4.根据权利要求1所述的方法,其特征在于,所述寄存器的速率设置包括低速模式和高速模式。
5.一种波特率自适应系统,其特征在于,所述系统包括主机及从机,所述主机与所述从机之间经由串行总线连接;
所述从机根据预先设置的波特率校准字符帧确定待计数的上升沿数量;
所述主机经由所述串行总线发送所述波特率校准字符帧;
所述从机接收到串行通信数据的起始位的第一个上升沿后,使用内置的定时器开始计数,在接收到所述待计数的上升沿数量的最后一个上升沿后结束计数,将所述定时器的计数值记录在内置的寄存器;
所述从机根据所述寄存器的比特位数、所述寄存器的速率设置与串行端口的通信模式决定计算权重值;
所述从机根据系统工作时钟频率、所述计算权重值以及所述寄存器所记录的值计算自适应波特率,具体处理为:所述自适应波特率=所述系统工作时钟频率/[所述计算权重值×(所述寄存器记录的值+1)];以及
所述从机根据所述自适应波特率设置所述串行端口。
6.如权利要求5所述的系统,其特征在于,所述波特率校准字符帧预先设置为十六进制0x55。
7.一种波特率自适应装置,其特征在于,所述装置包含:
串行端口;
处理器,其中,所述处理器还包括定时器及寄存器;以及
存储器,用于存储至少一个计算机程序,其中,所述计算机程序包含由所述处理器执行的指令,使得所述处理器执行以下步骤:
根据预先设置的波特率校准字符帧确定待计数的上升沿数量;
接收到串行通信数据的起始位的第一个上升沿后,使用所述定时器开始计数,在接收到所述待计数的上升沿数量的最后一个上升沿后结束计数,将所述定时器的计数值记录在所述寄存器;
根据所述寄存器的比特位数、所述寄存器的速率设置与串行端口的通信模式决定计算权重值;
根据系统工作时钟频率、所述计算权重值以及所述寄存器所记录的值计算自适应波特率,具体处理为:所述自适应波特率=所述系统工作时钟频率/[所述计算权重值×(所述寄存器记录的值+1)];以及
根据所述自适应波特率设置所述串行端口。
8.如权利要求7所述的装置,其特征在于,所述波特率校准字符帧预先设置为十六进制0x55。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010859953.9A CN114095296B (zh) | 2020-08-24 | 2020-08-24 | 波特率自适应系统、方法及装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010859953.9A CN114095296B (zh) | 2020-08-24 | 2020-08-24 | 波特率自适应系统、方法及装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN114095296A CN114095296A (zh) | 2022-02-25 |
CN114095296B true CN114095296B (zh) | 2023-06-16 |
Family
ID=80295694
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202010859953.9A Active CN114095296B (zh) | 2020-08-24 | 2020-08-24 | 波特率自适应系统、方法及装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN114095296B (zh) |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN116886247B (zh) * | 2023-09-01 | 2023-11-21 | 珠海芯探索微电子有限公司 | 基于uart通信的波特率自适应方法、装置、uart系统、介质 |
Family Cites Families (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2004064616A (ja) * | 2002-07-31 | 2004-02-26 | Sharp Corp | ボーレート設定方法、ボーレート設定プログラム、可読記録媒体、通信システムおよび通信方法 |
JP2007324679A (ja) * | 2006-05-30 | 2007-12-13 | Nec Electronics Corp | シリアル通信用ボーレートジェネレータ |
CN111198835B (zh) * | 2018-11-16 | 2021-07-30 | 瑞昱半导体股份有限公司 | 时钟产生装置及时钟产生方法 |
CN109669899B (zh) * | 2018-11-23 | 2020-07-28 | 中科曙光信息产业成都有限公司 | 自适应调节串口通信波特率的方法及串口装置 |
-
2020
- 2020-08-24 CN CN202010859953.9A patent/CN114095296B/zh active Active
Also Published As
Publication number | Publication date |
---|---|
CN114095296A (zh) | 2022-02-25 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP2008545356A5 (zh) | ||
US11677769B2 (en) | Counting SYN packets | |
CN114095296B (zh) | 波特率自适应系统、方法及装置 | |
EP3211495B1 (en) | Programmable logic controller, control method thereof and control program thereof | |
CN110908940A (zh) | 串口通讯参数调整的方法及终端设备 | |
CN107682247B (zh) | 一种主机与多个从机的高效通讯方法 | |
CN112073280A (zh) | 基于Modbus协议的通信方法、装置及通信设备 | |
CN109218154A (zh) | 一种基于fpga的千兆以太网到slip的转换系统 | |
CN105554517B (zh) | 一种视频流发送方法及装置 | |
CN108304335A (zh) | 一种通过dma接收串口不定长报文的方法 | |
CN113364638A (zh) | 用于epa组网的方法、电子设备和存储介质 | |
CN109246210A (zh) | 物联网通信方法与装置 | |
CN109412879B (zh) | 端口状态参数获取方法、装置及传输设备、存储介质 | |
JP2015225574A (ja) | 制御装置、制御方法及びプログラム | |
JP5517523B2 (ja) | 情報処理装置、その制御方法及びプログラム | |
CN104468404B (zh) | 一种缓冲区配置方法及装置 | |
CN111315026A (zh) | 信道的选择方法、装置、网关及计算机可读存储介质 | |
CN112491573A (zh) | 一种网络参数配置方法及装置 | |
US10742265B2 (en) | Method for access to a shared communication medium | |
CN110011778B (zh) | 基于rs485网络中系统同步采样方法 | |
WO2017173804A1 (zh) | 接入资源调整方法及装置 | |
CN103701634A (zh) | 一种传输多媒体数据的方法及装置 | |
CN112147562A (zh) | 一种基于蓝牙通讯帧的校表方法、系统及校表装置 | |
CN107548018B (zh) | 无线传感网络物联网无线接入点异常处理方法及设备 | |
CN107995681B (zh) | 一种无线传感网时间同步方法及装置 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |