0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

window端的sdk_env的构建工具使用

先楫半导体HPMicro 来源: RCSN嵌入式 2023-10-16 15:32 次阅读

一、概述

在上一篇杂谈文章《[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端的开发环境配置套件,里面包含了编译链以及相关构建工具,以及项目可视化构建工具,本文以该仓库进行阐述使用说明。

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

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

该env使用可以参考下其readme文档:https://gitee.com/hpmicro/sdk_env/blob/main/README_zh.md

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 双击安装。

ba34b38e-680d-11ee-939d-92fbcf53809c.png

(三)start_gui.exe操作使用

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

ba49029e-680d-11ee-939d-92fbcf53809c.png

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

ba65d6f8-680d-11ee-939d-92fbcf53809c.png

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

ba766cac-680d-11ee-939d-92fbcf53809c.png

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

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

ba93b08c-680d-11ee-939d-92fbcf53809c.png

baa39272-680d-11ee-939d-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 类型并加入到列表项中。

babad5d6-680d-11ee-939d-92fbcf53809c.png

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

bacd4ebe-680d-11ee-939d-92fbcf53809c.png

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

bae3eb7e-680d-11ee-939d-92fbcf53809c.png

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

baf08eec-680d-11ee-939d-92fbcf53809c.png

三、开发实战

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

(一)建立好自己的application

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

bb092c68-680d-11ee-939d-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文件夹。

bb20c47c-680d-11ee-939d-92fbcf53809c.png

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

bb31ae68-680d-11ee-939d-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自动加载,否则保持默认。建议两个文件都进行复制拷贝更名。

bb478f12-680d-11ee-939d-92fbcf53809c.png

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

bb5cfdc0-680d-11ee-939d-92fbcf53809c.png

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

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

bb821bbe-680d-11ee-939d-92fbcf53809c.png

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

bb92ce8c-680d-11ee-939d-92fbcf53809c.png

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

bbab1730-680d-11ee-939d-92fbcf53809c.png

审核编辑:汤梓红

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • Window
    +关注

    关注

    0

    文章

    78

    浏览量

    37141
  • 单片机
    +关注

    关注

    6001

    文章

    43974

    浏览量

    620860
  • Linux
    +关注

    关注

    87

    文章

    10990

    浏览量

    206736
  • 先楫半导体
    +关注

    关注

    9

    文章

    180

    浏览量

    1815

原文标题:[HPM杂谈]你想要了解的先楫hpm_sdk开发都在这里系列 (二)

文章出处:【微信号:HPMicro,微信公众号:先楫半导体HPMicro】欢迎添加关注!文章转载请注明出处。

收藏 人收藏

    评论

    相关推荐

    先楫半导体 hpm_sdk v1.5.0 正式发布

    sdk_env 开发环境,通过包内的 start_gui 图形化工具来可视化的生成工程和打开工程。欢迎探索start_gui的更多功能。 常用链接 在线工具 hpm pinmux tool 链接
    发表于 04-08 11:14

    利用env构建工程,输入“scons”回车发现构建出错怎么解决?

    刚开始接触RTT,使用的Studio最新2.2版本,按照文档,基于芯片建立RT-Thread标准版工程,没有修改构建配置,点击构建,正常输出构建文件。今天接触到ENV
    发表于 03-17 09:41

    RT-Thread系统中的Scons构建工具资料推荐

    1 构建工具(系统)1.1 什么是构建工具(系统)构建工具 (software construction tool) 是一种软件,它可以根据一定的规则或指令,将源代码编译成可执行的二进制程序。这是
    发表于 05-07 15:35

    Env工具到底是什么?怎样去使用Env工具

    简介RT-Thread Env 工具包括配置器和包管理器,用来对内核和组件的功能进行配置,对组件进行自由裁剪,对线上软件包进行管理,使得系统以搭积木的方式进行构建,简单方便。Env
    发表于 06-24 11:31

    iMX8qevk工具链,sdk编译失败怎么处理?

    我正在尝试使用 Docker Ubuntu 20.04 env 为 iMX8qevk 编译带有工具链和内核源的完整 sdk 构建,它失败并在配置“python3-pybind11-na
    发表于 03-31 07:44

    HPMSDK之外搭建工程指南(在也不担心SDK升级一堆冲突上头)

    的,针对Cmake的介绍和语法本文不做详细介绍; 上海先楫半导体面向用户同时提供HPM SDK的集成工具sdk_env,本文的介绍基于hpm sdk版本1.2.0,基于
    发表于 08-09 14:29

    RVCT 3.0 SP1构建工具-错误和警告

    本文档说明了ARM RealView编译工具3.0、3.0 Service Pack 1和后续3.0补丁的构建工具生成的错误和警告消息。 如果您使用的是ADS(ADS 1.2、1.1或1.0.1)或
    发表于 08-16 06:30

    SDK_ENV 构建工程失败

    使用gui和cmd工具建工程均失败,v1.2.0,v1.1.0版本都无法正常创建 F:\\\\work\\\\sdk_env\\\\hpm_sdk\\\\samples
    发表于 09-14 15:32

    使用Nios II软件构建工具

    使用Nios II软件构建工具 This chapter describes the Nios II Software Build Tools (SBT), a set of utilities
    发表于 10-17 15:49 20次下载

    Nios II软件构建工具入门

    Nios II软件构建工具入门 The Nios II Software Build Tools (SBT) allows you to construct a wide variety
    发表于 10-17 15:51 29次下载

    跨平台构建工具xmake简介与安装使用说明

    大家好,我是ZhengN。本次给大家分享一个优秀的跨平台构建工具
    的头像 发表于 07-19 15:52 4636次阅读

    推荐一款现代高效的java构建工具

    相信使用Java的同学都用过Maven,这是一个非常经典好用的项目构建工具
    的头像 发表于 02-24 11:22 491次阅读

    HPM SDK指南 | 我的板子我做主!

    sdk_env,本文的介绍基于hpmsdk版本0.14.0,基于工具sdk_env_v0.14.0。搭配以下费教授的教程视频,体验更佳哦,赶紧来一睹为快!【先楫“芯
    的头像 发表于 12-12 17:56 3154次阅读
    HPM <b class='flag-5'>SDK</b>指南 | 我的板子我做主!

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

    了新的SDK版本,也就是hpm_sdk1.3.0版本。与此同时也发布了window端的sdk_env,其可视化构建界面功能更为方便操作,在这
    的头像 发表于 10-12 08:18 972次阅读
    [HPM杂谈]你想要了解的先楫hpm_<b class='flag-5'>sdk</b>开发都在这里系列 (二)

    RT-Thread CMake构建工具

    RT Thread原生使用的构建工具是SCons,编译工具链使用官方提供的env工具,内含多种嵌入式常用的编译环境和脚本,可以算得上环境万能百宝箱。
    的头像 发表于 10-12 17:06 338次阅读
    RT-Thread CMake<b class='flag-5'>构建工具</b>