你好:
使用 TCAN1145 芯片时,不需要任意帧唤醒,也不需要指定 ID的CAN 报文唤醒,在进入sleep mode 前,应该设置哪些寄存器呢?
谢谢!
感谢解答!
对1145的写入配置如下时:
WriteRegister(register_address, data);
step1: WriteRegister(0x47, 0);
step2: WriteRegister(0x32, 0);
step3: WriteRegister(0x33, 0);
step4: WriteRegister(0x37, 0);
step5: WriteRegister(0x38, 0x11);
step6: WriteRegister(0x44, 0xD0);
step7: WriteRegister(0x47, 0x80);
step8: WriteRegister(0x10, 0x11);
此时 发送CAN ID 为0,DLC为8,数据全0的报文,不能唤醒,这是为什么呢?
但当我将step5中寄存器0x38 写入值更改为0x10时,此时 发送CAN ID 为0,DLC任意,数据任意的报文,可以唤醒;发送CAN ID 不为0的报文,不能唤醒。
请参见本应用笔记中的3.2.3。数据匹配要求至少一个位匹配为1,因此即使将0x39寄存器配置为全0,全0数据域也不会匹配。