sja1000的接收缓存器状态无法置位,/int无法拉高
时间:10-02
整理:3721RD
点击:
我用fpga控制sja1000控制器,选择BasicCAN模式进行读写,但是在接收can数据的时候,有问题了,求大神看看怎么解决:1、在接收数据的时候,在状态寄存器中的接受状态正常工作,但是接收完数据后,接收缓存器状态却没有任何反应,接受缓存器状态没有置位我 就无法读数据了
接收缓存器状态的描述如下:

注释的描述:

2、/int随着中断寄存器中断数据置为就会被拉低,但是如何将中断寄存器重新拉高?所谓的电平漂移就是拉高吗?
描述如下所示:

就解答,非常感谢!


现在发送也出现问题了,我按照如下的流程发送一个报文:

我发送了一个发送请求后,状态寄存器的BS位和ES为都置1了,TCS也没回到1,但是TS却在当中一段时间置1了,这说明控制器有在发送信息,结果can总线并没有任何反应。这我就想不通什么原因了,其他事我也没做,为什么会出错,而且没有发送成功?甚至总线都关闭了,什么原因,麻烦谁能解答一下!
1楼接收寄存器状态RBS没有置为还是没有解决,/int拉高已经解决了
接收缓存器状态的描述如下:

注释的描述:

2、/int随着中断寄存器中断数据置为就会被拉低,但是如何将中断寄存器重新拉高?所谓的电平漂移就是拉高吗?
描述如下所示:

就解答,非常感谢!
顶一下,求解答
状态寄存器内容如下:


现在发送也出现问题了,我按照如下的流程发送一个报文:

我发送了一个发送请求后,状态寄存器的BS位和ES为都置1了,TCS也没回到1,但是TS却在当中一段时间置1了,这说明控制器有在发送信息,结果can总线并没有任何反应。这我就想不通什么原因了,其他事我也没做,为什么会出错,而且没有发送成功?甚至总线都关闭了,什么原因,麻烦谁能解答一下!
1楼接收寄存器状态RBS没有置为还是没有解决,/int拉高已经解决了
