关于CANOPEN canfestival SDO发送流程 请教各位

2019-12-11 18:18发布

最近一直在弄CANOPEN,STM32上面canfestival协议栈能跑起来了,但还是有很多不明白的地方,比如SDO的发送和接收,查看了硬石科技关于CANOPEN的资料,前面说了一大理论,后面的例程里面关于SDO的发送,居然是用底层的CAN模拟协议发送数据!有人说是用writeNetworkDictCallBack()函数进行SDO操作,用了但没看到发出来的数据,所以请教论坛里面的大神,STM32的canfestival是通过调用哪个函数来实现SDO的发送和接收,工作流程是怎么样的?

NTW`U3}YAKE_OQ8$O[${OB5.png (71.11 KB, 下载次数: 2) 下载附件 2019-1-22 11:31 上传
友情提示: 此问题已得到解决,问题已经关闭,关闭后问题禁止继续编辑,回答。
该问题目前已经被作者或者管理员关闭, 无法添加新回复
16条回答
lostid
1楼-- · 2019-12-13 14:19
oldmen 发表于 2019-1-22 19:35
同步信号每个节点都可以发送,在字典里设定后节点就可以发送。当然一个网络只能一个节点发送同步信号,事件 ...

这个应该是我记错了,纯事件触发不需要同步信号。类型0的同步传输模式才是事件+同步信号。
atonghua
2楼-- · 2019-12-13 15:56
lostid 发表于 2019-1-23 10:01
这个应该是我记错了,纯事件触发不需要同步信号。类型0的同步传输模式才是事件+同步信号。 ...

嗯 好的 谢谢!我去试试
lostid
3楼-- · 2019-12-13 19:16
 精彩回答 2  元偷偷看……
atonghua
4楼-- · 2019-12-13 23:19
lingdianhao 发表于 2019-1-22 20:02
我用的这个函数。

然后你要查询SDO是否传输完成。

你好 好像直接用writeNetworkDictCallBack 也可以?回调函数里面加入  getWriteResultNetworkDict   如果从站的SDO没有回应,也会报错。

一周热门 更多>