特别地,在stack/drvTemplate目录中,为开发者提供了一个向具体目标平台移植CANopenNode的源码模板,同时还提供了在多种不同微控制器平台上移植CANopenNode的范例,例如stack/STM32,stack/LPC1768,stack/PIC32等。 CANopenNode的移植接口 CANopenNode的源码目录中,专门为在具体微控制器平台上实现移植提供了源码模板,位于s...
下面我们将以MM32G5330微控制器上集成的FlexCAN为例,完成对CANopenNode v1.3的移植,并实现一个 CANopen_Basic 样例进行基本功能验证。 首先在灵动官网下载基于Mini-G5330开发板的LibSamples_MM32G5330软件包,并在该软件包的根目录文件夹下创建 ~/3rdPartySoftwarePorting/CANopenNode 文件夹,如下图1所示,将获取的...
在CANopenNode移植中涉及到三个文件需要被复制引用和修改: CANopenNode-1.3/example/main.c 文件。 CANopenNode-1.3/stack/drvTemplate/CO_driver.c 文件。 CANopenNode-1.3/stack/drvTemplate/CO_driver_target.h 文件。 其中: 在mian.c 文件中实现 tmrTask_thread() 函数 通加载进入1ms 定时中断服务函数进行...
在CANopenNode移植中涉及到三个文件需要被复制引用和修改:CANopenNode-1.3/example/main.c 文件。CAN...
总结在微控制器平台上移植CANopenNode,需要根据具体硬件条件,适配2个源文件: CANopenNode-1.3/stack/drvTemplate/CO_driver.c 文件。 补充CO_CANmodule_init() 函数:初始化CAN外设硬件,配置CAN协议引擎、收发报文消息的参数,以及启用中断。 补充CO_CANsend() 函数:复制CANopenNode组件中缓冲区的消息帧到硬件引擎,...
在CANopenNode移植中涉及到三个文件需要被复制引用和修改: CANopenNode-1.3/example/main.c 文件。 CANopenNode-1.3/stack/drvTemplate/CO_driver.c 文件。 CANopenNode-1.3/stack/drvTemplate/CO_driver_target.h 文件。 其中: 在mian.c 文件中实现 tmrTask_thread() 函数 ...
CANopenNode-1.3-master.zip 开发技术 - C To**om上传392KB文件格式zip CANopen协议,C语言实现,可方便移植到各种平台。 (0)踩踩(0) 所需:1积分
CANopen是实现CAN设备组网的典型协议栈和规范,对应于软件系统中,有一些开源的软件组件,实现了CANopen协议栈,例如CANopenNode和CAN Festival。CANFestival 2023-06-23 15:49:00 基于FlexCAN适配CANopenNode 总结在微控制器平台上移植CANopenNode,需要根据具体硬件条件,适配2个源文件。
下面我们将以MM32G5330微控制器上集成的FlexCAN为例,完成对CANopenNode v1.3的移植,并实现一个 CANopen_Basic样例进行基本功能验证。 首先在灵动官网下载基于Mini-G5330开发板的LibSamples_MM32G5330软件包,并在该软件包的根目录文件夹下创建 ~/3rdPartySoftwarePorting/CANopenNode 文件夹,如下图1所示,将获取的 ...