这是一篇入门帖,高手请指点一下,主要是记录我对CANOPEN协议的理解以及使用。图片还没研究好怎么上传,等后面研究好了补上。第一步;新建一个工程,配置好各种时钟之类的。当然你用的是原子的板子, 你也可以拿一个LED实验或者蜂鸣器实验的工程 直接来改,你把其他的注释掉就好了。
第二步;到网上下载CanFestival源码CanFestival-3-10,解压出来,并将文件夹名字改为CanFestival-3-10。移植需要用到的源文件在CanFestival-3-10src目录下,头文件在CanFestival-3-10include目录下。
第三部;开始移植。
友情提示: 此问题已得到解决,问题已经关闭,关闭后问题禁止继续编辑,回答。
TimeDispatch我的理解是使用定时器来处理各个节点的状态,功能是遍历timers,如果有超时的,就调用相应的call, 这些timers是由SetAlarm()函数来设定的
#define TIMEVAL_MAX 0XFFFFFF(定时器的最大计数值, 24位为0xFFFFFF)
#define MS_TO_TIMEVAL(ms) (1ms对应的计数值, 例如计数频率为1us,则此值为1000)
#define US_TO_TIMEVAL(us) (1us对应的计数值, 例如计数频率为1us,则此值为1)
我也不是特别懂协议栈底层。我忘记在哪里看到的,是说协议栈本身的时间机制,不是一个特别精准,而是一个动态调节的时间机制。
一周热门 更多>