寄存器描述
0x000 CAN_MODE
默认值:0x00000001 |
CAN 模式寄存器 (CAN_MODE) |
||
---|---|---|---|
位域 |
类型 |
默认值 |
描述 |
31:5 |
- |
- |
- |
4 |
R/W |
0x0 |
SLEEP_MOD 休眠模式 (Sleep Mode)
|
3 |
R/W |
0x0 |
FILTER_MOD 接收过滤器模式 (Acceptance Filter Mode)
|
2 |
R/W |
0x0 |
SELFTEST_MOD,。 自测模式 (Self Test Mode)
|
1 |
R/W |
0x0 |
LISTEN_MOD。 只听模式 (Listen Only Mode)
|
0 |
R/W |
0x1 |
RST_MOD 复位模式 (Reset Mode)
|
0x004 CAN_MCR
默认值:0x00000000 |
CAN 控制寄存器 (CAN_MCR) |
||
---|---|---|---|
位域 |
类型 |
默认值 |
描述 |
31:6 |
- |
- |
- |
4 |
WO |
0x0 |
SELF_REQ 自接收请求 (Self Reception Request )
|
3 |
WO |
0x0 |
CLR_OVF_FLAG 清除溢出标志 (Clear Overflow Flag )
|
2 |
WO |
0x0 |
RXB_REL 释放接收缓冲器 (Release Receive Buffer)
|
1 |
WO |
0x0 |
ABORT_REQ 中止发送 (Abort Transmission)
|
0 |
WO |
0x0 |
TX_REQ 发送请求 (Transmission Request)
|
0x008 CAN_STAT
默认值:0x0000003C |
CAN 状态寄存器 (CAN_STAT) |
||
---|---|---|---|
位域 |
类型 |
默认值 |
描述 |
31:8 |
- |
- |
- |
7 |
RO |
0x0 |
BUS_STAT 总线状态 (Bus Status)
|
6 |
RO |
0x0 |
ERR_STAT 错误状态 (Error Status)
|
5 |
RO |
0x1 |
TX_STAT 发送状态 (Transmit Status)
|
4 |
RO |
0x1 |
RX_STAT 接收状态 (Receive Status)
|
3 |
RO |
0x1 |
TXC_STAT 发送完成状态 (Transmission Complete Status)
|
2 |
RO |
0x1 |
TXB_STAT 发送缓冲状态 (Transmit Buffer Status)
|
1 |
RO |
0x0 |
OVF_FLAG 溢出状态标志 (Overflow Flag)
|
0 |
RO |
0x0 |
RXB_STAT 接收缓冲状态 (Receive Buffer Status)
|
0x00C CAN_INTR
默认值:0x00000000 |
CAN 中断寄存器 (CAN_INTR) |
||
---|---|---|---|
位域 |
类型 |
默认值 |
描述 |
31:8 |
- |
- |
- |
7 |
R/RC |
0x0 |
ERRB_INT 总线错误中断 (Bus Error Interrupt) 节点检测到总线上发生了错误 读中断寄存器 CAN_INTR 任意位,清除该中断 |
6 |
R/RC |
0x0 |
ARBLOST_INT 仲裁丢失中断 (Arbitration Lost Interrupt) 发送节点仲裁丢失 读中断寄存器 CAN_INTR 任意位,清除该中断 |
5 |
R/RC |
0x0 |
ERRP_INT 被动错误中断 (Error Passive Interrupt) 节点在主动错误与被动错误状态间发生了切换,触发 读中断寄存器 CAN_INTR 任意位,清除该中断 |
4 |
RC |
0x0 |
WAKEUP 唤醒中断 (Wake-Up Interrupt) 读中断寄存器 CAN_INTR 任意位,清除该中断 |
3 |
R/RC |
0x0 |
OVF_INT 溢出中断 (Overflow Interrupt) 当前接收缓冲中存储的报文为溢出失效报文,触发 读中断寄存器 CAN_INTR 任意位,清除该中断 |
2 |
R/RC |
0x0 |
ERRW_INT 错误报警中断 (Error Warning Interrupt) 错误状态和总线状态发生变化,触发 读中断寄存器 CAN_INTR 任意位,清除该中断 |
1 |
R/RC |
0x0 |
TX_INT 发送中断 (Transmit Interrupt) 数据发送任务结束,可以执行新的数据发送任务,触发 读中断寄存器 CAN_INTR 任意位,清除该中断 |
0 |
R |
0x0 |
RX_INT 接收中断 (Receive Interrupt) RXB_STAT=1 接收缓冲不为空时触发,有数据待处理 对控制寄存器 CAN_MCR[2] 写 1,清除该中断 |
0x010 CAN_INTEN
默认值:0x00000000 |
CAN 中断使能寄存器 (CAN_INTEN) |
||
---|---|---|---|
位域 |
类型 |
默认值 |
描述 |
31:8 |
- |
- |
- |
7 |
R/W |
0x0 |
ERRB_EN 总线错误中断使能 (Bus Error Interrupt Enable) |
6 |
R/W |
0x0 |
ARBLOST_EN 仲裁丢失中断使能 (Arbitration Lost Interrupt Enable) |
5 |
R/W |
0x0 |
ERRP_EN 被动错误中断使能 (Error Passive Interrupt Enable) |
4 |
R/W |
0x0 |
WAKEUP_EN 唤醒中断使能 (Wake-Up Interrupt Enable) |
3 |
R/W |
0x0 |
OVF_EN 溢出中断使能 (Overflow Interrupt Enable) |
2 |
R/W |
0x0 |
ERRW_EN 错误报警中断使能 (Error Warning Interrupt Enable) |
1 |
R/W |
0x0 |
TXI_EN 发送中断使能 (Transmit Interrupt Enable) |
0 |
R/W |
0x0 |
RXI_EN 接收中断使能 (Receive Interrupt Enable) |
0x018 CAN_BTR0
默认值:0x00000000 |
CAN 总线时序 0 寄存器 (CAN_BTR0) |
||
---|---|---|---|
位域 |
类型 |
默认值 |
描述 |
30:8 |
- |
- |
- |
7:6 |
R/W |
0x0 |
SJW 重新同步跳转宽度 (Synchronization Jump Width)
注: 仅复位模式可写 |
5:0 |
R/W |
0x0 |
BRP 波特率预分频 (Baud Rate Prescaler),Tq = 2 × (BRP[5:0] + 1) × Tpclk 注: 仅复位模式可写 |
0x01C CAN_BTR1
默认值:0x00000000 |
CAN 总线时序 1 寄存器 (CAN_BTR1) |
||
---|---|---|---|
位域 |
类型 |
默认值 |
描述 |
30:24 |
- |
- |
- |
7 |
R/W |
0x0 |
SAM 采样次数 (Sample Time)
注: 仅复位模式可写 |
6:4 |
R/W |
0x0 |
TS2 缓冲时间段 2 的宽度 [0x0~0x7]:1~8Tq 注: 仅复位模式可写 |
3:0 |
R/W |
0x0 |
TS1 缓冲时间段 1 的宽度 [0x0~0xF]:1~16Tq 注: 仅复位模式可写 |
0x02C CAN_ARBLOST
默认值:0x00000000 |
CAN 仲裁丢失捕获寄存器 (CAN_ARBLOST) |
||
---|---|---|---|
位域 |
类型 |
默认值 |
描述 |
31:5 |
- |
- |
- |
4:0 |
RO |
0x00 |
ARBLOST_CAP 仲裁丢失捕获 (Arbitration Lost Capture),记录丢失 bit 的位置
|
0x030 CAN_ERRCODE
默认值:0x00000000 |
CAN 错误代码捕获寄存器 (CAN_ERRCODE) |
||
---|---|---|---|
位域 |
类型 |
默认值 |
描述 |
31:8 |
- |
- |
- |
7:6 |
RO |
0x0 |
ERR_TYPE 错误类型 (Error Type)
|
5 |
RO |
0x0 |
ERR_DIR (Error Direction) 错误发生时数据传输方向
|
4:0 |
RO |
0x00 |
ERR_CODE 错误发生段代码 (Error Segment Code)
|
0x034 CAN_ERRWT
默认值:0x00000060 |
CAN 错误报警阈值寄存器 (CAN_ERRWT) |
||
---|---|---|---|
位域 |
类型 |
默认值 |
描述 |
31:8 |
- |
- |
- |
7:0 |
R/W |
0x60 |
ERRWT 错误报警阈值 (Error Warning Threshold) 注: 正常模式为只读状态,复位模式下可读写。任一错误计数值超过该阈值,触发错误报警中断(使能信号有效情况下) |
0x038 CAN_RXERR
默认值:0x00000000 |
CAN 接收错误计数寄存器 (CAN_RXERR) |
||
---|---|---|---|
位域 |
类型 |
默认值 |
描述 |
31:8 |
- |
- |
- |
7:0 |
R/W |
0x0 |
REC 接收错误计数 (Receive Error Counter) 注: 正常模式为只读状态,复位模式下可读写。 |
0x03C CAN_TXERR
默认值:0x00000000 |
CAN 发送错误计数寄存器 (CAN_TXERR) |
||
---|---|---|---|
位域 |
类型 |
默认值 |
描述 |
31:8 |
- |
- |
- |
7:0 |
R/W |
0x0 |
TEC 发送错误计数 (Transmit Error Counter) 注: 正常模式为只读状态,复位模式下可读写。 |
0x040 CAN_BUF0
默认值:0x00000000 |
CAN 缓冲 0 寄存器 (CAN_BUF0) |
||
---|---|---|---|
位域 |
类型 |
默认值 |
描述 |
31:8 |
- |
- |
- |
7 |
R/W |
0x0 |
IDE 标识符扩展位 (Identifier Extended),用于明确报文格式
注: 对于接收缓冲只读,发送缓冲只写,复位模式时可读写。
|
6 |
R/W |
0x0 |
RTR 远程发送请求位 (Remote Transmit Request)
注: 对于接收缓冲只读,发送缓冲只写,复位模式时可读写。
|
5:4 |
- |
- |
- |
3:0 |
R/W |
0x0 |
DLC 数据长度代码 (Data Length Code)
注: 对于接收缓冲只读,发送缓冲只写,复位模式时可读写。 |
0x044 CAN_BUF1
默认值:0x00000000 |
CAN 缓冲 1 寄存器 (CAN_BUF1) |
||
---|---|---|---|
位域 |
类型 |
默认值 |
描述 |
31:8 |
- |
- |
- |
7:0 |
R/W |
0x0 |
ID
注: 对于接收缓冲只读,发送缓冲只写,复位模式时可读写。 |
0x048 CAN_BUF2
默认值:0x00000000 |
CAN 缓冲 2 寄存器 (CAN_BUF2) |
||
---|---|---|---|
位域 |
类型 |
默认值 |
描述 |
31:8 |
- |
- |
- |
7:5 |
R/W |
0x0 |
STID_EXID
注: 对于接收缓冲只读,发送缓冲只写,复位模式时可读写。 |
4:0 |
R/W |
0x0 |
EXID
注: 对于接收缓冲只读,发送缓冲只写,复位模式时可读写。 |
0x04C CAN_BUF3
默认值:0x00000000 |
CAN 缓冲 3 寄存器 (CAN_BUF3) |
||
---|---|---|---|
位域 |
类型 |
默认值 |
描述 |
31:8 |
- |
- |
- |
7:0 |
R/W |
0x0 |
STDATA1_EXID
注: 对于接收缓冲只读,发送缓冲只写,复位模式时可读写。 |
0x050 CAN_BUF4
默认值:0x00000000 |
CAN 缓冲 4 寄存器 (CAN_BUF4) |
||
---|---|---|---|
位域 |
类型 |
默认值 |
描述 |
31:8 |
- |
- |
- |
7:3 |
R/W |
0x0 |
STDATA2_EXID
注: 对于接收缓冲只读,发送缓冲只写,复位模式时可读写。 |
2:0 |
R/W |
0x0 |
STDATA2
注: 对于接收缓冲只读,发送缓冲只写,复位模式时可读写。 |
0x054 CAN_BUF5
默认值:0x00000000 |
CAN 缓冲 5 寄存器 (CAN_BUF5) |
||
---|---|---|---|
位域 |
类型 |
默认值 |
描述 |
31:8 |
- |
- |
- |
7:0 |
R/W |
0x0 |
STDATA3_EXDATA1
注: 对于接收缓冲只读,发送缓冲只写,复位模式时可读写。 |
0x058 CAN_BUF6
默认值:0x00000000 |
CAN 缓冲 6 寄存器 (CAN_BUF6) |
||
---|---|---|---|
位域 |
类型 |
默认值 |
描述 |
31:8 |
- |
- |
- |
7:0 |
R/W |
0x0 |
STDATA4_EXDATA2
注: 对于接收缓冲只读,发送缓冲只写,复位模式时可读写。 |
0x05C CAN_BUF7
默认值:0x00000000 |
CAN 缓冲 7 寄存器 (CAN_BUF7) |
||
---|---|---|---|
位域 |
类型 |
默认值 |
描述 |
31:8 |
- |
- |
- |
7:0 |
R/W |
0x0 |
STDATA5_EXDATA3
注: 对于接收缓冲只读,发送缓冲只写,复位模式时可读写。 |
0x060 CAN_BUF8
默认值:0x00000000 |
CAN 缓冲 8 寄存器 (CAN_BUF8) |
||
---|---|---|---|
位域 |
类型 |
默认值 |
描述 |
31:8 |
- |
- |
- |
7:0 |
R/W |
0x0 |
STDATA6_EXDATA4
注: 对于接收缓冲只读,发送缓冲只写,复位模式时可读写。 |
0x064 CAN_BUF9
默认值:0x00000000 |
CAN 缓冲 9 寄存器 (CAN_BUF9) |
||
---|---|---|---|
位域 |
类型 |
默认值 |
描述 |
31:8 |
- |
- |
- |
7:0 |
R/W |
0x0 |
STDATA7_EXDATA5
注: 对于接收缓冲只读,发送缓冲只写,复位模式时可读写。 |
0x068 CAN_BUF10
默认值:0x00000000 |
CAN 缓冲 10 寄存器 (CAN_BUF10) |
||
---|---|---|---|
位域 |
类型 |
默认值 |
描述 |
31:8 |
- |
- |
- |
7:0 |
R/W |
0x0 |
STDATA8_EXDATA6
注: 对于接收缓冲只读,发送缓冲只写,复位模式时可读写。 |
0x06C CAN_BUF11
默认值:0x00000000 |
CAN 缓冲 11 寄存器 (CAN_BUF11) |
||
---|---|---|---|
位域 |
类型 |
默认值 |
描述 |
31:8 |
- |
- |
- |
7:0 |
R/W |
0x0 |
EXDATA7
注: 对于接收缓冲只读,发送缓冲只写,复位模式时可读写。 |
0x070 CAN_BUF12
默认值:0x00000000 |
CAN 缓冲 12 寄存器 (CAN_BUF12) |
||
---|---|---|---|
位域 |
类型 |
默认值 |
描述 |
31:8 |
- |
- |
- |
7:0 |
R/W |
0x0 |
EXDATA8
注: 对于接收缓冲只读,发送缓冲只写,复位模式时可读写。 |
0x040 CAN_RXCODE0
默认值:0x00000000 |
CAN 接收代码 0 寄存器 (CAN_RXCODE0) |
||
---|---|---|---|
位域 |
类型 |
默认值 |
描述 |
31:8 |
- |
- |
- |
7:0 |
R/W |
0x0 |
RXCODE0 接收过滤代码 0 (Acceptance Code0),详细描述见 接收过滤器 注: 正常模式只读,复位模式时可读写。 |
0x044 CAN_RXCODE1
默认值:0x00000000 |
CAN 接收代码 1 寄存器 (CAN_RXCODE1) |
||
---|---|---|---|
位域 |
类型 |
默认值 |
描述 |
31:8 |
- |
- |
- |
7:0 |
R/W |
0x0 |
RXCODE1 接收过滤代码 1 (Acceptance Code1),详细描述见 接收过滤器 注: 正常模式只读,复位模式时可读写。 |
0x048 CAN_RXCODE2
默认值:0x00000000 |
CAN 接收代码 2 寄存器 (CAN_RXCODE2) |
||
---|---|---|---|
位域 |
类型 |
默认值 |
描述 |
31:8 |
- |
- |
- |
7:0 |
R/W |
0x0 |
RXCODE2 接收过滤代码 2 (Acceptance Code2),详细描述见 接收过滤器 注: 正常模式只读,复位模式时可读写。 |
0x04C CAN_RXCODE3
默认值:0x00000000 |
CAN 接收代码 3 寄存器 (CAN_RXCODE3) |
||
---|---|---|---|
位域 |
类型 |
默认值 |
描述 |
31:8 |
- |
- |
- |
7:0 |
R/W |
0x0 |
RXCODE3 接收过滤代码 3 (Acceptance Code3),详细描述见 接收过滤器 注: 正常模式只读,复位模式时可读写。 |
0x050 CAN_RXMASK0
默认值:0x00000000 |
CAN 接收屏蔽 0 寄存器 (CAN_RXMASK0) |
||
---|---|---|---|
位域 |
类型 |
默认值 |
描述 |
7:0 |
R/W |
0x0 |
RXMASK0 接收屏蔽 0 (Acceptance Mask0),详细描述见 接收过滤器 注: 正常模式只读,复位模式时可读写。 |
0x054 CAN_RXMASK1
默认值:0x00000000 |
CAN 接收屏蔽 1 寄存器 (CAN_RXMASK1) |
||
---|---|---|---|
位域 |
类型 |
默认值 |
描述 |
7:0 |
R/W |
0x0 |
RXMASK1 接收屏蔽 1 (Acceptance Mask1),详细描述见 接收过滤器 注: 正常模式只读,复位模式时可读写。 |
0x058 CAN_RXMASK2
默认值:0x00000000 |
CAN 接收屏蔽 2 寄存器 (CAN_RXMASK2) |
||
---|---|---|---|
位域 |
类型 |
默认值 |
描述 |
7:0 |
R/W |
0x0 |
RXMASK2 接收屏蔽 2 (Acceptance Mask2),详细描述见 接收过滤器 注: 正常模式只读,复位模式时可读写。 |
0x05C CAN_RXMASK3
默认值:0x00000000 |
CAN 接收屏蔽 3 寄存器 (CAN_RXMASK3) |
||
---|---|---|---|
位域 |
类型 |
默认值 |
描述 |
7:0 |
R/W |
0x0 |
RXMASK3 接收屏蔽 3 (Acceptance Mask3),详细描述见接收过滤器 注: 正常模式只读,复位模式时可读写。 |
0x074 CAN_RXC
默认值:0x00000000 |
CAN 接收数据计数寄存器 (CAN_RXC) |
||
---|---|---|---|
位域 |
类型 |
默认值 |
描述 |
31:8 |
- |
- |
- |
7:0 |
RO |
0x0 |
RXC 接收数据计数 (Receive Message Counter),存储接收缓冲中数据包个数 |
0x078 CAN_RSADDR
默认值:0x00000000 |
CAN 接收缓冲起始地址寄存器 (CAN_RSADDR) |
||
---|---|---|---|
位域 |
类型 |
默认值 |
描述 |
31:6 |
- |
- |
- |
5:0 |
R/W |
0x0 |
RSADDR 接收缓冲器起始地址 (Receive Buffer Start Address) 注: 正常模式只读,复位模式时可读写。 |
0x080 CAN_RXFIFO
默认值:0x00000000 |
CAN 接收 FIFO 寄存器 (RX FIFO) |
||
---|---|---|---|
位域 |
类型 |
默认值 |
描述 |
31:8 |
- |
- |
- |
7:0 |
RO |
0x0 |
RXFIFO 接收 FIFO (Receive FIFO),0x80~0x17C 共 64 bytes 注: 正常模式只读,复位模式时可读写。 |
0x180 CAN_TXB_RO
默认值:0x00000000 |
CAN 发送缓冲只读寄存器 (TX Buffer Read Only) |
||
---|---|---|---|
位域 |
类型 |
默认值 |
描述 |
31:8 |
- |
- |
- |
7:0 |
RO |
0x0 |
TXB_RO 发送缓冲只读寄存器 (Transmit Buffer Read Only) 每个寄存器只有低 8 位可有效访问,其余高位被读时返回 0。 |
0xFFC CAN_VERSION
默认值:0x00000000 |
CAN 版本寄存器 (VERSION) |
||
---|---|---|---|
位域 |
类型 |
默认值 |
描述 |
31:0 |
RO |
0x00000000 | Version 版本号,采用 BCD 码显示,V1.0 |