TI中文支持网
TI专业的中文技术问题搜集分享网站

关于TMS570 的FlexRAy功能的数据接收和发送问题。

我最近一直在调试使用TMS570LS3137上面的FlexRay功能。

之前在官调试有五个节点的demo,现在我自己创建了两个节点Node1和Node2。

用来发送一些较大的数据。 我在Node1中初始化了4个127字长的buffer.用来发送数据, 4个127字长的buffer.用来发送数据。同样,在Node2中也设置了4个127字长的buffer.用来发送数据,和127字长的buffer.用来接收 Node1的4个发送buffer 的数据。

我发现无论是Node1还是Node2发送Buffer不能大于3个。两个节点都有三个或者三个以下接收发送节点数时候,两个节点之间的发送和接收数据都正常。

    但是,当我把任意一个节点发送buffer数增加到四个或者更多的时候,比如我把Node1中的发送buffer数增加到4个 Node2中发送Bufffer保持3个,接收 Node1的buffer 对应的增加到四个。在Node1主函数中分别向四个buffer赋值,并分别把他们发送出去。但是在Node2中,收到Node1的数据第三个buffer数据竟然是自己发出去的数据。而不是来自Node1的第三个buffer的数据。

而且本来在Node1中本应正常收到Node2发来的3个Buffer的数据只能接收到了前两个。不知道这是怎么回事。希望知道的大神指点指点。我觉得我的 接收和发送配置应该是没有问题的。

gaoyang9992006:

官方给的demo是buffer多长的啊?

MichaelLee:

回复 gaoyang9992006:

你好,官方的代码有两个节点的和五个节点的,五个节点的是每个节点都有一个18字节大小的TX buffer一个254字节大小的tx buffer

并有分别对其他节点的4个18字节的RX buffer 和4个 254字节的RX buffer,两个节点的DEMO 也是同样的道理。具体的可以看附件。

赞(0)
未经允许不得转载:TI中文支持网 » 关于TMS570 的FlexRAy功能的数据接收和发送问题。
分享到: 更多 (0)