Hi3516標準系統入門(IDE方式)
注意:
從3.2版本起,標準系統不再針對Hi3516DV300進行適配驗證,建議您使用RK3568進行標準系統的設備開發。
如您仍然需要使用Hi3516DV300進行標準系統相關開發操作,則可能會出現無法適配的現象,此時請聯系芯片供應商獲取相關適配指導,或自行完成適配。
除小型系統外,Hi3516DV300開發板還支持標準系統。此章節簡要介紹如何使用IDE在Hi3516DV300開發板上進行標準系統的開發。
下方將展示如何在單板上運行第一個應用程序,其中包括新建應用程序、編譯、燒寫、運行等步驟,最終輸出“Hello World!”。
在進行開發之前,請完成如下準備工作:
編寫“Hello World”程序
示例目錄
applications/sample/hello
│── BUILD.gn
│── include
│ └── helloworld.h
│── src
│ └── helloworld.c
├── bundle.json
build
└── subsystem_config.json
productdefine/common
└── products
└── Hi3516DV300.json
開發步驟
請在源碼目錄中通過以下步驟創建“Hello World”應用程序:
創建目錄,編寫業務代碼。 新建applications/sample/hello/src/helloworld.c目錄及文件,代碼如下所示,用戶可以自定義修改打印內容(例如:修改World為OHOS)。其中helloworld.h包含字符串打印函數HelloPrint的聲明。當前應用程序可支持標準C及C++的代碼開發。
#include < stdio.h > #include "helloworld.h" int main(int argc, char **argv) { HelloPrint(); return 0; } void HelloPrint() { printf("nn"); printf("nttHello World!n"); printf("nn"); }
再添加頭文件applications/sample/hello/include/helloworld.h,代碼如下所示。
#ifndef HELLOWORLD_H #define HELLOWORLD_H #ifdef __cplusplus #if __cplusplus extern "C" { #endif #endif void HelloPrint(); #ifdef __cplusplus #if __cplusplus } #endif #endif #endif // HELLOWORLD_H
新建編譯組織文件。
新建applications/sample/hello/BUILD.gn文件,內容如下所示:
import("http://build/ohos.gni") # 導入編譯模板 ohos_executable("helloworld") { # 可執行模塊 sources = [ # 模塊源碼 "src/helloworld.c" ] include_dirs = [ # 模塊依賴頭文件目錄 "include" ] cflags = [] cflags_c = [] cflags_cc = [] ldflags = [] configs = [] deps =[] # 部件內部依賴 part_name = "hello" # 所屬部件名稱,必選 install_enable = true # 是否默認安裝(缺省默認不安裝),可選 }
新建applications/sample/hello/bundle.json文件,添加sample部件描述,內容如下所示。
{ "name": "@ohos/hello", "description": "Hello world example.", "version": "3.1", "license": "Apache License 2.0", "publishAs": "code-segment", "segment": { "destPath": "applications/sample/hello" }, "dirs": {}, "scripts": {}, "component": { "name": "hello", "subsystem": "sample", "syscap": [], "features": [], "adapted_system_type": [ "mini", "small", "standard" ], "rom": "10KB", "ram": "10KB", "deps": { "components": [], "third_party": [] }, "build": { "sub_component": [ "http://applications/sample/hello:helloworld" ], "inner_kits": [], "test": [] } } }
bundle.json文件包含兩個部分,第一部分描述該部件所屬子系統的信息,第二部分component則定義該部件構建相關配置。添加的時候需要指明該部件包含的模塊sub_component,假如有提供給其它部件的接口,需要在inner_kits中說明,假如有測試用例,需要在test中說明,inner_kits與test沒有也可以不添加。
修改子系統配置文件。 在build/subsystem_config.json中添加新建的子系統的配置。
"sample": { "path": "applications/sample/hello", "name": "sample" },
修改產品配置文件。 在productdefine/common/products/Hi3516DV300.json中添加對應的hello部件,直接添加到原有部件后即可。
說明: 本章節操作是以OpenHarmony-v3.1-Release版本為例進行操作的,該版本中,Hi3516的配置文件為productdefine/common/products/Hi3516DV300.json;從OpenHarmony-v3.2-Beta2版本開始,Hi3516的配置文件為vendor/hisilicon/Hi3516DV300/config.json。
"usb:usb_manager_native":{}, "applications:prebuilt_hap":{}, "sample:hello":{}, "wpa_supplicant-2.9:wpa_supplicant-2.9":{},
編譯
DevEco Device Tool支持Hi3516DV300開發板的源碼一鍵編譯功能,提供編譯工具鏈和編譯環境依賴的檢測及一鍵安裝,簡化復雜編譯環境的同時,提升了編譯的效率。
說明: Hi3516DV300編譯環境為Ubuntu環境。
在菜單欄中點擊 Project Settings ,進入Hi3516DV300工程配置界面。
在Tool Chain頁簽中,DevEco Device Tool會自動檢測依賴的編譯工具鏈是否完備。
- 如工具為“uninstalled”狀態(),可單擊 Download Uninstalled Tools ,自動安裝所需工具,或單擊工具后方的Download安裝指定工具。
- 如當前識別到的工具類型有缺失,需要補充,可單擊Add Utility添加。
- 如工具無法通過Download方式安裝,表示該工具未被DevEco Device Tool收錄,需要開發者自行下載到本地后單擊Import導入。
- 如“OpenHarmony Environment Dependency”的狀態異常(),請單擊Install安裝。
部分工具安裝需要使用root權限,請在TERMINAL窗口輸入用戶密碼進行安裝。
安裝完成后,工具和環境依賴的狀態顯示為。在hispark_taurus_standard配置頁簽中,設置源碼的編譯類型 build_type ,默認為“debug”類型,請根據需要進行修改。
在PROJECT TASKS中,點擊對應開發板下的 Build ,執行編譯。
等待編譯完成,在TERMINAL窗口輸出“SUCCESS”,編譯完成。
編譯完成后,可以在工程的out目錄下,查看編譯生成的文件,用于后續的燒錄操作。
燒錄
燒錄是指將編譯后的程序文件下載到芯片開發板上的動作,為后續的程序調試提供基礎。DevEco Device Tool提供一鍵燒錄功能,操作簡單,能快捷、高效的完成程序燒錄,提升燒錄的效率。
Hi3516DV300的鏡像燒錄通過Windows環境進行燒錄,開發者啟動燒錄操作后,DevEco Device Tool通過Remote遠程模式,將Ubuntu環境下編譯生成的待燒錄程序文件拷貝至Windows目錄下,然后通過Windows的燒錄工具將程序文件燒錄至開發板中。
Hi3516DV300開發板標準系統的燒錄方式包括USB燒錄、網口燒錄兩種方式,本文采用USB方式進行燒錄。
前提條件
- 請安裝Hi3516DV300開發板串口驅動程序,請參考[Hi3516DV300開發板串口驅動安裝指導]
- 請安裝Hi3516DV300開發板USB驅動程序,請參考[Hi3516DV300開發板USB驅動安裝]
操作步驟
請連接好電腦和待燒錄開發板,需要連接USB口和串口,具體可參考[Hi3516開發板介紹]
在DevEco Device Tool中,選擇 REMOTE DEVELOPMENT > Local PC ,查看遠程計算機(Ubuntu開發環境)與本地計算機(Windows開發環境)的連接狀態。
- 如果Local PC右邊連接按鈕為,則遠程計算機與本地計算機為已連接狀態,不需要執行其他操作。
- 如果Local PC右邊連接按鈕為,則點擊綠色按鈕進行連接。連接時DevEco Device Tool會重啟服務,因此請不要在下載源碼或源碼編譯過程中進行連接,否則會中斷任務。
在菜單欄中點擊Project Settings按鈕,進入Hi3516DV300工程配置界面。
在“Tool Chain”頁簽,檢查Uploader燒錄器工具是否已安裝。
- 如工具為“uninstalled”狀態(),可單擊 Download Uninstalled Tools ,自動安裝所需工具,或單擊工具后方的Download安裝指定工具。
- 如工具無法通過Download方式安裝,表示該工具未被DevEco Device Tool收錄,需要開發者自行下載到本地后單擊Import導入。
在“hispark_taurus_standard”頁簽,設置燒錄選項,包括upload_partitions_profile、upload_port和upload_protocol。配置完成后工程將自動保存。
- upload_partitions_profile:選擇待燒錄程序的配置文件(已預置默認的配置文件),該配置文件會指定燒錄文件名稱、起始燒錄地址、地址長度等信息;同時請勾選Enable to use upload_partitions_profile for upload選項。
說明:
如需修改燒錄profile文件,在設置燒錄分區起始地址和分區長度時,應根據實際待燒錄文件的大小進行設置,要求設置的燒錄分區大小,要大于待燒錄文件的大小;同時,各燒錄文件的分區地址設置不能出現重疊。
首次燒錄,請勾選Enable to use upload_partitions_profile for upload選項,會自動生成upload_partitions文件。再次燒錄時,可根據實際情況選擇生成upload_partitions文件進行自定義燒錄,也可以再勾選Enable to use upload_partitions_profile for upload選項,使用upload_partitions_profile重新生成upload_partitions文件用于燒錄。
- upload_protocol:選擇燒錄協議,固定選擇“hiburn-usb”。
- upload_port:選擇已查詢到的串口號。
- upload_partitions_profile:選擇待燒錄程序的配置文件(已預置默認的配置文件),該配置文件會指定燒錄文件名稱、起始燒錄地址、地址長度等信息;同時請勾選Enable to use upload_partitions_profile for upload選項。
單擊hispark_taurus_standard下的Upload按鈕。
此時待燒錄文件會從Ubuntu系統傳輸到Windows下,傳輸完成后界面顯示“Operation paused, Please press Enter key to continue”時,請點擊Enter鍵啟動燒錄。在終端窗口顯示如下提示信息時,請在15秒內,按住Update鍵,插拔USB線,最后松開Update鍵啟動燒錄。
啟動燒錄后,界面提示SUCCESS信息時,表示燒錄成功。燒錄成功后,請根據運行章節進行操作,啟動系統。
運行
HarmonyOS與OpenHarmony鴻蒙文檔籽料:mau123789是v直接拿
啟動系統
燒錄完成后通過以下步驟啟動系統:
說明: 初次燒寫標準系統,需要完成以下配置,后續燒寫或者啟動,可以跳過以下操作。
在DevEco Device Tool中,點擊Monitor,打開串口工具。
重啟開發板,在倒計時結束前,按任意鍵進入系統。
通過以下兩條命令設置啟動參數。
setenv bootargs 'mem=640M console=ttyAMA0,115200 mmz=anonymous,0,0xA8000000,384M clk_ignore_unused rootdelay=10 hardware=Hi3516DV300 init=/init root=/dev/ram0 rw blkdevparts=mmcblk0:1M(boot),15M(kernel),20M(updater),2M(misc),3307M(system),256M(vendor),-(userdata)';
setenv bootcmd 'mmc read 0x0 0x82000000 0x800 0x4800; bootm 0x82000000'
保存參數設置。
save
重啟開發板,完成系統啟動。
reset
運行“Hello World”
設備啟動后打開串口工具,在任意目錄下輸入命令helloworld后回車,界面打印“Hello World!”,程序運行成功。
審核編輯 黃宇
-
IDE
+關注
關注
0文章
338瀏覽量
46754 -
Hi3516
+關注
關注
1文章
21瀏覽量
15898 -
鴻蒙
+關注
關注
57文章
2351瀏覽量
42850 -
OpenHarmony
+關注
關注
25文章
3722瀏覽量
16313
發布評論請先 登錄
相關推薦
評論