Cortex-M Python调试器
pyocd的Python项目详细描述
Pyocd
pyocd是一个开源的python包,用于编程和调试arm cortex-m微控制器 使用多种支持的USB调试探测类型。它完全跨平台,支持 Linux、MacOS和Windows。
提供了一个命令行工具,可以覆盖大多数用例,也可以使用python 用于启用低级目标控制的API。python api的一个常见用途是运行和控制ci 测试:
内置70多个受欢迎的MCU。此外,通过使用CMSIS软件包, 市场上几乎所有Cortex-M设备都受支持。
pyocd命令行工具让您可以通过以下子命令完全控制设备:
gdb server
:gdb远程服务器允许您通过 gnu mcu eclipse插件或控制台。闪存
:将各种格式的程序文件放入闪存。擦除
:擦除部分或全部MCU闪存。pack
:管理CMSIS设备系列包 提供额外的目标设备支持。指挥官
:交互式REPL控制和MCU检查。列表
:显示连接的设备。
API和工具提供以下功能:
- 停止,单步,继续控制
- 读/写存储器
- 读/写核心寄存器
- 设置/删除硬件和软件断点
- 设置/删除监视点
- 写入闪存
- 将二进制、十六进制或elf文件加载到flash中
- 复位控制
- 访问CoreSight DP和AP
- SWO和SWV
- 还有更多!
通过配置文件支持配置和自定义 用户脚本
要求
- Python2.7.9或更高版本,或Python3.6.0或更高版本
- MacOS、Linux或Windows 7或更高版本
- 带ARM Cortex-M CPU的微控制器
- 支持的调试探测
状态
pyocd在功能上是可靠的,并且是完全可用的。
python api被认为是部分不稳定的,因为我们在 发布1.0版。
文档
pyocd文档位于docs目录中。
除了用户指南之外,您还可以使用doxygen和 提供配置文件
安装
pyocd的最新稳定版本可以通过pip安装。 如下所示:
$ pip install -U pyocd
最新的pyocd包也可以在pypi上找到。
在github上 要从主分支的负责人处安装最新的预发行版本,可以执行以下操作
以下内容: 您还可以通过克隆git存储库并运行: 注意,根据您的操作系统,您可能在运行时遇到权限问题g这些命令。
这里有几个选项: pyusb及其后端库libusb是
依赖于所有支持的操作系统。pyusb是一个普通的python包,将
与Pyocd一起安装。但是,libusb是一个未安装的二进制共享库
自动通过PIP依赖关系管理。 如何安装libusb取决于您的操作系统: 在Linux上,特别是Ubuntu16.04+,必须配置udev规则以允许pyocd访问debug
从用户空间进行探测。否则您将需要使用sudo以根用户身份运行pyocd,这非常
非常气馁。(您不应该在任何操作系统上以根用户身份运行pyocd。) 为了帮助实现这一点,示例udev规则文件包含在pyocd中
udev文件夹。这个
此文件夹中的自述文件详细说明了
说明。 有关如何检查
您正在使用的MCU具有内置支持,以及如何通过
CMSIS包。 通过pip或setup.py安装pyocd之后,您将能够执行以下操作
启动一个由pyocd驱动的gdb服务器: 您可以通过运行 示例命令行gdb会话,显示如何连接到正在运行的pyocd gdbserver并加载
固件: pyocd gdbserver子命令也可以作为openocd在
现有设置。主要区别在于gdb监视器命令的设置。 嵌入式a rm cortex-m开发的推荐工具链是gnu arm
嵌入式$ pip install --pre -U https://github.com/mbedmicro/pyOCD/archive/master.zip
$ python setup.py install
,
由ARM提供。GDB包含在此工具链中。sudo-h
运行以全局安装pyocd和依赖项。(使用sudo安装
MacOS永远不需要。)--user
选项将本地安装到用户。libusb安装
brew安装libusb
Linux上的udev规则
目标支持
独立的GDB服务器
$ pyocd gdbserver
pyocd gdbserver--help获得其他帮助
$ arm-none-eabi-gdb application.elf
<gdb> target remote localhost:3333
<gdb> load
<gdb> monitor reset
推荐的gdb和ide设置
gdb服务器可以很好地与eclipse和gnu mcu eclipse一起工作。 插件。gnu mcu eclipse完全支持pyocd Pyocd调试插件。
要查看外设寄存器值,可以使用内置gnu mcu eclipse register视图,或者 可以安装嵌入式系统注册表查看器插件。这些可以从内部安装 eclipse使用以下软件更新服务器地址:
- gnu mcu eclipse:http://gnu-mcu-eclipse.sourceforge.net/updates" rel="nofollow">http://gnu mcu eclipse.sourceforge.net/updates
- 嵌入式系统寄存器查看器:http://embsysregview.sourceforge.net/update" rel="nofollow">http://embsysregview.sourceforge.net/update
在eclipse中,选择"帮助->;安装新软件…"菜单项。然后单击"添加…" 按钮并从上面填写名称和url(每个站点一次),或者简单地将url复制到 显示"键入或选择站点"的字段。然后您可以选择要安装的软件并单击 下一步开始此过程。
开发设置
有关如何设置 Pyocd的开发环境。
贡献
我们欢迎在任何领域对Pyocd作出贡献。请参阅贡献 有关捐款的详细要求的指南。
要报告错误,请在 Github项目。
许可证
pyocd使用许可的apache 2.0许可证进行许可。有关 许可证的全文。
版权所有©2006-2019 ARM有限公司