TCAN4550 nINT中断到M3连接如上图所示。
M3想尽快收到CAN总线上的报文,以减少TCAN4550转换带来的通信延迟。
1、这里想通过nINT中断方式通知M3,当有外部中断来的时候,在M3的外部中断中进行接收消息标志位检测,,如果有消息,则读取CAN消息放至本地的接收队列中;直到TCAN4550的接收队列为空,退出接收及接收中断。
但是通过M3的手册得知,TCAN4550的nINT中断是很多中断信号的或,,只要有任何中断来,都会引起nINT引脚由高到低(如果原来是低电平,会维持低电平);我已经在该外部中断中清除了所有中断,,还是会引起该中断信号一直是低电平,,不知道是不能通过该方式接收消息,还是我清除中断的方式不对。如果不对,,有没有参考的调用清除中断的调用及传参可以提供??
2、我看DEMO中给出接收CAN消息是通过查询方式,因为我的TCAN4550任务是周期性的,,如果查询方式,最大会有一个任务周期的消息接收延时,,所以不倾向于查询方式接收CAN消息。
3、还有没有更好的接收方式可以提供?
期待回复!