1 Star 0 Fork 368

qugx0528/LiteOS_Studio

加入 Gitee
与超过 1200万 开发者一起发现、参与优秀开源项目,私有仓库也完全免费 :)
免费加入
文件
克隆/下载
project_stm32.md 16.81 KB
一键复制 编辑 原始数据 按行查看 历史
qugx0528 提交于 1个月前 . update docs/project_stm32.md.

STM32工程示例

本节介绍如何使用HUAWEI LiteOS Studio 开发STM32开发板工程。开源LiteOS工程,支持STM32F429IGSTM32L431RCSTM32F769NISTM32F072RBSTM32F103ZESTM32F407ZGSTM32系列开发板,以及支持Qemu仿真的realview-pbx-a9开发板。

搭建Windows开发环境

STM32工程使用Makefile进行构建管理, 需要安装Make.exe构建工具,GNU Arm Embedded Toolchain编译交叉工具链,并使用JLink仿真器。

如果使用OpenOCD烧录,还需要安装OpenOCD烧录工具。

如果选择realview-pbx-a9开发板进行仿真,还需要安装Qemu仿真器工具。

如果需要新建工程,还应该安装git for windows工具。

对于一些STM32开发板,用户可能还需要安装USB转串口驱动。

安装git for windows工具

如果用户需要使用新建工程功能下载开源工程SDK,则应根据情况安装git for windows工具,可参考安装Git工具

安装GNU Make等构建软件

开源LiteOS工程使用Makefile文件组织编译和链接程序,需要安装GNU Make工具,可参考安装Make构建软件

安装GNU Arm Embedded Toolchain软件

开源LiteOS工程使用ARM GCC编译器进行编译,需要安装编译器软件,可参考安装arm-none-eabi软件

安装JLink仿真器软件

如果开发板使用JLink仿真器,则应根据情况安装JLink软件,可参考安装JLink仿真器软件

安装Qemu仿真器软件

如果开发板使用Qemu仿真器,则应根据情况安装Qemu软件,可访问Qemu下载官网自行下载安装。

使用入门

演示如何新建工程、编译、烧录、串口调试、GDB图形化单步调测等功能。

新建工程(可选)

注意:当本地已有工程/源码时,无需再新建工程,直接进入下一步打开工程

通过点击新建工程图标avatar,打开新建工程界面。在使用HUAWEI LiteOS Studio新建STM32工程时,需要联网,确保可以访问开源LiteOS。如果联网需要代理,请提前配置好代理,否则新建工程会失败。配置代理方法参考常见问题。同时,需要确保本地已安装git for windows工具。

步骤 1工程名称中填入自定义的工程名

步骤 2工程目录中填入或选择工程存储路径,路径名中不要包含中文、空格、特殊字符等

步骤 3 选择SDK版本号,当前STM32工程被维护在https://gitee.com/,支持最新版本master分支

步骤 4 在开发板信息表点选开发板所在行,目前默认提供STM32F429IGSTM32F769NISTM32L431RCSTM32F103ZESTM32F072RBSTM32F407ZGrealview-pbx-a9七种开发板

点击确认按钮,后台将下载并保存所选目标板的SDK,等待下载完成后会在一个新窗口中自动打开新建的工程。

avatar

打开工程

新建工程后,会自动打开工程。如果需要打开存在的工程,点击打开工程图标avatar,选择工程所在目录即可。

目标板配置-选择目标板

步骤 1 点击工具栏上的工程设置图标avatar,打开工程配置界面

步骤 2 点击目标板,选取当前工程对应的开发板,下面以STM32F429IG作为示例,点击确认按钮avatar进行保存

avatar

组件配置-组件使能与属性修改(可选)

如需对LiteOS开放可配置的组件与属性进行使能,而不是仅使用默认的配置,用户可以点击工程配置界面上的组件配置,在左侧的选择组件中点击想要使能或修改的组件,在右侧的组件属性栏勾选需要使能的组件,或更改组件属性值,点击确认按钮avatar保存。

avatar

编译配置-编译代码

步骤 1 点击工程配置界面上的编译器

avatar

步骤 2 编译器类型选择arm-none-eabi

步骤 3 编译器目录用户需要自行下载GNU Arm Embedded Toolchain编译交叉工具链,已提供默认路径。通过本站提供的自动下载程序,arm-none-eabi编译器就会安装到该路径下。用户也可自行指定安装目录,点击图标avatar设置为arm-none-eabi-gcc.exe所在路径

步骤 4 Make构建器用户需要自行下载Make.exe构建工具,已提供默认路径。通过本站提供的自动下载程序,Make.exe构建工具就会安装到该路径下。用户也可自行指定安装目录,点击图标avatar设置为make.exe所在路径

