打印
[CAN-bus/DeviceNet]

麻烦 桂电飞天鼠大哥了

[复制链接]
1848|5
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
echoxyt|  楼主 | 2007-5-25 20:15 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
sja1000的接收缓冲器和发送缓冲器的一些问题:
1、数据是写到接收缓冲器了,还是发送缓冲器了?是怎么样区分的呢?是置位RD、WR引脚吗?是自动置位还是手动置位呢?
2、接收缓冲器是相对什么说的呢?它接收的数据是从CAN总线上得来的吗?那么读它的数据的话,是读地址17-28呢?还是从读RBSA的地址开始,读13个字节呢?
3、发送缓冲器是相对什么说的呢?是上位机发送的数据吗?它怎么启动发送的呢?是发送缓冲器一满就自动发送到CAN总线上吗?还是其它原理呢?
4、PeliCAN模式下,自发自收的时候,是自己的发送缓冲区往自己的接收缓冲区发吗?是怎样的原理呢?

麻烦 桂电飞天鼠大哥了!

相关帖子

沙发
coolhu| | 2007-5-25 22:14 | 只看该作者

rt

这些问题自己看看书就知道了,
发送的数据就是写到发送缓冲器了,接收的数据就在接收缓冲器

使用特权

评论回复
板凳
桂电飞天鼠| | 2007-5-26 00:33 | 只看该作者

同意coolhu~这些问题先看书先吧,都是很基础的

使用特权

评论回复
地板
wxj1952| | 2007-5-26 10:38 | 只看该作者

我也有同样的问题。

echoxyt 君的第2个问题
2、接收缓冲器是相对什么说的呢?它接收的数据是从CAN总线上得来的吗?那么读它的数据的话,是读地址17-28呢?还是从读RBSA的地址开始,读13个字节呢?

按照书上的说法,向16~28地址里写数据,就必然写到发送缓冲器TXB了,从16~28地址读数据,就必然是从接收缓冲器RXB里读出数据。(硬件电路已经正确设计好了,编程序的人不必关心RD/WR关脚操作。)那么也就是说,RXB只能通过总线或者自测试方法由外部接收管脚RX0/RX1写入,而对内部系统来说,RXB是只读寄存器。是吗?TXB是只写寄存器,是吗?
   
      是吗?

使用特权

评论回复
5
echoxyt|  楼主 | 2007-5-26 11:54 | 只看该作者

劳烦大哥们了

第四个问题,我看了半天书,还是没有搞清楚!而且,在调试的时候一直接收不到发送的数据!发送和接受引脚要连起来吗?可好象还是没有收到。读状态寄存器为20,说明是在发送啊!可中断寄存器为00!烦请各位大哥这到底怎么回事啊?小弟头都大了,最近!~

使用特权

评论回复
6
coolhu| | 2007-5-27 21:41 | 只看该作者

rt

按照书上的说法,向16~28地址里写数据,就必然写到发送缓冲器TXB了,从16~28地址读数据,就必然是从接收缓冲器RXB里读出数据

就是这样的,只要对寄存器操作就好了,其他的你不用管的
PeliCAN模式,具体的我没有做过,不太了解

使用特权

评论回复
发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则

4

主题

6

帖子

1

粉丝