主题中讨论的其他器件:TCAN4550
工具与软件:
您好!
我正在努力使用 SPI 在 CANFD 上发送帧。 以下是我的配置:
- 工作模式和引脚配置(h0800):
- WAKE_CONFIG = 0b11
- CLK_REF = 0b1
- GPO2_CONFIG = 0b00
- TEST_MODE_EN = 0b0
- nWKRQ_VOLTAGE = 0b0
- FAIL_SAFE_EN = 0b1
- GPO1_GPO_CONFIG = 0b00
- INH_DIS = 0b0
- nWKRQ_CONFIG = 0b0
- MODE_SEL = 0b10
- DEVICE_RESET = 0b0
- SWE_DIS = 0b1
- TEST_MODE_CONFIG = 0b1
- 标称位时序和预分频器(h101C):
- NSJW = 0b0000011
- NBRP = 0x00
- NTSEG1 = 0x0A
- NTSEG2 = 0b0000011
- TX 缓冲器配置(h10C0):
- TFQM = 0b0
- TFQS = 0b000001
- NDTB = 0b000001
- TBSA = 0x8000
- Tx 缓冲区元素大小配置(h10C8):
- TBDS = 0b000
- TX 事件 FIFO 配置(h10F0):
- EFWM = 0b000011
- EFS = 0b000011
- EFSA = 0x8050
- 数据位时序和预分频器(h100C):
- TDC = 0b0
- DBRP = 0b00000
- DTSEG1 = 0b01010
- DTSEG2 = 0b0011
- DSJW = 0b0011
- 控制寄存器(h1018):
- niso = 0b0
- TxP = 0b0
- EFBI = 0b0
- PXHD = 0b0
- BRSE = 0b1
- FDOE = 0b1
- TEST = 0b0
- DAR = 0b0
- MON = 0b1
- CSR = 0b0
- CSA = 0b0
- asm = 0b0
- CCE = 0b1
- INIT = 0b1
- TX 缓冲器配置(h10C0):
- TFQS = 0b00001
- NDTB = 0b00001
- TBSA = 0x8000
Tx 起始地址为0x8000 (MRAM)。 我在 MRAM 内部写入0x8000个字。 然后我激活发送寄存器(h10D0)、Tx 缓冲区请求待处理应为1、但整个寄存器应为0。 如果我理解得好、这意味着 TCAN 不知道它必须发送该帧。
FWI:我可以读取之前配置的寄存器、这意味着我可以在寄存器内部进行写入和读取。 我通过读这些配置仔细检查了每一个配置、这方面一切都很好。
你有什么想法,它可能是到期?
感谢你的评分