CN114143273A - 通道分配方法、装置、计算机设备和计算机可读存储介质 - Google Patents

通道分配方法、装置、计算机设备和计算机可读存储介质 Download PDF

Info

Publication number
CN114143273A
CN114143273A CN202111402917.0A CN202111402917A CN114143273A CN 114143273 A CN114143273 A CN 114143273A CN 202111402917 A CN202111402917 A CN 202111402917A CN 114143273 A CN114143273 A CN 114143273A
Authority
CN
China
Prior art keywords
protocol type
channel
state
signal
communication protocol
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.)
Granted
Application number
CN202111402917.0A
Other languages
English (en)
Other versions
CN114143273B (zh
Inventor
不公告发明人
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Shenzhen Xhorse Electronics Co Ltd
Original Assignee
Shenzhen Xhorse Electronics Co Ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Shenzhen Xhorse Electronics Co Ltd filed Critical Shenzhen Xhorse Electronics Co Ltd
Priority to CN202111402917.0A priority Critical patent/CN114143273B/zh
Publication of CN114143273A publication Critical patent/CN114143273A/zh
Application granted granted Critical
Publication of CN114143273B publication Critical patent/CN114143273B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L47/00Traffic control in data switching networks
    • H04L47/70Admission control; Resource allocation
    • H04L47/80Actions related to the user profile or the type of traffic
    • H04L47/805QOS or priority aware
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L69/00Network arrangements, protocols or services independent of the application payload and not provided for in the other groups of this subclass
    • H04L69/18Multiprotocol handlers, e.g. single devices capable of handling multiple protocols

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Computer Security & Cryptography (AREA)
  • Communication Control (AREA)
  • Small-Scale Networks (AREA)

Abstract

本申请提供了一种通道分配方法、装置、计算机设备和计算机可读存储介质,所述方法包括:接收车辆或车辆诊断仪的引脚所发出的信号;获取所述信号的电平值;根据所述电平值确定所述引脚所采用的通信协议类型;根据所述通信协议类型所对应的优先级规则和通道的通信状态,为所述信号分配目标通道;通过所述目标通道与所述车辆或所述车辆诊断仪进行通信。采用本申请的方法能够提高通道分配准确性。

Description

通道分配方法、装置、计算机设备和计算机可读存储介质
技术领域
本发明涉及通信技术领域,特别是涉及一种通道分配方法、装置、计算机设备和计算机可读存储介质。
背景技术
车辆或车辆诊断仪的信号是从OBD(On Board Diagnostics,车载自动诊断系统)的1-16引脚输出。这些信号的通信协议可能是CAN通信协议,也可能是K线通信协议。在硬件方面,由于一些芯片仅支持几组信号同时通信,并且对信号的类型有一定要求。因此,需要对输入信号进行甄别、筛选并分配通道。在通道数量有限的情况下,传统的方式是当有一路信号进行通信,就为该路信号任意分配一个通信通道。然而,传统的方式存在通道分配不准确的问题。
发明内容
基于此,有必要针对上述技术问题,提供一种能够提高通道分配准确性的通道分配方法、装置、计算机设备和计算机可读存储介质。
一种通道分配方法,所述方法包括:
接收车辆或车辆诊断仪的引脚所发出的信号;
获取所述信号的电平值;
根据所述电平值确定所述引脚所采用的通信协议类型;
根据所述通信协议类型所对应的优先级规则和通道的通信状态,为所述信号分配目标通道;
通过所述目标通道与所述车辆或所述车辆诊断仪进行通信。
一种通道分配装置,所述装置包括:
信号接收模块,用于接收车辆或车辆诊断仪的引脚所发出的信号;
电平值获取模块,用于获取所述信号的电平值;
通信协议类型确定模块,用于根据所述电平值确定所述引脚所采用的通信协议类型;
目标通道分配模块,用于根据所述通信协议类型所对应的优先级规则和通道的通信状态,为所述信号分配目标通道;
通信模块,用于通过所述目标通道与所述车辆或所述车辆诊断仪进行通信。
一种计算机设备,包括存储器和处理器,所述存储器存储有计算机程序,所述处理器执行所述计算机程序时实现本申请各实施例的步骤。
一种计算机可读存储介质,其上存储有计算机程序,所述计算机程序被处理器执行时实现本申请各实施例的步骤。
上述通道分配方法、装置、计算机设备和计算机可读存储介质,接收车辆或车辆诊断仪的引脚所发出的信号,获取信号的电平值,根据电平值确定通信协议类型,则能够得到不同的车辆和车辆诊断仪所采用的通信协议类型;根据通信协议类型对应的优先级规则和通道的通信状态,为信号分配目标通道,通过目标通道与车辆或车辆诊断仪进行通信,则在通道有限的情况下,基于优先级规则优先分配目标通道,能够在有有限的通道的情况下合理分配通道,提高通道分配的准确性。
附图说明
图1为一个实施例中通道分配方法的应用环境图;
图2为一个实施例中通道分配方法的流程示意图;
图3为一个实施例中CAN通信协议的信号示意图;
图4为一个实施例中CAN通信协议的帧结构示意图;
图5为一个实施例中确定引脚所采用的通信协议类型的流程示意图;
图6为一个实施例中K线通信协议的快速初始化过程中的帧结构示意图;
图7为一个实施例中K线通信协议的5波特率初始化过程中的帧结构示意图;
图8为一个实施例中确定第二协议类型的流程示意图;
图9为一个实施例中通道分配装置的结构框图;
图10为一个实施例中计算机设备的内部结构图。
具体实施方式
应当理解,此处所描述的具体实施例仅仅用以解释本发明,并不用于限定本发明。
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明的一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有付出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
需要说明,本发明实施例中所有方向性指示(诸如上、下、左、右、前、后……)仅用于解释在某一特定姿态(如附图所示)下各部件之间的相对位置关系、运动情况等,如果该特定姿态发生改变时,则该方向性指示也相应地随之改变,所述的连接可以是直接连接,也可以是间接连接。
另外,在本发明中如涉及“第一”、“第二”等的描述仅用于描述目的,而不能理解为指示或暗示其相对重要性或者隐含指明所指示的技术特征的数量。由此,限定有“第一”、“第二”的特征可以明示或者隐含地包括至少一个该特征。另外,各个实施例之间的技术方案可以相互结合,但是必须是以本领域普通技术人员能够实现为基础,当技术方案的结合出现相互矛盾或无法实现时应当认为这种技术方案的结合不存在,也不在本发明要求的保护范围之内。
在一个实施例中,在云诊断设备中,信号由OBD 1-16引脚接入。这些信号可能来自于汽车,也可能来自于车辆诊断仪,通信协议可能是CAN通信协议,也可能是K线通信协议,也可能是UART(Universal Asynchronous Receiver/Transmitter,通用异步收发传输器)通信协议。如果是CAN通信协议,那么这些信号有可能来自于6脚和14脚(CANH和CANL,下同)、3脚和11脚、3脚和8脚、12脚和13脚、或者1脚和9脚。如果是K线通信协议或者UART通信协议,这些信号则可能会在除了4脚、5脚和16脚外的任意引脚出现。因此,对于同一个引脚,可能会存在不同的通信协议的信号。除此之外,信号的波特率也是不确定的。因此,需要监控每个OBD引脚上的电压变化,分辨出当前哪个管脚有信号,是CAN还是K,波特率是多少。为了满足上面这些需求,本申请各实施例中提出了基于FPGA的通信协议自适应方法,能够高效地解决协议识别和筛选问题。
在硬件方面,使用XJ547B芯片作为开关网络和物理发送器,在发送信号时,通过配置芯片的寄存器,可以将输出信号与任意OBD引脚相连,好处是可以很大程度地减少物理收发器的使用,节省电路板面积、降低成本,但也存在局限性,XJ547B芯片内部的物理收发器和开关网络共同决定了系统最多支持两组CAN信号和两组K线信号同时通信。因此在实际应用中,只支持两路CAN信号或两路K信号,且CAN信号和K线信号不同时存在。这就要求从逻辑上对输入信号进行甄别、筛选并分配通道,形成本文所述的通道分配方法。
图1为一个实施例中通道分配方法的应用环境图。其中包括车辆或车辆诊断仪110和云诊断设备120。云诊断设备120的前端是由分压电路、采样保持电路、多路复选开关以及ADC组成,实时采集OBD管脚上的电压,经过模数转换后以8bit(比特)并行数字信号输入FPGA(Field Programmable Gate Array,现场可编程逻辑门阵列),存入FIFO(First InputFirst Output,先进先出)存储器中。之后,FPGA将依次使用这些数据来还原对应OBD引脚上的信号波形,并加以处理。
在一个实施例中,如图2所示,为一个实施例中通道分配方法的流程示意图,应用于计算机设备,该计算机设备可以是云诊断设备,且云诊断设备中的通道数量有限,其中:
步骤202,接收车辆或车辆诊断仪的引脚发出的信号。
具体地,车辆或车辆诊断仪中运载有OBD,车辆或车辆诊断仪向云诊断设备发出信号。云诊断设备中的ADC接收车辆或车辆诊断仪的引脚发出的信号。
步骤204,获取信号的电平值。
具体地,云诊断设备通过ADC(Analog to Digital Converter,模拟数字转换器)获取该信号的电平值。
步骤206,根据电平值确定引脚所采用的通信协议类型。
其中,在车辆中,常用的通信协议是CAN通信协议和K线通信协议。
可以理解的是,在车辆应用场景中,还可以有其它的通信协议类型,并且适用于本申请各实施例中的方案。
具体地,当电平值小于或等于第一预设电平值时,确定该引脚所采用的通信协议类型为第一协议类型。当电平值大于第二预设电平值时,确定该引脚所采用的通信协议类型为第二协议类型。第一预设电平值与第二预设电平值可以相同,也可以不相同。例如,在一般情况下,可认为电平值小于6V对应的通信协议为CAN通信协议,认为电平值大于6V对应的通信协议为K线通信协议。那么假设第一预设电平值为6V,当电平值小于6V时,可以确定该信号的通信协议类型为CAN协议类型。假设第二预设电平值为6V,当电平值大于6V时,可以确定该信号的通信协议类型为K线协议类型。
步骤208,根据通信协议类型所对应的优先级规则和通道的通信状态,为信号分配目标通道。
其中,各通信协议类型所对应的优先级规则不同。优先级规则用于基于通道的不同通信状态对通道进行选择。
通道是指在云诊断设备中可用于通信的通道。通道的数量为有限个。通道的数量小于车辆或车辆诊断仪进行数据传输所需的最大通道数。例如,通道的数量可以为1个、2个、3个等。
通道的通信状态包括通道使用状态、通道占用状态中至少一种。通道使用状态用于表征通道是否被使用、通道在使用时出现的状态等。通道占用状态表示通道被哪些信号占用。目标通道即该信号最终使用的通道。通道使用状态和通道占用状态这两种状态可以同时出现。
具体地,云诊断设备获取通道的通信状态,并根据通信协议类型所对应的优先级规则和通道的通信状态,为该信号分配目标通道。
步骤210,通过目标通道与车辆或车辆诊断仪进行通信。
具体地,云诊断设备通过目标通道与车辆或车辆诊断仪进行通信。
本实施例中,接收车辆或车辆诊断仪的引脚所发出的信号,获取信号的电平值,根据电平值确定通信协议类型,则能够得到不同的车辆和车辆诊断仪所采用的通信协议类型;根据通信协议类型对应的优先级规则和通道的通信状态,为信号分配目标通道,通过目标通道与车辆或车辆诊断仪进行通信,则在通道有限的情况下,基于优先级规则优先分配目标通道,能够在有有限的通道的情况下合理分配通道,提高通道分配的准确性。
在一个实施例中,根据通信协议类型所对应的优先级规则和通道的通信状态,为信号分配目标通道,包括:获取通道的通信状态,通信状态包括通道占用状态;根据通道占用状态,从通信协议类型对应的优先级规则中确定通信协议类型所对应的目标优先级规则;根据目标优先级规则,为信号分配目标通道。
其中,通道占用状态表示通道被哪些信号占用。通道占用状态可包括未占用状态、第一占用状态和第二占用状态。未占用状态是指未分配给信号的状态。第一占用状态是指已分配给第一协议类型的信号的状态。第二占用状态是指已分配给第二协议类型的信号的状态。可以理解的是,通道曾经被分配给第一协议类型,但此时没有进行通信,该通道也处于第一占用状态。同样地,通道曾经分配给第二协议类型,但此时没有进行通信,该通道也处于第二占用状态。
通信协议类型对应的优先级规则包括应用于不同通信协议类型之间的第一优先级规则和第二优先级规则,以及应用于相同通信协议类型之间的第三优先级规则和第四优先级规则。
第一协议类型对应的优先级规则包括第一优先级规则和第三优先级规则。第一优先级规则为第一协议类型的优先级高于第二协议类型的优先级。第三优先级规则为通道使用状态从高到低为冲突状态、空闲状态、出错状态和静默状态的优先级顺序。第二协议类型对应的优先级规则包括第二优先级规则和第四优先级规则。第二优先级规则为当通信占用状态为第一占用状态且通信使用状态为静默状态时,占用该处于第一占用状态且静默状态的通道。第四优先级规则为通道使用状态从高到低为空闲状态、出错状态和静默状态的优先级顺序。
具体地,云诊断设备获取芯片中各通道的通道占用状态。云诊断设备根据通道占用状态,从通信协议对应的优先级规则中确定该通信协议类型所对应的目标优先级规则。云诊断设备根据目标优先级规则,为信号分配目标通道。
本实施例中,由于第一协议类型和第二协议类型具有不同的特点,因此基于通道处于不同的占用状态时对通道进行分配,能够提高通道分配的准确性以及通道的利用率。
在一个实施例中,根据通道占用状态,从通信协议类型对应的优先级规则中确定通信协议类型所对应的目标优先级规则,包括:
当通信协议类型为第一协议类型且通道占用状态为第二占用状态时,从第一协议类型对应的优先级规则中,确定第一协议类型所对应的第一优先级规则;第二占用状态是已分配给第二协议类型的信号的状态;
根据目标优先级规则,为信号分配目标通道,包括:
根据第一优先级规则,为信号分配处于第二占用状态的目标通道。
其中,第一协议类型和第二协议类型不同。第一协议类型的可靠性高于第二协议类型。第一协议类型具体可以是用于双线传输的通信协议类型。第二协议类型具体可以是用于单线传输的通信协议类型。例如,第一协议类型可以是CAN协议类型,第二协议类型可以是K线协议类型。第一协议类型的优先级高于第二协议类型的优先级。同一个引脚不会同时出现两种协议类型。
并且第一协议类型和第二协议类型互斥。即在云诊断设备中第一协议类型的信号和第二协议类型的信号不能同时进行通信。
通信占用状态包括第一占用状态和第二占用状态。可以理解的是,当有第三种协议类型时,还可以包括第三占用状态。
具体地,在确定出引脚的信号为第一协议类型的信号时,有可能存在正在通信的第二协议类型的信号。但是不论此时第二协议类型的信号处于怎样的通信状态,是静默还是有效通信,都会释放通道,将通道分配给第一协议类型的信号。
因此,当通信协议类型为第一协议类型且通道占用状态为第二占用状态时,说明已有第二协议类型的信号占用了通道,确定第一协议类型所对应的优先级规则为用于不同类型之间的优先级规则,即第一优先级规则。根据第一协议类型的优先级高于第二协议类型的优先级规则,释放处于第二占用状态的通道,为信号分配处于第二占用状态的目标通道。
本实施例中,为第一协议类型设置较高的优先级,能够保证通信正常进行,并且保证通信的可靠性。
在一个实施例中,通信状态还包括通道使用状态。根据通道占用状态,从通信协议类型对应的优先级规则中确定通信协议类型所对应的目标优先级规则,包括:当通信协议类型为第二协议类型、通信占用状态为第一占用状态且通道使用状态为静默状态时,从第二协议类型对应的优先级规则中确定第二协议类型所对应的第二优先级规则。
根据目标优先级规则,为信号分配目标通道,包括:根据第二优先级规则,为第二协议类型的信号分配处于第一占用状态和静默状态的目标通道。
其中,静默状态是指通道已经分配,但此时没有进行通信的状态。
具体地,以第一协议类型为CAN协议类型、第二协议类型为K线协议类型为例,在CAN协议类型对应的信号占用了通道之后,还能有K线协议类型的信号通过辅助判断的只有一种情况,即当前CAN协议类型所占用的通道已经处于静默状态,没有在正常通信。
因此当通信协议类型为第二协议类型、且通信占用状态为第一占用状态且通道使用状态为静默状态时,说明第一协议类型的通道此时没有使用通道,确定第二协议类型所对应的优先级规则为用于不同类型之间的优先级规则,即第二优先级规则。云诊断设备根据第二优先级规则,释放处于第一占用状态和静默状态的通道,为信号分配已释放的处于第一占用状态和静默状态的目标通道。
本实施例中,在第一协议类型的通道此时没有使用通道的情况下,将通道分配给第二协议类型的信号,提高通道的利用率。
在一个实施例中,通信状态还包括通道使用状态。根据通道占用状态,从通信协议类型对应的优先级规则中确定通信协议类型所对应的目标优先级规则,包括:
当通信协议类型为第一协议类型、且通道占用状态包括第一占用状态时,从第一协议类型对应的优先级规则中确定第三优先级规则;第三优先级规则包括通道使用状态从高到低为冲突状态、空闲状态、出错状态和静默状态的优先级顺序。
根据目标优先级规则,为信号分配目标通道,包括:
根据通道使用状态从高到低为冲突状态、空闲状态、出错状态和静默状态的优先级顺序,以及通道的通道使用状态,为信号分配目标通道。
其中,第一协议类型具体是存在冲突状态的协议类型。冲突状态是指存在与该信号不能同时出现的信号,则称为冲突状态。以第一协议类型为CAN协议类型为例进行说明。采用CAN通信协议进行通信的5组信号中,有两组3脚和8脚、3脚和11脚出现了共用3脚的情况,也就是说,这两组CAN信号一定不会同时出现。当有其中一组信号通过时,首先要查找是否有另一组曾经确立过通道。若有,则优先抢占该通道。举个例子,假设诊断过程中曾经使用过3脚8脚的CAN信号,已经分配到了A通道,那么在不复位系统的情况下更换车辆或者诊断设备,变成使用3脚11脚的CAN信号,这个时候虽然有B通道处于没有分配的空闲状态,但3脚11脚这一组CAN信号是不能够分配到B通道的,应当抢占之前3脚8脚的A通道,就是因为它们两组是互斥的。
空闲状态是指没有分配给任何信号的状态。出错状态是指已分配信号,但是出错的状态。静默状态是指已分配信号,但此时没有进行通信的状态。
具体地,当通信协议为第一协议类型且通道占用状态包括第一占用状态时时,云诊断设备从第一协议类型对应的优先级规则中确定用于相同协议类型之间的第三优先级规则。云诊断设备按照通信使用状态从高到低为冲突状态、空闲状态、出错状态和静默状态的优先级顺序,以及通道的通道使用状态进行匹配,当匹配成功时,为信号分配通道使用状态匹配的目标通道。
本实施例中,当存在通道使用状态为冲突状态的通道时,为所述信号分配处于冲突状态的目标通道;
当未存在通道使用状态为冲突状态的通道、且存在空闲状态的通道时,为所述信号分配处于空闲状态的目标通道;
当未存在通道使用状态为冲突状态的通道、且未存在通道使用状态为空闲状态的通道、且存在通道使用状态为出错状态的通道时,为所述信号分配处于出错状态的目标通道;
当未存在通道使用状态为冲突状态的通道、且未存在通道使用状态为空闲状态的通道、且未存在使用状态为出错状态的通道、且存在使用状态为静默状态的通道,为所述信号分配处于静默状态的目标通道。
本实施例中,当通信协议类型为第一协议类型、且通道占用状态包括第一占用状态时,说明在之前已经有第一协议类型的信号占用过通道,因此按照冲突状态、空闲状态、出错状态和静默状态的优先级顺序,结合通道的通道使用状态,为信号分配目标通道,能够提高通道分配的准确性也提高通道的有效使用率。
在一个实施例中,通信状态还包括通道使用状态。根据通道占用状态,从通信协议类型对应的优先级规则中确定通信协议类型所对应的目标优先级规则,包括:
当通信协议为第二协议类型、且通道占用状态包括第二占用状态时,从第二协议类型对应的优先级规则中确定第四优先级规则;第四优先级规则包括通道使用状态从高到低为空闲状态、出错状态和静默状态的优先级顺序。
根据目标优先级规则,为信号分配目标通道,包括:根据通道使用状态从高到低为空闲状态、出错状态和静默状态的优先级顺序,以及通道的通道使用状态,为信号分配目标通道。
具体地,当通信协议为第二协议类型且通道占用状态包括第二占用状态时,云诊断设备从第二协议类型对应的优先级规则中确定用于相同协议类型之间的第四优先级规则。云诊断设备按照通信使用状态从高到低为空闲状态、出错状态和静默状态的优先级顺序,以及通道的通道使用状态进行匹配,当匹配成功时,为信号分配通道使用状态匹配的目标通道。
本实施例中,当存在空闲状态的通道时,为所述信号分配处于空闲状态的目标通道;
当未存在通道使用状态为空闲状态的通道、且存在通道使用状态为出错状态的通道时,为所述信号分配处于出错状态的目标通道;
当未存在通道使用状态为空闲状态的通道、且未存在使用状态为出错状态的通道、且存在使用状态为静默状态的通道,为所述信号分配处于静默状态的目标通道。
本实施例中,当通信协议类型为第二协议类型、且通道占用状态包括第二占用状态时,说明在之前已经有第二协议类型的信号占用过通道,且由于第二协议类型不存在共用引脚的情况,因此不需要考虑冲突状态的优先级规则,因此按照通信使用状态从高到低为空闲状态、出错状态和静默状态的优先级顺序进行通道分配,能够提高通道分配的准确性。
在一个实施例中,以第一协议类型为CAN协议类型、第二协议类型为K线协议类型、第一协议类型的信号为CAN信号、第二协议类型的信号为K线信号、云诊断设备最多支持2路CAN通信协议或2路K线通信协议、且CAN通信协议和K线通信协议不同时通信为例进行说明。
在OBD接口,共有5组CAN信号、13组K线信号可能发生通信,对于这种有可能出现的多路输入的情况,需要制定一个分配策略。将能够成功建立的两路通信称为A、B通道,所有输入信号需要根据一定的策略来“抢占”A、B这两个通道。将可能发生的情况分为四种类型:1、只有CAN信号通信,5组CAN信号抢占A、B通道;2、只有K线信号,13路K线信号抢占A、B通道;3、CAN信号曾经建立通信通道,当前并没有通信,此时有K线信号通过自适应检测,需要分配A、B通道;4、K线信号曾经建立通信通道,或正在通信,此时有CAN信号通过自适应检测,需要抢占A、B通道。根据以上四种情况,在每种情况下,以CAN协议类型优先原则为前提,设计了相应策略来完成A、B两通道的分配和抢占。
1、只有CAN信号通信(即信号为第一协议类型且通道所处的占用状态为第一占用状态)
在只有CAN信号通信时,有可能会出现最多5路CAN信号先后通过CRC校验,将按照“冲突、空闲、出错、静默”的优先级进行通道分配或抢占。下面将对这四种优先级进行描述:
①冲突:采用CAN协议类型进行通信的5组CAN信号中,有两组3脚和8脚、3脚和11脚出现了共用3脚的情况,也就是说,这两组CAN信号一定不会同时出现,当有一组通过CRC校验,首先要查找是否有另一组曾经确立过通道,若有,则优先抢占该通道。举个例子,假设诊断过程中曾经使用过3脚8脚的CAN信号,已经分配到了A通道,那么在不复位系统的情况下更换车型或者诊断设备,变成使用3脚11脚的CAN信号,也成功通过了CRC校验,这个时候虽然有B通道处于没有分配的空闲状态,但3脚11脚这一组CAN信号是不能够分配到B通道的,应当抢占之前3脚8脚的A通道,就是因为它们两组是互斥的。
②空闲:若有某个通道从来没有分配给任何一组CAN信号,则它处于空闲状态,若有CAN通过CRC校验,且不存在冲突情况,则将空闲的通道分配给这组CAN信号。
③出错:当两通道已经分别分配给了两组CAN信号,但其中一个通道正在出错(原因有可能是曾经是CAN信号,但现在不是了,有可能是噪声或其他波形),那么这时若有第三组CAN信号通过CRC校验,且不存在冲突情况,当前也没有空闲的通道,则抢占当前正在出错的那一个通道。
④静默:若通道已分配,但现在并没有进行CAN信号通信,也没有错误出现,只是维持着默认电平(有可能是通信间歇,也有可能是对方设备掉线),此刻称为静默,若有第三组CAN信号通过CRC校验,且不存在冲突情况,当前也没有空闲的通道,也没有任何一个通道出错,则抢占当前处于静默的通道。
下面将针对有可能出现的各种情况,指定通道分配和抢占策略。
①只有1路CAN信号通过CRC校验,不论是哪一对管脚上的CAN信号,都将A通道分配给它。
②若同时2路CAN信号通过CRC校验,将A、B通道分配给这两路CAN信号。
③若先确立了一路CAN信号占据了A通道,此时第二组CAN信号通过了CRC校验,按照“冲突、空闲、出错、静默”的优先级,若有冲突,则抢占A通道,若无冲突,则分配B通道。
④若A、B通道均已分配,此时第三组CAN信号通过了CRC校验,按照“冲突、空闲、出错、静默”的优先级进行抢占,若不处于“冲突、空闲、出错、静默”中的任何状态,即A、B通道都正在正常通信,则不允许抢占,忽略新来的第三组CAN信号。
2、只有K线信号通信(即信号为第二协议类型且通道所处的通道占用状态为第二占用状态)
在只有K线信号通信时,有可能会出现最多13路K线信号先后通过控制器辅助判断,将按照“空闲、出错、静默”的优先级进行通道分配或抢占,K线通信协议是单线通信,并不存在共用引脚的冲突情况,其余的与CAN通信协议类似。
3、先CAN信号后K线信号(即信号为第二协议类型且通道所处的通道占用状态为第一占用状态)
由于CAN信号和K线信号不能同时通信,因此,在CAN信号占用了通道之后,还能有K线信号通过辅助判断的只有一种情况,那就是当前CAN信号已经处于静默状态,没有在正常通信。所以此时将CAN信号占用的通道全部释放(即通道清零),重新由K线信号来分配和抢占。
4、先K线信号后CAN信号(即信号为第一协议类型且通道所处的通道占用状态为第二占用状态)
由于CAN信号和K线信号不能同时通信,且CAN信号的优先级比K线信号高,所以在有一组CAN信号通过CRC校验的时候,是有可能存在正在通信的K线信号的。但是不论此时K线信号处于怎样的通信状态,是静默还是出错,甚至正在进行有效通信,都会全部释放通道,将通道重新分配给CAN信号,且在这一路CAN信号处于静默之前,K线信号都无法抢占通道。
本实施例中,基于CAN通信协议优先级高于K线通信协议、以及空闲、出错、静默的优先级规则进行通道分配,能够提高通道分配的准确性以及通道的使用率。
在一个实施例中,根据电平值确定引脚所采用的通信协议类型,包括:根据电平值,结合高电平和低电平之间的差值、信号的波特率、相邻跳变沿之间的电平宽度、信号的循环冗余校验之中至少一种,确定引脚所采用的通信协议类型为第一协议类型。可以理解的是,高电平和低电平之间的差值、信号的波特率、相邻跳变沿之间的电平宽度、信号的循环冗余校验的验证顺序不限。本实施例中,通过多个条件的限制,提高第一协议类型验证的准确性。
在一个实施例中,根据电平值确定引脚所采用的通信协议类型,包括:
步骤(a1),当电平值小于或等于第一预设电平值时,确定信号的高电平和低电平之间的差值。
具体地,当电平值小于或等于第一预设电平值时,说明该信号可初步认定为是第一协议类型的信号,并进行接下来的判断。
步骤(a2),当差值大于或等于第一预设差值时,确定信号的波特率。
其中,第一预设差值是指预设的用于表示信号高电平和低电平之间的差值。
具体地,当差值大于或等于第一预设差值时,说明该信号可能为第一协议类型的信号,因此确定信号的波特率。确定信号的波特率的方式具体可以是通过波特率自适应的方式实现。
本实施例中,确定信号的波特率,包括:获取相邻跳变沿之间的第一电平宽度;获取后向的相邻跳变沿之间的第二电平宽度;第一电平宽度和第二电平宽度不同; 将第一电平宽度和第二电平宽度进行迭代作差,获得目标电平宽度集合;根据目标电平宽度集合确定设备之间通信的目标波特率; 基于目标波特率进行通信。其中,CAN波特率自适应原理:CAN通讯协议有一个特点:“满5插1”,即CAN总线上出现连续5个相同电平时就会插入1个相反电平,产生用于同步的跳变沿。由于总线空闲的默认电平为高,根据“满5插1”的特点易得,低电平的宽度只可能是1bit、2bit、3bit、4bit、5bit这5种情况,最低效的方法是接收到5种不同宽度的低电平,最小的那个必然是对应1bit,就可以求出波特率。而作差可以更充分地利用得到的低电平宽度,例如检测到“1、3”时就可以通过作差得到“2”,迭代作差可以再进一步,例如检测到“1、5”时,迭代作差可以直接得到“1、2、3、4、5”,显然,最多得到3个不同的宽度值就必然能够通过迭代作差得到“1、2、3、4、5”。
通过采用本实施例中的方法,可以高效地计算出当前信号的波特率,通过确定信号的波特率既可以从波特率角度对信号进行第二级筛选,又可以为下一级的循环冗余校验提供必要的波特率参数。
步骤(a3),当波特率在第一协议类型对应的预设波特率集合中时,确定相邻跳变沿之间的电平宽度。
其中,预设波特率集合中的预设波特率可以是第一协议类型的常用波特率。例如100K、250K、500K和1M等。电平宽度可以是电平持续时长,也可以是计数器值等。
具体地,当该波特率在第一协议类型对应的预设波特率集合中时,说明该信号的波特率符合第一协议类型的波特率。因此可以进行下一步判断,即确定相邻跳变沿之间的电平宽度。
步骤(a4),当相邻跳变沿之间的电平宽度满足第一协议类型对应的预设电平宽度条件时,对信号进行循环冗余校验。
其中,循环冗余校验(Cyclic Redundancy Check, CRC)是根据信号产生简短固定位数校验码的一种信道编码技术,主要用来检测或校验数据传输或者保存后可能出现的错误。在第一协议类型中规定,每一帧信号带有校验场,使用的是CRC校验码。CRC校验码是一种能力相当强的纠错、检错码,在发送方生成,在接收方校验,双方共用一套编码多项式,16位CRC校验码可以使出错但没发现的概率降低至1/65536,是相当可靠的。
具体地,不同的协议不同的协议类型有自身对应的帧结构。以第一协议类型为CAN协议类型为例,CAN协议类型的帧结构有一个特点:“满5插1”,即CAN总线上出现连续5个相同电平时就会插入1个相反电平,产生用于同步的跳变沿。根据“满5插1”的特点易得,相邻跳变沿之间的电平宽度最长为5bit。那么CAN协议类型对应的预设电平宽度条件可以是相邻跳变沿之间的电平宽度最长为5bit,或者是相邻跳变沿之间的电平宽度为5bit并且5bit后电平发生跳变。那么当相邻跳变沿之间的电平宽度满足第一协议类型对应的预设电平宽度条件时,信号的形状等已基本满足第一协议类型的信号特征,最后对信号进行循环冗余校验。
步骤(a5),当对信号进行循环冗余校验通过后,确定引脚所采用的通信协议类型为第一协议类型。
本实施例中,当电平值小于或等于第一预设电平值时,并且信号的高电平和低电平之间的差值大于或等于第一预设差值时,说明信号的电平已初步符合第一协议类型的条件;再确定波特率后,控制器就能解析当前信号,识别每一个bit,因而可以从数据链路层对信号进行判断,首先判断信号从形式上是否满足第一协议类型对应的预设电平宽度,再用循环冗余校验信号内容是否出错,通过上述这些校验后,可以准确地确定该信号为第一协议类型的信号,完成通信协议类型的自适应。
在一个实施例中,本实施例中以第一协议类型为CAN协议类型,具体以双线高速CAN通信协议为例进行说明。双线高速CAN通信协议的工作波特率在5K至1M,可设置常用波特率为100K、250K、500K和1M。
CAN通信是一种异步通信,有CANH和CANL两条信号线,共同构成一组差分信号线,以差分信号的形式进行通信。CAN控制器根据CANH和CANL上的电位差来判断总线电平。如图3所示,为一个实施例中CAN通信协议的信号示意图。总线电平分为显性电平和隐性电平,显性电平对应逻辑0,CANH的电平值为3.5V,CANL的电平值为1.5V,CANH和CANL的电压差为2V左右;隐性电平对应逻辑1,CANH和CANL上的电压值均为2.5V,CANH和CANL之间的电压差为0V。总线静默时一直处于隐性电平。
如图4所示,为一个实施例中CAN通信协议的帧结构示意图。其中包括标准数据帧、扩展数据帧、标准远程帧和扩展远程帧。一个标准数据帧由仲裁场、控制场、数据场、校验场和应答场组成,其中应答场需要接收方进行帧内应答,应答后才能完成数据接收,无应答则通信失败。扩展数据帧由仲裁场和控制场组成。标准远程帧由仲裁场、控制场、校验场和应答场组成。扩展远程帧由仲裁场和控制场组成。
在实际应用场景中,考虑车辆或车辆诊断仪有可能出现CAN通信协议的信号和K线通信协议的信号。当然还会存在一些额外的影响因素,例如某些设备会在管脚上做上拉处理,导致管脚一直处于高电压,或者在恶劣的工作环境下,管脚上会出现强烈的电平抖动等等。
要从这些复杂的“信号”中筛选出符合要求的CAN信号,首先要从CAN通信协议的物理层开始。
①CAN信号静默时,总线上电压为2.5V,在通信时,CANH上电压在2.5V-3.5V跳变,CANL上电压在2.5V-1.5V跳变,且有压差时为逻辑0,无压差时为逻辑1;而K线无论在哪种电压(12V或24V)下工作,总线电平至少在8V以上。因此首先认为,电压值小于6V的信号是有可能成为CAN信号的。
②进一步地,根据CANH和CANL这一差分特性,将ADC转换的CANH和CANL的8bit数字信号作差,生成数字逻辑电平。考虑到前端模拟电路对信号质量的影响以及ADC器件的误差导致的数字信号逻辑值的偏离,取0.8V作为CANH和CANL间有压差和无压差的分界线。当CANH和CANL差值大于或等于0.8V时,输出逻辑值0,当CANH和CANL差值小于0.8V时,输出逻辑值1,由此得到“疑似”CAN信号的逻辑电平。
③得到物理层的逻辑电平后,仍无法确认该信号是否为真实的CAN信号,因为有可能噪声恰好满足电压差的条件,这时候就需要将上面产生的逻辑电平输入CAN控制器进行校验。首先要确定该信号的波特率是否在常用波特率范围内,这就需要用到波特率自适应模块。
④CAN通信协议中规定,每一帧CAN信号带有校验场,使用的就是CRC校验码。循环冗余校验码(CRC),是一种能力相当强的纠错、检错码,在发送方生成,在接收方校验,双方共用一套编码多项式,16位CRC校验码可以使出错但没发现的概率降低至1/65536,是相当可靠的。
⑤在从波特率自适应模块处获得了波特率后,控制器就能解析当前信号,识别每一个bit,因而可以从数据链路层对信号进行判断。首先判断信号从形式上是否满足“满5插1”,再用CRC校验信号内容是否出错,通过这两步校验后的信号,可以认为它就是真正的CAN信号。
根据上述分析,提出了如图5所示的确定通信协议的流程示意图。
如图5所示,为一个实施例中确定引脚所采用的通信协议类型的流程示意图。图5中以第一协议类型为CAN协议类型,第一预设电平值为6V,高电平和低电平之间的差值(即CANH-CANL)大于或等于预设差值0.8V,预设波特率集合中包括常用波特率,预设电平宽度条件为满5插1为例进行说明。
判断信号的电平值是否>6V。当信号的电平值小于或等于6V时,则确定高电平值和低电平值之间的差值;当信号的电平值大于6V时,说明不是CAN协议类型,进入K线协议类型的判断流程。
判断CANH-CANL是否≥0.8V。当CANH-CANL≥0.8V时,确定信号的波特率;当CANH-CANL<0.8V时,说明不是CAN协议类型。
判断信号的波特率是否为常用波特率。当信号的波特率为常用波特率时,确定相邻跳变沿之间的电平宽度;当信号的波特率不为常用波特率时,说明不是CAN协议类型。
判断相邻跳变沿之间的电平宽度是否满足满5插1的条件。当相邻跳变沿之间的电平宽度满足满5插1的条件时,对信号进行CRC校验;当相邻跳变沿之间的电平宽度不满足满5插1的条件时,说明不是CAN协议类型。
判断对信号的CRC校验是否通过。当对信号的CRC校验通过时,确定该信号的协议类型为CAN协议类型;当对信号的CRC校验不通过时,确定不是CAN协议类型。
本实施例中,通过电平判断、波特率自适应、CRC校验这三个条件可以确保一帧符合要求的真正的CAN信号一定可以被筛选出来,即完成CAN信号的自适应。
在用CANH和CANL差值产生逻辑电平时,由于0.8V比较“宽松”,导致OBD3脚上有CANH电平时,不论OBD8脚和11脚CANL电平是2.5V-1.5V变化的还是隐性电平2.5V,作差后都会大于0.8V,也就是说,不论是3脚和11脚、3脚和8脚哪一对真正地在通信,内部都会产生一模一样的CAN逻辑电平,这显然是不合理的,因为这两组CAN不可能同时出现。
为了解决上述问题,引入了波动性检测模块,判断当前哪一组的波动性大,哪一组就是真正在通信的管脚。波动性检测的原理如下:在检测到上升沿时,判断在这个上升沿之前和之后8脚电平的差值,11脚同理,差值较大的就是波动性大的,实时更新、监测最近5次的差值,采用五局三胜的策略,波动性大的一组是真正在通信的管脚。
在一个实施例中,根据低电平宽度电平值确定低电平宽度引脚所采用的通信协议类型,包括:当信号的电平值大于第二预设电平值时,确定信号的相邻跳变沿之间的第一高电平宽度以及信号的相邻跳变沿之间的第一低电平宽度;当第一高电平宽度和第一低电平宽度均满足对应的预设宽度条件时,确定引脚所采用的通信协议类型为第二协议类型。
其中,第二预设电平值可以与第一预设电平值相同,也可以不同。相邻跳变沿之间的第一高电平宽度是指相邻跳变沿之间的高电平的宽度。相邻跳变沿之间的第一低电平宽度是指相邻跳变沿之间的低电平的宽度。
第一高电平宽度对应的预设宽度条件和低电平宽度对应的预设电平宽度可以是一样的,也可以是不同的。例如,第一高电平宽度对应的预设宽度条件为大于或等于1us(微秒),低电平宽度对应的预设宽度条件也可以是大于或等于1us(微秒)。
具体地,以第二协议类型为K线协议类型为例进行说明。当信号的电平值大于或等于第二预设电平值时,确定信号的相邻跳变沿之间的第一高电平宽度以及该信号的下一个相邻跳变沿之间的第一低电平宽度。当第一高电平宽度满足对应的预设宽度条件且低电平宽度满足对应的预设宽度条件时,确定引脚所采用的通信协议类型为第二协议类型。
本实施例中,一些通信协议类型的信号的工作电压较高,并且由于在某些情况下如管脚悬空时,电平值可能会高于第二预设电平值,因此为了过滤掉这种情况,则需第一高电平宽度满足对应的预设宽度条件,又为了排除噪声,因此需要第一低电平宽度也满足对应的预设宽度条件,因此可认为该信号为第二协议类型的信号。
在一个实施例中,当第一高电平宽度和第一低电平宽度均满足对应的预设宽度条件时,确定引脚所采用的通信协议类型为第二协议类型,包括:
当第一高电平宽度和第一低电平宽度均满足对应的预设宽度条件时,确定后续的相邻跳变沿之间的第二低电平宽度;
当第二低电平宽度大于预设低电平宽度时,采用第一初始化判定方式确定引脚所采用的通信协议类型为第二协议类型;
当第二低电平宽度小于或等于预设低电平宽度时,采用第二初始化判定方式确定引脚所采用的通信协议类型为第二协议类型;第二初始化判定方式与第一初始化判定方式不同。
其中,第二协议类型的主要特性是初始化过程。预设低电平宽度用于区分信号采用的初始化类型。如信号采用的初始化类型包括快速初始化和以5波特率初始化。第一初始化判定方式用于信号以第一波特率发送的情况。第二初始化判定方式用于信号以第二波特率发送的情况。
具体地,当第一高电平宽度和第一低电平宽度均满足对应的预设宽度条件时,云诊断设备确定后续的相邻跳变沿之间的第二低电平宽度。当第二低电平宽度大于预设低电平宽度时,云诊断设备采用第一初始化判定方式确定引脚所采用的通信协议类型为第二协议类型。当第二低电平宽度小于或等于预设低电平宽度时,云诊断设备采用第二初始化判定方式确定引脚所采用的通信协议类型为第二协议类型。
本实施例中,由于第二协议类型的一大突出特点是初始化过程,因此,需要根据基于第二低电平宽度进行初始化的判定,从而可以采用不同的初始化判定方式确定引脚所采用的通信协议类型,提高协议类型判定的准确性。
在一个实施例中,当第二低电平宽度大于预设低电平宽度时,采用第一初始化判定方式确定引脚所采用的通信协议类型为第二协议类型,包括:
当第二低电平宽度大于预设低电平宽度时,以第一预设波特率检测信号中的第一预设数量字节的信号特征;
当第一预设数量字节的信号特征满足第二协议类型的信号特征时,确定引脚所采用的通信协议类型为第二协议类型。
其中,第一预设数量与第一初始化类型对应的波特率成正相关。波特率越大,则第一预设数量越大;波特率越小,第一预设数量越小。第二协议类型的信号特征可以是指第二协议类型的帧结构特征。以第二协议类型为K线协议类型为例,那么第二协议类型的参考信号特征可以是相邻跳变沿之间的电平宽度最大为9比特,也可以是在相邻跳变沿之间检测到9比特的信号后电平反转等。
具体地,当第二低电平宽度大于预设低电平宽度时,说明该信号的初始化过程是快速初始化过程,因此以第一预设波特率检测信号中的第一预设数量字节的信号特征。当第一预设数量字节的信号特征满足第二协议类型的参考信号特征时,确定引脚所采用的通信协议类型为第二协议类型。例如,以第一预设数量为1、第一预设波特率为5波特率进行说明。当第二低电平宽度大于预设低电平宽度时,进入5波特率初始化过程,默认后面的K线字节是以5波特率发送的。因此,以5波特率检测1个字节,并且该1个字节具有完成的起始位、8bit数据和停止位,则确定该引脚采用的协议类型为第二协议类型。
本实施例中,当第二低电平宽度大于预设低电平宽度时,以第一预设波特率检测信号中的第一预设数量字节的信号特征,当这些字节的信号满足第二协议类型的信号特征时,确定引脚所采用的通信协议类型为第二协议类型,能够从信号特征方面考虑对信号的判断,从而提高信号类型判断的准确性。
在一个实施例中,当第二低电平宽度小于或等于预设低电平宽度时,采用第二初始化判定方式确定引脚所采用的通信协议类型为第二协议类型,包括:
当第二低电平宽度小于或等于预设低电平宽度时,确定后续的相邻跳变沿之间的第二高电平宽度以及后续的相邻跳变沿之间的第三低电平宽度;
当第二高电平宽度和第三低电平宽度均满足对应的预设宽度条件时,以第二预设波特率检测信号中第二预设数量字节的信号特征;第二预设数量大于第一预设数量;第二预设波特率大于第一预设波特率;
当第二预设数量字节的信号特征满足第二协议类型的信号特征时,确定引脚所采用的通信协议类型为第二协议类型。
其中,第二高电平宽度和第三低电平宽度均是在第二低电平宽度小于或等于预设低电平宽度后获得的。第二预设数量与第二初始化类型对应的波特率成正相关。波特率越大,则第二预设数量越大;波特率越小,第二预设数量越小。
具体地,当第二低电平宽度小于或等于预设低电平宽度时,云诊断设备确定后续的相邻跳变沿之间的第二高电平宽度以及后续的相邻跳变沿之间的第三低电平宽度。当第二高电平宽度和第三低电平宽度均满足对应的预设宽度条件时,以第二预设波特率检测信号中第二预设数量字节的信号特征;当第二预设数量字节的信号特征满足第二协议类型的信号特征时,确定引脚所采用的通信协议类型为第二协议类型。
以第二协议类型为K线协议类型、预设宽度条件为25ms、第二预设数量为4为例进行说明。若进入快速初始化过程,则默认后面的K线字节是以10.4K的波特率发送的,在快速初始化过程中,检测完成25ms低电平加25ms高电平(允许一定的偏差区间)后,连续成功检测4个K线字节(包含完整的起始位、8bit数据和停止位),才算通过了控制器辅助判断,这时候可以认为当前是一帧真正的K线信号。
本实施例中,当第二低电平宽度小于或等于预设电平宽度时,并且确定第二高电平宽度和第三低电平宽度满足预设宽度条件,且满足第二协议类型的信号特征,能够基于第二协议类型的信号的特点进行判断,提高协议类型判定的准确性。
在一个实施例中,K线是一根双向数据传输线,高电平对应逻辑1,低电平对应逻辑0,工作电压12V或24V(因车而议),常用波特率为10.4KBaud。
对于12V(8V-18V)系统,逻辑1电平高于70%工作电压,即5.6-18V,逻辑0电平小于30%工作电压,即0-5.4V;
对于24V(16V-36V)系统,逻辑1电平高于70%工作电压,即11.2-36V,逻辑0电平小于30%工作电压,即0-10.8V。K线初始化过程是其主要特性。K线所采用的通信协议是K线通信协议。
如图6所示,一个实施例中K线通信协议的快速初始化过程中的帧结构示意图。设备发送25ms低电平和25ms高电平,发送5字节系统进入数据,ECU(Electronic ControlUnit,电子控制单元)响应7字节,完成初始化交互。
如图7所示,为一个实施例中K线通信协议的5波特率初始化过程中的帧结构示意图。设备发送5波特的地址码(1个字节),ECU响应回发3个字节,分别是0X55、KW1和KW2,设备对KW2取反后发回给ECU,ECU对地址码取反后发回给设备,完成初始化交互。
K线工作电压较高,在12V或24V下工作,总线电平至少在8V以上,本实施例中用6V作为检测标准,当总线电压大于6V时才有可能是K线通信(K线静默时是高电平)。然而,在某些情况下,管脚悬空时电压有可能超过6V,也有可能在噪声的影响下高于6V,但持续时间都是极短的。所以为了过滤掉这种情况,只要检测到电压高于6V,就开始高电平长度检测,高电平长度超过1微秒,认为有可能是K线信号。又因为K线通信开始的标志是低电平,同样为了排除噪声,在从高电平跳变进入低电平后,也要开始计时,低电平也需要达到1微秒。所以总结一下电平辅助判断的标准是:电压超过6V持续至少1微秒后,跳转进入低电平并持续1微秒。这样才认为这个信号可能是K线信号,将其接入控制器进一步判断。
电平辅助判断是从物理层进行判断,控制器辅助判断是从数据链路层帧结构角度进行辅助判断。K线的一大突出特点是初始化过程,分为快速初始化和5波特率初始化。其中,快速初始化的结构是先25ms低电平后25ms高电平,紧接着5个字节,每个字节都是K线格式。5波特率初始化是以5波特率发送一个字节(也是K线格式),每个Bit(比特)持续200ms。控制器在检测到下降沿后开始对低电平计时,若在100ms内跳变至高电平,则进入快速初始化过程,若超过100ms仍保持低电平,则进入5波特率初始化过程。基于上述分析,提出了如图8的判断流程示意图。
在一个实施例中,如图8所示,为一个实施例中确定第二协议类型的流程示意图。以第二协议类型第二预设电平值为6V、第一低电平宽度L1对应的预设宽度条件为大于1us、第一高电平宽度H1对应的预设宽度条件为大于1us、第二低电平宽度L2对应的预设低电平宽度为100ms、第一初始化判定方式是指5波特率初始化类型对应的判定方式、第二初始化判定方式是指快速初始化对应的判定方式、第一预设波特率为5波特率、第一预设数量字节为1字节、第二高电平宽度H2所对应的预设宽度条件为大于25ms、第三低电平宽度L3所对应的预设宽度条件为大于25ms、第二预设数量字节为4字节。
判断信号的电平值是否>6V。当信号的电平值大于第二预设电平值时,确定相邻跳变沿之间的第一高电平宽度。当信号的电平值小于或等于第二预设电平值时,进入第一协议类型的判断。
判断H1是否>1us。当H1≤1us时,返回执行判断信号的电平值是否>6V的步骤。当H1>1us时,获取相邻跳变沿之间的第一低电平宽度L1。
判断L1是否>1us。当L1≤1us时,返回执行判断H1是否>1us的步骤。
当L1>1us时,判断L是否≥25ms。当L≥25ms时,获取第二低电平宽度L2。
判断L2是否>100ms。当L2>100ms时,进入5波特率初始化。当L2≤100ms时,进入快速初始化。
在进入5波特率初始化之后,以5波特率检测1个K线字节(Byte),判断该1个K线字节是否满足K线协议类型所对应的信号特征,即具有完整的起始位、8bit数据和停止位。当满足时,则确定信号为K线协议类型的信号。
在进入快速初始化之后,判断H2是否≥25ms且L3是否≥25ms。当满足H2≥25ms且L3≥25ms时,连续成功检测4个K线字节(Bytes)。
判断4个K线字节是否满足K线协议类型所对应的信号特征,即具有完整的起始位、8bit数据和停止位。当满足时,确定信号为K线协议类型的信号。
此外,若从一开始的1us高电平跳变至低电平后,一直持续低电平,超过2s,则认为该引脚因某种原因掉电,而不是进行初始化。因为K线最慢的5波特率初始化共10bit,按照极限情况起始位是0、8bit数据全是0、停止位是1来计算,最多有9bit是低电平,换算成时间是1.8s,若超过2s还没有变成高电平,只能认为K线通信建立失败。
在特殊情况时,在电平判断通过时,会检查当前是否有CAN信号正在通信,若有CAN信号正在通信,则不会将K线通信协议的逻辑电平输入,不允许进行下一步判断。这是基于“CAN协议类型的优先级更高”、“CAN信号和K线信号不能同时通信”这两个前提条件而建立的策略。
本实施例中,基于从物理层所进行的电平辅助判断以及从数据链路层帧结构的控制器辅助判断,结合K线通信协议的突出特点即初始化过程,能够提高K线协议类型的判断正确性。
应该理解的是,虽然上述图2、5和8的流程图中各个步骤按照箭头的指示依次显示,各个步骤按照标号指示依次显示,但是这些步骤并不是必然按照箭头或者数字指示的顺序依次执行。除非本文中有明确的说明,这些步骤的执行并没有严格的顺序限制,这些步骤可以以其它的顺序执行。而且,图2、5和8中的至少一部分步骤可以包括多个步骤或者多个阶段,这些步骤或者阶段并不必然是在同一时刻执行完成,而是可以在不同的时刻执行,这些步骤或者阶段的执行顺序也不必然是依次进行,而是可以与其其它步骤或者其它步骤中的步骤或者阶段的至少一部分轮流或者交替地执行。
在一个实施例中,如图9所示,为一个实施例中通道分配装置的结构框图,其中包括信号接收模块、电平值获取模块、通信协议类型确定模块、目标通道分配模块和通信模块,其中:
信号接收模块,用于接收车辆或车辆诊断仪的引脚所发出的信号;
电平值获取模块,用于获取所述信号的电平值;
通信协议类型确定模块,用于根据所述电平值确定所述引脚所采用的通信协议类型;
目标通道分配模块,用于根据所述通信协议类型所对应的优先级规则和通道的通信状态,为所述信号分配目标通道;
通信模块,用于通过所述目标通道与所述车辆或所述车辆诊断仪进行通信。
本实施例中,接收车辆或车辆诊断仪的引脚所发出的信号,获取信号的电平值,根据电平值确定通信协议类型,则能够得到不同的车辆和车辆诊断仪所采用的通信协议类型;根据通信协议类型对应的优先级规则和通道的通信状态,为信号分配目标通道,通过目标通道与车辆或车辆诊断仪进行通信,则在通道有限的情况下,基于优先级规则优先分配目标通道,能够在有有限的通道的情况下合理分配通道,提高通道分配的准确性。
在一个实施例中,目标通道分配模块用于获取通道的通信状态,通信状态包括通道占用状态;根据通道占用状态,从通信协议类型对应的优先级规则中确定通信协议类型所对应的目标优先级规则;根据目标优先级规则,为信号分配目标通道。
本实施例中,由于第一协议类型和第二协议类型具有不同的特点,因此基于通道处于不同的占用状态时对通道进行分配,能够提高通道分配的准确性以及通道的利用率。
在一个实施例中,目标通道分配模块还用于当通信协议类型为第一协议类型且通道占用状态为第二占用状态时,从第一协议类型对应的优先级规则中,确定第一协议类型所对应的第一优先级规则;第二占用状态是已分配给第二协议类型的信号的状态;根据第一优先级规则,为信号分配处于第二占用状态的目标通道。
本实施例中,为第一协议类型设置较高的优先级,能够保证通信正常进行,并且保证通信的可靠性。
在一个实施例中,通信状态还包括通道使用状态。目标通道分配模块还用于当通信协议类型为第二协议类型、通信占用状态为第一占用状态且通道使用状态为静默状态时,从第二协议类型对应的优先级规则中确定第二协议类型所对应的第二优先级规则;根据第二优先级规则,为第二协议类型的信号分配处于第一占用状态和静默状态的目标通道。
本实施例中,在第一协议类型的通道此时没有使用通道的情况下,将通道分配给第二协议类型的信号,提高通道的利用率。
在一个实施例中,通信状态还包括通道使用状态。目标通道分配模块还用于当通信协议类型为第一协议类型、且通道占用状态包括第一占用状态时,从第一协议类型对应的优先级规则中确定第三优先级规则;第三优先级规则包括通道使用状态从高到低为冲突状态、空闲状态、出错状态和静默状态的优先级顺序;根据通道使用状态从高到低为冲突状态、空闲状态、出错状态和静默状态的优先级顺序,以及通道的通道使用状态,为信号分配目标通道。
本实施例中,当通信协议类型为第一协议类型、且通道占用状态包括第一占用状态时,说明在之前已经有第一协议类型的信号占用过通道,因此按照冲突状态、空闲状态、出错状态和静默状态的优先级顺序,结合通道的通道使用状态,为信号分配目标通道,能够提高通道分配的准确性也提高通道的有效使用率。
在一个实施例中,通信状态还包括通道使用状态。目标通道分配模块还用于当通信协议为第二协议类型、且通道占用状态包括第二占用状态时,从第二协议类型对应的优先级规则中确定第四优先级规则;第四优先级规则包括通道使用状态从高到低为空闲状态、出错状态和静默状态的优先级顺序;根据通道使用状态从高到低为空闲状态、出错状态和静默状态的优先级顺序,以及通道的通道使用状态,为信号分配目标通道。
本实施例中,当通信协议类型为第二协议类型、且通道占用状态包括第二占用状态时,说明在之前已经有第二协议类型的信号占用过通道,且由于第二协议类型不存在共用引脚的情况,因此不需要考虑冲突状态的优先级规则,因此按照通信使用状态从高到低为空闲状态、出错状态和静默状态的优先级顺序进行通道分配,能够提高通道分配的准确性。
在一个实施例中,通信协议类型确定模块用于根据电平值,结合高电平和低电平之间的差值、信号的波特率、相邻跳变沿之间的电平宽度、信号的循环冗余校验之中至少一种,确定引脚所采用的通信协议类型为第一协议类型。
本实施例中,通过多个条件的限制,提高第一协议类型验证的准确性。
在一个实施例中,通信协议确定模块用于当电平值小于或等于第一预设电平值时,确定信号的高电平和低电平之间的差值;当差值大于或等于第一预设差值时,确定信号的波特率;当波特率在第一协议类型对应的预设波特率集合中时,确定相邻跳变沿之间的电平宽度;当相邻跳变沿之间的电平宽度满足第一协议类型对应的预设电平宽度条件时,对信号进行循环冗余校验;当对信号进行循环冗余校验通过后,确定引脚所采用的通信协议类型为第一协议类型。
本实施例中,当电平值小于或等于第一预设电平值时,并且信号的高电平和低电平之间的差值大于或等于第一预设差值时,说明信号的电平已初步符合第一协议类型的条件;再确定波特率后,控制器就能解析当前信号,识别每一个bit,因而可以从数据链路层对信号进行判断,首先判断信号从形式上是否满足第一协议类型对应的预设电平宽度,再用循环冗余校验信号内容是否出错,通过上述这些校验后,可以准确地确定该信号为第一协议类型的信号,完成通信协议类型的自适应。
在一个实施例中,通信协议类型确定模块用于当信号的电平值大于第二预设电平值时,确定信号的相邻跳变沿之间的第一高电平宽度以及信号的相邻跳变沿之间的第一低电平宽度;当第一高电平宽度和第一低电平宽度均满足对应的预设宽度条件时,确定引脚所采用的通信协议类型为第二协议类型。
本实施例中,一些通信协议类型的信号的工作电压较高,并且由于在某些情况下如管脚悬空时,电平值可能会高于第二预设电平值,因此为了过滤掉这种情况,则需第一高电平宽度满足对应的预设宽度条件,又为了排除噪声,因此需要第一低电平宽度也满足对应的预设宽度条件,因此可认为该信号为第二协议类型的信号。
在一个实施例中,通信协议类型确定模块还用于当第一高电平宽度和第一低电平宽度均满足对应的预设宽度条件时,确定后续的相邻跳变沿之间的第二低电平宽度;
当第二低电平宽度大于预设低电平宽度时,采用第一初始化判定方式确定引脚所采用的通信协议类型为第二协议类型;
当第二低电平宽度小于或等于预设低电平宽度时,采用第二初始化判定方式确定引脚所采用的通信协议类型为第二协议类型;第二初始化判定方式与第一初始化判定方式不同。
本实施例中,由于第二协议类型的一大突出特点是初始化过程,因此,需要根据基于第二低电平宽度进行初始化的判定,从而可以采用不同的初始化判定方式确定引脚所采用的通信协议类型,提高协议类型判定的准确性。
在一个实施例中,通信协议类型确定模块还用于当第二低电平宽度大于预设低电平宽度时,以第一预设波特率检测信号中的第一预设数量字节的信号特征;
当第一预设数量字节的信号特征满足第二协议类型的信号特征时,确定引脚所采用的通信协议类型为第二协议类型。
本实施例中,当第二低电平宽度大于预设低电平宽度时,以第一预设波特率检测信号中的第一预设数量字节的信号特征,当这些字节的信号满足第二协议类型的信号特征时,确定引脚所采用的通信协议类型为第二协议类型,能够从信号特征方面考虑对信号的判断,从而提高信号类型判断的准确性。
在一个实施例中,通信协议类型确定模块还用于当第二低电平宽度小于或等于预设低电平宽度时,确定后续的相邻跳变沿之间的第二高电平宽度以及后续的相邻跳变沿之间的第三低电平宽度;
当第二高电平宽度和第三低电平宽度均满足对应的预设宽度条件时,以第二预设波特率检测信号中第二预设数量字节的信号特征;第二预设数量大于第一预设数量;第二预设波特率大于第一预设波特率;
当第二预设数量字节的信号特征满足第二协议类型的信号特征时,确定引脚所采用的通信协议类型为第二协议类型。
本实施例中,当第二低电平宽度小于或等于预设电平宽度时,并且确定第二高电平宽度和第三低电平宽度满足预设宽度条件,且满足第二协议类型的信号特征,能够基于第二协议类型的信号的特点进行判断,提高协议类型判定的准确性。
关于通道分配装置的具体限定可以参见上文中对于通道分配方法的限定,在此不再赘述。上述通道分配装置中的各个模块可全部或部分通过软件、硬件及其组合来实现。上述各模块可以硬件形式内嵌于或独立于计算机设备中的处理器中,也可以以软件形式存储于计算机设备中的存储器中,以便于处理器调用执行以上各个模块对应的操作。
在一个实施例中,提供了一种计算机设备,该计算机设备可以是终端设备,其内部结构图可以如图10所示。该计算机设备具体可以是云诊断设备。该计算机设备包括通过系统总线连接的处理器、存储器、通信接口、显示屏和输入装置。其中,该计算机设备的处理器用于提供计算和控制能力。该计算机设备的存储器包括非易失性存储介质、内存储器。该非易失性存储介质存储有操作系统和计算机程序。该内存储器为非易失性存储介质中的操作系统和计算机程序的运行提供环境。该计算机设备的通信接口用于与外部的终端进行有线或无线方式的通信,无线方式可通过WIFI、运营商网络、NFC(近场通信)或其他技术实现。该计算机程序被处理器执行时以实现一种通道分配方法。该计算机设备的显示屏可以是液晶显示屏或者电子墨水显示屏,该计算机设备的输入装置可以是显示屏上覆盖的触摸层,也可以是计算机设备外壳上设置的按键、轨迹球或触控板,还可以是外接的键盘、触控板或鼠标等。
本领域技术人员可以理解,图10中示出的结构,仅仅是与本申请方案相关的部分结构的框图,并不构成对本申请方案所应用于其上的计算机设备的限定,具体的计算机设备可以包括比图中所示更多或更少的部件,或者组合某些部件,或者具有不同的部件布置。
在一个实施例中,提供了一种计算机设备,包括存储器和处理器,存储器中存储有计算机程序,该处理器执行计算机程序时实现上述各方法实施例的步骤。
在一个实施例中,提供了一种计算机可读存储介质,其上存储有计算机程序,计算机程序被处理器执行时实现上述各方法实施例的步骤。
在一个实施例中,提供了一种计算机程序产品或计算机程序,该计算机程序产品或计算机程序包括计算机指令,该计算机指令存储在计算机可读存储介质中。计算机设备的处理器从计算机可读存储介质读取该计算机指令,处理器执行该计算机指令,使得计算机设备执行上述各方法实施例中的步骤。
本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程,是可以通过计算机程序来指令相关的硬件来完成,该计算机程序可存储于一非易失性计算机可读存储介质中,该计算机程序在执行时,可包括如上述各方法的实施例中流程。其中,本申请所提供的各实施例中所使用地对存储器、存储、数据库或其它介质的任何引用,均可包括非易失性和易失性存储器中的至少一种。非易失性存储器可包括只读存储器(Read-OnlyMemory,ROM)、磁带、软盘、闪存或光存储器等。易失性存储器可包括随机存取存储器(Random Access Memory,RAM)或外部高速缓冲存储器。作为说明而非局限,RAM可以是多种形式,比如静态随机存取存储器(Static Random Access Memory,SRAM)或动态随机存取存储器(Dynamic Random Access Memory,DRAM)等。
以上所述仅为本发明的优选实施例,并非因此限制本发明的专利范围,凡是利用本发明说明书及附图内容所作的等效结构或等效流程变换,或直接或间接运用在其他相关的技术领域,均同理包括在本发明的专利保护范围内。

Claims (14)

1.一种通道分配方法,其特征在于,所述方法包括:
接收车辆或车辆诊断仪的引脚所发出的信号;
获取所述信号的电平值;
根据所述电平值确定所述引脚所采用的通信协议类型;
根据所述通信协议类型所对应的优先级规则和通道的通信状态,为所述信号分配目标通道;
通过所述目标通道与所述车辆或所述车辆诊断仪进行通信。
2.根据权利要求1所述的方法,其特征在于,所述根据所述通信协议类型所对应的优先级规则和通道的通信状态,为所述信号分配目标通道,包括:
获取通道的通信状态;所述通信状态包括通道占用状态;
根据所述通道占用状态,从所述通信协议类型对应的优先级规则中确定所述通信协议类型所对应的目标优先级规则;
根据所述目标优先级规则,为所述信号分配目标通道。
3.根据权利要求2所述的方法,其特征在于,所述根据所述通道占用状态,从所述通信协议类型对应的优先级规则中确定所述通信协议类型所对应的目标优先级规则,包括:
当所述通信协议类型为第一协议类型且所述通道占用状态为第二占用状态时,从所述第一协议类型对应的优先级规则中,确定所述第一协议类型所对应的第一优先级规则;所述第二占用状态是已分配给所述第二协议类型的信号的状态;
所述根据所述目标优先级规则,为所述信号分配目标通道,包括:
根据所述第一优先级规则,为所述信号分配处于第二占用状态的目标通道。
4.根据权利要求2所述的方法,其特征在于,所述通信状态还包括通道使用状态;
所述根据所述通道占用状态,从所述通信协议类型对应的优先级规则中确定所述通信协议类型所对应的目标优先级规则,包括:
当所述通信协议类型为第二协议类型、所述通信占用状态为第一占用状态且通道使用状态为静默状态时,从所述第二协议类型对应的优先级规则中确定所述第二协议类型所对应的第二优先级规则;
所述根据所述目标优先级规则,为所述信号分配目标通道,包括:
根据所述第二优先级规则,为所述第二协议类型的信号分配处于所述第一占用状态和所述静默状态的目标通道。
5.根据权利要求2所述的方法,其特征在于,所述通信状态还包括通道使用状态;
所述根据所述通道占用状态,从所述通信协议类型对应的优先级规则中确定所述通信协议类型所对应的目标优先级规则,包括:
当所述通信协议类型为第一协议类型、且所述通道占用状态包括第一占用状态时,从所述第一协议类型对应的优先级规则中确定第三优先级规则;所述第三优先级规则包括通道使用状态从高到低为冲突状态、空闲状态、出错状态和静默状态的优先级顺序;
所述根据所述目标优先级规则,为所述信号分配目标通道,包括:
根据所述通道使用状态从高到低为冲突状态、空闲状态、出错状态和静默状态的优先级顺序,以及通道的通道使用状态,为所述信号分配目标通道。
6.根据权利要求2所述的方法,其特征在于,所述通信状态还包括通道使用状态;
所述根据所述通道占用状态,从所述通信协议类型对应的优先级规则中确定所述通信协议类型所对应的目标优先级规则,包括:
当所述通信协议为第二协议类型、且所述通道占用状态包括第二占用状态时,从所述第二协议类型对应的优先级规则中确定第四优先级规则;所述第四优先级规则包括通道使用状态从高到低为空闲状态、出错状态和静默状态的优先级顺序;
所述根据所述目标优先级规则,为所述信号分配目标通道,包括:
根据通道使用状态从高到低为空闲状态、出错状态和静默状态的优先级顺序,以及通道的通道使用状态,为所述信号分配目标通道。
7.根据权利要求1所述的方法,其特征在于,所述根据所述电平值确定所述引脚所采用的通信协议类型,包括:
当所述电平值小于或等于第一预设电平值时,确定所述信号的高电平和低电平之间的差值;
当所述差值大于或等于第一预设差值时,确定所述信号的波特率;
当所述波特率在第一协议类型对应的预设波特率集合中时,确定相邻跳变沿之间的电平宽度;
当所述相邻跳变沿之间的电平宽度满足所述第一协议类型对应的预设电平宽度条件时,对所述信号进行循环冗余校验;
当对所述信号进行循环冗余校验通过后,确定所述引脚所采用的通信协议类型为第一协议类型。
8.根据权利要求1所述的方法,特征在于,所述根据所述电平值确定所述引脚所采用的通信协议类型,包括:
当所述信号的电平值大于第二预设电平值时,确定所述信号的相邻跳变沿之间的第一高电平宽度以及所述信号的相邻跳变沿之间的第一低电平宽度;
当所述第一高电平宽度和所述第一低电平宽度均满足对应的预设宽度条件时,确定所述引脚所采用的通信协议类型为第二协议类型。
9.根据权利要求8所述的方法,其特征在于,所述当所述第一高电平宽度和所述第一低电平宽度均满足对应的预设宽度条件时,确定所述引脚所采用的通信协议类型为第二协议类型,包括:
当所述第一高电平宽度和所述第一低电平宽度均满足对应的预设宽度条件时,确定后续的相邻跳变沿之间的第二低电平宽度;
当所述第二低电平宽度大于预设低电平宽度时,采用第一初始化判定方式确定所述引脚所采用的通信协议类型为第二协议类型;
当所述第二低电平宽度小于或等于所述预设低电平宽度时,采用第二初始化判定方式确定所述引脚所采用的通信协议类型为第二协议类型;所述第二初始化判定方式与所述第一初始化判定方式不同。
10.根据权利要求9所述的方法,其特征在于,所述当所述第二低电平宽度大于预设低电平宽度时,采用第一初始化判定方式确定所述引脚所采用的通信协议类型为第二协议类型,包括:
所述当所述第二低电平宽度大于预设低电平宽度时,以第一预设波特率检测所述信号中的第一预设数量字节的信号特征;
当所述第一预设数量字节的信号特征满足所述第二协议类型的信号特征时,确定所述引脚所采用的通信协议类型为第二协议类型。
11.根据权利要求9所述的方法,其特征在于,所述当所述第二低电平宽度小于或等于所述预设低电平宽度时,采用第二初始化判定方式确定所述引脚所采用的通信协议类型为第二协议类型,包括:
当所述第二低电平宽度小于或等于所述预设低电平宽度时,确定后续的相邻跳变沿之间的第二高电平宽度以及后续的相邻跳变沿之间的第三低电平宽度;
当所述第二高电平宽度和所述第三低电平宽度均满足对应的预设宽度条件时,以第二预设波特率检测所述信号中第二预设数量字节的信号特征;所述第二预设数量大于第一预设数量;所述第二预设波特率大于所述第一预设波特率;
当所述第二预设数量字节的信号特征满足所述第二协议类型的信号特征时,确定所述引脚所采用的通信协议类型为第二协议类型。
12.一种通道分配装置,其特征在于,所述装置包括:
信号接收模块,用于接收车辆或车辆诊断仪的引脚所发出的信号;
电平值获取模块,用于获取所述信号的电平值;
通信协议类型确定模块,用于根据所述电平值确定所述引脚所采用的通信协议类型;
目标通道分配模块,用于根据所述通信协议类型所对应的优先级规则和通道的通信状态,为所述信号分配目标通道;
通信模块,用于通过所述目标通道与所述车辆或所述车辆诊断仪进行通信。
13.一种计算机设备,包括存储器和处理器,所述存储器存储有计算机程序,其特征在于,所述处理器执行所述计算机程序时实现权利要求1至11中任一项所述的方法的步骤。
14.一种计算机可读存储介质,其上存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现权利要求1至11中任一项所述的方法的步骤。
CN202111402917.0A 2021-11-24 2021-11-24 通道分配方法、装置、计算机设备和计算机可读存储介质 Active CN114143273B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202111402917.0A CN114143273B (zh) 2021-11-24 2021-11-24 通道分配方法、装置、计算机设备和计算机可读存储介质

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202111402917.0A CN114143273B (zh) 2021-11-24 2021-11-24 通道分配方法、装置、计算机设备和计算机可读存储介质

Publications (2)

Publication Number Publication Date
CN114143273A true CN114143273A (zh) 2022-03-04
CN114143273B CN114143273B (zh) 2024-05-17

Family

ID=80391520

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202111402917.0A Active CN114143273B (zh) 2021-11-24 2021-11-24 通道分配方法、装置、计算机设备和计算机可读存储介质

Country Status (1)

Country Link
CN (1) CN114143273B (zh)

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN115695103A (zh) * 2022-11-21 2023-02-03 深圳数马电子技术有限公司 阻抗自适应方法、装置、计算机设备和存储介质
CN117590835A (zh) * 2024-01-18 2024-02-23 深圳市星卡科技股份有限公司 支持车辆obd接口的协议自适应诊断方法及装置
CN117640702A (zh) * 2024-01-26 2024-03-01 深圳市星卡科技股份有限公司 一种通信协议采集方法、装置及电子设备、存储介质
CN117896301A (zh) * 2024-03-14 2024-04-16 深圳市星卡科技股份有限公司 波特率分析方法、装置、电子设备及存储介质

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2020008131A1 (fr) * 2018-07-04 2020-01-09 Viaccess Procede d'obtention d'une succession de cles cryptographiques
US20200328910A1 (en) * 2017-12-27 2020-10-15 Autel Intelligent Technology Corp. Ltd. Obd interface bus type detection method and apparatus
WO2021223521A1 (zh) * 2020-09-14 2021-11-11 上海星融汽车科技有限公司 基于通讯协议自动切换的车辆诊断方法、系统及诊断设备

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20200328910A1 (en) * 2017-12-27 2020-10-15 Autel Intelligent Technology Corp. Ltd. Obd interface bus type detection method and apparatus
WO2020008131A1 (fr) * 2018-07-04 2020-01-09 Viaccess Procede d'obtention d'une succession de cles cryptographiques
CN112602288A (zh) * 2018-07-04 2021-04-02 维亚塞斯公司 用于获得加密密钥序列的方法
WO2021223521A1 (zh) * 2020-09-14 2021-11-11 上海星融汽车科技有限公司 基于通讯协议自动切换的车辆诊断方法、系统及诊断设备

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN115695103A (zh) * 2022-11-21 2023-02-03 深圳数马电子技术有限公司 阻抗自适应方法、装置、计算机设备和存储介质
CN115695103B (zh) * 2022-11-21 2024-05-17 深圳数马电子技术有限公司 阻抗自适应方法、装置、计算机设备和存储介质
CN117590835A (zh) * 2024-01-18 2024-02-23 深圳市星卡科技股份有限公司 支持车辆obd接口的协议自适应诊断方法及装置
CN117640702A (zh) * 2024-01-26 2024-03-01 深圳市星卡科技股份有限公司 一种通信协议采集方法、装置及电子设备、存储介质
CN117896301A (zh) * 2024-03-14 2024-04-16 深圳市星卡科技股份有限公司 波特率分析方法、装置、电子设备及存储介质

Also Published As

Publication number Publication date
CN114143273B (zh) 2024-05-17

Similar Documents

Publication Publication Date Title
CN114143273A (zh) 通道分配方法、装置、计算机设备和计算机可读存储介质
US11032300B2 (en) Intrusion detection system based on electrical CAN signal for in-vehicle CAN network
KR101932787B1 (ko) 직렬 버스 시스템에서 데이터 전송 용량을 증대하기 위한 방법 및 장치
JP3115322B2 (ja) メッセージの形成方法
KR101998902B1 (ko) 복수의 센서로부터 페이로드 데이터를 차량용 버스 제어 장치에 전송하기 위한 방법 및 센서 전송 장치
CN108111366B (zh) 分析信号延迟时间的方法与装置
EP3499806B1 (en) Node and method for conducting measurements and signal analyses on a multi-master access bus
US9652322B2 (en) User station of a bus system and method for transmitting messages between user stations of a bus system
EP0184976A2 (en) Apparatus for interfacing between at least one channel and at least one bus
US20200382597A1 (en) Vehicle diagnostic communication apparatus, system including the same and method thereof
US20220159018A1 (en) Apparatus for security of vehicle can communication and method thereof
JP2014072673A (ja) 中継装置
US20030179719A1 (en) Method and apparatus for transmitting packets at a transfer rate that depends on a response from a destination
KR20200028014A (ko) Can 버스 시스템용 송수신 장치 및 can 송수신 장치를 이용해서 단락을 검출하기 위한 방법
TWI717373B (zh) 用於通用序列匯流排2.0頻寬保留之方法及系統
US20210144099A1 (en) Method and Computer Program for Sending a Data Packet, Method and Computer Program for Receiving a Data Packet, Communication Unit and Motor Vehicle with Communication Unit
CN114128221B (zh) 用于串行总线系统的用户站和用于在串行总线系统中通信的方法
KR101945426B1 (ko) 배터리 통신진단방법
US9491110B2 (en) Method and device for securing data packets to be transmitted via an interface
US7634547B2 (en) Communication network system, and ID allocating method and ID setting method for communication network system
CN113545012A (zh) 通信装置、通信系统及消息仲裁方法
WO2020250778A1 (ja) 通信装置および通信方法、並びにプログラム
US11012195B2 (en) Method, sensor, and controller for transmitting a data packet from a sensor to a controller
US20220294563A1 (en) Node device
US20230344552A1 (en) Communication apparatus, communication system, and communication method

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