步骤 5 Makefile脚本路径已填入默认值,用户也可以自行更改。对于STM32工程,在工程根目录下的Makefile文件上点击右键->设置为Makefile文件,或点击图标avatar进行自定义设置,也可使用avatar按钮自动搜索脚本文件

步骤 6 Make参数已填入默认值,用户也可自行修改

步骤 7 配置好后点击确认按钮avatar进行保存

步骤 8 点击工具栏上的编译图标avatar 开始编译,也可以点击重新构建图标avatar 进行清理和重新编译

编译成功的截图示例如下:

avatar

清理编译输出的截图示例如下:

avatar

烧录配置-烧录

以下为直连烧录方式,当有JLink远程连接需求时,参考JLink远程烧录、调测

步骤 1 点击工程配置界面上的烧录器

avatar

步骤 2 烧录方式选择JLink。如果目标板是STM23L431RCSTM32F769NI,建议刷成JLInk进行调测, 详细操作方法参考ST-Link仿真器单步调测

步骤 3 烧录器目录已提供默认路径,也可以点击图标avatar进行自定义设置

注意:如果用户安装的JLink目录不是Studio默认填入的C:\Program Files (x86)\SEGGER\JLink,请根据实际安装目录进行填写。

步骤 4 烧录文件设置,可以通过手动和自动两种方式设置文件:

  • 手动设置:点击烧录文件后的图标avatar或者在左侧工程树的烧录文件上单击右键->设置为烧录文件进行设置,如下图所示:

    avatar

  • 自动设置:点击下拉菜单选择自动匹配的烧录文件

步骤 5 连接方式连接速率加载地址等保持默认,或根据开发板进行调整。配置好后点击确认按钮avatar保存

步骤 6 点击工具栏上的图标avatar进行烧录

烧录成功的截图如下:

avatar

步骤 11 烧录成功后,点击串口终端图标avatar打开串口终端界面,设置端口,开启串口开关,开发板按下复位RESET按钮,可以看到串口输出

avatar

调试器-执行调试

HUAWEI LiteOS Studio 调测配置非常简单,只需要几步,即可支持STM32开发板的图形化单步调试。

步骤 1 点击工程配置界面上的调试器

avatar

步骤 2 调试器根据实际情况选择JLink或者OpenOCD。对于板载ST-Link仿真器的开发板,建议刷成JLInk进行调测,操作方法参考ST-Link仿真器单步调测

步骤 3 连接方式根据需求选择SWDJTAG连接速率可以默认或者自行指定

步骤 4 调试器目录根据实际情况设置调试器的安装目录,如果与实际安装目录不一致,调试可能失败

步骤 5 GDB目录设置编译器目录,可参考编译器界面填写

步骤 6 可执行文件路径完成编译后就会生成可执行文件,用户可以点击图标avatar手动设置,也可以点击下拉菜单选择自动匹配的可执行文件

步骤 7 调试配置根据需要,选择复位调试附加调试

  • 复位调试 会自动重启开发板,并停止在main函数
  • 附加调试 不重启开发板,附加到当前运行代码行

配置好后点击确认按钮avatar保存。

步骤 8 点击打开调试并运行视图,选择调试配置JLINK Debug, 点击绿色三角按钮,开始调试

如果调测器配置为OpenOCD,则显示的是OpenOCD Debug

avatar

步骤 9 调试界面如下:

avatar

  • 变量 展示局部变量、全局变量、静态变量

  • 监视 监视指定的表达式

  • 调用堆栈 展示当前运行状态和暂停状态的任务调用堆栈

  • 断点 展示设置的断点

  • 寄存器 查看各个寄存器的数值,支持复制数值操作

  • 反汇编 & 内存 支持对函数进行反汇编,支持查看内存操作

  • 输出 展示GDB客户端的输出日志

  • 调试控制台 展示GDB Server的输出日志

调试器-断点

添加断点有两种方式:

  • 方式一:将鼠标放在代码行号处,行号前面会出现红色圆点,单击圆点将这一行添加为断点。

  • 方式二:点击右键添加断点添加条件断点添加记录点

    avatar

右键可以对添加的断点做删除、编辑、禁用操作。

调试器-监视点

选中代码文件中的变量或表达式,点击右键添加监视点:

avatar

调试器-寄存器

调试面板-寄存器视图,可查看开发板各寄存器的数值。点击右边的“copy value”可以复制这个数值。

avatar

调试器-多线程调测

LiteOS作为轻量级物联网操作系统,同时只能运行一个Task任务线程,调试时只能展示当前运行状态的任务线程的调用堆栈。通过多线程感知调测技术,调测时可以展示Running运行状态和Pending暂停状态的任务线程的调用堆栈,提供更加强大的调试能力。

avatar

