比如有两个节点通过CAN总线连接起来,其中一个节点发送报文,发送完以后, 另一个节点将符合条件的报文接受到FIFO中,而只要FIFO不为空,并且此前接受中断允许位被置位, 则SJA1000的中断寄存器IR的RI被置位,又因为只要SJA1000的中断寄存器的一位被置位, /INT引脚将被置低,所以将SJA1000的/INT引脚连接到MCU的INT0引脚上将产生一个外部中断,然后再在 外部中断处理程序中将接受的报文读出来。 流程归纳如下:
一个接点发送报文 → 另一个节点一定将符合条件的报文接受到FIFO中
→中断寄存器IR的RI一定被置位 (此前接受中断允许位被置)→/INT引脚一定被置低
→一定产生外部中断
我现在遇到的问题是产生不了外部中断,也就是SJA1000的/INT引脚将没被置低,不知道问题可能出在哪些方面,上述理解是否正确,望各位大虾和高手指点啊。多谢,多谢。
|