PyOCD使用
===================
PyOCD是ARM为DAPLink开发的python语言调试软件,支持多平台ARM内核芯片的烧录和在线调试。借助 **Keil CMSIS Pack** 软件支持包,极大程度拓展了PyOCD所支持的芯片平台。
我们会介绍如何使用 PyOCD 和 CMSIS Pack 实现任意厂商二进制文件烧录
---------------------------------------------------------------------------------------
**软件环境安装**
1. 安装PyOCD前需要电脑已经安装Python和命令行软件。
``命令行软件`` 可以在微软应用商店搜索 “终端”,点击安装 ``Windows Terminal`` 即可。
``Python`` 可在官网下载:`https://www.python.org/downloads/ `_
2. 从下列地方获得芯片的 ``Keil CMSIS Pack`` 支持包,它们一般命名为 **厂商名_系列名称_DFP_版本号.pack**
- ARM CMSIS Pack官网 `https://www.keil.arm.com/packs/ `_
- 芯片厂商官网
- Keil Pack默认下载目录
``C:\Users\Adminstator\AppData\Local\Arm\Packs\.Download\Keil.STM32F1xx_DFP.2.3.0.pack``
3. 打开终端软件输入以下命令来安装 PyOCD
.. code-block:: python
pip install -i https://pypi.tuna.tsinghua.edu.cn/simpl pyocd
------------------------------------------------------------------------------------------------
**PyOCD 烧录固件步骤**
我们以STM32F401CCU6为例,展示如何向其烧录固件
1. 我们首先要知道芯片在 CMSIS Pack 中的具体名称,在终端输入以下指令列举出芯片的名称,其名称与Keil里面完全一致。
.. code-block:: python
pyocd list -t -s pack --pack C:\Users\Hao\AppData\Local\Arm\Packs\.Download\Keil.STM32F4xx_DFP.2.16.0.pack
.. image:: ../_static/picture/pic_pyocd/pyocd2.png
:align: center
:width: 600
--------------------------------------------------
2. **使用如下命令即可完成烧录**
.. code-block:: python
pyocd load --pack C:\Users\Hao\AppData\Local\Arm\Packs\.Download\Keil.STM32F4xx_DFP.2.16.0.pack -f 10000000 -t stm32f401cc C:/Users/Hao/Desktop/401.hex
- ``--pack`` :指定 CMSIS Pack 具体所在路径
- ``-f`` :设置调试接口频率,以Hz为单位
- ``-t`` :指定芯片名称
- 最后是烧录文件的具体路径
**如果烧录文件为** ``bin`` **类型**, **还需要增加指定地址的命令** ``-a 0x08000000``
--------------------------------------------------
3. 运行该命令后如显示进度条为100%,说明下载成功
.. image:: ../_static/picture/pic_pyocd/pyocd3.png
:align: center
:width: 600
--------------------------------------------------
**使用如下指令还可以开启RTT打印功能**
.. code-block:: python
pyocd rtt -t stm32f401cc -f 10000000 --pack C:\Users\Hao\AppData\Local\Arm\Packs\.Download\Keil.STM32F4xx_DFP.2.16.0.pack
.. image:: ../_static/picture/pic_pyocd/pyocd4.png
:align: center
:width: 600