这是一篇入门帖,高手请指点一下,主要是记录我对CANOPEN协议的理解以及使用。图片还没研究好怎么上传,等后面研究好了补上。第一步;新建一个工程,配置好各种时钟之类的。当然你用的是原子的板子, 你也可以拿一个LED实验或者蜂鸣器实验的工程 直接来改,你把其他的注释掉就好了。
第二步;到网上下载CanFestival源码CanFestival-3-10,解压出来,并将文件夹名字改为CanFestival-3-10。移植需要用到的源文件在CanFestival-3-10src目录下,头文件在CanFestival-3-10include目录下。
第三部;开始移植。
友情提示: 此问题已得到解决,问题已经关闭,关闭后问题禁止继续编辑,回答。
这应该算是把协议栈跑起来了,但是距离正在的使用,我觉得还有待学习。
至于为什么这么说,是因为你还不知道COB_id是什么,我简单的说一下,你自己再去查查资料。
0X708就是COB_ID+NODE_ID,你现在应该收到的数据是0x708 05或者0x708 7F。0x708是COB_ID+NODE_ID 05表示节点状态。
canopen没有严格的主从机之分,常常大家说的主机是指具备网络管理的那个节点,你可以把这个功能赋予到任何节点,但是一般只赋予一个,那么他就认为是主机其他的节点都是一样的了。
具体的接收数据你自己再研究一下吧。
有问题欢迎再看过资料之后再问,这样更高沟通。
可以通过USB_CAN能控制LED的亮灭基本上就算会用了
之前接收的内容一个是类似节点上线通知和心跳报文状态,但现在遇到一个奇怪的问题,心跳报文的时间间隔和设置的时间不一样(设置0x64),大概会是什么问题?
一周热门 更多>