python 调试IGH库

 如何通过python来调试IGH的库呢?

可以使用如下的代码,测试请求主站,把主站变成激活状态。其他的函数也可以类似的一步一步调用。

结果如下:

from ctypes import *
igh=CDLL("/home/cheni/lichuan_bujin/libethercat.so")
igh.ecrt_request_master(0)

 第一步:找到igh安装库的文件夹

我的安装后实在这个文件中,

找不到安装目录后,可以在安装包文件中再运行一下安装指令 make modules_install install,在里面翻一下,他会提示安装到哪个目录里面的。

不要复制那边那个带箭头的,那个是链接文件,libethercat.so.1.1.0才是实际文件。复制到自己的工程文件中,我的是lichuan_bujin,把后面的。1.1.0删除了,通过重命名,太长了,不好看。留这一样能用,就是文件名自己改就行。

第二步:先用命令行查看一下master的状态

 运行前看下,一般这个阶段是Idle,这个master0

 

第三步:通过python3命令行一步一步试一下

这个要切换到管理员权限,不然请求主站的时候会提示权限不够

 第四步:运行python程序,改变状态

这个也是要管理员的权限的

#igh_caozuo.py的内容
from ctypes import *
import time
igh=CDLL("/home/cheni/lichuan_bujin/libethercat.so")
igh.ecrt_request_master(0)
time.sleep(35)

注意这个暂停时间,如果不暂停,程序结束,就看不到状态机改变了。 

 

 第五步:查看状态机的阶段

 请求完状态机后可以通过命令行查看一下主张的状态已经改变

 这个跟他那个IGH手册上讲的是一致的。

 

 

 

### 如何在Keil MDK中安装配置STM32F407IGH #### 安装准备 为了确保顺利安装并配置STM32F407IGH,需先确认已正确设置好开发环境。当选择Project Manager选项卡,在Project中为项目命名,并指定项目文件夹位置时,应特别留意选择适合的IDE。对于使用Keil的情况,则要选择MDK-ARM IDE作为目标集成开发环境[^1]。 #### 下载必要的软件包 前往ST官方资源网站下载适用于STM32F4系列微控制器的标准外设或HAL。这些包含了针对不同型号芯片的支持文件,其中包括了对STM32F407IGH的支持。确保获取最新版本以获得最佳兼容性和性能表现。 #### 配置工程模板 创建新的Keil工程项目后,按照如下方式操作: 1. 将所下载的文件解压至易于访问的位置; 2. 在Keil uVision界面内通过`Project -> Add Group`命令添加一个新的组名用于存放外部源码和头文件; 3. 使用`Add Existing Files to Group`功能将解压缩后的所有`.c`以及对应的`.h`文件加入到刚刚建立好的分组里; 需要注意的是,某些特定硬件模块可能并不完全适用当前使用的单片机型号。例如,不应导入`stm32f4xx_fsmc.c`这类专属于其他子系列产品(如F42)的功能驱动程序,因为它们之间存在差异——具体来说就是F42不支持FSMC而采用FMC接口,只有像F407这样的设备才具备完整的FSMC特性[^2]。 #### 设置编译器参数 完成上述步骤之后,还需调整一些编译选项来适应新引入的内容。这通常涉及到修改包含路径、定义预处理器宏等细节方面的工作。可以通过右键点击左侧栏中的项目名称->Options for Target->C/C++标签页来进行相应设定。 #### 测试验证 最后一步便是编写简单的测试代码片段检验整个流程是否成功执行。下面给出了一段基础LED闪烁实验示范代码供参考: ```c #include "stm32f4xx_hal.h" int main(void){ HAL_Init(); __HAL_RCC_GPIOA_CLK_ENABLE(); GPIO_InitTypeDef GPIO_InitStruct = {0}; GPIO_InitStruct.Pin = GPIO_PIN_5; GPIO_InitStruct.Mode = GPIO_MODE_OUTPUT_PP; GPIO_InitStruct.Pull = GPIO_NOPULL; GPIO_InitStruct.Speed = GPIO_SPEED_FREQ_LOW; HAL_GPIO_Init(GPIOA, &GPIO_InitStruct); while (1) { HAL_GPIO_TogglePin(GPIOA, GPIO_PIN_5); HAL_Delay(500); } } ```
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

leecheni

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值