网站首页 全球最实用的IT互联网站!

人工智能P2P分享Wind搜索发布信息网站地图标签大全

当前位置:诺佳网 > 电子/半导体 > 控制/MCU >

[HPM杂谈]你想要了解的先楫hpm_sdk开发都在这里系

时间:2023-10-12 08:18

人气:

作者:admin

标签:

导读:一、概述在上一篇杂谈文章《[HPM杂谈]你想要了解的先楫hpm_sdk开发都在这里系列(一)》,大概分析了先楫通用单片机开发与其他国产单片机的开发差异,以及开发优劣势。刚好在这个月底...

一、概述

在上一篇杂谈文章《[HPM杂谈]你想要了解的先楫hpm_sdk开发都在这里系列 (一)》,大概分析了先楫通用单片机开发与其他国产单片机的开发差异,以及开发优劣势。刚好在这个月底,先楫官方发布了新的SDK版本,也就是hpm_sdk 1.3.0版本。

与此同时也发布了window端的sdk_env,其可视化构建界面功能更为方便操作,在这个构建工具支持hpm_sdk之外构建自己的application应用。

因此,本文章主要阐述最新发布的window端的sdk_env的构建工具使用以及开发者自身app开发,对于其他的命令操作,以及linux端和mac端等,不在本文阐述范围内。

二、开发步骤

(一) 下载链接

在开始之前,需要知道hpm_sdk和hpm_env的下载的链接:

1、hpm_env仓库,此仓库是windows端的开发环境配置套件,里面包含了编译链以及相关构建工具,以及项目可视化构建工具,本文以该仓库进行阐述使用说明。

2、hpm_sdk仓库,此仓库master分支就是最新的版本,需要以往的版本可以切到tags。不包含编译链和相关构建所需要的工具,工具链和环境变量需要自行配置。

gitee: https://gitee.com/hpmicro/hpm_sdk.git

github: https://github.com/hpmicro/hpm_sdk.git

(二)安装驱动

目前先楫的官方评估板都是自带的ft2232进行jtag调试,如果以往没安装过此驱动,需要自行在tools/FTDI_InstallDriver.exe 双击安装。

d11fceb2-6894-11ee-9788-92fbcf53809c.png

(三)start_gui.exe操作使用

1、start_gui.exe是适配hpm_sdk的项目构建可视化工具,开发者无需自行在终端输入命令行进行构建,在界面上操作即可简单构建你所需要的应用程序。

d20b0d82-6894-11ee-9788-92fbcf53809c.png

2、需要先介绍下该工具的整体界面,该介绍部分搬于先楫官方的hpm_env 的readme说明。

d20efc8a-6894-11ee-9788-92fbcf53809c.png

① SDK ENV 设置:此处可手动配置 SDK ENV 路径,点击右上角Advanced按钮后,可以对hpm_sdk以及CMake、Ninja等工具路径进行更详细的配置,比如默认的如下:

d225d8ce-6894-11ee-9788-92fbcf53809c.png

② Board 设置:默认情况下,工具会列出hpm_sdk/boards文件夹下所有的开发板。同时,工具也支持加载用户自定义的开发板配置。用户需要首先勾选Enable User Board Path复选框启用User Board搜索功能,然后选择想要搜索的开发板文件夹,软件会搜索当前文件夹以及第一级子文件夹,当查找到文件夹下存在CMakeLists.txt 以及 与文件夹同名的 yaml 配置文件时,会识别当前文件夹为开发板配置,加入到列表项中。当当前文件夹被识别为开发板配置时,不会再搜索子文件夹。

注意:如果使用自定义 board,CMake 构建过程会尝试在自定义目录下搜索与 board 目录同名的 .cfg 文件作为板级 openocd 的配置文件,若无此文件,openocd 将不会添加任何板级配置文件

d234232a-6894-11ee-9788-92fbcf53809c.png

d240f8fc-6894-11ee-9788-92fbcf53809c.png


③ Sample 设置:选择了开发板后,工具会根据开发板的yaml配置文件自动筛选符合条件的 sample。默认情况下,会展示hpm_sdk/samples文件夹下经过筛选的sample。同时,工具也支持加载用户自定义的 sample 文件夹。用户需要首先勾选Enable User Application Path复选框启用User Applications搜索功能,然后选择想要搜索的 sample 文件夹,软件会搜索当前文件夹以及所有子文件夹,当查找到文件夹下存在CMakeLists.txt时,会查找当前CMakeLists.txt是否调用了hpm-sdk,符合条件的会识别为 sample 文件夹并加入到列表项中。当选择了 sample 之后,会自动识别当前 sample 支持的 build type 类型并加入到列表项中。

