- 通用需求
- 一般需求
- 接口(包括预留接口)应在《BMS基础软件接口说明书》中明确。
- 编译工程支持浮点运算,支持double类型。
- 提供监控MCU负载率的接口,接口形式:全局变量或函数。
- 从系统上电到初始化函数开始执行的时间小于100ms。
- EEPROM需求
- 提供系统休眠前向EEPROM存储数据的接口,接口形式:FAW调用基础软件提供的函数,函数参数为指针与数据长度,基础软件将此指针所指空间存到EEPROM;
- 提供EEPROM存储数据的实时性调用接口,并将EEPROM最大可存储次数告知FAW;
- 提供EEPROM初始化完成后的读取接口,接口形式为FAW调用基础软件提供的函数,函数参数为指针与数据长度,基础软件将EEPROM中对应大小的区域赋值给指针所指空间。
- BootLoader刷写应用程序时需保留EEPROM数据。
- EEPROM存储建议采用片外存储,空间不小于4K。
- 基础软件完成下电前、诊断ECUReset服务执行硬件复位前底层自动执行E2P存储,存储内容包含应用软件存储区和故障存储区。
- 通信基本需求
- CAN网络通信符合
- 至少包含三路CAN,标定CAN:波特率500Kbps,用于实现标定功能;HEV CAN,波特率500Kbps,用于整车通信、诊断、程序下载;私有CAN,用于电流传感器通信。
- 标定ID:0x650、0x652。
- 报文发送模式支持周期、事件和事件后周期三种方式,以Matrix表为准。
- 报文收取接口形式:FAW调用基础软件提供的接口函数,函数参数包含指针,基础软件将一个ID中所有信号按字节顺序组成结构体形式,赋值到指针所指空间。
- 报文发送接口形式:FAW将一个ID中所有信号按字节顺序组成结构体形式,调用基础软件提供的接口函数,将结构体指针传入函数做参数。
- 报文DLC检查:当收到报文长度不等于定义长度时,不接收该报文。
- 每条报文中如果有checksum、livecounter,由基础软件负责计算。
- 报文使能控制:对每个ID提供一个接口,用来控制该报文停止/开启收发。接口形式为全局变量。
- 首帧报文发出时间需满足网络通信规范首帧报文可不受报文使能控制,但仍需发出有效内容。
- 具备硬件过滤报文功能。
- 支持通过CAN报文唤醒CAN控制器。
- 每个报文ID的PDU名称应符合FAW的命名规则,具体命名规则在开发过程中提供。
- 简单网络管理接口:应用层输出localsleep条件到基础软件层,由基础软件完成网络管理休眠唤醒的要求。NM报文发送及内容填充由基础软件层自行完成。
- EVCAN增加调试报文:发送报文BMS_Test1~ BMS_Test 4,ID:0x6B0—0x6B3;接收报文BMS_RxTest1: 0x6B4。周期为100ms
- 按照FAW输入的DBC、CDD文件配置AUTOSAR标准模块CAN Driver、CANIF、CANTP、CANNM、CANSM、COM、COMM、PDUR、DCM、DEM、FIM。
- 时间接口
- 提供读取/写入实时时间的接口,接口形式为年月日时分秒六个变量。
- Protect ram
- 支持软复位不清空Protect ram,提供软复位接口。
- 内存分配
- 提供FLASH分配和RAM分配表,说明各个分区功能。