嗨、
我正在某个项目上使用 TCAN1146、该项目需要使用经典 CAN 总线帧唤醒 MCU。 到目前为止、我成功地遵循了 SLLA521B 应用手册并使选择性唤醒正常工作、这意味着我可以使用如下所示的配置使 TCAN1146从睡眠模式进入待机模式并使用 WUF 进行 CANINT 触发。
SW_CONFIG_4 = 0x00;
//设置 nINT
SDO_CONFIG=0x01
PIN_CONFIG= 0x18 // nINT 配置选择:11b =唤醒请求
//清除并配置中断屏蔽
INT_1=0xFF
INT_2=0xDF
INT_3=0xA1
INT_ENABLE_1=0x40
INT_ENABLE_2=0x00
INT_ENABLE_3=0x00
INT_ENABLE_CANBUS=0x00
//---- 选择性唤醒配置-------------------------------------------------------
//写入所需的 WUF ID
SW_ID1 = 0x00;
SW_ID2 = 0x00;
SW_ID3 = 0x04;
SW_ID4 = 0x8C;
//写入 ID 掩码
SW_ID_MASK1=0x00
SW_ID_MASK2=0x00
SW_ID_MASK3=0x00
SW_ID_MASK4=0x00
SW_ID_MASK_DLC = 0x00
SW_CONFIG_1=0xD0
SW_CONFIG_3 = 0xFE
SW_CONFIG_4 = 0x80
MODE_CNTRL = 0x81
我需要帮助配置 nINT 引脚、以便在中断时获得低脉冲以唤醒 MCU。 到目前为止、我已经完成了上述配置、仍然看不到 nINT 上的中断脉冲。 此外、我注意到当 nCS 引脚为高电平时、SDO/nINT 线路为低电平。
下面我将共享一些寄存器的 WUF 前后检测状态。
WUF 之前的 INT_GLOBAL 寄存器

WUF 之后的 INT_GLOBAL 寄存器

WUF 之后的 INT_1寄存器

WUF 之前的 MODE_CNTRL 寄存器

WUF 之后的 MODE_CNTRL 寄存器

如果有人能帮助我、我真的很感激。
谢谢。