嗨,团队、
我正在按照这份文档进行 A/B 交换 https://www.nxp.com/docs/en/application-note-software/AN12323SW.zip。
当我按下 SW2 并满足以下条件时,如果 (PTC->PDIR& (1<< PTC12))条件,START_FRAME_STATE 也通过。
当我调试时,它被卡在FW_HDR_STATE While 循环中,在 putty 中无法看到任何数据。
谢谢& 、
纳维纳
你好@纳维娜
如果程序卡在"while(0 == ((CAN0->IFLAG1>> 4)& 1 ));" ,可能有两个原因:
1.检查 FLEXCAN0_transmit_msg(&CAN_data,canfd_en);是否正确发送并收到节点 2 的响应。否则,节点 2 将不会作出回应,导致节点 1 收不到任何报文。
2.节点 1 收到了节点 2 的响应,但未能收到。
在我看来,第一种可能性更大。您可以使用其他监测软件来监测总线数据,以确认哪个节点导致了问题。