CN109274567B - 一种波特率的自适应方法及系统 - Google Patents
一种波特率的自适应方法及系统 Download PDFInfo
- Publication number
- CN109274567B CN109274567B CN201811130240.8A CN201811130240A CN109274567B CN 109274567 B CN109274567 B CN 109274567B CN 201811130240 A CN201811130240 A CN 201811130240A CN 109274567 B CN109274567 B CN 109274567B
- Authority
- CN
- China
- Prior art keywords
- baud rate
- target
- preset
- judging whether
- state value
- 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
- 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
- H04L2012/40208—Bus networks characterized by the use of a particular bus standard
- H04L2012/40215—Controller Area Network CAN
Abstract
本发明公开了一种波特率的自适应方法,包括:当检测到目标局域网中的目标控制器的预设引脚上电时,获取预设的扫描标识的初始状态值;判断所述初始状态值是否满足扫描条件;若是,判断当前节点的标定开关或者数据开关中的至少一个是否处于打开状态;若是,判断预设的波特率数据库中的各个波特率中是否存在一个目标波特率与目标总线的波特率匹配;若是,将所述目标波特率作为所述当前节点的波特率。上述的方法,可以通过扫描的方式获取所述目标局域网中当前节点的波特率,避免了通过标定量来调整新增CAN节点波特率时,在测试、调试设备不足的情况下无法匹配CAN网络的问题。
Description
技术领域
本发明涉及汽车总线技术领域,尤其涉及一种波特率的自适应方法及系统。
背景技术
控制器局域网(controller area network,CAN)因其实时性好、抗干扰能力强、可靠性高等优点被广泛应用在汽车总线中。汽车CAN局域网中各节点通讯的必须遵循统一的波特率(Baud rate),当在一个正常通讯的CAN局域网内,新增一个CAN节点时,所述CAN节点可以为电子控制单元ECU(Electronic Control Unit),无法实现新CAN节点“即插即用”,需要通过标定的方式根据该CAN局域网的波特率对新增CAN节点进行开发或配置。
发明人对现有的波特率的调整方法进行研究发现,通过标定量来调整新增CAN节点波特率时,在测试、调试设备不足的情况下无法匹配CAN网络。
发明内容
有鉴于此,本发明提供了一种波特率的自适应方法及系统,用以解决现有技术中过标定量来调整新增CAN节点波特率时,在测试、调试设备不足的情况下无法匹配CAN网络的问题。具体方案如下:
一种波特率的自适应方法,包括:
当检测到目标局域网中的目标控制器的预设引脚上电时,获取预设的扫描标识的初始状态值;
判断所述初始状态值是否满足扫描条件;
若是,判断当前节点的标定开关或者数据开关中的至少一个是否处于打开状态;
若是,判断预设的波特率数据库中的各个波特率中是否存在一个目标波特率与目标总线的波特率匹配;
若是,将所述目标波特率作为所述当前节点的波特率。
上述的方法,可选的,还包括:
在预设的状态赋值表中查找与所述目标波特率对应的目标状态值,其中,所述预设的状态赋值表中包含有波特率与状态值的对应关系;
将所述预设的扫描标识的初始状态值更新为所述目标状态值。
上述的方法,可选的,还包括:
若所述初始状态值不满足扫描条件,判断所述当前节点的标定开关是否处于打开状态;
若是,判断预设的波特率数据库中的各个波特率是否存在一个目标波特率与目标总线的波特率匹配;
若是,判断所述目标波特率与所述目标局域网的初始波特率是否相同;
若否,将所述目标波特率作为所述当前节点的波特率。
上述的方法,可选的,判断预设的波特率数据库中的各个波特率中是否存在一个目标波特率与目标总线的波特率匹配,包括:
针对每一个波特率,分别向所述目标总线发送一条报文;
当接收到发送成功指令时,判断预设的寄存器中的初始值是否改变;
若是,判定当前的波特率为与所述目标总线的波特率匹配的目标波特率。
上述的方法,可选的,针对每一个波特率,向所述目标总线发送一条报文,包括:
将所述预设的波特率数据库中的各个波特率分为标准模式波特率组和扩展模式波特率组;
针对所述标准模式波特率组中的每一个波特率,分别向所述目标总线发送一条报文;
当所述标准模式波特率组中的各个波特率与所述目标总线的波特率均不匹配时,针对所述扩展模式波特率组中的每一个波特率,分别向所述目标总线发送一条报文。
一种波特率的自适应系统,包括:
获取模块,用于当检测到目标局域网中的目标控制器的预设引脚上电时,获取预设的扫描标识的初始状态值;
第一判断模块,用于判断所述初始状态值是否满足扫描条件;
第二判断模块,用于若是,判断当前节点的标定开关或者数据开关中的至少一个是否处于打开状态;
第三判断模块,用于若是,判断预设的波特率数据库中的各个波特率中是否存在一个目标波特率与目标总线的波特率匹配;
第一确定模块,用于若是,将所述目标波特率作为所述当前节点的波特率。
上述的系统,可选的,还包括:
查找模块,用于在预设的状态赋值表中查找与所述目标波特率对应的目标状态值,其中,所述预设的状态赋值表中包含有波特率与状态值的对应关系;
更新模块,用于将所述预设的扫描标识的初始状态值更新为所述目标状态值。
上述的系统,可选的,还包括:
第四判断模块,用于若所述初始状态值不满足扫描条件,判断所述当前节点的标定开关是否处于打开状态;
第五判断模块,用于若是,判断预设的波特率数据库中的各个波特率是否存在一个目标波特率与目标总线的波特率匹配;
第六判断模块,用于若是,判断所述目标波特率与所述目标局域网的初始波特率是否相同;
第二确定模块,用于若否,将所述目标波特率作为所述当前节点的波特率。
上述的系统,可选的,所述第三判断模块包括:
发送单元,用于针对每一个波特率,分别向所述目标总线发送一条报文;
判断单元,用于当接收到发送成功指令时,判断预设的寄存器中的初始值是否改变;
确定单元,用于若是,判定当前的波特率为与所述目标总线的波特率匹配的目标波特率。
上述的系统,可选的,所述发送单元包括:
分组子单元,用于将所述预设的波特率数据库中的各个波特率分为标准模式波特率组和扩展模式波特率组;
第一发送子单元,用于针对所述标准模式波特率组中的每一个波特率,分别向所述目标总线发送一条报文;
第二发送子单元,用于当所述标准模式波特率组中的各个波特率与所述目标总线的波特率均不匹配时,针对所述扩展模式波特率组中的每一个波特率,分别向所述目标总线发送一条报文。
与现有技术相比,本发明包括以下优点:
本发明公开了一种波特率的自适应方法,包括:当检测到目标局域网中的目标控制器的预设引脚上电时,获取预设的扫描标识的初始状态值,判断所述初始状态值是否满足扫描条件;若所述初始状态值满足扫描条件,判断当前节点的标定开关或者数据开关中的至少一个是否处于打开状态;若处于打开状态,判断预设的波特率数据库中的各个波特率中是否存在一个目标波特率与目标总线的波特率匹配;若存在目标波特率,将所述目标波特率作为所述当前节点的波特率。上述的方法,可以通过扫描的方式获取所述目标局域网中当前节点的波特率,避免了通过标定量来调整新增CAN节点波特率时,在测试、调试设备不足的情况下无法匹配CAN网络的问题。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1为本申请实施例公开的一种波特率的自适应方法流程图;
图2为本申请实施例公开的一种波特率的自适应方法又一流程图;
图3为本申请实施例公开的一种波特率的自适应方法又一流程图;
图4为本申请实施例公开的一种波特率的自适应方法又一流程图;
图5为本申请实施例公开的一种波特率的自适应方法又一流程图;
图6为本申请实施例公开的一种波特率的自适应方法又一流程图;
图7为本申请实施例公开的一种波特率的自适应系统结构框图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
对所公开的实施例的上述说明,使本领域专业技术人员能够实现或使用本发明。对这些实施例的多种修改对本领域的专业技术人员来说将是显而易见的,本文中所定义的一般原理可以在不脱离本发明的精神或范围的情况下,在其它实施例中实现。因此,本发明将不会被限制于本文所示的这些实施例,而是要符合与本文所公开的原理和新颖特点相一致的最宽的范围。
本发明提供了一种波特率的自适应方法及系统,所述自适应方法应用在汽车CAN局域网中,汽车CAN局域网中各节点通讯的必须遵循统一的波特率(Baud rate),本发明实施例中,以ECU节点为例对波特率的自适应方法进行说明,所述自适应方法的执行流程如图1所示,包括步骤:
S101、当检测到目标局域网中的目标控制器的预设引脚上电时,获取预设的扫描标识的初始状态值;
本发明实施例中,所述预设的引脚为T15引脚,所述目标局域网为当前进行波特率自适应的局域网,其中,所述目标控制器属于所述目标局域网,当检测到所述目标局域网中的目标控制器的T15引脚上电时,在带电可擦可编程只读存储器EEP Rom(ElectricallyErasable Programmable read only memory)中保存的预设的扫描标识Scan_stBaudPass进行初始化,获取其对应的初始状态值,其中所述Scan_stEEPBaudPass的状态值包括非0和0两种状态。
S102、判断所述初始状态值是否满足扫描条件;
本发明实施例中,所述扫描条件为非0表示上一个工作循环已经扫描到波特率,本次及以后的循环默认不再进行扫描,0表示未扫描到波特率或者是出厂值。根据当前Scan_stEEPBaudPass的状态确定是否进入扫描模式,
S103、若是,判断当前节点的标定开关或者数据开关中的至少一个是否处于打开状态;
本发明实施例中,当检测到Scan_stEEPBaudPass的状态为非0时,判断当前节点的标定开关或者数据开关中的至少一个是否处于打开状态,其中,优选的,所述当前节点为ECU,所述标定开关设为EOL标定开关(出厂默认为0关闭),当此开关打开(为1)时,所述数据开关为后市场开关,专为通用诊断仪写数据提供的接口,当所述通用诊断仪离线时,该开关自动关闭,判断所述ECU中的标定开关或者数据开关中的至少一个是否处于打开状态。
S104、若是,判断预设的波特率数据库中的各个波特率中是否存在一个目标波特率与目标总线的波特率匹配;
本发明实施例中,当所述标定开关或者所述数据开关中的至少一个处于打开状态时,遍历所述预设的波特率数据库,判断所述预设的波特率数据库中的各个波特率中是否存在一个目标波特率与目标总线的波特率匹配,其中,所述预设的波特率数据库是依据经验建立的一个所述目标局域网中可能出现的各个波特率的集合,所述目标总线属于所述目标局域网。
S105、若是,将所述目标波特率作为所述当前节点的波特率。
本发明实施例中,当所述预设的波特率数据库中存在一个目标波特率与所述目标总线的波特率匹配时,将所述目标波特率作为所述当前节点的波特率,依据所述目标波特率对所述当前节点中的数据进行传输。
本发明实施例中,还包括:当所述初始状态值不满足扫描条件时或者所述标定开关或者所述数据开关均处于关闭状态时或者所述预设的波特率数据库中不存在于所述目标总线的波特率匹配的目标波特率时,不进行扫描,其中优选的,当所述预设的数据库中不存在于所述目标总线的波特率匹配的目标波特率时,将当前的目标总线的波特率进行反馈,作为对所述预设的波特率数据库更新的依据。
本发明公开了一种波特率的自适应方法,包括:当检测到目标局域网中的目标控制器的预设引脚上电时,获取预设的扫描标识的初始状态值,判断所述初始状态值是否满足扫描条件;若所述初始状态值满足扫描条件,判断当前节点的标定开关或者数据开关中的至少一个是否处于打开状态;若处于打开状态,判断预设的波特率数据库中的各个波特率中是否存在一个目标波特率与目标总线的波特率匹配;若存在目标波特率,将所述目标波特率作为所述当前节点的波特率。上述的方法,可以通过扫描的方式获取所述目标局域网中当前节点的波特率,避免了通过标定量来调整新增CAN节点波特率时,在测试、调试设备不足的情况下无法匹配CAN网络的问题。
本发明实施例中,优选的,若当前节点匹配了其他CAN网络、整车厂临时调整方案更换波特率等,即使上一工作循环已经扫描到了波特率,由于当前的比特率已经与当前的局域网不匹配了,因此需要重新扫描波特率,优选的,为所述标定开关设置EOL权限,即正常进入扫描模式和强制进入扫描模式的权限,其中,所述强制进入扫描模式发生在所述Scan_stEEPBaudPass为非0时,具体的处理方法流程如图1所示,包括步骤:
S106、若所述初始状态值不满足扫描条件,判断所述当前节点的标定开关是否处于打开状态;
本发明实施例中,若所述初始状态值不满足扫描条件,还需要判断所述当前节点的标定开关是否处于打开状态,判断的目的是为了确定是否进入了强制扫描模式。
S107、若是,判断预设的波特率数据库中的各个波特率是否存在一个目标波特率与目标总线的波特率匹配;
本发明实施例中,若所述当前节点的标定开关打开时,说明处于强制扫描模式,上述的判断方法与S104相同,不再赘述。
S108、若是,判断所述目标波特率与所述目标局域网的初始波特率是否相同;
本发明实施例中,若存在与目标总线波特率匹配的目标波特率,将所述目标波特率与所述目标局域网的初始波特率是否相同。
S109、若否,将所述目标波特率作为所述当前节点的波特率。
本发明实施例中,若所述目标波特率与所述初始波特率不同时,将所述目标波特率作为所述当前节点的波特率,反之,继续依据所述初始波特率进行传输。
本发明实施例中,将所述目标波特率作为所述当前节点的波特率之后,优选的,还包括如图2所示步骤:
S201、在预设的状态赋值表中查找与所述目标波特率对应的目标状态值,其中,所述预设的状态赋值表中包含有波特率与状态值的对应关系;
本发明实施例中,在预设的状态赋值表中查找与所述目标波特率对应的目标状态值,其中,所述预设的状态赋值表中包含有波特率与状态值的对应关系,所述预设的状态赋值表的如表1所示,表1只是对波特率与状态值的对应关系进行说明,并未包含所有可能的对应关系。
表1
S202、将所述预设的扫描标识的初始状态值更新为所述目标状态值。
本发明实施例中,将所述EEP Rom中的初始状态值更新为所述目标状态值。
本发明实施例中,判断预设的波特率数据库中的各个波特率中是否存在一个目标波特率与目标总线的波特率匹配的方法流程图,如图3所示,包括步骤:
S301、针对每一个波特率,分别向所述目标总线发送一条报文;
本发明实施例中,针对每一个波特率,确定与其对应的报文,分别向所述目标总线与每一个波特率对应的报文。
S302、当接收到发送成功指令时,判断预设的寄存器中的初始值是否改变;
本发明实施例中,当接收到发送成功指令时,获取预设的寄存器中的当前值,判断所述当前值与所述预设的寄存器中初始值是否相同。
S303、若是,判定当前的波特率为与所述目标总线的波特率匹配的目标波特率。
本发明实施例中,若所述寄存器的初始值与当前值不相同时,说明与该报文对应的当前波特率为与所述目标总线波特率匹配的目标波特率,优选的,针对每一个局域网,都遵循一个统一的波特率,当找到所述目标波特率后,其余的波特率可以不进行判断。
本发明实施例中,针对每一个波特率,向所述目标总线发送一条报文的方法流程如图4所示,包括步骤:
S401、将所述预设的波特率数据库中的各个波特率分为标准模式波特率组和扩展模式波特率组;
本发明实施例中,为了提高判断的效率,优选的,可以将所述预设的波特率数据库中的各个波特率分为标准模式波特率组合扩展模式波特率组,其中,标准模式波特率组中都是常见的波特率,与所述目标总线的波特率匹配成功的可能性大,而所述扩展模式波特率组中的波特率与所述目标总线的波特率匹配成功的可能性相较于所述标准模式波特率组低。
S402、针对所述标准模式波特率组中的每一个波特率,分别向所述目标总线发送一条报文;
本发明实施例中,优选的,优先针对所述标准模式波特率组中的每一个波特率,确定与其对应的报文,分别向所述目标总线与每一个波特率对应的报文。
S403、当所述标准模式波特率组中的各个波特率与所述目标总线的波特率均不匹配时,针对所述扩展模式波特率组中的每一个波特率,分别向所述目标总线发送一条报文。
本发明实施例中,当所述标准模式波特率组中的各个波特率与所述目标总线的波特率均不匹配时,针对所述扩展模式波特率组中的每一个波特率,确定与其对应的报文,分别向所述目标总线与每一个波特率对应的报文。
例如,所述标准模式波特率组中的波特率为100KBaud、250KBaud、500 KBaud、1000KBaud,当在标准模式下无法扫描到波特率时,自动跳转到扩展模式;扩展模式波特率组为5KBaud、10KBaud、15KBaud、20KBaud、 25KBaud、30KBaud、33.3KBaud、35KBaud、40KBaud、50KBaud、60KBaud、 83.3KBaud、125KBaud、150KBaud、200KBaud、300KBaud、350KBaud、 400KBaud、450KBaud、550KBaud、600KBaud、650KBaud、700KBaud、 750KBaud、800KBaud、850KBaud、900KBaud、950KBaud。只要在这两种模式下成功扫描到波特率,那么ECU自动退出Scan模式并将此波特率按照下表存储到EEP ROM中。上述过程的执行流程如图5所示,其中,Scan_Cnt为标准模式和扩展模式的区分标识,Scan_Cnt=0执行标准模式,Scan_Cnt=1 执行扩展模式,Scan_Cnt=2扫描到目标波特率。
本发明实施例中,以ECU为例,基于上述方法的整体执行流程如图6所示,当检测到T15引脚上电时,进行初始化,判断Scan_stEEPBaudPass是否为0,若是,通关判断EOL开关的通断,确定是否进入强制扫描模式,若是,进行目标波特率的扫描状态;若否,当所述EOL开关或者后市场开关对否打开,若是,进行目标波特率的扫描状态,最终将得到的目标波特率的Scan_stEEPBaudPass存储到EEP Rom中。
本发明实施例中,基于上述的一种波特率自适应方法,本发明实施例中还提供了一种波特率的自适应系统,所述自适应系统的结构框图如图7所示,包括:
获取模块501,第一判断模块502,第二判断模块503,第三判断模块504 和第一确定模块505。
其中,
所述获取模块501,用于当检测到目标局域网中的目标控制器的预设引脚上电时,获取预设的扫描标识的初始状态值;
所述第一判断模块502,用于判断所述初始状态值是否满足扫描条件;
所述第二判断模块503,用于若是,判断当前节点的标定开关或者数据开关中的至少一个是否处于打开状态;
所述第三判断模块504,用于若是,判断预设的波特率数据库中的各个波特率中是否存在一个目标波特率与目标总线的波特率匹配;
所述第一确定模块505,用于若是,将所述目标波特率作为所述当前节点的波特率。
本发明公开了一种波特率的自适应系统,包括:当检测到目标局域网中的目标控制器的预设引脚上电时,获取预设的扫描标识的初始状态值,判断所述初始状态值是否满足扫描条件;若所述初始状态值满足扫描条件,判断当前节点的标定开关或者数据开关中的至少一个是否处于打开状态;若处于打开状态,判断预设的波特率数据库中的各个波特率中是否存在一个目标波特率与目标总线的波特率匹配;若存在目标波特率,将所述目标波特率作为所述当前节点的波特率。上述的系统,可以通过扫描的方式获取所述目标局域网中当前节点的波特率,避免了通过标定量来调整新增CAN节点波特率时,在测试、调试设备不足的情况下无法匹配CAN网络的问题。
本发明实施例中,所述自适应系统还包括:
查找模块506和更新模块507。
其中,
所述查找模块506,用于在预设的状态赋值表中查找与所述目标波特率对应的目标状态值,其中,所述预设的状态赋值表中包含有波特率与状态值的对应关系;
所述更新模块507,用于将所述预设的扫描标识的初始状态值更新为所述目标状态值。
本发明实施例中,所述自适应系统还包括:
第四判断模块508,第五判断模块509,第六判断模块510和第二确定模块511。
其中,
所述第四判断模块508,用于若所述初始状态值不满足扫描条件,判断所述当前节点的标定开关是否处于打开状态;
所述第五判断模块509,用于若是,判断预设的波特率数据库中的各个波特率是否存在一个目标波特率与目标总线的波特率匹配;
所述第六判断模块510,用于若是,判断所述目标波特率与所述目标局域网的初始波特率是否相同;
所述第二确定模块511,用于若否,将所述目标波特率作为所述当前节点的波特率。
本发明实施例中,所述第三判断模块504包括:
发送单元512,判断单元513和确定单元514。
其中,
所述发送单元512,用于针对每一个波特率,分别向所述目标总线发送一条报文;
所述判断单元513,用于当接收到发送成功指令时,判断预设的寄存器中的初始值是否改变;
所述确定单元514,用于若是,判定当前的波特率为与所述目标总线的波特率匹配的目标波特率。
本发明实施例中,所述发送单元512包括:
分组子单元515,第一发送子单元516和第二发送子单元517。
其中,
所述分组子单元515,用于将所述预设的波特率数据库中的各个波特率分为标准模式波特率组和扩展模式波特率组;
所述第一发送子单元516,用于针对所述标准模式波特率组中的每一个波特率,分别向所述目标总线发送一条报文;
所述第二发送子单元517,用于当所述标准模式波特率组中的各个波特率与所述目标总线的波特率均不匹配时,针对所述扩展模式波特率组中的每一个波特率,分别向所述目标总线发送一条报文。
需要说明的是,本说明书中的各个实施例均采用递进的方式描述,每个实施例重点说明的都是与其他实施例的不同之处,各个实施例之间相同相似的部分互相参见即可。对于装置类实施例而言,由于其与方法实施例基本相似,所以描述的比较简单,相关之处参见方法实施例的部分说明即可。
最后,还需要说明的是,在本文中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。
为了描述的方便,描述以上装置时以功能分为各种单元分别描述。当然,在实施本发明时可以把各单元的功能在同一个或多个软件和/或硬件中实现。
通过以上的实施方式的描述可知,本领域的技术人员可以清楚地了解到本发明可借助软件加必需的通用硬件平台的方式来实现。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品可以存储在存储介质中,如ROM/RAM、磁碟、光盘等,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本发明各个实施例或者实施例的某些部分所述的方法。
以上对本发明所提供的一种波特率的自适应方法及系统进行了详细介绍,本文中应用了具体个例对本发明的原理及实施方式进行了阐述,以上实施例的说明只是用于帮助理解本发明的方法及其核心思想;同时,对于本领域的一般技术人员,依据本发明的思想,在具体实施方式及应用范围上均会有改变之处,综上所述,本说明书内容不应理解为对本发明的限制。
Claims (6)
1.一种波特率的自适应方法,其特征在于,包括:
当检测到目标局域网中的目标控制器的预设引脚上电时,获取预设的扫描标识的初始状态值;
判断所述初始状态值是否满足扫描条件;
若是,判断当前节点的标定开关或者数据开关中的至少一个是否处于打开状态;
若是,判断预设的波特率数据库中的各个波特率中是否存在一个目标波特率与目标总线的波特率匹配;
若是,将所述目标波特率作为所述当前节点的波特率;
其中,判断预设的波特率数据库中的各个波特率中是否存在一个目标波特率与目标总线的波特率匹配,包括:
针对每一个波特率,分别向所述目标总线发送一条报文;
当接收到发送成功指令时,判断预设的寄存器中的初始值是否改变;
若是,判定当前的波特率为与所述目标总线的波特率匹配的目标波特率;
其中,针对每一个波特率,向所述目标总线发送一条报文,包括:
将所述预设的波特率数据库中的各个波特率分为标准模式波特率组和扩展模式波特率组;
针对所述标准模式波特率组中的每一个波特率,分别向所述目标总线发送一条报文;
当所述标准模式波特率组中的各个波特率与所述目标总线的波特率均不匹配时,针对所述扩展模式波特率组中的每一个波特率,分别向所述目标总线发送一条报文。
2.根据权利要求1所述的方法,其特征在于,还包括:
在预设的状态赋值表中查找与所述目标波特率对应的目标状态值,其中,所述预设的状态赋值表中包含有波特率与状态值的对应关系;
将所述预设的扫描标识的初始状态值更新为所述目标状态值。
3.根据权利要求1所述的方法,其特征在于,还包括:
若所述初始状态值不满足扫描条件,判断所述当前节点的标定开关是否处于打开状态;
若是,判断预设的波特率数据库中的各个波特率是否存在一个目标波特率与目标总线的波特率匹配;
若是,判断所述目标波特率与所述目标局域网的初始波特率是否相同;
若否,将所述目标波特率作为所述当前节点的波特率。
4.一种波特率的自适应系统,其特征在于,包括:
获取模块,用于当检测到目标局域网中的目标控制器的预设引脚上电时,获取预设的扫描标识的初始状态值;
第一判断模块,用于判断所述初始状态值是否满足扫描条件;
第二判断模块,用于若是,判断当前节点的标定开关或者数据开关中的至少一个是否处于打开状态;
第三判断模块,用于若是,判断预设的波特率数据库中的各个波特率中是否存在一个目标波特率与目标总线的波特率匹配;
第一确定模块,用于若是,将所述目标波特率作为所述当前节点的波特率;
其中,所述第三判断模块包括:
发送单元,用于针对每一个波特率,分别向所述目标总线发送一条报文;
判断单元,用于当接收到发送成功指令时,判断预设的寄存器中的初始值是否改变;
确定单元,用于若是,判定当前的波特率为与所述目标总线的波特率匹配的目标波特率;
其中,所述发送单元包括:
分组子单元,用于将所述预设的波特率数据库中的各个波特率分为标准模式波特率组和扩展模式波特率组;
第一发送子单元,用于针对所述标准模式波特率组中的每一个波特率,分别向所述目标总线发送一条报文;
第二发送子单元,用于当所述标准模式波特率组中的各个波特率与所述目标总线的波特率均不匹配时,针对所述扩展模式波特率组中的每一个波特率,分别向所述目标总线发送一条报文。
5.根据权利要求4所述的系统,其特征在于,还包括:
查找模块,用于在预设的状态赋值表中查找与所述目标波特率对应的目标状态值,其中,所述预设的状态赋值表中包含有波特率与状态值的对应关系;
更新模块,用于将所述预设的扫描标识的初始状态值更新为所述目标状态值。
6.根据权利要求4所述的系统,其特征在于,还包括:
第四判断模块,用于若所述初始状态值不满足扫描条件,判断所述当前节点的标定开关是否处于打开状态;
第五判断模块,用于若是,判断预设的波特率数据库中的各个波特率是否存在一个目标波特率与目标总线的波特率匹配;
第六判断模块,用于若是,判断所述目标波特率与所述目标局域网的初始波特率是否相同;
第二确定模块,用于若否,将所述目标波特率作为所述当前节点的波特率。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201811130240.8A CN109274567B (zh) | 2018-09-27 | 2018-09-27 | 一种波特率的自适应方法及系统 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201811130240.8A CN109274567B (zh) | 2018-09-27 | 2018-09-27 | 一种波特率的自适应方法及系统 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN109274567A CN109274567A (zh) | 2019-01-25 |
CN109274567B true CN109274567B (zh) | 2021-10-08 |
Family
ID=65199009
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201811130240.8A Active CN109274567B (zh) | 2018-09-27 | 2018-09-27 | 一种波特率的自适应方法及系统 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN109274567B (zh) |
Families Citing this family (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110430109B (zh) * | 2019-08-11 | 2021-09-07 | 南京中消安全技术有限公司 | 一种基于二总线的消防设备的通讯方法及系统 |
CN112118075B (zh) * | 2020-08-09 | 2023-06-02 | 东风电驱动系统有限公司 | Can总线波特率自适应方法及装置 |
CN112751738B (zh) * | 2020-12-29 | 2022-07-05 | 北京万集智能网联技术有限公司 | 波特率自适应方法、装置、计算机设备和可读存储介质 |
CN112769663B (zh) * | 2020-12-30 | 2022-08-19 | 深圳市亚辉龙生物科技股份有限公司 | 通信方法、装置、计算机设备和存储介质 |
CN114024795B (zh) * | 2021-11-05 | 2023-08-08 | 深圳数马电子技术有限公司 | 波特率自适应方法、装置、计算机设备和存储介质 |
CN114500149B (zh) * | 2022-01-05 | 2023-12-15 | 东风柳州汽车有限公司 | 波特率自适应调整方法、装置、设备及存储介质 |
CN114866367B (zh) * | 2022-04-13 | 2023-12-05 | 深圳市三旺通信股份有限公司 | Can设备通信方法、装置、can光猫设备与介质 |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101917322A (zh) * | 2010-08-10 | 2010-12-15 | 西安电子科技大学 | 一种自适应多总线融合方法 |
CN105049151A (zh) * | 2015-07-03 | 2015-11-11 | 福州瑞芯微电子股份有限公司 | 一种用于串口通信控制的方法和通信串口 |
CN106411641A (zh) * | 2016-09-20 | 2017-02-15 | 宁波中车时代传感技术有限公司 | 一种自动检测can总线波特率的方法 |
US9734119B1 (en) * | 2014-07-10 | 2017-08-15 | Scantool.net LLC | Systems and methods for accessing vehicle communications bus information for an application processor |
Family Cites Families (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104991877B (zh) * | 2015-06-26 | 2018-04-24 | 武汉光庭科技有限公司 | 一种车载导航主机高效统一扩展方法 |
US10491418B2 (en) * | 2016-12-05 | 2019-11-26 | Electronics And Telecommunications Research Institute | Can controller and data transmission method using the same |
-
2018
- 2018-09-27 CN CN201811130240.8A patent/CN109274567B/zh active Active
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101917322A (zh) * | 2010-08-10 | 2010-12-15 | 西安电子科技大学 | 一种自适应多总线融合方法 |
US9734119B1 (en) * | 2014-07-10 | 2017-08-15 | Scantool.net LLC | Systems and methods for accessing vehicle communications bus information for an application processor |
CN105049151A (zh) * | 2015-07-03 | 2015-11-11 | 福州瑞芯微电子股份有限公司 | 一种用于串口通信控制的方法和通信串口 |
CN106411641A (zh) * | 2016-09-20 | 2017-02-15 | 宁波中车时代传感技术有限公司 | 一种自动检测can总线波特率的方法 |
Also Published As
Publication number | Publication date |
---|---|
CN109274567A (zh) | 2019-01-25 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN109274567B (zh) | 一种波特率的自适应方法及系统 | |
CN109688042B (zh) | 一种消息处理方法及装置 | |
US5758282A (en) | Radio terminal using allocated addresses | |
CN102291430B (zh) | 物联网配置信息处理方法、物联网平台及系统 | |
CN111835627A (zh) | 车载网关的通信方法、车载网关及智能车辆 | |
CN100514958C (zh) | 业务感知控制方法及其系统 | |
CN106059806B (zh) | 一种can报文发送方法及装置 | |
CN111273931B (zh) | 一种车载行车电脑并行升级方法及装置 | |
CN110324281B (zh) | 一种车载网络控制器刷新系统及方法 | |
CN112995040B (zh) | 一种基于设备标识计算的报文路径溯源方法及装置 | |
CN110445719A (zh) | 一种路由表管理方法、装置、设备和存储介质 | |
CN108471343B (zh) | 通讯校验码的确定方法及装置、通讯校验方法及系统 | |
CN108600411A (zh) | 一种列车地址的分配方法、装置、列车设备及存储介质 | |
CN111884888A (zh) | 裁判机选举方法、装置、智能设备和计算机可读存储介质 | |
CN111147468A (zh) | 用户接入方法、装置、电子设备及存储介质 | |
CN112492618A (zh) | 一种网络共享方法、装置、电子设备及存储介质 | |
CN108337741B (zh) | 构建通信连接的方法,装置及计算机可读存储介质 | |
CN107171915B (zh) | 一种通信协议的变更方法及装置 | |
CN107093917B (zh) | 一种无线充电方法及无线充电路由器 | |
CA2387211A1 (en) | Communication system, and connection setting method and connection setting program of exchange and terminal | |
CN111866845B (zh) | 数据传输方法、装置、设备及计算机可读存储介质 | |
CN113791733A (zh) | 信息的存储方法、装置、设备及存储介质 | |
CN110677466A (zh) | 应用程序的下载方法、装置、网关和存储介质 | |
CN107547244B (zh) | 一种表项处理方法及装置 | |
CN105159168A (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 |