d2521e8e-6894-11ee-9788-92fbcf53809c.png


④ Output 设置:用户可以在 Output 区域定义工程的构建生成路径。默认情况下,项目会生成在${sample}/${board}_${build_type}文件夹。同时,工具支持选择一个父文件夹,将多个项目生成在当前父文件夹下。该功能需要用户勾选Use Same Parent Directory复选框,然后选择一个父文件夹,即Parent Directory,之后构建生成的项目均会保存在当前文件夹下,Build Folder为项目文件夹名称,工具会采用${sample}_${board}_${build_type}规则自动生成文件夹名称,用户也可以手动修改文件夹名称。

d25a4c76-6894-11ee-9788-92fbcf53809c.png

⑤ 构建选项:当配置完毕后,用户可点击Generate Project按钮开始构建项目,当项目正确构建后,Open Project with IDE按钮会高亮,点击后会用IDE拉起当前项目。同时,工具支持控制台编译,点击Open Build Console按钮后,会拉起控制台,该控制台默认加载了SDK_ENV的环境变量,可以直接编译程序。

d26287e2-6894-11ee-9788-92fbcf53809c.png

⑥ 日志窗口:日志窗口会显示当前的日志信息,日志信息支持清空和导出。

d266640c-6894-11ee-9788-92fbcf53809c.png

三、开发实战

在实际项目的开发中,肯定更多希望自己的项目独立于hpm_sdk之外,在hpm_env1.3.0之前,start_gui不支持在sdk之外构建,但在这月底发布的1.3.0已经支持,本文就以start_gui来构建的应用程序。如何开发也很简单。

(一)建立好自己的application

这部分由开发者自身应用决定,楼主仅仅抛砖引玉。在本文,楼主新建以下文件夹和相关文件。自己的app可以放在任意文件夹。

d26e1c06-6894-11ee-9788-92fbcf53809c.png

(二)使用sdk env的start_gui指定app工程

打开start_gui.exe,分别开启Enable User Board Path和Enable User Application Path。对应的Path路径指定到(一)的app工程路径。

需要注意:

1、Enable User Board Path:该路径可以是custom board的根目录也可以是custom board目录内的子目录。比如上述的文件夹board根目录,包含了custom board的rc_hpm_evk文件夹。

d277ae56-6894-11ee-9788-92fbcf53809c.png

那么该栏就可以如下指定:

d2892e42-6894-11ee-9788-92fbcf53809c.png

注意:custom board内文件必须包含yaml文件,yaml解析不在本文阐述,可以在sdk内的Board拷贝对应的soc的board yaml文件。该文参考的是hpm6750evk2。另外,openocd的board cfg文件也支持自定义,board的cfg也可以参考sdk对应的soc的board,只要对应的custom board有自己的board cfg文件,那么start_gui自动加载,否则保持默认。建议两个文件都进行复制拷贝更名。

d2959808-6894-11ee-9788-92fbcf53809c.png

2、Enable User Application Path:该路径可以是app根目录也可以是app的父目录。但建议路径选择自身的app根目录,这样直接start_gui能直接识别application。

d29d7654-6894-11ee-9788-92fbcf53809c.png

(三)使用sdk env的start_gui生成app工程

完成(二)之后,点击generate project,即可生成对应的先楫支持的IDE平台,比如ses。

d2a683ca-6894-11ee-9788-92fbcf53809c.png


点击Open Project with IDE即可打开对应的IDE。

d2aac21e-6894-11ee-9788-92fbcf53809c.png

注意:生成的IDE平台,比如ses,建议只用来烧录调试所用,option配置这些用cmakelists进行配置,否则下次生成会被覆盖。比如添加drivers里面的6.c文件,直接在cmakelists加入命令

d2c0ce56-6894-11ee-9788-92fbcf53809c.png

END

d2ce70e2-6894-11ee-9788-92fbcf53809c.png

以上内容来自先楫开发者的原创分享。

我们始终相信开发者共创的力量。先楫社区坚持开源共享、互惠互利,贴近每一个开发者,一步一个脚印,一点一滴积累,为成为更好的我们而不断努力。

温馨提示:以上内容整理于网络,仅供参考,如果对您有帮助,留下您的阅读感言吧!
相关阅读
本类排行
相关标签
本类推荐

CPU | 内存 | 硬盘 | 显卡 | 显示器 | 主板 | 电源 | 键鼠 | 网站地图

Copyright © 2025-2035 诺佳网 版权所有 备案号:赣ICP备2025066733号
本站资料均来源互联网收集整理,作品版权归作者所有,如果侵犯了您的版权,请跟我们联系。

关注微信