【CAN】Basic CAN和Full CAN

文章目录

  • [1 Basic CAN和Full CAN区别](#1 Basic CAN和Full CAN区别)
  • [2 Basic CAN和Full CAN使用场景](#2 Basic CAN和Full CAN使用场景)

>>返回总目录<<

1 Basic CAN和Full CAN区别

Basic CAN和Full CAN的定义在AUTOSAR_SWS_CANDriver中的描述如下,Basic表示一个HardwareObject可以处理多个L-PDUs,Full表示一个Hardware Object只能处理一个L-PDU。Basic和Full是针对CAN Controller的缓存架构来说的,Full CAN的特征是一个buffer对应一个ID的报文,且新的报文会覆盖旧的报文,不会被缓存,Basic CAN的特征是以FIFO buffer的方式缓存特定ID报文,可以缓存一定的历史报文。

2 Basic CAN和Full CAN使用场景

  • 1. 应用报文

    一般配置成Full CAN,一般不需要缓存历史报文,使用最新接收的数据即可。对于发送的应用报文,如果都配置成Full CAN,而RAM中发送硬件缓存数量最多为32,那么只能发送32帧报文,而项目中实际需要发送的应用报文一般大于32帧,此时可以将比较重要的报文配置成Full CAN,其他报文配置成Basic CAN。这样硬件发送缓存区Tx Buffers就采用Dedicated Tx Buffers 和 Tx FIFO结合使用的配置方式。

  • 2. 诊断报文

  • 配置成Basic CAN,因为诊断报文需要按照顺序进行处理,且数据不能被覆盖。

  • 3. 网络管理报文

    接收的配置成Basic CAN,因为一个节点接收的是一个区间内的NM报文;发送配置Full和Basic都可以,一般配置成Full,因为每个节点发送的NM报文的CAN ID是唯一的。

  • 4. 标定报文

    一般配置成Full类型。


参考:
1【AUTOSAR-CAN】CAN的 "BasicCAN架构" 和 "FullCAN架构"
2 Autosar通信栈:FullCAN和BasicCAN基础

相关推荐
Zwawa2 小时前
C语言函数指针与宏实战:从回调、表驱动菜单到X-Macro,讲透嵌入式代码解耦
c语言·单片机·嵌入式
安妮细水长流8 小时前
ad7124
c语言·单片机
en.en..11 小时前
STM32 HAL 库 | 核心知识点整理
单片机·嵌入式硬件
无敌贵点大王11 小时前
从寄存器层面重学STM32(9)——DMA理论
stm32·单片机·嵌入式硬件
希和202712 小时前
51 单片机入门笔记:江科大课程代码逐行讲解(按键控制 LED 流水灯)
笔记·单片机·mongodb
希和202712 小时前
51 单片机按键控制 LED:江科大课程代码小白笔记
笔记·单片机·嵌入式硬件
希和202712 小时前
51 单片机 LED 流水灯:从直接法到循环法(江科大课程笔记)
笔记·单片机·mongodb
Zwawa1 天前
用两个按键做一个OLED菜单:先把选择和执行分开
c语言·单片机·嵌入式
Dev_XH1 天前
【成品设计】基于CH32H417的CH32H417AIOT家庭微电网
单片机·嵌入式硬件·物联网·ai
en.en..1 天前
STM32入门最佳学习顺序(寄存器→标准库→HAL库)
单片机·嵌入式硬件