点击调用堆栈中的栈帧可以跳转到对应的源文件。当在不同任务的栈帧中切换时,变量视图也会同步更新展示。

调试器-反汇编

单步调测时,在调试面板-反汇编&内存视图中,可以查看对应源代码的反汇编代码,支持如下两种方式:

avatar

  • 反汇编指定函数 点击反汇编指定函数,在弹出的窗口中输入想要反汇编的函数名,回车后就可以在代码区中看到这个函数的反汇编代码。

    avatar

  • 反汇编当前函数 点击反汇编当前函数,就可以在代码区中展示当前函数的反汇编代码。

反汇编文件展示效果如下:

avatar

调试器-查看内存

调试面板-反汇编&内存视图中,点击查看内存,在弹窗中输入内存起始地址及长度,可以展示开发板的内存信息。

avatar

avatar

查看内存展示效果如下:

avatar

ST-Link仿真器单步调测

对于板载ST-Link仿真器的STM32开发板,如STM23L431RCSTM32F769NI,为了更加稳定的调测体验,建议刷成JLInk进行调测。在开始之前,需要先确保已安装ST-LINK USB DriversJ-Link软件ST-LinkJ-Link的步骤如下:

STLinkReflash 刷JLINK固件

官方站点下载ST-Link Reflash Utility,或本站下载。解压STLinkReflash.zip,双击STLinkReflash.exe运行。

步骤 1 接受许可Accept

输入A接受许可协议。

avatar

步骤 2 Upgrade to J-Link

选择[1], 把开发板板载的ST-Link仿真器刷成J-Link仿真器。

步骤 3 Restore ST-Link

如果想恢复ST-Link仿真器,选择[3]即可恢复。

工程设置中切换为JLINK

步骤 1 烧录器的烧录方式切换为JLink

avatar

步骤 2 调试器切换为JLink

avatar

执行调测

正常执行调测,如图:

avatar

JLink远程烧录、调测

环境准备

服务器端和客户端均需要安装JLink软件,且保持网络畅通

启动JLink远程服务器

拥有开发板的一方,连接开发板,在JLink安装目录下,手动启动JLinkRemoteServer.exe应用程序,进行如下设置,即可等待用户连入:

avatar

avatar

使用HUAWEI LiteOS Studio远程烧录

无开发板的一方,在编译生成烧录文件后,打开工程配置->烧录器,选择JLink烧录方式,选择端口为IP,并填入远程JLink地址远程JLink地址填写远程服务器IPv4地址

avatar

烧录器界面配置完成后点击确认按钮,再点击工具栏上的烧录按钮即可执行远程烧录任务

使用HUAWEI LiteOS Studio远程调试

同上,打开工程配置->调试器,选择JLink调试方式,选择端口为IP,并填入远程JLink地址远程JLink地址填写远程服务器IPv4地址

avatar

同样,完成配置并确认后,点击调试按钮执行远程调试任务

realview-pbx-a9仿真工程

环境准备

本地需安装Qemu软件,并创建realview-pbx-a9工程,可以通过下载工程源码到本地,或通过新建工程创建realview-pbx-a9工程。

编译realview-pbx-a9仿真工程

首先打开本地工程,进入工程配置界面,选择realview-pbx-a9开发板。

avatar

编译器配置stm32系列开发板一致,可参照其他stm32开发板进行配置。

点击编译按钮,执行编译,编译成功截图如下:

avatar

启动realview-pbx-a9仿真工程

进入烧录器界面,烧录方式选择Simulator烧录器目录选择qemu-system-arm.exe所在目录,烧录文件选择out/realview-pbx-a9目录下的Huawei_LiteOS.bin文件,界面配置示例截图如下:

avatar

点击烧录按钮以启动qemu仿真,仿真启动后会运行realview-pbx-a9工程并进入shell交互界面,截图如下:

avatar

注意:如果需要重新编译工程,在编译前需要先退出shell交互界面,在交互界面所在的终端界面右上角点击终止终端按钮即可退出,如下图所示:

avatar

调测realview-pbx-a9仿真工程

进入调试器界面,调试器选择Simulator调试器目录选择qemu-system-arm.exe所在目录,GDB目录选择arm-none-eabi-gdb.exe所在目录,可执行文件路径选择out/realview-pbx-a9目录下的Huawei_LiteOS.elf文件,界面配置示例截图如下:

avatar

点击开始调试按钮,进入图形化单步调试,截图如下:

avatar

Loading...
马建仓 AI 助手
尝试更多
代码解读
代码找茬
代码优化
JavaScript
1
https://gitee.com/qugx0528/LiteOS_Studio.git
git@gitee.com:qugx0528/LiteOS_Studio.git
qugx0528
LiteOS_Studio
LiteOS_Studio
master

搜索帮助