CanFestival win32程序调试过程记录 版本CanFestival-3-8bfe0ac00cdb
来源:互联网 发布:macbook下载软件免费 编辑:程序博客网 时间:2024/06/14 22:25
最近在调试一个伺服驱动器,支持CanOpen和EtherCAT,因最终将使用单片机或FPGA控制,Ethernet的IP核要十几万,故选择CanFestival进行移植。但进行调试时发现一些问题,记录一下,也方便看到的朋友的参考。
1、objdictgen 字典编辑器的环境要求
a) python 2.7(python3不可以)
b) wxPython 版本我使用的是“wxPython2.8-win32-unicode-2.8.12.1-py27.exe”,实测最新的wxPython不可用,不要用pip install -U wxPython安装最新版本,最新版会有如PySimpleApp 改为 App等问题,因为我不熟悉Python,所以没有动程序,直接换了老版本一切正常,有能力的朋友可以对源码进行修改。
c) Gnosis_XML已经被Gnosis_Utils包含,所以只要安装Gnosis_Utils就可以,Gnosis_Utils包在objdictgen文件夹下有,解压后,cmd或终端进入文件夹,python setup.py install_all(如敲install是只给自己安装)进行安装后即可。
d) Beremiz装不装无所谓,这是个开源PLC方案,CanFestival现在属于它的一个子项目,如果安装,在文件夹下会有一个CanFestival-3的文件夹,可以直接使用,与网上下载的源码包没什么区别。
2、提示无TestMater.c之类的问题
用objdictgen中的objdictedit.py重新编译缺失文件目录的.od文件并生成字典文件,包含一个.c和一个.h文件。字典工具我windows与ubuntu均打开过,可显示中文比较容易使用的。
3、最头大的一个问题,无法解析__nodeguardError
找了半天不知道什么问题,nodeguardError定位在lifegrd.c文件中,不知道为何找不到。后来发现要在\src\win32\CanFestival-3.def中添加_nodeguardError的定义,因为源码没用extern,而是通过def文件去找,尴尬的是不知道为什么好几个版本的源码中都有这个问题,百度搜了一圈也没找到答案,可能大神都直接移植没有用win32跑过。
CanFestival-3.def中“; lifegrd.h”部分如下:
; lifegrd.h
_heartbeatError
_post_SlaveBootup
_post_SlaveStateChange
_nodeguardError
getNodeState
heartbeatInit
heartbeatStop
proceedNODE_GUARD
最终生成了exe,CanFestival这个源码包真是挺折腾的,传一个修改完的包,方便朋友们使用。现在最低就是定两个币,不然就免费给大家下载了。
http://download.csdn.net/download/prius0304/10118851
- CanFestival win32程序调试过程记录 版本CanFestival-3-8bfe0ac00cdb
- canfestival 学习
- CANFestival简介
- CANOpen移植(CanFestival移植)
- CanFestival 源代码目录结构
- Mongo-canfestival-3-asc中对象字典编辑器的打开
- 初识canopen的实现CanFestival
- CanFestival-3.0 windows下编译
- CANfestival被开源PLC项目Beremiz采用
- CanOpen协议【CanFestival】移植到STM32
- CanFestival源码的获取和编译
- canfestival中对象字典编辑器的打开
- CANfestival-arm主站设计几个常用的命令
- ARM板Ubuntu平台上编译CANFestival的方法
- CanOpen协议【CanFestival】移植方法 支持VC、QT、STM32
- ARM板Ubuntu平台上编译CANFestival的方法
- win32程序启动过程
- Win32程序窗口过程
- 重写scrapy中间件之RetryMiddleware
- Java 内置数据类型总结
- HDOJ-1702 ACboy needs your help again!
- es6学习过程(二)
- 标准模板库 STL-1 编程题#1(Coursera 程序设计与算法 专项课程3;用法:迭代器 ostream_iterator,容器 set)
- CanFestival win32程序调试过程记录 版本CanFestival-3-8bfe0ac00cdb
- CodeForces
- 模板中使用str_limit限定字符长度
- C/C++训练1---最大公约数与最小公倍数
- PAT 1056. 组合数的和(15)
- 设计模式扫盲篇
- Bootstrap学习笔记(二)
- Web服务器、Servlet容器和Servlet
- 第一天