一、概述
在上一篇雜談文章《[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 雙擊安裝。
(三)start_gui.exe操作使用
1、start_gui.exe是適配hpm_sdk的項目構建可視化工具,開發者無需自行在終端輸入命令行進行構建,在界面上操作即可簡單構建你所需要的應用程序。
2、需要先介紹下該工具的整體界面,該介紹部分搬于先楫官方的hpm_env 的readme說明。
① SDK ENV 設置:此處可手動配置 SDK ENV 路徑,點擊右上角Advanced按鈕后,可以對hpm_sdk以及CMake、Ninja等工具路徑進行更詳細的配置,比如默認的如下:
② Board 設置:默認情況下,工具會列出hpm_sdk/boards文件夾下所有的開發板。同時,工具也支持加載用戶自定義的開發板配置。用戶需要首先勾選Enable User Board Path復選框啟用User Board搜索功能,然后選擇想要搜索的開發板文件夾,軟件會搜索當前文件夾以及第一級子文件夾,當查找到文件夾下存在CMakeLists.txt 以及 與文件夾同名的 yaml 配置文件時,會識別當前文件夾為開發板配置,加入到列表項中。當當前文件夾被識別為開發板配置時,不會再搜索子文件夾。
注意:如果使用自定義 board,CMake 構建過程會嘗試在自定義目錄下搜索與 board 目錄同名的 .cfg 文件作為板級 openocd 的配置文件,若無此文件,openocd 將不會添加任何板級配置文件
③ 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 類型并加入到列表項中。
④ Output 設置:用戶可以在 Output 區域定義工程的構建生成路徑。默認情況下,項目會生成在${sample}/${board}_${build_type}文件夾。同時,工具支持選擇一個父文件夾,將多個項目生成在當前父文件夾下。該功能需要用戶勾選Use Same Parent Directory復選框,然后選擇一個父文件夾,即Parent Directory,之后構建生成的項目均會保存在當前文件夾下,Build Folder為項目文件夾名稱,工具會采用${sample}_${board}_${build_type}規則自動生成文件夾名稱,用戶也可以手動修改文件夾名稱。
⑤ 構建選項:當配置完畢后,用戶可點擊Generate Project按鈕開始構建項目,當項目正確構建后,Open Project with IDE按鈕會高亮,點擊后會用IDE拉起當前項目。同時,工具支持控制臺編譯,點擊Open Build Console按鈕后,會拉起控制臺,該控制臺默認加載了SDK_ENV的環境變量,可以直接編譯程序。
⑥ 日志窗口:日志窗口會顯示當前的日志信息,日志信息支持清空和導出。
三、開發實戰
在實際項目的開發中,肯定更多希望自己的項目獨立于hpm_sdk之外,在hpm_env1.3.0之前,start_gui不支持在sdk之外構建,但在這月底發布的1.3.0已經支持,本文就以start_gui來構建的應用程序。如何開發也很簡單。
(一)建立好自己的application
這部分由開發者自身應用決定,樓主僅僅拋磚引玉。在本文,樓主新建以下文件夾和相關文件。自己的app可以放在任意文件夾。
(二)使用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文件夾。
那么該欄就可以如下指定:
注意:custom board內文件必須包含yaml文件,yaml解析不在本文闡述,可以在sdk內的Board拷貝對應的soc的board yaml文件。該文參考的是hpm6750evk2。另外,openocd的board cfg文件也支持自定義,board的cfg也可以參考sdk對應的soc的board,只要對應的custom board有自己的board cfg文件,那么start_gui自動加載,否則保持默認。建議兩個文件都進行復制拷貝更名。
2、Enable User Application Path:該路徑可以是app根目錄也可以是app的父目錄。但建議路徑選擇自身的app根目錄,這樣直接start_gui能直接識別application。
(三)使用sdk env的start_gui生成app工程
完成(二)之后,點擊generate project,即可生成對應的先楫支持的IDE平臺,比如ses。
點擊Open Project with IDE即可打開對應的IDE。
注意:生成的IDE平臺,比如ses,建議只用來燒錄調試所用,option配置這些用cmakelists進行配置,否則下次生成會被覆蓋。比如添加drivers里面的6.c文件,直接在cmakelists加入命令
審核編輯:湯梓紅
-
Window
+關注
關注
0文章
82瀏覽量
37263 -
單片機
+關注
關注
6035文章
44554瀏覽量
634652 -
Linux
+關注
關注
87文章
11292瀏覽量
209329 -
先楫半導體
+關注
關注
10文章
214瀏覽量
2102
原文標題:[HPM雜談]你想要了解的先楫hpm_sdk開發都在這里系列 (二)
文章出處:【微信號:HPMicro,微信公眾號:先楫半導體HPMicro】歡迎添加關注!文章轉載請注明出處。
發布評論請先 登錄
相關推薦
評論