LM9B96的CAN问题



您好。

我发开了一个CAN通信板子,使用两个CAN通道。单独使用任何通道,都没有问题。但奇怪的是,两个通道同时使用的话,两个通道都会经常出现如下情况:

    发生中断后,接收数据,CAN ID就是要接收的,没有问题。但里面的NEWDAT标识,并不为1. 

    如果这个数据视作没有接收到,那么这一数据就漏收了(比较发送的个数与接收的个数,发现接收的个数少于发送的个数)。如果这个数据视作收到了,但数据长度为为0.(发送个数与接收到的个数完全一致,等于没有漏收)。

 无论是发送源还是视波器观察,发送的数据都没有问题,不会长度为0. 也不是负荷太重的原因,因为我测试时,使用单个通道的负荷是双通道负荷时的3倍以上。所以这个问题,就让我非常为难。

 检查代码,也没有发现问题。两个通道都是完全独立的代码,不会干涉的。所以我在想,会不会是9B96的问题?两个CAN控制器会相互影响?还请专家赐教。