目录
- 关键词
- 平台说明
- 一、CanControllers
- 二、CanTxProcessing
- 三、CanFilterMask
- 四、CanHardwareObjects
- 五、CanGeneral
关键词
嵌入式、C语言、autosar、OS、BSW
平台说明
项目 | Value |
---|---|
OS | autosar OS |
autosar厂商 | vector , |
芯片厂商 | TI 英飞凌 |
编程语言 | C,C++ |
编译器 | HighTec (GCC) |
autosar版本 | 4.3.1 |
>>>>>回到总目录<<<<<<
一、CanControllers
1.CanBasisAddressEnum:选择用哪个CAN 控制器。
2.Busoff Processing:选择出来busoff 的方式,中断还是轮询(Can_MainFunction_BusOff())来通知上层。
3.Common CAN:针对特殊平台的选项,例如可以将两个物理CAN通道连接到一个逻辑CAN控制器时,激活此参数。这允许你为这个控制器使用更多的FullCAN对象。只能在第二个物理通道上配置Rx FullCAN对象。
4.CanControllerActivation:是否使用该控制器。
5.CanCpuClockRef:引用在MCU模块配置的时钟。
6.Interrupt Priority:CAN模块的中断优先级。发送、接收共用同一个中断优先级。
7.CanRxProcessing:接收方式:轮询还是中断。
8.CanWakeupProcessing:唤醒处理方式:轮询还是中断。
9.CanTxProcessing:发送方式:轮询还是中断。
10.CanWakeupSourceRef:引用在ECUM中定义的唤醒源。
二、CanTxProcessing
1.Baudrate Clock:CAN模块配置的波特率的时钟,通过Controller Default Baudrate定义。
2.Baudrate Prescaler:简称BRP,波特率预分频,通过CanBaudrateClock计算。
3.Controller Baud Rate:设置CAN波特率的值
4.Controller Baud Rate Config ID:该ID值被SetBaudrate函数作为参数使用,用于设置哪个控制器的波特率。
5.Controller Prop Seg:传播段的时间。它定义了CAN总线上发送输出驱动器和收发电路的物理传播延迟。
6.Controller Segl:采样点前的时间段。
7.Controller Seg2:采样点后的时间段。
8.Controller Sync Jump Width:同步跳跃宽度,用于重同步的时间。
采样点简介:
Sync Seg(同步段):长度固定为1Tq, 所以配置工具中没有它的配置.
在Vector的配置工具中, 定义Prop+Seg1 = TSeg1, Seg2 = TSeg2,
以采样点为80%计算:
(同步段(1) + TSeg1)/(同步段+Tseg1+Tseg2) = 80%,如果一个BitTime中Tq总和固定了,比如为16个Tq,同步段(1) + TSeg1 + TSeg2 = 16。根据这个二元一次方程组则很容易算出各段的值.Sync Seg固定为1, TSeg1 = 11, Seg2 = 4.
SyncJumpWidth:它的值是用于调整相位缓冲段1和相位缓冲段2的值, 用于CAN的同步,比如相位缓冲段1向前增长了3个,则相位缓冲段2向后减少3个Tq.—也就是一次同步中相位缓冲段改变的长度.所以Sync Jump Width的设置有2个原则:
Sync Jump Width <= 3,Sync Jump Width <= Min(Seg1, Seg2), 因为一次同步调整的幅度不能超出相位缓冲段1和2中任意一个。
三、CanFilterMask
根据MASK 将不符合的报文过滤(只用于接收报文)。
公式:Received CAN ID &.Mask== Code。
四、CanHardwareObjects
该配置主要是配置硬件物理层的参数。
1.Common CAN Node:如果参数Common CAN被激活,那么该参数用于该硬件message object 选择它所属的物理CHANNEL。注意:只有RX_FULLCAN的硬件message object才可以配置,其他的message object的值都是A
2.Controller Ref:该 message object所属的 CAN 节点。
3.Enable Polling Processing:该 message object是否使用轮循的方式去发送CAN报文。
4.CanFdPaddingValue:该值用于填充CAN FD帧中> 8字节的未指定数据进行传输。这是必要的,因为如果> 8字节,DLC的可能值是离散的。
5.Handle Type:FULL CAN或者 BASIC CAN
**Full CAN:**一般表示仅存在1个的Hardware Object与之对应,且该Full CAN类型的Hardware Object与特定的CAN ID Message绑定;
**Basic CAN:**一般表示存在1个或者多个的Hardware Object与之对应,且该Basic CAN类型的Hardware Object与非特定的CAN ID Message或者一定范围内的CAN ID Message绑定;
6.Id Type:标准帧或扩展帧。
7.Id Value:CAN ID。
8.Main Function RW Period Ref:引用一个读写发送周期的值,该值在CanGeneral→CanMainFunction RWPeriods中定义。
9.Object Hw Handle:定义硬件message object的索引号。
10.Object Hw Size:定义该消息使用硬件缓冲区的个数。
11.Object Id:定义该硬件message object所属的逻辑handle的ID号。
12.Object Type:接收还是发送。
五、CanGeneral
后续更新
>>>>>回到总目录<<<<<<