目录 前言 国内外研究现状 2基于 AUTOSAR 标准的 CAN 通信栈设计 2.1 AUTOSAR 标准 CAN 通信栈 2.2 CAN 通信栈复用性设计 2.2.1统一文件结构 2.2.2统一数据类型 2.2.3统一服务接口 2.3 CAN 通信栈配置工具设计 2.3.1AUTOSAR 配置方法论 2.3.2CAN Driver 配置参数设计 2.3.3CanIf 配置参数设计 2.3.4COM 配置参数设计 2.4 发送缓存(TxBuffer)设计 2.4.1发送请求被阻塞时存TxBuffer 2.4.2发送取消后存TxBuffer 2.4.3发送取消不存 TxBuffer 的情况 2.4.4CAN 资源释放后从TxBuffer 重启发送 2.5 多路传输设计 2.5.1发送阻塞时的多路传输设计 2.5.2多路传输查找空闲资源设计 2.6 CAN 报文接收时效设计 2.6.1软件过滤 2.6.2缩小查找区间设计 2.6.3接收处理时使用的算法 3 基于AUTOSAR 标准的 CAN 通信栈实现 3.1 TxBuffer 功能实现 3.1.1TxBuffer 的存储和覆盖 3.1.2发送取消不存 TxBuffer 的实现 3.1.3TxBuffer 报文重启发送 3.1.4TxBuffer 清除处理 3.2 CAN 多路传输功能实现 3.2.1配置工具针对多路传输功能的实现 3.2.2多路传输功能实现 3.3 CAN 通信栈接收处理实现 3.3.1接收处理顺序图 3.3.2 软件过滤实现 3.3.3查找区间实现 4 基于AUTOSAR 标准的 CAN 通信栈的验证 4.1 实验目标 4.2 开发环境和工具 4.3基本收发功能验证 4.3.1建立测试工程 4.3.2设置初始化和周期任务 4.3.3通过配置工具配置参数 4.3.4集成编译,下载执行 4.3.5监测报文,验证发送功能 4.3.6验证接收功能 4.4 发送阻塞问题的验证 4.4.1制造发送阻塞现象 4.4.2使用TxBuffer 方式解决发送阻塞 4.4.3使用多路传输方式 4.4.4实验结果分析 4.5 接收时效问题验证 4.5.1验证的前置条件 4.5.2不设置软件过滤 4.5.3使用软件过滤 4.5.4 实验结果分析 4.6 软件复用性功能验证 4.6.1现有状态 4.6.2期望移植状态 4.6.3复用移植过程 4.6.4复用移植后功能验证 前言 近年来,随着人们对汽车安全性、舒适性和节能型的要求越来越高,汽车电子软件 越来越复杂。据统计,近十年,汽车电子和软件引导了汽车功能 90% 的革新点 [1] 。功能 的革新使得汽车上 ECU 个数越来越多,软件开发的工作量大幅增加。然而很多一部分 软件模块是相似