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

F280049C的CAN接收错误

Other Parts Discussed in Thread:LAUNCHXL-F280049C

一、CAN接收能收到数据,但是INT0ID读数为0x8000。没故障LEC=0,就导致INT0ID=0x8000。就查不到收到数据的message object 编号了。

这时用CAN_readMessage()读数据,仍然是对的。但是有多个接收message object 时,就不知道是哪个收到了数据。不知道怎么处理。

二、能正确收到数据,但是收到的数据中没有ID,我需要解析ID,CAN_readMessage()不能返回ID,如何读

接收数据时同时获得ID。

三、查询方式发送时如何用drivelib函数判断当前message object 是否空闲,也就是上一次的数据已经发完成了没有。

我想用查询方式发送,配置了0到5号message object为发送,都不固定ID,有发送需求时,先查询哪个message object空闲,就用哪个

message object发送。不知道怎么实现。

读了几遍手册,英语太烂实在是已经尽力了。看不懂,有劳指点。

谢谢!!

Susan Yang:

请问您现在使用的硬件设备是您自己的板子还是官方开发板(若是,请给出型号)?是否有外接CAN收发器?

请描述一下您主要实现的功能?若是可以的话,请上传/私信一下完整工程,谢谢

,

Susan Yang:

另外请您参考一下

www.ti.com.cn/…/sprace5.pdf

,

user4675816:

你好,用的LAUNCHXL-F280049C。其他都是小问题。主要问题是读数据时怎么读MSG_ID啊。CAN_readMessage()不返回MSG_ID

,

Susan Yang:

您需要先用CAN_transferMessage命令把数据传到IF寄存器,而后在IF寄存器中IF2ARB中读取

Using IF1ARB or IF2ARB is the right approach to read out the CAN message IDs. However to be able to read it out from those registers you need to setup a read transfer from the message RAM into the IF1ARB or IF2ARB register for the message object which you are using. Please see the the section "26.14.1 Message Interface Register Sets 1 and 2" in the TRM for details.

www.ti.com.cn/…/sprui33b.pdf

,

user4675816:

文档打不开了,麻烦重新传下,谢谢了。

,

Susan Yang:

www.ti.com/…/sprui33d.pdf

26.13 Message Interface Register Sets

赞(0)
未经允许不得转载:TI中文支持网 » F280049C的CAN接收错误
分享到: 更多 (0)