CN117201366B - 基于lin总线的波特率检测方法及装置 - Google Patents
基于lin总线的波特率检测方法及装置 Download PDFInfo
- Publication number
- CN117201366B CN117201366B CN202311199209.0A CN202311199209A CN117201366B CN 117201366 B CN117201366 B CN 117201366B CN 202311199209 A CN202311199209 A CN 202311199209A CN 117201366 B CN117201366 B CN 117201366B
- Authority
- CN
- China
- Prior art keywords
- level
- shift
- baud rate
- length
- buffer
- 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
- 238000001514 detection method Methods 0.000 title claims abstract description 33
- 239000000872 buffer Substances 0.000 claims abstract description 101
- 230000001360 synchronised effect Effects 0.000 claims abstract description 55
- 238000000034 method Methods 0.000 claims description 17
- 238000006073 displacement reaction Methods 0.000 claims description 4
- 230000006854 communication Effects 0.000 description 23
- 238000004891 communication Methods 0.000 description 22
- 230000008878 coupling Effects 0.000 description 3
- 238000010168 coupling process Methods 0.000 description 3
- 238000005859 coupling reaction Methods 0.000 description 3
- 230000002159 abnormal effect Effects 0.000 description 2
- 230000005540 biological transmission Effects 0.000 description 2
- 238000010586 diagram Methods 0.000 description 2
- 230000002708 enhancing effect Effects 0.000 description 2
- 238000012986 modification Methods 0.000 description 2
- 230000004048 modification Effects 0.000 description 2
- 230000009286 beneficial effect Effects 0.000 description 1
- 230000003139 buffering effect Effects 0.000 description 1
- 230000006870 function Effects 0.000 description 1
- 238000002372 labelling Methods 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 125000006850 spacer group Chemical group 0.000 description 1
- 238000006467 substitution reaction Methods 0.000 description 1
Landscapes
- Synchronisation In Digital Transmission Systems (AREA)
Abstract
本发明揭示了一种基于LIN总线的波特率检测方法及装置,基于LIN总线的波特率检测方法包括获取LIN数据帧;将所述LIN数据帧内同步间隔场的电平和同步场内的每个电平分别存储于预设个数的移位缓存器中;控制每个电平按预设方向持续位移;基于每次的位移获取存储于所述移位缓存器中的电平长度并计算波特率;在所述波特率的大小和表征所述同步间隔场的移位缓存器的电平长度满足预设条件时,更新波特率。本发明可以实时判断波特率的大小和表征所述同步间隔场的移位缓存器的电平长度是否满足预设条件,从而可以提高自动波特率检测的实时性,减少因为频率切换而导致的数据帧丢失。
Description
技术领域
本发明涉及波特率检测技术领域,尤其涉及一种基于LIN总线的波特率检测方法及装置。
背景技术
现有技术中,在LIN总线通信中需要进行自动波特率检测。“波特率”是用来描述通信速度的单位。在通信中,只有通信双方的波特率相同才能确保通信的正常进行,实现一帧LIN数据帧完整的接收发送过程,具体需要有如下步骤:首先接收控制器先根据预置波特率完成同步间隔场的检测,然后再进行同步场自动波特率检测,并检测计算获得临时波特率,基于临时波特率完成标识符场的检测,检测标识符场的数据是否异常,有异常则丢弃临时波特率重新检测。
在上述过程中,完成同步场自动波特率检测之后,通信波特率将被即时覆盖更新。其检测需要在标识符场的检测结束后才可以判断是否检测到正确的同步帧。这种判断方法会有滞后性,容易造成丢失同步帧,数据丢失。
发明内容
本发明的目的之一在于提供一种基于LIN总线的波特率检测方法,以解决现有技术在LIN总线通信中波特率检测具有滞后性,容易造成数据丢失的技术问题。
本发明的目的之一在于提供一种基于LIN总线的波特率检测装置。
为实现上述发明目的之一,本发明一实施方式提供一种基于LIN总线的波特率检测方法,所述方法包括:获取LIN数据帧;接收所述LIN数据帧的同步间隔场和同步场的脉冲;将所述LIN数据帧内同步间隔场的电平和同步场内的每个电平分别存储于预设个数的移位缓存器中;控制每个电平按预设方向持续位移以使每一个LIN数据帧的同步间隔场和同步场的电平依次存储在每个移位缓存器中;基于每次的位移获取存储于所述移位缓存器中的电平长度并计算波特率;在所述波特率的大小满足第一预设条件和表征所述同步间隔场的移位缓存器的电平长度满足第二预设条件时,更新所述波特率至波特率寄存器中。
为实现上述发明目的之一,本发明一实施方式提供一种基于LIN总线的波特率检测装置,所述装置包括:LIN数据接收器,用于接收LIN数据帧;多个移位缓存器,用于存储所述LIN数据帧内同步间隔场的电平和同步场内的每个电平;移位控制模块,其用于控制多个移位缓存器内每个电平按预设方向持续位移以使每一个LIN数据帧的同步间隔场和同步场的电平依次存储在每个移位缓存器中;窗口运算模块,其用于在每次位移时计算每个移位缓存器内的电平长度并根据计算得到波特率;还用于判断所述波特率的大小和表征所述同步间隔场的移位缓存器的电平长度是否满足预设条件,若满足预设条件则更新所述波特率至波特率寄存器中;波特率寄存器,用于存储波特率。
与现有技术相比,本发明具有以下有益效果:采用移位缓存器用来缓存同步间隔场的电平长度和同步场内的每个电平的长度,并通过移位控制的方法可以将同步间隔场的电平和同步场内的每个电平实时串行通过移位缓存器并实时计算波特率,同时可以实时判断波特率的大小和表征所述同步间隔场的移位缓存器的电平长度是否满足预设条件,从而可以提高自动波特率检测的实时性,减少因为频率切换而导致的数据帧丢失。
附图说明
图1是本发明一实施方式中基于LIN总线的波特率检测方法的流程图。
图2是本发明一实施方式中同步场的脉冲波形图。
图3是本发明一实施方式中基于LIN总线的波特率检测装置结构示意图。
具体实施方式
以下将结合附图所示的具体实施方式对本发明进行详细描述。但这些实施方式并不限制本发明,本领域的普通技术人员根据这些实施方式所做出的结构、方法、或功能上的变换均包含在本发明的保护范围内。
本发明的一实施方式中,提供了一种基于LIN总线的波特率检测方法,该方法采用串行数据位移的方式实时接收电平,并实时计算存储于缓存器内的电平长度以实时获取波特率,可以解决现有技术中波特率滞后性的问题,提升效率。
请参照如图1所示,基于LIN总线的波特率检测方法具体包括:
S1:获取LIN数据帧。
S2:接收所述LIN数据帧的同步间隔场和同步场的脉冲。
S3:将所述LIN数据帧内同步间隔场的电平和同步场内的每个电平分别存储于预设个数的移位缓存器2中。
S4:控制每个电平按预设方向持续位移以使每一个LIN数据帧的同步间隔场和同步场的电平依次存储在每个移位缓存器2中。
S5:基于每次的位移获取存储于所述移位缓存器2中的电平长度并计算波特率。
S6:在所述波特率的大小满足第一预设条件和表征所述同步间隔场的移位缓存器2的电平长度满足第二预设条件时,更新所述波特率至波特率寄存器中。
如此,采用设置移位缓存器2的方式可以在获取LIN数据帧后即可同步进行移位操作,且基于每次的移位同步计算以获得波特率,并且根据预设的条件对比LIN数据帧内波特率的大小以确定波特率以及同步间隔场是否满足预设条件,因此,可以在数据串行通信的前期即可判定数据帧是否为同步帧,提高数据通信的效率,也解决了波特率滞后性而容易导致数据帧丢失的问题,大大加强了通讯的可靠性。
其中,移位缓存器2的数量可以预先设置,可以基于LIN数据帧中同步间隔场的电平和同步场内的电平数量来设置以保证第一帧LIN数据帧串行通过移位缓存器2时其内部的同步间隔场的电平和同步场内的电平均能保存至移位缓存器2内且不留多余缓存器。
且,“控制每个电平按预设方向持续位移”可以理解为:LIN数据帧的同步间隔场的电平和同步场内的电平按序依次朝着预设方向按照特定频率位移,具体的,可以设置左移,即同步间隔场的电平和同步场内的电平按序由右向左依次位移经过移位缓存器2,且当第一帧的数据存储满移位缓存器2后依旧可以根据预设频率左移,使得第一个电平从移位缓存器2中移出,而第二帧数据的第一个电平自右进入移位缓存器2中,如此循环经过移位缓存器2并在每次位移时均对移位缓存器2进行计算,从而实现实时计算。
“更新所述波特率至波特率寄存器中”可以理解为:保存与之通讯的相关设备波特率,便于下一次的连接,因此,为后续的连接方便创造了便利性。
在本发明的一种实施方式中,所述“控制每个电平按预设方向持续位移”包括:
预设下降沿触发命令;
当检测到LIN数据帧的下降沿脉冲时发送移位信号,所述移位信号用于指示所述移位缓存器2中的电平按预设方向位移一次。
如此,基于预设的下降沿触发命令和LIN数据帧的串行通信方式,可以使得系统在接收下一帧数据时基于下降沿自动左移,同时左移也可以给下一帧数据的电平腾出空余的移位缓存器2,保证了系统的自动化运行的可靠性。
其中,预设方向可以选择左移,即同步间隔场的电平和同步场内的电平按序由右向左依次位移经过移位缓存器2,且当第一帧的数据存储满移位缓存器2后依旧可以根据预设频率左移,使得第一个电平从移位缓存器2中移出,而第二帧数据的第一个电平自右进入移位缓存器2中,如此循环经过移位缓存器2并在每次位移时均对移位缓存器2进行计算,从而实现实时计算。
在本发明的一种实施方式中,其中“获取存储于所述移位缓存器2中的电平长度”包括:
对每个移位缓存器2进行特性标记,标记的移位缓存器2包括用于表征同步场的第一类缓存器。
基于每次的位移获取第一类移位缓存器2中所存储的高低电平。
根据高低电平得到二进制数据并转换为十六进制。
判断十六进制数据是否为预设进制数,若为预设进制数则根据电平长度计算波特率。
基于上述方案,获得表征同步场的第一类缓存器中的高低电平并形成二进制数据,进而转换成十六进制,可以根据十六进制的数据来对比标准LIN数据帧中同步场的十六进制数据,从而根据对比结果可以判定所获得的第一类缓存器中的高低电平的位置是否正确,即获得的电平数据是否标准,从而确定数据帧是否有效,基于有效帧进而对波特率进行计算,可以进一步确保数据的可靠性。
通常,标准LIN数据帧中同步场的十六进制数据为0x55,参照如图2所示,换成二进制则为1010101。若获得的第一类缓存器中的高低电平为1010101则表示同步场电平位置正确。
其中,特性标记即为基于每个移位缓存器2的位置顺序与LIN数据帧中同步间隔场和同步场的位置顺序的对应关系标记每个移位缓存器2的属性,如,当一帧LIN数据帧中的同步间隔场和同步场的电平均完全存储至移位缓存器2时,若第一个移位缓存器2对应的是同步间隔场电平,则将第一个移位缓存器2的特性标记为表征同步间隔场电平的缓存器。如此类推,后续的移位缓存器2也可以标记为表征同步场电平的缓存器;由于同步场电平具有多个高低电平,则可以分别对应多个移位缓存器2且每个缓存器也可以进行标号区分。
在本发明的一种实施方式中,其中计算波特率的具体步骤包括:
基于获取到的所述第一类移位缓存器2的电平计算电平长度。
根据所述第一类移位缓存器2的数量计算波特率。
所述波特率的计算公式为:
如此,通过计算波特率可以检测所获取的数据帧是否为同步帧,基于确定为同步帧的基础上即可进行通讯;本实施方式中,在通过移位缓存器2移位控制时实时获取到同步场电平并在获取到同步场脉冲时即可实时计算波特率,有效避免了现有技术中采用临时波特率的滞后性,从而避免后续通信中数据的丢失,加强了系统的鲁棒性。
在本发明的一种实施方式中,其中“获取存储于所述移位缓存器2中的电平长度”还包括计算表征同步间隔场电平的所述移位缓存器2所存储的电平长度,具体步骤包括:
对每个移位缓存器2进行特性标记,标记的移位缓存器2包括用于表征所述同步间隔场的第二类缓存器。
基于每次的位移获取第二类缓存器的电平。
计算所述第二类缓存器内电平的长度。
通过计算第二类缓存器中存储的电平长度,与第一类移位缓存器2内电平长度进行对比,由此可以确定表征同步间隔场的第一类移位缓存器2内的电平是否符合要求,间接确认第一类移位缓存器2内的电平是否为同步间隔场的电平;基于此,对第一类移位缓存器2内的电平进行判定,可以在每次位移时检测出位于移位缓存器2内的电平是否符合同步帧从而判定是否可以进行通讯,避免后期由于通信不同步而造成数据丢失,也加强了通讯之间的稳定性、提高了通讯之间的有效性。
其中,特性标记即为基于每个移位缓存器2的位置顺序与LIN数据帧中同步间隔场和同步场的位置顺序的对应关系标记每个移位缓存器2的属性。如,当一帧LIN数据帧中的同步间隔场和同步场的电平均完全存储至移位缓存器2时,若第一个移位缓存器2对应的是同步间隔场电平,则将第一个移位缓存器2的特性标记为表征同步间隔场电平的缓存器。如此类推,后续的移位缓存器2也可以标记为表征同步场电平的缓存器;由于同步场电平具有多个高低电平,则可以分别对应多个移位缓存器2且每个缓存器也可以进行标号区分。
在本发明的一种实施方式中,其中所述波特率的大小的第一预设条件为:第一预设值<波特率<第二预设值。
表征所述同步间隔场的移位缓存器2的电平长度的第二预设条件为:第二类缓存器内电平的长度>第一类移位缓存器2内电平长度的总和。
一实施方式中,第一预设值可以设置为1k,第二预设值可以设置为20k。
一实施方式中,表征所述同步间隔场的移位缓存器2的电平长度的第二预设条件还可以设置为第二类缓存器内电平的长度>13位。
一种优选的实施方式中,表征所述同步间隔场的移位缓存器2的电平长度的第二预设条件可以设置为第二类缓存器内电平的长度>13位且第二类缓存器内电平的长度>第一类移位缓存器2内电平长度的总和。
在本发明的一种实施方式中,其中“基于每次的位移获取存储于所述移位缓存器2中的电平”时还包括判断电平的有效性,具体步骤包括:
对每个移位缓存器2进行特性标记,标记的移位缓存器2包括用于表征同步场的第一类缓存器;
分别计算所述第一类缓存器内高电平的长度和低电平的长度;
对比低电平长度与相邻两个高电平长度的大小并判断是否满足第三预设条件,若满足,则判定为有效数据。
判断电平的有效性可以有效滤除数据的噪声,保证有效数据的稳定传输,减少通信过程中的失真率,使得通讯的可靠和稳定,加强了系统的鲁棒性。
在本发明的一种实施方式中,其中,对比低电平长度与相邻两个高电平长度的大小的第三预设条件为:(第一相邻高电平的长度)/2<低电平长度<2*(第二相邻高电平的长度)。
参照如图3所示,在本发明的一实施方式中,提供了一种基于LIN总线的波特率检测装置,该装置包括LIN数据接收器1,用于接收LIN数据帧。
多个移位缓存器2,用于存储所述LIN数据帧内同步间隔场的电平长度和同步场内的每个电平的长度。
移位控制模块3,其用于控制多个移位缓存器2内每个电平按预设方向持续位移以使每一个LIN数据帧的同步间隔场和同步场的电平依次存储在每个移位缓存器2中。
窗口运算模块4,其用于在每次位移时计算每个移位缓存器2内的电平长度并根据计算得到波特率;还用于判断所述波特率的大小是否满足第一预设条件和表征所述同步间隔场的移位缓存器2的电平长度是否满足第二预设条件,若均满足则更新所述波特率至波特率寄存器中。
波特率寄存器5,用于存储波特率。
其中,LIN数据接收器1连接多个移位缓存器2,将接收到的LIN数据帧中的同步间隔场的电平和同步场内的每个电平分别存储在多个移位缓存器2内,移位控制模块3用于控制多个移位缓存器2移位操作,窗口运算模块4分别连接移位控制模块3和移位缓存器2,在移位控制模块3的每次移位操作时均可以计算移位缓存器2内的电平长度,窗口运算模块4连接波特率寄存器5,可以将最终的波特率存储在波特率寄存器5中,以便下次对同一个设备通信时调用波特率寄存器5中的波特率。
在本发明的一实施方式中,移位控制模块3配置为:预设下降沿触发命令;当检测到LIN数据帧的下降沿脉冲时发送移位信号,移位缓存器2接收移位信号以控制所述移位缓存器2中的电平按预设方向位移一次。
在本发明的一实施方式中,还包括对每个移位缓存器2进行特性标记,标记的移位缓存器2包括用于表征同步场的第一类缓存器,窗口运算模块4配置为:基于每次的位移获取第一类移位缓存器2中所存储的高低电平;根据高低电平得到二进制数据并转换为十六进制;判断十六进制数据是否为预设进制数,若为预设进制数则根据电平长度计算波特率。
在窗口运算模块4中,配置计算波特率的具体步骤为:
基于获取到的所述第一类移位缓存器2的电平计算电平长度;
根据所述第一类移位缓存器2的数量计算波特率;
所述波特率的计算公式为:
在本发明的一实施方式中,窗口运算模块4中,配置所述波特率的预设条件为:第一预设值<波特率<第二预设值。
在本发明的一实施方式中,还包括对每个移位缓存器2进行特性标记,标记的移位缓存器2包括用于表征所述同步间隔场的第二类缓存器,窗口运算模块4还配置为:基于每次的位移获取第二类缓存器的电平;计算所述第二类缓存器内电平的长度。
在本发明的一实施方式中,窗口运算模块4中,配置表征所述同步间隔场的移位缓存器2的电平长度的预设条件为:第二类缓存器内电平的长度>第一类移位缓存器2内电平长度的总和。
在本发明的一实施方式中,对每个移位缓存器2进行特性标记,标记的移位缓存器2包括用于表征同步场的第一类缓存器,窗口运算模块4中还配置为:分别计算所述第一类缓存器内高电平的长度和低电平的长度;对比低电平长度与相邻两个高电平长度的大小并判断是否满足第三预设条件,若满足,则判定为有效数据。
其中,对比低电平长度与相邻两个高电平长度的大小的第三预设条件为:(第一相邻高电平的长度)/2<低电平长度<2*(第二相邻高电平的长度)。
综上所述,本发明主要设置多个移位缓存器2用于缓存LIN数据帧的同步间隔场和同步场的脉冲电平,并配置移位控制的方式,在串行接收LIN数据帧的时候同时控制同步间隔场和同步场的脉冲电平在移位缓存器2内位移,使得同步间隔场和同步场的脉冲电平边串行传输边缓存,同时再实时计算移位缓存器2内的电平长度,计算得到表征同步间隔场的缓存器中的电平长度以及表征同步场的缓存器中的波特率,根据对比波特率和表征同步间隔场的缓存器中的电平的长度来判断所接收的LIN数据帧是否为同步帧,判定为基于同步帧的情况下再接收数据。
如此,可以在接收串行传输的LIN数据帧时实时判定LIN数据帧是否为同步帧从而快速确定数据的有效性,以此来决定是否需要接收数据,解决了现有技术中波特率检测方法中的滞后性问题,避免了后期数据的丢失,加强了系统的鲁棒性,也增强了通信的可靠性。
应当理解,虽然本说明书按照实施方式加以描述,但并非每个实施方式仅包含一个独立的技术方案,说明书的这种叙述方式仅仅是为清楚起见,本领域技术人员应当将说明书作为一个整体,各实施方式中的技术方案也可以经适当组合,形成本领域技术人员可以理解的其他实施方式。
所属领域的技术人员可以清楚地了解到,为描述的方便和简洁,上述描述的系统,系统和模块的具体工作过程,可以参考前述方法实施方式中的对应过程,在此不再赘述。
在本申请所提供的几个实施方式中,应该理解到,所揭露的系统,系统和方法,可以通过其它的方式实现。例如,以上所描述的系统实施方式仅仅是示意性的,例如,所述模块的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个模块或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,系统或模块的间接耦合或通信连接,可以是电性,机械或其它的形式。所述作为分离部件说明的模块可以是或者也可以不是物理上分开的,作为模块显示的部件可以是或者也可以不是物理模块,即可以位于一个地方,或者也可以分布到多个网络模块上。可以根据实际的需要选择其中的部分或者全部模块来实现本实施方式方案的目的。
另外,在本申请各个实施方式中的各功能模块可以集成在一个处理模块中,也可以是各个模块单独物理存在,也可以2个或2个以上模块集成在一个模块中。上述集成的模块既可以采用硬件的形式实现,也可以采用硬件加软件功能模块的形式实现。上述以软件功能模块的形式实现的集成的模块,可以存储在一个计算机可读取存储介质中。上述软件功能模块存储在一个存储介质中,包括若干指令用以使得一台计算机系统(可以是个人计算机,服务器,或者网络系统等)或处理器(processor)执行本申请各个实施方式所述方法的部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(Read-Only Memory,ROM)、随机存取存储器(Random Access Memory,RAM)、磁碟或者光盘等各种可以存储程序代码的介质。
最后应说明的是:以上实施方式仅用以说明本申请的技术方案,而非对其限制;尽管参照前述实施方式对本申请进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施方式所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本申请各实施方式技术方案的精神和范围。
Claims (10)
1.一种基于LIN总线的波特率检测方法,其特征在于,包括:
获取LIN数据帧;
接收所述LIN数据帧的同步间隔场和同步场的脉冲;
将所述LIN数据帧内同步间隔场的电平和同步场内的每个电平分别存储于预设个数的移位缓存器中,对每个移位缓存器进行特性标记,标记的移位缓存器包括用于表征同步场的第一类缓存器和用于表征所述同步间隔场的第二类缓存器;
控制每个电平按预设方向持续位移以使每一个LIN数据帧的同步间隔场和同步场的电平依次存储在每个移位缓存器中;
基于每次的位移获取存储于所述移位缓存器中的电平长度并计算波特率;
在所述波特率的大小满足第一预设条件和表征所述同步间隔场的移位缓存器的电平长度满足第二预设条件时,更新所述波特率至波特率寄存器中;
其中所述波特率的大小的第一预设条件为:第一预设值<波特率<第二预设值;表征所述同步间隔场的移位缓存器的电平长度的第二预设条件为:第二类缓存器内电平的长度>第一类移位缓存器内电平长度的总和。
2.根据权利要求1所述的基于LIN总线的波特率检测方法,其中所述“控制每个电平按预设方向持续位移”包括:
预设下降沿触发命令;
当检测到LIN数据帧的下降沿脉冲时发送移位信号,所述移位信号用于指示所述移位缓存器中的电平按预设方向位移一次。
3.根据权利要求1所述的基于LIN总线的波特率检测方法,其中“获取存储于所述移位缓存器中的电平长度并计算波特率”包括:
基于每次的位移获取第一类移位缓存器中所存储的高低电平;
根据高低电平得到二进制数据并转换为十六进制;
判断十六进制数据是否为预设进制数,若为预设进制数则根据电平长度计算波特率。
4.根据权利要求3所述的基于LIN总线的波特率检测方法,其中计算波特率的具体步骤包括:
基于获取到的所述第一类移位缓存器的电平计算电平长度;
根据所述第一类移位缓存器的数量计算波特率;
所述波特率的计算公式为:
5.根据权利要求3所述的基于LIN总线的波特率检测方法,其中“获取存储于所述移位缓存器中的电平长度”还包括计算表征同步间隔场电平的所述移位缓存器所存储的电平长度,具体步骤包括:
基于每次的位移获取第二类缓存器的电平;
计算所述第二类缓存器内电平的长度。
6.根据权利要求1所述的基于LIN总线的波特率检测方法,其中“基于每次的位移获取存储于所述移位缓存器中的电平长度”时还包括判断电平的有效性,具体步骤包括:
分别计算所述第一类缓存器内高电平的长度和低电平的长度;
对比低电平长度与相邻两个高电平长度的大小并判断是否满足第三预设条件,若满足,则判定为有效数据。
7.根据权利要求6所述的基于LIN总线的波特率检测方法,其中,对比低电平长度与相邻两个高电平长度的大小的第三预设条件为:(第一相邻高电平的长度)/2<低电平长度<2*(第二相邻高电平的长度)。
8.一种基于LIN总线的波特率检测装置,其特征在于,包括:
LIN数据接收器,用于接收LIN数据帧;
多个移位缓存器,包括第一类缓存器和第二类缓存器,所述第二类缓存器用于存储所述LIN数据帧内同步间隔场的电平,所述第一类缓存器用于存储所述LIN数据帧内同步场内的每个电平;
移位控制模块,其用于控制多个移位缓存器内每个电平按预设方向持续位移以使每一个LIN数据帧的同步间隔场和同步场的电平依次存储在每个移位缓存器中;
窗口运算模块,其用于在每次位移时计算每个移位缓存器内的电平长度并根据计算得到波特率;还用于判断所述波特率的大小是否满足第一预设条件和表征所述同步间隔场的移位缓存器的电平长度是否满足第二预设条件,若均满足则更新所述波特率至波特率寄存器中,其中所述波特率的大小的第一预设条件为:第一预设值<波特率<第二预设值;表征所述同步间隔场的移位缓存器的电平长度的第二预设条件为:第二类缓存器内电平的长度>第一类移位缓存器内电平长度的总和;
波特率寄存器,用于存储波特率。
9.根据权利要求8所述的基于LIN总线的波特率检测装置,其中所述窗口运算模块还配置为,分别计算表征所述同步场的移位缓存器内高电平的长度和低电平的长度,对比低电平长度与相邻两个高电平长度的大小并判断是否满足第三预设条件,若满足,则判定为有效数据。
10.根据权利要求9所述的基于LIN总线的波特率检测装置,其中窗口运算模块判定有效数据的第三预设条件为:(第一相邻高电平的长度)/2<低电平长度<2*(第二相邻高电平的长度)。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202311199209.0A CN117201366B (zh) | 2023-09-18 | 2023-09-18 | 基于lin总线的波特率检测方法及装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202311199209.0A CN117201366B (zh) | 2023-09-18 | 2023-09-18 | 基于lin总线的波特率检测方法及装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN117201366A CN117201366A (zh) | 2023-12-08 |
CN117201366B true CN117201366B (zh) | 2024-08-30 |
Family
ID=89004942
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202311199209.0A Active CN117201366B (zh) | 2023-09-18 | 2023-09-18 | 基于lin总线的波特率检测方法及装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN117201366B (zh) |
Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN115834304A (zh) * | 2023-02-14 | 2023-03-21 | 苏州萨沙迈半导体有限公司 | Lin协议波特率检测装置及芯片设备 |
Family Cites Families (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6959014B2 (en) * | 2001-02-01 | 2005-10-25 | Freescale Semiconductor, Inc. | Method and apparatus for operating a communication bus |
CN106021165B (zh) * | 2016-05-16 | 2019-01-22 | 中国电子科技集团公司第四十一研究所 | 一种lin总线解码、触发和分析技术 |
CN111181815A (zh) * | 2020-03-11 | 2020-05-19 | 苏州纳芯微电子股份有限公司 | 自动波特率检测电路及其检测方法 |
CN112559412B (zh) * | 2021-03-01 | 2021-06-08 | 上海灵动微电子股份有限公司 | 一种串口波特率自适应接收端、实现方法、系统 |
CN114006688A (zh) * | 2021-10-29 | 2022-02-01 | 北京中科昊芯科技有限公司 | 一种基于lin协议的波特率更新的方法、装置、设备和介质 |
-
2023
- 2023-09-18 CN CN202311199209.0A patent/CN117201366B/zh active Active
Patent Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN115834304A (zh) * | 2023-02-14 | 2023-03-21 | 苏州萨沙迈半导体有限公司 | Lin协议波特率检测装置及芯片设备 |
Also Published As
Publication number | Publication date |
---|---|
CN117201366A (zh) | 2023-12-08 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
KR101885935B1 (ko) | 전환 가능한 데이터 전송 속도에서의 직렬 데이터 전송을 위한 방법 및 그 장치 | |
US9600425B2 (en) | Method and device for adapting the data transmission reliability in a serial bus system | |
US20140129900A1 (en) | Method and device for increasing the data transmission capacity in a serial bus system | |
US9645958B2 (en) | Method and device for transmitting data having a variable bit length | |
CN112559412B (zh) | 一种串口波特率自适应接收端、实现方法、系统 | |
US11677769B2 (en) | Counting SYN packets | |
US7287176B2 (en) | Apparatus, method and storage medium for carrying out deskew among multiple lanes for use in division transmission of large-capacity data | |
WO2020029023A1 (zh) | 波特率校准电路及串口芯片 | |
US5687200A (en) | System for synchronizing distorted data in a data communication system | |
US4901313A (en) | A-point to multi-points communication system | |
CN1249870A (zh) | 在电信系统中的连续同步调整 | |
US20070189619A1 (en) | SATA primitive prediction and correction | |
US11477056B2 (en) | Method and apparatus for controlling communication compensation, and air conditioner | |
US7006561B2 (en) | Apparatus and method for detecting baudrate in a universal asynchronous receiver/transmitter | |
CN117201366B (zh) | 基于lin总线的波特率检测方法及装置 | |
EP4391439A1 (en) | Detection system for vehicle-mounted ethernet link synchronization signal | |
CN116866108A (zh) | 总线通信方法、通信系统控制方法和通信系统 | |
CN111984582A (zh) | 一种pcie链路训练方法、设备以及介质 | |
CN116633813A (zh) | 一种can总线的波特率自适应检测方法和系统 | |
US11435999B2 (en) | Method and apparatus for upgrading software | |
CN113163197B (zh) | 数据传输方法、电路、装置、设备及存储介质 | |
JP2019169877A (ja) | 監視装置、監視方法およびコンピュータプログラム | |
CN114489718A (zh) | 树状连接系统的固件升级方法、装置、设备及存储介质 | |
CN101446887B (zh) | 一种原语处理方法、装置和系统 | |
CN109660528B (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 |