2. SDK使用介绍¶
2.1. 官方内容¶
官方软件开发资料: HPM 软件开发资料 选择进入SDK页再点击下载。
可访问: HPM Github组织仓库,hpm_sdk包含核心软件内容,sdk_env包含了hpm_sdk,除此之外包含了编译工具链、执行脚本工具、第三方软件工具与对应脚本等内容, 从sdk_env仓库Release页下载的包与从官网下载的一致。
查看仓库的README内容帮助了解SDK内容,查看 HPM SDK 文档 的例程和驱动示例章节部分,根据需要将工程修改至实际板卡。
以下流程主要使用sdk_env包,不用单独做安装依赖软件、配置编译工具链与环境的操作。
2.2. 生成工程路径¶
打开以下路径 sdk_env-xxx\hpm_sdk\samples\hello_world 。
如图,若根据第一章节步骤操作过后,会出现生成的hpm6750evkmini_flash_xip_debug文件夹,可从里面的segger_embedded_studio文件夹打开emProject。
使用start_gui.exe生成的工程均对应在samples文件夹内。
可以点击黄色文件夹图标快速打开当前Generate的对应例程文件夹。
2.3. 命令方式生成工程¶
以下演示手动命令生成工程, 查看官方例程时建议直接用start_gui.exe生成在samples文件夹内 。
将 sdk_env-xxx\hpm_sdk\samples\hello_world 的 src 文件夹与 CMakeLists.txt 文件复制到另一处文件夹。
双击打开 sdk_env-xxx\start_cmd.cmd 。
使用 cd 命令,进入步骤1中的实际文件夹位置。
输入以下命令生成工程:
1 | generate_project -b hpm6750evkmini -t flash_xip
|
hpm6750evkmini表示选择该型号开发板的工程模版、配置,野火HPM6750开发板部分脚与该型号开发板相同,因此可以选择它。flash_xip表示选择编译构建在外部Flash xip执行方式。
成功生成后,在新建的文件夹内会出现hpm6750evkmini_build文件夹,同样通过里面的emProject文件打开工程,打开工程后根据第一章节的调整配置小节做同样操作即可执行调试。
同样道理,在 start_cmd.cmd cd进入 sdk_env-xxx\hpm_sdk\samples 中各例程的CMakeLists.txt文件的所在位置,执行命令后即可生成工程,与使用start_gui.exe生成工程是相似效果。
修改CMakeLists.txt文件可以添加编译文件、引入或修改宏定义等,这处不展开介绍。
2.4. 本地化生成工程¶
命令方式与start_gui.exe生成工程的文件引用自 sdk_env-xxx\hpm_sdk 文件夹,如果移动了工程本身或者SDK包路径,工程不能再直接使用, 需要根据CMakeLists.txt位置重新生成工程或者直接在工程里一个个文件重新添加实际文件位置。
生成的工程因为引用同一份SDK包内容,对里面的内容修改可能会影响到其他工程,可以对要修改的文件单独复制一份,工程里切换引用复制的文件。
以上操作比较繁琐,因此建议使用start_gui.exe生成工程后,使用Localize SDK for App功能。
Generate后点击 Localize SDK for App。
打开改工程对应的文件夹,
将如下三个文件夹保持相对位置整体移动也可继续直接打开工程使用,在此基础上修改适配实际板卡。
hpm_sdk_localized_xxx包含拷贝了例程所需引用的文件和外设驱动文件。hpm6750evkmini_flash_xip_debug包含了工程相关文件。scr为该例程下的User/App文件。
CMSIS-DAP 调试配置
若使用DAP仿真器,本地化工程的Options设置中仍然引用了SDK包内OpenOCD组件的绝对路径,如果将工程分享给他人或者自己移动了原SDK包路径,需要重新设置。
如图注意只修改画线部分,红线部分改为SDK包实际根目录(根据路径含义将最终指向的工具单独拷贝到一个专用文件夹,所有工程均设置使用它也可以)。
蓝线部分同第一章节的调试配置小节一样,修改为cmsis_dap.cfg。