一种RCP通信架构下的驱动处理方法及系统与流程

摘要: 本技术涉及汽车电子,更具体的说,是涉及一种rcp通信架构下的驱动处理方法及系统。背景技术:1、在汽车领域,集中式域控制及中央计算平台的核心理念是将边缘节点控制器...
一种RCP通信架构下的驱动处理方法及系统与流程

本技术涉及汽车电子,更具体的说,是涉及一种rcp通信架构下的驱动处理方法及系统。

背景技术:

1、在汽车领域,集中式域控制及中央计算平台的核心理念是将边缘节点控制器中的功能迁移至区域控制器甚至中央控制器中实现,从而实现针对边缘节点的远程控制,实现网络中软件集中化,边缘节点轻量化。随着汽车电子电气架构向集中式域控制及中央计算平台演进,ecu(electronic control unit‌,电子控制单元)数量显著增加,车内网络形态呈现出以以太网为骨干、can(controller area network,控制器局域网)/lin(localinterconnect network,局域互联网络)为边缘总线的多层拓扑结构。

2、另一方面,autosar(automotive open system architecture,汽车开放系统架构)作为主流汽车软件架构标准,对lin驱动、lin接口、lin状态管理、通讯服务等模块的接口和行为进行了严格规定。在传统域控的区域控制器中,lin收发器直接集成在mcu(microcontroller unit,微控制单元)内部或通过本地外设连接。

3、然而,在采用rcp(remote control protocol,远程控制协议)的通信架构中,需要通过控制器-以太网-远端节点-lin这种桥接的构造,去获取远端的lin总线数据,lin主节点逻辑运行在域控制器mcu侧,而lin物理收发及部分协议处理在远端节点中,由此会出现远端节点提供的驱动和api(application programming interface,应用程序编程接口)以厂商自定义形式存在,其调用方式、通道配置方式、回调机制等与autosar lin driver规范不一致的情况,使得rcp通信架构下lin通信相关接口与autosar标准接口不兼容,无法在autosar的域控平台中集成远端lin节点。

技术实现思路

1、针对传统方案中rcp通信架构下lin通信相关接口与autosar标准接口不兼容的问题,本技术提供如下技术方案:

2、本技术第一方面提供了一种rcp通信架构下的驱动处理方法,包括:

3、通过基于autosar lin协议规范提供的服务接口与autosar协议栈进行数据交互;

4、对所述服务接口接收到的报文帧进行协议转换处理,得到转换报文帧,所述协议转换处理为autosar lin协议与rcp帧格式之间的转换处理;

5、基于封装的rcp驱动接口将所述转换报文帧发送给远端lin节点,以对所述远端lin节点进行硬件资源的访问和控制,所述rcp驱动接口为与所述远端lin节点匹配的驱动接口。

6、在一个可能的实现方式中,所述服务接口的获得过程包括:

7、基于当前需要处理的服务接口的类型获得符合autosar lin协议规范的,具有对应功能的服务函数;

8、对所述服务函数进行参数有效性检验;

9、若所述服务函数通过参数有效性检验,将所述服务函数封装为所述服务接口;

10、若所述服务函数没有通过参数有效性检验,对检验错误项进行上报记录。

11、在一个可能的实现方式中,对所述服务接口接收到的报文帧进行协议转换处理,包括:

12、提取所述报文帧的结构体数据;

13、基于所述结构体数据处理得到转换报文帧。

14、在一个可能的实现方式中,基于所述结构体数据处理得到转换报文帧,包括:

15、基于所述结构体数据中的第一数据设置rcp事务的读写属性,所述第一数据用于指示当前报文帧的响应对象;

16、基于所述结构体数据中的第二数据填充rcp驱动发送报文数据单元中的校验和内容,所述第二数据用于指示所述报文帧的校验和模式;

17、将所述结构体数据中的第三数据指向的报文帧包含的报文数据复制到所述rcp驱动发送报文数据单元的数据缓冲区,所述第三数据用于指示所述报文帧的存储地址;

18、为复制了所述报文数据的数据单元配置rcp传输帧描述符,得到转换报文帧。

19、在一个可能的实现方式中,基于封装的rcp驱动接口将所述转换报文帧发送给远端lin节点后,还包括:

20、更新驱动通道状态,所述驱动通道状态包括报文发送忙和报文接收忙。

21、在一个可能的实现方式中,基于封装的rcp驱动接口将所述转换报文帧发送给远端lin节点后,还包括:

22、接收所述远端lin节点基于所述转换报文帧返回的响应报文;

23、基于当前的驱动通道状态和所述响应报文的状态字进行处理。

24、在一个可能的实现方式中,基于当前的驱动通道状态和所述响应报文的状态字进行处理,包括:

25、若驱动通道状态表征lin增强校验模式下接收忙或lin经典校验模式下接收忙,根据所述响应报文的状态字确定是否出现设定类型的错误,若不存在设定类型的错误且所述响应报文校验通过,更新驱动通道状态为lin接收成功;

26、若驱动通道状态表征lin发送忙,根据所述响应报文的状态字确定是否出现设定类型的错误,若不存在设定类型的错误,更新驱动通道状态为lin发送成功;

27、若驱动通道状态表征为lin通道休眠请求处理中,更新驱动通道状态为休眠状态。

28、在一个可能的实现方式中,所述转换报文帧为睡眠指示报文帧,方法还包括:

29、基于封装的rcp驱动接口向所述远端lin节点发送寄存器配置指令,以使得所述远端lin节点接收到所述寄存器配置指令后进入低功耗模式,仅保留唤醒检测功能,所述寄存器配置指令用于使能所述远端lin节点的唤醒信号检测功能。

30、在一个可能的实现方式中,还包括:

31、接收所述远端lin节点在被唤醒后上报的唤醒通知报文;

32、对所述唤醒通知报文所表征的唤醒事件进行事件验证;

33、若验证通过,通过基于autosar lin协议规范提供的服务接口触发系统级唤醒流程。

34、本技术第二方面提供了一种rcp通信架构下的驱动处理系统,其包括:

35、autosar接口层,用于基于autosar lin协议规范提供多种服务接口,以实现与autosar协议栈的交互;

36、协议转换层,用于对接收到的报文帧进行协议转换处理,所述协议转换是指autosar lin协议与rcp帧格式之间的转换;

37、硬件抽象层,用于通过封装的rcp驱动接口提供对远端lin节点硬件资源的统一访问和控制。

38、经由上述的技术方案可知,本技术实施例公开了一种rcp通信架构下的驱动处理方法及系统,能够通过协议转换处理实现autosar lin协议与rcp帧格式之间的转换,使得rcp通信架构下lin通信相关接口与autosar标准接口之间准确的数据交互成为可能,同时封装了远端lin节点的rcp驱动接口,使得基于该封装的驱动接口发出的转换报文帧能够有效对远端lin节点进行访问和控制,解决了传统方案无法在autosar的域控平台中集成远端lin节点的问题。