CN114840464A - 调整波特率的方法、电子设备及计算机存储介质 - Google Patents
调整波特率的方法、电子设备及计算机存储介质 Download PDFInfo
- Publication number
- CN114840464A CN114840464A CN202110138768.5A CN202110138768A CN114840464A CN 114840464 A CN114840464 A CN 114840464A CN 202110138768 A CN202110138768 A CN 202110138768A CN 114840464 A CN114840464 A CN 114840464A
- Authority
- CN
- China
- Prior art keywords
- preset
- error
- bit
- baud rate
- compensation
- 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
Links
- 238000000034 method Methods 0.000 title claims abstract description 55
- 238000005070 sampling Methods 0.000 claims description 56
- 238000012360 testing method Methods 0.000 claims description 14
- 230000004044 response Effects 0.000 claims description 6
- 230000005540 biological transmission Effects 0.000 abstract description 27
- 238000004891 communication Methods 0.000 description 22
- 230000001186 cumulative effect Effects 0.000 description 6
- 230000006870 function Effects 0.000 description 6
- 238000010586 diagram Methods 0.000 description 5
- 230000008569 process Effects 0.000 description 5
- 230000003287 optical effect Effects 0.000 description 3
- 239000000463 material Substances 0.000 description 2
- 238000012545 processing Methods 0.000 description 2
- 230000001360 synchronised effect Effects 0.000 description 2
- 230000009286 beneficial effect Effects 0.000 description 1
- 238000013461 design Methods 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 238000013507 mapping Methods 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 239000013307 optical fiber Substances 0.000 description 1
- 238000012546 transfer Methods 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F13/00—Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
- G06F13/38—Information transfer, e.g. on bus
- G06F13/42—Bus transfer protocol, e.g. handshake; Synchronisation
- G06F13/4282—Bus transfer protocol, e.g. handshake; Synchronisation on a serial bus, e.g. I2C bus, SPI bus
- G06F13/4291—Bus transfer protocol, e.g. handshake; Synchronisation on a serial bus, e.g. I2C bus, SPI bus using a clocked protocol
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F13/00—Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
- G06F13/38—Information transfer, e.g. on bus
- G06F13/42—Bus transfer protocol, e.g. handshake; Synchronisation
- G06F13/4282—Bus transfer protocol, e.g. handshake; Synchronisation on a serial bus, e.g. I2C bus, SPI bus
- G06F13/4295—Bus transfer protocol, e.g. handshake; Synchronisation on a serial bus, e.g. I2C bus, SPI bus using an embedded synchronisation
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Communication Control (AREA)
Abstract
本申请公开了一种调整波特率的方法、电子设备及计算机存储介质。该方法包括:获取发送端与接收端之间波特率的误差;基于误差获取预设补偿参数表;利用预设补偿参数表按照每比特对波特率进行修正,以调整波特率。通过这种方式,能够提高波特率精度,从而能够增加数据传输的可靠性。
Description
技术领域
本申请涉及通信技术领域,特别是涉及一种调整波特率的方法、电子设备及计算机存储介质。
背景技术
通用异步收发传输器(Universal Asynchronous Receiver/Transmitter,UART)是一个通用同步/异步串行收发模块。异步串行通信根据数据格式,按照一定的通信协议和通信速率进行数据的传输,在异步串行通信中,采用波特率来描述数据的传输速率。
在实际工作中,接收端与发送端所处的环境以及其它因素,如传输距离过远、时钟误差等会导致接收端和/或发送端的波特率产生误差,使发送端所发送的数据在接收端不能准确接收,导致数据传输失败。
发明内容
本申请主要解决的技术问题是如何提高数据传输的可靠性。
为解决上述技术问题,本申请采用的一个技术方案是:提供一种调整波特率的方法。该方法包括:获取发送端与接收端之间波特率的误差;基于误差获取预设补偿参数表;利用预设补偿参数表按照每比特对波特率进行修正,以调整波特率。
为解决上述技术问题,本申请采用的一个技术方案是:提供一种电子设备。该电子设备包括处理器及与处理器耦接的存储器,处理器执行存储器中的程序指令时用于实现上述调整波特率的方法
为解决上述技术问题,本申请采用的一个技术方案是:提供一种计算机存储介质。该计算机存储介质上存储有程序指令,程序指令被执行时以实现上述调整波特率的方法。
本申请的有益效果是:区别于现有技术,本申请实施例基于波特率的误差获取对应的预设补偿参数表,并利用预设补偿参数表按照每比特对波特率进行修正,因此,能够调整波特率,使得按照调整后的波特率进行数据传输,能够减少因波特率出现误差,造成数据发送端/或接收端对数据的实际采样点与理想采样点之间的偏差超过通信协议的要求,从而导致数据传输失败的问题,因此,本申请实施例能够降低波特率的误差,以使数据的实际采样点与理想采样点之间的偏差满足通信协议要求,能够提高波特率精度,从而能够增加数据传输的可靠性。
附图说明
为了更清楚地说明本发明实施例中的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。其中:
图1是UART数据传输的示意图;
图2是本申请调整波特率的方法一实施例的流程示意图;
图3是图2实施例中步骤S201的具体流程示意图;
图4是图2实施例中步骤S202的具体流程示意图;
图5是图2实施例中步骤S203的具体流程示意图;
图6是本申请调整波特率的方法一实施例的流程示意图;
图7是本申请调整波特率的方法一实施例的流程示意图;
图8是本申请调整波特率的方法中生成第一预设补偿表和第二预设补偿表的流程示意图;
图9是本申请电子设备一实施例的结构示意图;
图10是本申请计算机存储介质一实施例的结构示意图。
具体实施方式
下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,均属于本申请保护的范围。
本申请中的术语“第一”、“第二”仅用于描述目的,而不能理解为指示或暗示相对重要性或者隐含指明所指示的技术特征的数量。本申请的描述中,“多个”的含义是至少两个,例如两个,三个等,除非另有明确具体的限定。此外,术语“包括”和“具有”以及它们任何变形,意图在于覆盖不排他的包含。例如包含了一系列步骤或单元的过程、方法、系统、产品或设备没有限定于已列出的步骤或单元,而是可选地还包括没有列出的步骤或单元,或可选地还包括对于这些过程、方法、产品或设备固有的其它步骤或单元。
如图1所示,UART的基本协议如下:发送端/接收端通过对数据中每个比特的理想采样点(一般理想采样点为中间时刻点)的采样获得该比特的值(0或1),其它比特依此类推,从而获得一个字节或一帧数据。而实际应用中,波特率会存在一定误差,该误差会导致实际采样点不在每个比特的中间。为了获得稳定可靠的通信,协议要求到最后一个比特的实际采样点与理想的采样点之间的偏差不超过+/-50%(统一定义右偏为+,左偏为-),也就要求波特率必须达到一定的精度;以每字节或每帧数据包括10比特(包括start/stop比特)为例,每比特的误差应不超过5%,按发送端/接收端对半分原则,每比特要求波特率误差不超过2.5%;协议对波特率精度的要求随着每字节或每帧数据包含的比特数的增加而升高。
为解决上述技术问题,本申请首先提出一种调整波特率的方法,如图2所示,图2是本申请调整波特率的方法一实施例的流程示意图。本实施例调整波特率的方法具体包括以下步骤:
步骤S201:获取发送端与接收端之间波特率的误差。
异步串行通信是根据数据格式,按照一定的通信协议和通信速率进行数据的传输,在异步串行通信中,通常采用波特率来描述数据的传输速率;在异步串行通信中,二进制数据系列是以数字信号波形的形式出现,并通过波特率时钟控制二进制数据系列传输。
在发送数据时,发送端按波特率将移位寄存器的数据按位串行移位输出;在接收数据时,接收端按波特率对接收数据位采样,并按位串行已入移位寄存器。可见,波特率对数字波形的每一位传送都要进行作用,因此,波特率的精度或误差会直接影响数据传输的可靠性。
为提高数据传输的可靠性,发送端的波特率应与接收端的波特率一致,发送端的波特率时钟应与接收端的波特率时钟同步。
时钟误差是造成波特率误差的主要来源,时钟的精度越高,芯片中时钟模块的代价越大(包括人力、成本等);且当接收端或发送端不满足上述精度或误差要求时,通信会出错。
需要注意的是,本实施例可以获取波特率误差。
可选地,本实施例可以采用如图3所示的方法实现步骤S201。本实施例的方法包括步骤S301至步骤S304。
步骤S301:发送并由示波器接收测试数据。
在假设没有波特率误差的情况下,配置某一波特率并发送,然后由示波器等途径接收并量测脉宽。
步骤S302:计算测试数据的总脉冲宽度与总脉冲宽度的理论脉冲宽度之间的第一差值。
由上述分析可知,在异步串行通信中,二进制数据系列是以数字信号波形的形式出现,因此,接收端接收的测试数据为脉冲信号。
理论脉冲宽度是在参考波特率(未产生误差)时,接收端接收的测试数据的脉冲宽度。
由上述分析可知,波特率是通过脉冲信号的上下沿来控制数据的发送与接收,波特率的采样点的误差实际上是实际脉冲宽度与理论脉冲宽度之间的差值。因此,至测试数据最后一个比特的脉冲信号的脉冲宽度与理论脉冲宽度之间的差值为最后一个比特的采样误差(本质上是所有比特的累积采样误差),即波特率的累积误差。
步骤S303:获取测试数据的比特的数量,并计算第一差值与数量的比值为波特率的误差。
本实施例将累积误差,即最后一个比特的采样误差平均到每个比特,就能获取波特率的误差。
本实施例可以采用测试数据获得波特率的误差,例如,发送端发送测试数据(如0x55、0xAA、0x5A、0xA5等。),然后接收端接收测试数据后识别其中多个比特的总采样误差,然后用总采样误差除以这多个比特的总数,从而可以得到波特率的误差;在其它实施例中,波特率还可以是已知的,例如可以从时钟模块获取接收端和/或发送端的波特率时钟误差,以获得波特率误差。
在另一实施例中,还可以计算测试数据的单个脉冲宽度与单个脉冲宽度的理论脉冲宽度之间的第二差值,并将第二差值作为波特率的误差。
步骤S202:基于误差获取预设补偿参数表。
其中,误差包括误差幅度及偏移方向,本实施例的预设补偿参数表包括第一预设补偿表和第二预设补偿表,第一预设补偿表用于存储第一预设补偿幅度,第二预设补偿表用于存储第一预设补偿方向。
在实际应用中,可以增加配置寄存器A,以实现第二预设补偿表,配置寄存器A用于存储每比特的第一预设补偿方向;可以增加配置寄存器B,以实现第一预设补偿表,配置寄存器B用于存储每比特的第一预设补偿幅度。
可选地,本实施例可以通过如图4所示的方法实现步骤S202。本实施例的方法包括步骤S401和步骤S402。
步骤S401:响应于误差的误差幅度位于预设范围内,获取与预设范围对应的第一预设补偿表。
存储介质中存储有多组寄存器A和寄存器B、多个预设范围及寄存器A和寄存器B与预设范围的映射关系。
在(控制器)判断波特率误差的误差幅度位于预设范围内时,获取与该预设范围对应的寄存器B。
步骤S402:响应于误差的偏移方向为预设偏移方向,获取与预设偏移方向对应的第二预设补偿表。
在判断波特率误差的偏移方向为预设偏移方向时,获取与该预设偏移方向对应的寄存器A。
进一步地,判断误差幅度是否大于或等于幅度阈值;误差幅度大于或等于幅度阈值,则执行步骤S401;响应于误差幅度小于幅度阈值,则认为当前波特率的误差不会导致数据传输错误,则不需要对当前波特率的误差进行修正,以提高数据传输效率。
幅度阈值可以是50%,也可以是40%等;幅度阈值可以根据数据传输可靠性及数据传输效率等性能进行合理设置。
在其它实施例中,可以先执行步骤S402,再执行步骤S401。
步骤S203:利用预设补偿参数表按照每比特对波特率进行修正,以调整波特率。
进一步地,按调整后的波特率进行数据传输。
区别于现有技术,本实施例基于波特率的误差获取对应的预设补偿参数表,并利用预设补偿参数表按照每比特对波特率进行修正,因此,能够调整波特率,使得按照调整后的波特率进行数据传输,能够减少因波特率出现误差,造成数据发送端/或接收端对数据的实际采样点与理想采样点之间的偏差超过通信协议的要求,从而导致数据传输失败的问题,因此,本实施例能够降低波特率的误差,以使数据的实际采样点与理想采样点之间的偏差满足通信协议要求,能够提高波特率精度,从而能够增加数据传输的可靠性。
其中,本实施例的第一预设补偿表包括预设序号及与预设序号对应的第一预设补偿幅度,第二预设补偿表包括预设序号及与预设序号对应的第一预设补偿方向。
由上述分析可知,本实施例利用寄存器A实现第二预设补偿表,利用寄存器B实现第一预设补偿表。在一个应用场景中,寄存器A如表1及表2所示,寄存器B如表3及表4所示。
表1
表2
由表1、2可知,寄存器A存储了每个比特的第一预设补偿方向。
表3
表4
由表3、4可知,寄存器B存储了每个比特的第一预设补偿幅度。
可选地,本实施例可以通过如图5所示的方法实现步骤S203。本实施例的方法包括步骤S501至步骤S503。
步骤S501:获取数据的每个比特。
获取每个比特的第一序号及预设采样点(理想采样点)。
步骤S502:响应于第一序号与预设序号相同,从第一预设补偿表中获取第一预设补偿幅度,并从第二预设补偿表中获取第一预设补偿方向。
从配置寄存器B中分别获取每个比特的第一预设补偿幅度。
其中,在芯片设计领域,每个比特的第一预设补偿幅度可以为1/(2^n),以提高补偿效率。当然,每个比特的第一预设补偿幅度可根据实际应用进行设置,以保证每个比特的补偿幅度是最优的,使得补偿后的每个比特的采样误差在协议要求范围内;每比特的第一预设补偿幅度大小可以为固定式,也可为可调节式。
从寄存器A中分别获取每个比特的第一预设补偿方向,其中,第一预设补偿方向包括前移方向(右调整)和后移方向(左调整)。
步骤S503:利用与第一预设补偿方向和第一预设补偿幅度对比特的预设采样点按照每比特进行调整。
其中,数据的所有比特的第一预设补偿幅度至少部分不同。
可选地,本实施例可以通过步骤S61和步骤S62实现步骤S502。
步骤S61:响应于第一预设补偿方向为前移方向,将比特的预设采样点向前移动第一预设补偿幅度,以获得实际采样点。
步骤S62:响应于第一预设补偿方向为后移方向,将比特的实际采样点向后移动第一预设补偿幅度,以获得实际采样点。
进一步地,第一预设补偿方向还可以包括零偏移,响应于第一预设补偿方向为零偏移(不调整),将比特的预设采样点作为实际采样点,即不对该比特进行补偿。
在一应用场景中,如图6所示,数据包括10比特,第一预设补偿方向包括:零偏移0(表示不调整),前移方向+1(表示向右调整),后移方向-1(表示向左调整);波特率造成的每比特误差为+4%,累积到最后一个比特的累积误差约为40%,即+0.4比特;在原有的波特率配置下,通过波形量测波特率误差或已知波特率误差后,根据波特率误差设置每比特的补偿方向和补偿幅度5%,补偿后比特的实际采样点可以与预设采样点(理想采样点)偏差小,虽有偏差但不会通信错误。
具体地,波特率误差为+4%,start-bit3的累积采样误差为+20%,针对start-bit2这4比特中的每比特向左调整-5%,即累积调整-20%,使得累积到bit 3的累积采样误差为0%;其他类推,可以实现如图6所示的波特率调整。
在一应用场景中,如图7所示,数据包括10比特,第一预设补偿方向包括:零偏移0(表示不调整),前移方向+1(表示向右调整),后移方向-1(表示向左调整);波特率造成的每比特误差为+7%,累积到最后一个比特的累积误差约为70%,即+0.7比特;在原有的波特率配置下,通过波形量测波特率误差或已知波特率误差后,根据波特率误差设置每比特的补偿方向和补偿幅度5%,补偿后比特的实际采样点可以与预设采样点(理想采样点)偏差小,虽有偏差但不会通信错误。
具体地,波特率误差为+7%,针对每比特向左调整-5%,即累积调整-50%,使得最后一比特的累积采样误差为20%;远小于50%,可以保证正常通信。
本申请可以根据波特率调整精度及效率来设置补偿幅度。例如,误差较大时,可以设置较大的补偿幅度,以提高调整效率;又例如,误差较小时,可以设置较小的补偿幅度,以提高调整精度。
在其它实施例中,可以获取发送端的波特率偏差,并在接收端进行修正;还可以获取接收端的波特率偏差,并在发送端进行修正。
本实施例可以采用图8所示的方法生成第一预设补偿表和第二预设补偿表,本实施例的方法具体包括以下步骤:
步骤S801:设置预设累积误差及数据的总比特数。
在一应用场景中,设置预设累积误差为+40%、数据的总比特数为10比特。
步骤S802:将预设累积误差除以总比特数,以获得波特率的预设误差。
在该应用场景中,计算得到波特率的预设误差为+4%。
步骤S803:根据预设误差设置数据的每个比特的第二预设补偿幅度及第二预设补偿方向。
设置每比特的第二预设补偿幅度为5%,第二预设补偿方向为后移方向(向左调整);第二预设补偿幅度小于幅度阈值,以避免传输比特错误。
进一步地,响应于比特的累积补偿幅度为零,设置比特的第二预设补偿幅度为零。
每比特补偿前的采样点具有预设误差为+4%,下一比特的采样误差会累积上比特的采样误差,例如,第一比特的采样误差为+4%,第二比特的采样误差为+8%,以此类推,第五比特的采样误差为+20%;针对第一比特到第四比特中的每比特向左调整-5%,即累积调整-20%,使得累积到第四比特中的累积采样误差为0%,可以设置第四比特的第二预设补偿幅度为零。
步骤S804:利用比特的第二序号、第二预设补偿幅度生成第一预设补偿表。
将每个比特的第二序号、第二预设补偿幅度存储于第一预设补偿表。
步骤S805:利用比特的第二序号、第二预设补偿方向生成第二预设补偿表。
将每个比特的第二序号、第二预设补偿方向存储于第二预设补偿表。
多次执行步骤S801至步骤S805,获得多组第一预设补偿参数表和第二预设补偿参数表。
本申请进一步提出一种电子设备,如图9所示,图9是本申请电子设备一实施例的结构示意图。本实施例的电子设备80包括处理器81及与处理器81耦接的存储器82
电子设备80进一步包括:输入输出设备83及总线84。
该处理器81、存储器82、输入输出设备83分别与总线84相连,该存储器82中存储有程序数据,处理器81用于执行程序数据以实现上述实施例的调整波特率的方法。
在本实施例中,处理器81还可以称为CPU(Central Processing Unit,中央处理单元)。处理器81可能是一种集成电路芯片,具有信号的处理能力。处理器81还可以是通用处理器、数字信号处理器(DSP)、专用集成电路(ASIC)、现场可编程门阵列(FPGA)或者其它可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件。通用处理器可以是微处理器或者该处理器81也可以是任何常规的处理器等。
其中,本实施例电子设备80可以是UART等通信设备。
本申请进一步提出一种计算机存储介质,如图10所示,图10是本申请计算机存储介质一实施例的结构示意图。计算机存储介质90其上存储有程序指令91,程序指令91被处理器(图未示)执行时实现上述调整波特率的方法。
本实施例计算机存储介质90可以是但不局限于U盘、SD卡、PD光驱、移动硬盘、大容量软驱、闪存、多媒体记忆卡、服务器等。
区别于现有技术,本申请实施例调整波特率的方法包括:获取发送端与接收端之间波特率的误差;基于误差获取预设补偿参数表;利用预设补偿参数表按照每比特对波特率进行修正,以调整波特率。本申请实施例基于波特率的误差获取对应的预设补偿参数表,并利用预设补偿参数表按照每比特对波特率进行修正,因此,能够调整波特率,使得按照调整后的波特率进行数据传输,能够减少因波特率出现误差,造成数据发送端/或接收端对数据的实际采样点与理想采样点之间的偏差超过通信协议的要求,从而导致数据传输失败的问题,因此,本申请实施例能够降低波特率的误差,以使数据的实际采样点与理想采样点之间的偏差满足通信协议要求,从而能够提高数据传输的可靠性。
另外,上述功能如果以软件功能的形式实现并作为独立产品销售或使用时,可存储在一个移动终端可读取存储介质中,即,本申请还提供一种存储有程序数据的存储装置,所述程序数据能够被执行以实现上述实施例的方法,该存储装置可以为如U盘、光盘、服务器等。也就是说,本申请可以以软件产品的形式体现出来,其包括若干指令用以使得一台智能终端执行各个实施例所述方法的全部或部分步骤。
在本申请的描述中,参考术语“一个实施例”、“一些实施例”、“示例”、“具体示例”、或“一些示例”等的描述意指结合该实施例或示例描述的具体特征、结构、材料或者特点包含于本申请的至少一个实施例或示例中。在本说明书中,对上述术语的示意性表述不必须针对的是相同的实施例或示例。而且,描述的具体特征、结构、材料或者特点可以在任一个或多个实施例或示例中以合适的方式结合。此外,在不相互矛盾的情况下,本领域的技术人员可以将本说明书中描述的不同实施例或示例以及不同实施例或示例的特征进行结合和组合。
此外,术语“第一”、“第二”仅用于描述目的,而不能理解为指示或暗示相对重要性或者隐含指明所指示的技术特征的数量。由此,限定有“第一”、“第二”的特征可以明示或者隐含地包括至少一个该特征。在本申请的描述中,“多个”的含义是至少两个,例如两个,三个等,除非另有明确具体的限定。
流程图中或在此以其他方式描述的任何过程或方法描述可以被理解为,表示包括一个或更多个用于实现特定逻辑功能或过程的步骤的可执行指令的代码的模块、片段或部分,并且本申请的优选实施方式的范围包括另外的实现,其中可以不按所示出或讨论的顺序,包括根据所涉及的功能按基本同时的方式或按相反的顺序,来执行功能,这应被本申请的实施例所属技术领域的技术人员所理解。
在流程图中表示或在此以其他方式描述的逻辑和/或步骤,例如,可以被认为是用于实现逻辑功能的可执行指令的定序列表,可以具体实现在任何计算机可读介质中,以供指令执行系统、装置或设备(可以是个人计算机,服务器,网络设备或其他可以从指令执行系统、装置或设备取指令并执行指令的系统)使用,或结合这些指令执行系统、装置或设备而使用。就本说明书而言,"计算机可读介质"可以是任何可以包含、存储、通信、传播或传输程序以供指令执行系统、装置或设备或结合这些指令执行系统、装置或设备而使用的装置。计算机可读介质的更具体的示例(非穷尽性列表)包括以下:具有一个或多个布线的电连接部(电子装置),便携式计算机盘盒(磁装置),随机存取存储器(RAM),只读存储器(ROM),可擦除可编辑只读存储器(EPROM或闪速存储器),光纤装置,以及便携式光盘只读存储器(CDROM)。另外,计算机可读介质甚至可以是可在其上打印所述程序的纸或其他合适的介质,因为可以例如通过对纸或其他介质进行光学扫描,接着进行编辑、解译或必要时以其他合适方式进行处理来以电子方式获得所述程序,然后将其存储在计算机存储器中。
以上所述仅为本申请的实施方式,并非因此限制本申请的专利范围,凡是利用本申请说明书及附图内容所作的等效结构或等效流程变换,或直接或间接运用在其他相关的技术领域,均同理包括在本申请的专利保护范围内。
Claims (11)
1.一种调整波特率的方法,其特征在于,所述方法包括:
获取发送端与接收端之间波特率的误差;
基于所述误差获取预设补偿参数表;
利用所述预设补偿参数表按照每比特对所述波特率进行修正,以调整所述波特率。
2.根据权利要求1所述的方法,其特征在于,所述误差包括误差幅度及偏移方向,所述预设补偿参数表包括第一预设补偿表和第二预设补偿表,所述基于所述误差获取预设补偿参数表的步骤包括:
响应于所述误差的误差幅度位于预设范围内,获取与所述预设范围对应的所述第一预设补偿表;
响应于所述误差的偏移方向为预设偏移方向,获取与所述预设偏移方向对应的所述第二预设补偿表。
3.根据权利要求2所述的方法,其特征在于,所述第一预设补偿表包括预设序号及与所述预设序号对应的第一预设补偿幅度,所述第二预设补偿表包括所述预设序号及与所述预设序号对应的第一预设补偿方向,所述利用所述预设补偿参数表按照每比特对所述波特率进行修正的步骤包括:
获取所述数据的每个比特;
响应于所述比特的第一序号与所述预设序号相同,从所述第二预设补偿表中获取所述第一预设补偿方向,并从所述第一预设补偿表中获取所述第一预设补偿幅度;
利用与所述第一预设补偿方向和所述第一预设补偿幅度对所述比特的预设采样点按照每比特进行调整。
4.根据权利要求3所述的方法,其特征在于,所述数据的所有所述比特的所述第一预设补偿幅度至少部分不同。
5.根据权利要求3所述的方法,其特征在于,所述第一预设补偿方向包括前移方向、后移方向及零偏移,所述利用所述第一预设补偿方向和所述第一预设补偿幅度对所述比特的预设采样点按照每比特进行调整的步骤包括:
响应于与所述第一预设补偿方向为所述前移方向,将所述比特的预设采样点向前移动所述第一预设补偿幅度,以获得实际采样点;
响应于所述第一预设补偿方向为所述后移方向,将所述比特的预设采样点向后移动所述第一预设补偿幅度,以获得实际采样点;
所述利用所述预设补偿参数表按照每比特对所述波特率进行修正的步骤进一步包括:
响应于所述第一预设补偿方向为所述零偏移,将所述比特的预设采样点作为实际采样点。
6.根据权利要求3所述的方法,其特征在于,所述获取发送端与接收端之间波特率的误差的步骤包括:
发送并由示波器接收测试数据;
计算所述测试数据的总脉冲宽度与所述总脉冲宽度的理论脉冲宽度之间的第一差值,或者计算所述测试数据的单个脉冲宽度与所述单个脉冲宽度的理论脉冲宽度之间的第二差值;
获取所述测试数据的比特的数量,并计算所述第一差值与所述数量的比值为波特率的误差,或者将所述第二差值作为波特率的误差。
7.根据权利要求6所述的方法,其特征在于,所述方法进一步包括:
设置预设累积误差及数据的总比特数;
将所述预设累积误差除以所述总比特数,以获得波特率的预设误差;
根据所述预设误差设置所述数据的每个比特的第二预设补偿幅度及第二预设补偿方向;
利用所述比特的第二序号、所述第二预设补偿幅度生成所述第一预设补偿表;
利用所述比特的第二序号、所述第二预设补偿方向生成所述第二预设补偿表。
8.根据权利要求7所述的方法,其特征在于,所述第二预设补偿幅度小于幅度阈值,所述方法进一步包括:
响应于所述比特的累积补偿幅度为零,设置所述比特的第二预设补偿幅度为零。
9.根据权利要求2至8任一项所述的方法,其特征在于,所述方法进一步包括:
响应于所述误差幅度大于或者等于幅度阈值,执行所述基于所述误差生成补偿参数表的步骤。
10.一种电子设备,其特征在于,所述电子设备包括处理器及与所述处理器耦接的存储器,所述处理器执行所述存储器中的程序指令时用于实现权利要求1-9任一项所述的调整波特率的方法。
11.一种计算机存储介质,其特征在于,所述计算机存储介质上存储有程序指令,所述程序指令被执行时以实现权利要求1-9任一项所述的调整波特率的方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110138768.5A CN114840464A (zh) | 2021-02-01 | 2021-02-01 | 调整波特率的方法、电子设备及计算机存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110138768.5A CN114840464A (zh) | 2021-02-01 | 2021-02-01 | 调整波特率的方法、电子设备及计算机存储介质 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN114840464A true CN114840464A (zh) | 2022-08-02 |
Family
ID=82561293
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202110138768.5A Pending CN114840464A (zh) | 2021-02-01 | 2021-02-01 | 调整波特率的方法、电子设备及计算机存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN114840464A (zh) |
Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6366610B1 (en) * | 1998-05-15 | 2002-04-02 | Advanced Micro Devices, Inc. | Autobauding with adjustment to a programmable baud rate |
US20050207356A1 (en) * | 2004-03-17 | 2005-09-22 | Gross Lawrence C Jr | Stand-alone device for determining communication parameters and channel configuration of an asynchronous serial channel using a user determined methodology |
CN102932084A (zh) * | 2012-10-17 | 2013-02-13 | 航天科工深圳(集团)有限公司 | 采样时钟同步的方法及系统 |
US20130101075A1 (en) * | 2011-10-20 | 2013-04-25 | Infineon Technologies Ag | Method and apparatus for regulating the sampling phase |
CN104579621A (zh) * | 2013-10-15 | 2015-04-29 | 中兴通讯股份有限公司 | 时钟恢复方法和装置 |
CN105493434A (zh) * | 2013-08-29 | 2016-04-13 | 赛灵思公司 | 偏差校准及自适应通道数据采样定位 |
CN111800249A (zh) * | 2020-07-06 | 2020-10-20 | 山东管理学院 | 串行通信波特率误差容忍范围提升方法及系统 |
-
2021
- 2021-02-01 CN CN202110138768.5A patent/CN114840464A/zh active Pending
Patent Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6366610B1 (en) * | 1998-05-15 | 2002-04-02 | Advanced Micro Devices, Inc. | Autobauding with adjustment to a programmable baud rate |
US20050207356A1 (en) * | 2004-03-17 | 2005-09-22 | Gross Lawrence C Jr | Stand-alone device for determining communication parameters and channel configuration of an asynchronous serial channel using a user determined methodology |
US20130101075A1 (en) * | 2011-10-20 | 2013-04-25 | Infineon Technologies Ag | Method and apparatus for regulating the sampling phase |
CN102932084A (zh) * | 2012-10-17 | 2013-02-13 | 航天科工深圳(集团)有限公司 | 采样时钟同步的方法及系统 |
CN105493434A (zh) * | 2013-08-29 | 2016-04-13 | 赛灵思公司 | 偏差校准及自适应通道数据采样定位 |
CN104579621A (zh) * | 2013-10-15 | 2015-04-29 | 中兴通讯股份有限公司 | 时钟恢复方法和装置 |
CN111800249A (zh) * | 2020-07-06 | 2020-10-20 | 山东管理学院 | 串行通信波特率误差容忍范围提升方法及系统 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN101621307B (zh) | 发送器、接收器以及峰值抑制和还原方法、系统 | |
CN111506527B (zh) | 数字高速并行总线自适应区间校正方法、装置及存储介质 | |
CN116501679B (zh) | 面向高速串行总线通信的自适应波特率生成方法及芯片 | |
CN102789442B (zh) | 校正移动产业处理器接口中信号偏移方法及相关传输系统 | |
US20170026033A1 (en) | Skew correction circuit, electronic device, and skew correction method | |
CN111082887B (zh) | 一种信号传输延时补偿的系统、方法、装置、设备及介质 | |
CN114840464A (zh) | 调整波特率的方法、电子设备及计算机存储介质 | |
CN106776414A (zh) | 数据传输装置及方法、喷墨打印系统 | |
US8331427B2 (en) | Data processing apparatus | |
CN111198835B (zh) | 时钟产生装置及时钟产生方法 | |
CN115834805B (zh) | 一种mipi dphy偏斜消除电路和偏斜消除方法 | |
CN110740085A (zh) | 一种基于并机系统的通信方法、通信装置及终端 | |
US8127172B2 (en) | Apparatus and method for receiving parallel SFI-5 data interfaced with very high-speed deserializer | |
CN111026694B (zh) | 数据接收方法、设备,图像形成装置、系统和电子设备 | |
CN109117408B (zh) | 基于信号发生器的串行协议信号生成方法 | |
US20070189335A1 (en) | Integrated circuit for an asynchronous serial data transfer with a bit length counter | |
TW200303676A (en) | System for providing a calibrated clock and methods thereof | |
CN112286841B (zh) | 一种数据同步方法及寄存器 | |
JP4462371B2 (ja) | データ受信装置およびマイクロコンピュータ | |
US11962677B2 (en) | System and method for clock resynchronization | |
CN114631842B (zh) | 超声波的发射控制方法、装置、设备及存储介质 | |
CN115242350B (zh) | 电力装置的通信方法、电力装置及存储介质 | |
US11816060B2 (en) | UART interface circuit and UART data capturing method | |
RU2706723C1 (ru) | Способ формирования параметров электрических сигналов для цифровых электрических подстанций и устройство для его осуществления | |
TWI475395B (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 |