前序
canFestival是实现了canopen协议,本文分析canFestival架构和移植原理。
canFestival各个文件夹功能
- 下载canFestival源码包。
canFestival的官网下载地址:https://canfestival.org/apps.html.en
这些老外的官网地址在国内去访问总是很慢,甚至不能打开,此时此刻我们最后另想其他办法,因为这些源码肯定有别人下载过,他们就会传到网上其他的地方,我在github上找了一个下载地址(https://github.com/ljessendk/CanFestival.git),用git下载妥妥的,很稳很顺利,如果你git也不好玩,那么可以百度其他地方的网址下载。
- 解压和各个文件夹的作用。
把源码解压可以看到:

(1)debian和doc文件夹分别是Linux相关、文档说明文件夹,感兴趣的话可以自行探索。
(2)drivers目录是各种MCU相关的底层硬件操作驱动,主要是定时器、CAN接口。
(3)examples目录里面是各种MCU使用的例子。
(4)include目录是与src对应的头文件。
(5)objdictgen目录是对象字典生成的工具,在examples目录里面的例子都要使用到的。
(6)src是canopen实现的核心代码,如下图所示,包含了各种报文实现的c文件、状态转换处理states.c文件,定时器使用timer.c文件。


本文深入剖析canFestival架构,介绍其文件夹功能及运行机制。通过AT91的example,阐述移植步骤,包括CAN硬件初始化、对象字典生成及用户业务逻辑设计。
最低0.47元/天 解锁文章
7398

被折叠的 条评论
为什么被折叠?



