发新帖我要提问
12
返回列表
打印

stm32 can如何发送扩展帧,扩展ID如何发送,现在是对不上

[复制链接]
楼主: zangjinlian
手机看帖
扫描二维码
随时随地手机跟帖
21
wll_2012| | 2013-8-6 10:01 | 只看该作者 回帖奖励 |倒序浏览
TxMessage.StdId=FStdId;//FStdId;                                         // 标准标识符为(11位)
TxMessage.ExtId=FExtId;//FExtId;                                 // 设置扩展标示符(29位)
个人认为这两个只能保留一个,如果你两个都需要使用,可以加个条件,如果你单纯的这样写应该是不对的。

使用特权

评论回复
22
zangjinlian|  楼主 | 2013-8-7 10:04 | 只看该作者
wll_2012 发表于 2013-8-6 10:01
TxMessage.StdId=FStdId;//FStdId;                                         // 标准标识符为(11位)
TxM ...

嗯,对的,你可以看一下我给的程序,里面是有区分的,通过判断是标准帧还是扩展帧

使用特权

评论回复
23
wll_2012| | 2013-8-7 10:25 | 只看该作者
zangjinlian 发表于 2013-8-7 10:04
嗯,对的,你可以看一下我给的程序,里面是有区分的,通过判断是标准帧还是扩展帧 ...

但是你的Can_Send_Msg函数依然不能那样写,

使用特权

评论回复
24
zangjinlian|  楼主 | 2013-8-7 11:16 | 只看该作者
wll_2012 发表于 2013-8-7 10:25
但是你的Can_Send_Msg函数依然不能那样写,

那要怎样写呢

使用特权

评论回复
25
zangjinlian|  楼主 | 2013-8-7 15:58 | 只看该作者
只是屏蔽就可以吗、我把标准帧去了,还是一样的不好用,可能还有哪里有问题

使用特权

评论回复
26
zeluo| | 2013-8-7 19:03 | 只看该作者
问题解决了吗   楼主   应该不会太难吧   个人的理解

使用特权

评论回复
27
jxmzzr| | 2013-8-7 22:35 | 只看该作者
旁听学习一下,越听越头疼,看来学习还是硬道理啊……

使用特权

评论回复
28
vacky| | 2013-8-8 14:11 | 只看该作者
还有一个节点是上位机的话,是否可以看到板子发出来的数据?楼主最好先确定是发送的问题还是接受的问题,个人认为按照例程来填写发送结构体一般不会出问题,也许是接收端的问题

使用特权

评论回复
29
zangjinlian|  楼主 | 2013-8-8 14:44 | 只看该作者
谢谢各位的支持和关注,本人的问题解决了,原因很简单我的程序没问题,我发上去的例程不用改变就可以实现

错就错在我的程序是与上位机相结合,下来的标准帧和扩展帧的判断我们用的是内部的协议导至我这一块没有改成这里边用到的扩展帧为0X04,而我用的是0X01,因此出现在发送和接收对不上,是我马虎出的错:P

使用特权

评论回复
30
nucdck| | 2013-8-8 16:20 | 只看该作者
注意用完了以后要清零,然后在赋值,有的时候,逻辑复杂了,清清0,能比较好的避免逻辑bug

使用特权

评论回复
31
hawksabre| | 2013-8-8 20:53 | 只看该作者
好帖子   需要好好学一学   顶一个   很不错

使用特权

评论回复
32
ljb250013335| | 2015-7-25 12:45 | 只看该作者
wll_2012 发表于 2013-8-6 10:01
TxMessage.StdId=FStdId;//FStdId;                                         // 标准标识符为(11位)
TxM ...

野火 的程序里边只用了 扩展的部分,而没有加标准部分~~~

使用特权

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

本版积分规则