寄存器导出很简单,每个厂家都有提供CMSIS-SVD文件,有所有外设寄存器地址列表,难点不在这里,手动添加这些地址即可,就这些:
难点是CANFD运行机制的处理。
[Lua] 纯文本查看 复制代码 -- 初始化变量
function CANFD_VarInit(FDCAN_BASE)
FDCAN1_CREL = FDCAN_BASE + 0x000
FDCAN1_ENDN = FDCAN_BASE + 0x004
FDCAN1_RESERVED1 = FDCAN_BASE + 0x008
FDCAN1_DBTP = FDCAN_BASE + 0x00C
FDCAN1_TEST = FDCAN_BASE + 0x010
FDCAN1_RWD = FDCAN_BASE + 0x014
FDCAN1_CCCR = FDCAN_BASE + 0x018
FDCAN1_NBTP = FDCAN_BASE + 0x01C
FDCAN1_TSCC = FDCAN_BASE + 0x020
FDCAN1_TSCV = FDCAN_BASE + 0x024
FDCAN1_TOCC = FDCAN_BASE + 0x028
FDCAN1_TOCV = FDCAN_BASE + 0x02C
FDCAN1_RESERVED2 = FDCAN_BASE + 0x030
FDCAN1_ECR = FDCAN_BASE + 0x040
FDCAN1_PSR = FDCAN_BASE + 0x044
FDCAN1_TDCR = FDCAN_BASE + 0x048
FDCAN1_RESERVED3 = FDCAN_BASE + 0x04C
FDCAN1_IR = FDCAN_BASE + 0x050
FDCAN1_IE = FDCAN_BASE + 0x054
FDCAN1_ILS = FDCAN_BASE + 0x058
FDCAN1_ILE = FDCAN_BASE + 0x05C
FDCAN1_RESERVED48 = FDCAN_BASE + 0x060
FDCAN1_GFC = FDCAN_BASE + 0x080
FDCAN1_SIDFC = FDCAN_BASE + 0x084
FDCAN1_XIDFC = FDCAN_BASE + 0x088
FDCAN1_RESERVED5 = FDCAN_BASE + 0x08C
FDCAN1_XIDAM = FDCAN_BASE + 0x090
FDCAN1_HPMS = FDCAN_BASE + 0x094
FDCAN1_NDAT1 = FDCAN_BASE + 0x098
FDCAN1_NDAT2 = FDCAN_BASE + 0x09C
FDCAN1_RXF0C = FDCAN_BASE + 0x0A0
FDCAN1_RXF0S = FDCAN_BASE + 0x0A4
FDCAN1_RXF0A = FDCAN_BASE + 0x0A8
FDCAN1_RXBC = FDCAN_BASE + 0x0AC
FDCAN1_RXF1C = FDCAN_BASE + 0x0B0
FDCAN1_RXF1S = FDCAN_BASE + 0x0B4
FDCAN1_RXF1A = FDCAN_BASE + 0x0B8
FDCAN1_RXESC = FDCAN_BASE + 0x0BC
FDCAN1_TXBC = FDCAN_BASE + 0x0C0
FDCAN1_TXFQS = FDCAN_BASE + 0x0C4
FDCAN1_TXESC = FDCAN_BASE + 0x0C8
FDCAN1_TXBRP = FDCAN_BASE + 0x0CC
FDCAN1_TXBAR = FDCAN_BASE + 0x0D0
FDCAN1_TXBCR = FDCAN_BASE + 0x0D4
FDCAN1_TXBTO = FDCAN_BASE + 0x0D8
FDCAN1_TXBCF = FDCAN_BASE + 0x0DC
FDCAN1_TXBTIE = FDCAN_BASE + 0x0E0
FDCAN1_TXBCIE = FDCAN_BASE + 0x0E4
FDCAN1_RESERVED62 = FDCAN_BASE + 0x0E8
FDCAN1_TXEFC = FDCAN_BASE + 0x0F0
FDCAN1_TXEFS = FDCAN_BASE + 0x0F4
FDCAN1_TXEFA = FDCAN_BASE + 0x0F8
FDCAN1_RESERVED7 = FDCAN_BASE + 0x0FC
end
|