简介
在AliOS-Things 2.1版本之后,AliOS Studio提供了一套简单易懂的接口可以让开发者很容易适配开发板支持调试功能。可以支持大部分的调试接口:
- ST-Link
- JLink
- CMSIS-DAP
AliOS Studio调试效果如下图所示:
AliOS Studio调试机制
AliOS Studio主要的功能就是执行aos debug指令,aos debug然后再在后台运行gdb server,然后使用vscode-cpptools的调试能力(gdb client)来实现调试。AliOS Studio调试机制框架图如下图所示:
本文将详细介绍一下如何让AliOS Studio支持你的开发板调试。
准备工作
pca10040开发板是由Nordic出品的一款搭载nRF52832的开发板,板载调试接口为jlink接口,可以通过jlink接口实现image下载,调试程序。
本示例使用pca10040开发板作为示例,实现在AliOS Studio
中按F5
即可开始调试pca10040的应用程序,支持windows、linux以及macOS。
准备工作
- 参考AliOS Things 环境配置安装好AliOS Things的开发环境。
- 下载JLink执行程序并配置好环境变量,具体请参考下载jlink并配置环境变量。
- 更新aos-cube为最新版本:pip2 install -U aos-cube。
编写配置文件
aos debug
命令会调用debug的配置文件来启动gdb server,我们需要编写这个配置文件来达到启动gdb server的目的,aos debug
目前已经支持的开发板配置文件可以参考这里,同时,开发者也可以贡献自己适配好的json配置文件到AliOS-Things中。
debug配置文件说明
pca10040开发板的debug配置文件如下:
{
"cmd": [
{
"Linux64": "JLinkGDBServerCLExe",
"OSX": "JLinkGDBServerCLExe",
"Win32": "JLinkGDBServerCL.exe"
},
"-if",
"swd",
"-device",
"nRF52840_xxAA",
"-port",
"4242"
],
"port": 4242,
"prompt": "Please INSTALL Jlink Software Package, and ADD JLink to PATH environment, check: www.github.com/alibaba/AliOS-Things/wiki/debug",
}
配置文件参数说明
参数 | 说明 | 默认 |
---|---|---|
cmd |
运行的指令,指令中支持针对不同PC系统运行不用的命令:Linux64 ,OSX ,Win32 ,支持多个参数 |
|
port |
gdb server监听的端口,,统一为4242 | 4242 |
prompt |
当aos debug执行失败的时候,会显示prompt ,用来提示用户出错原因 |
启动调试
编写好配置文件之后,进入AliOS Studio,按F5
即可启动调试。
其他
下载JLink并配置环境变量
JLink软件包下载地址。请分别下载对应开发环境的软件包。
windows环境配置
windows环境下,需要把JLink的bin目录添加到Path环境变量,JLink 默认的bin目录为:C:\Program Files (x86)\SEGGER\JLink_V640
,具体如何配置Path环境变量请参考:How to add a folder to Path
environment variable。
请注意JLink默认的bin目录中的JLink_V640,会根据不同的jlink版本会有所不同。设置完Path环境变量需要重启cmd、bash、vscode等,最好重启电脑。
windows环境下的JLink Commander名称为:JLink.exe。
linux/macOS环境配置
按照正常的安装流程安装即可,linux/macOS环境下的JLink Commander名称为:JLinkExe。