Eip开源从站Opener在MCU上的移植调试记录(一 准备工作)
一、总览
这里要首先感谢前期接触了瑞萨的RZ/N2L芯片以及RT-THREAD的开发板子EtherKit,在整个移植过程中帮了大忙。
其实瑞萨做这款芯片的目的就是跑工业以太网协议栈的,集成了ESC控制器,官方提供了EtherCAT、Eip、Profibus、等等。
而RT-THREAD把官方的行为发扬光大了,推出了300多元的开发板子,并且把官方的软件包集成到了系统中,可以直接“点点鼠标”就完成功能集成。
二、思路
经过上面的分析,现在手里有两个可参考的代码
瑞萨官方开发板子的:

https://www.renesas.cn/zh/design-resources/boards-kits/rz-n2l-rsk#tab-sample-code
跑的是FreeRTOS+LWIP+opener实现Eip从站功能,并且提供的从站的eds文件。
RT-THREAD的EtherKit板子的:

跑的是RT-HREAD+LWIP+opener实现的Eip从站功能,并且提供的从站的eds文件。
可以这样简单的认为,RT-THREAD是在瑞萨官方移植适配 过去的。
于是思路就比较清晰了,优先移植适配瑞萨官方的版本。
但在后面具体移植过程中,却无从下手。因为瑞萨“集成度”太高,导致opener/port部分被瑞萨改动比较多,无法适配STM32F407平台。
反观RT-THREAD,系统不熟悉,但并没有改太多源码,且自己改动的opener/port部分新建了文件夹,源码的opener/port没被改动。
于是在几经周折后(实际上已经移植折腾了好几遍了),决定移植RT-THREAD版本,在移植过程中与FreeRTOS差异的部分参考瑞萨官方代码。
三、移植的前置项
由于opener是建立在TCP/IP协议之上的软件协议,也就说在移植之前,先确保宿主平台已经具备了网络通讯功能。
这就需要MCU完成以太网外设初始化,Lwip初始化,通过PC能ping通MCU设备。通过调用Lwip的API与PC正常建立TCP、UDP通讯。
在上述工作完成后才能进行后续的pener移植工作
未完待续。。。。。。
文内示例见咸鱼ID:tb764914262
DAMO开发者矩阵,由阿里巴巴达摩院和中国互联网协会联合发起,致力于探讨最前沿的技术趋势与应用成果,搭建高质量的交流与分享平台,推动技术创新与产业应用链接,围绕“人工智能与新型计算”构建开放共享的开发者生态。
更多推荐
所有评论(0)