自拍偷在线精品自拍偷,亚洲欧美中文日韩v在线观看不卡

HarmonyOS開發(fā)板試用之二Hi3861開發(fā)初探和環(huán)境搭建

系統(tǒng) OpenHarmony
對于新手來說開發(fā)環(huán)境的搭建還是有一定難度,安裝過device tool2 也安裝了device tool 3前前后后搞了快一周也沒搞成功(尷尬)能力限制了去體驗(yàn)一條龍服務(wù)。

[[441290]]

想了解更多內(nèi)容,請訪問:

51CTO和華為官方合作共建的鴻蒙技術(shù)社區(qū)

https://harmonyos.51cto.com

Hi3861開發(fā)

上一篇大致``描述了收到51cto的HiSpark_Wi-Fi_IoT_Hi3861_CH340G開發(fā)板后的組裝過程,這一篇正式進(jìn)入開發(fā)的初探。

注:相關(guān)設(shè)備來源于51CTO鴻蒙技術(shù)社區(qū)【開發(fā)板漂流計劃】提供

開發(fā)環(huán)境

我的開發(fā)編譯環(huán)境 mac + git + repo + vscode + docker

我的燒錄調(diào)試環(huán)境 window + HiBurn + 串口調(diào)試助手

開發(fā)環(huán)境的搭建還是有點(diǎn)難度,剛開始還是信心滿滿對著文檔各種操作,最終都以失敗告終。。。

最終走了一個自認(rèn)為最便捷的方式docker + HiBurn和串口助手 (主要devicetools一條龍開發(fā)工具沒成功過),因?yàn)檎麄€開發(fā)過程就是git拉取鴻蒙源碼,vscode中業(yè)務(wù)編碼,Ubuntu下編譯源碼成二進(jìn)制,燒錄二進(jìn)制到開發(fā)板,調(diào)試測試。

  • docker環(huán)境,用來拉取鴻蒙源碼編譯的環(huán)境
  • git環(huán)境,需要安裝git-lfs和repo工具
  • ide開發(fā)工具編碼用
  • HiBurn燒錄工具
  • 串口調(diào)試助手調(diào)試用

獲取鴻蒙源碼

可以直接下載源碼開發(fā)編譯,但是本次從git拉取

1. 安裝python3.8

在python官網(wǎng)找到3.8版本安裝包

2. 安裝git和git-lfs

  1. brew install git 
  2. brew install git-lfs 
  3.  
  4. #初始化git-lfs 
  5. git lfs install 
【HarmonyOS開發(fā)板試用】之二Hi3861開發(fā)初探和環(huán)境搭建-鴻蒙HarmonyOS技術(shù)社區(qū)

如果不安裝git-fls的話在后面拉取鴻蒙源碼的時候會失敗

【HarmonyOS開發(fā)板試用】之二Hi3861開發(fā)初探和環(huán)境搭建-鴻蒙HarmonyOS技術(shù)社區(qū)

3. 配置git和碼云公鑰

  1. #配置git 
  2. git config --global user.name "yourname" 
  3. git config --global user.email "your-email-address" 
  4. git config --global credential.helper store 
  5.  
  6. #配置碼云ssh key就是將你電腦的公鑰保存到碼云 
  7. ssh -T git@gitee.com 
【HarmonyOS開發(fā)板試用】之二Hi3861開發(fā)初探和環(huán)境搭建-鴻蒙HarmonyOS技術(shù)社區(qū)

4. 安裝repo工具

  1. #如果沒有權(quán)限,可下載至其他目錄,并將其配置到環(huán)境變量中 
  2. curl -s https://gitee.com/oschina/repo/raw/fork_flow/repo-py3 > /usr/local/bin/repo   
  3. chmod a+x /usr/local/bin/repo 
  4. pip3 install -i https://repo.huaweicloud.com/repository/pypi/simple requests 

5. 獲取鴻蒙源碼

  1. mkdir harmonyOsDevice 
  2. cd harmonyOsDevice 
  3. repo init -u git@gitee.com:openharmony/manifest.git -b master --no-repo-verify 
  4. repo sync -c 
  5. #需要git開啟git-lfs 
  6. repo forall -c 'git lfs pull' 
【HarmonyOS開發(fā)板試用】之二Hi3861開發(fā)初探和環(huán)境搭建-鴻蒙HarmonyOS技術(shù)社區(qū)

編譯環(huán)境(采用官方docker鏡像包)

1. 安裝Docker for mac在docker官網(wǎng)下載

2. 獲取編譯環(huán)境的docker鏡像

  1. docker pull swr.cn-south-1.myhuaweicloud.com/openharmony-docker/openharmony-docker:0.0.5 

3. 在源碼根目錄運(yùn)行編譯環(huán)境

  1. docker run -it -v $(pwd):/home/openharmony swr.cn-south-1.myhuaweicloud.com/openharmony-docker/openharmony-docker:0.0.5 

到此源碼和編譯環(huán)境已經(jīng)準(zhǔn)備完成(后面還有燒錄和調(diào)試環(huán)境)。下面開始運(yùn)行個Hello world試試。。。

開發(fā)初探

1. 編業(yè)務(wù)代碼(hello world)

隨便找一個自己順手的編輯器,這里就用vscode吧,打開上面的源碼目錄harmonyOsDevice

在源碼./applications/sample/wifi-iot/app目錄下

創(chuàng)建my_first_app目錄并在其內(nèi)創(chuàng)建

  • hello_world.c業(yè)務(wù)代碼文件
  • UILD.gn編譯腳本文件

hello_world.c文件內(nèi)容

  1. #include <stdio.h> 
  2. #include "ohos_init.h" 
  3. #include "ohos_types.h" 
  4.  
  5. void HelloWorld(void) 
  6.     printf("[DEMO] Hello world sxfenglei.\n"); 
  7. SYS_RUN(HelloWorld); 

 UILD.gn文件內(nèi)容

  1. static_library("myapp") { 
  2.     sources = [ 
  3.         "hello_world.c" 
  4.     ] 
  5.     include_dirs = [ 
  6.         "//utils/native/lite/include" 
  7.     ] 

 最后修改./applications/sample/wifi-iot/app/UILD.gn文件的features數(shù)組(注意區(qū)別剛自己創(chuàng)建的UILD.gn文件)

  1. import("//build/lite/config/component/lite_component.gni"
  2. lite_component("app") { 
  3.     features = [ 
  4.         #"startup"
  5.         "my_first_app:myapp"
  6.     ] 

 2. 編譯源碼成二進(jìn)制文件

進(jìn)入docker環(huán)境下執(zhí)行

  1. //設(shè)置環(huán)境 
  2. hb set 
  3. //指定源碼目錄為當(dāng)前目錄 
  4. //編譯 完成后會在out目錄生成對應(yīng)目錄和文件 
  5. hb build -f 
【HarmonyOS開發(fā)板試用】之二Hi3861開發(fā)初探和環(huán)境搭建-鴻蒙HarmonyOS技術(shù)社區(qū)

3.燒錄二進(jìn)制文件到開發(fā)板

以上都是在mac下完成的下來的操作都在在windows上完成的

可以將編譯后的out目錄復(fù)制到windows下或者共享,我用的共享目錄;

【HarmonyOS開發(fā)板試用】之二Hi3861開發(fā)初探和環(huán)境搭建-鴻蒙HarmonyOS技術(shù)社區(qū)

安裝USB轉(zhuǎn)串口驅(qū)動

【HarmonyOS開發(fā)板試用】之二Hi3861開發(fā)初探和環(huán)境搭建-鴻蒙HarmonyOS技術(shù)社區(qū)

將HiSpark_Wi-Fi_IoT_Hi3861_CH340G通過連接到windows上并在設(shè)備管理中查看串口號

【HarmonyOS開發(fā)板試用】之二Hi3861開發(fā)初探和環(huán)境搭建-鴻蒙HarmonyOS技術(shù)社區(qū)

打開HiBurn燒錄(燒錄完成后一定要斷開)

連接上后點(diǎn)擊 reset按鍵便開始燒錄

【HarmonyOS開發(fā)板試用】之二Hi3861開發(fā)初探和環(huán)境搭建-鴻蒙HarmonyOS技術(shù)社區(qū)

4.運(yùn)行查看調(diào)試

打開調(diào)試助手 按reset就可以運(yùn)行的日志信息 就可以看到剛才寫的[demo] hello world sxfenglei.

【HarmonyOS開發(fā)板試用】之二Hi3861開發(fā)初探和環(huán)境搭建-鴻蒙HarmonyOS技術(shù)社區(qū)

5.控制WiFi版LED燈閃爍

上面輸出了日志下面在控制下板子LED試試

hello_world.c文件內(nèi)容

  1. #include <stdio.h> 
  2. #include "ohos_init.h" 
  3. #include "cmsis_os2.h" 
  4. #include "iot_gpio.h" 
  5.  
  6. #define LED_GPIO 9 //查閱開發(fā)板原理圖明確接線關(guān)系 LED與9號管腳相連 
  7.  
  8. static void LedTask(void *arg) 
  9.     (void)arg; 
  10.     //GPIO管腳初始化 
  11.     IoTGpioInit(LED_GPIO); 
  12.     //配置9號管腳為輸出 
  13.     IoTGpioSetDir(LED_GPIO, IOT_GPIO_DIR_OUT); 
  14.  
  15.     while (1) 
  16.     { 
  17.         //設(shè)置引腳輸出狀態(tài) 
  18.         IoTGpioSetOutputVal(LED_GPIO, 0); 
  19.         osDelay(50); 
  20.         IoTGpioSetOutputVal(LED_GPIO, 1); 
  21.         osDelay(50); 
  22.     } 
  23.  
  24. static void LedEntry(void) 
  25.     osThreadAttr_t attr = {0}; 
  26.     attr.name = "LedTask"
  27.     attr.stack_size = 512; 
  28.     attr.priority = 25; 
  29.  
  30.     //創(chuàng)建線程 啟動任務(wù) 
  31.     if (NULL == osThreadNew((osThreadFunc_t)LedTask, NULL, &attr)) 
  32.     { 
  33.         printf("[LedExample] Falied to create LedTask! By sxfenglei.\n"); 
  34.     } 
  35.  
  36.     return NULL
  37.  
  38. SYS_RUN(LedEntry); 

BUID.gn文件內(nèi)容

  1. #定義myapp靜態(tài)庫 
  2. static_library("myapp"){ 
  3.     #靜態(tài)庫源碼 
  4.     sources = ["led.c"
  5.     #靜態(tài)庫包含的目錄 
  6.     include_dirs = [ 
  7.         "//utils/native/lite/include"
  8.         "//kernel/liteos_m/kal/cmsis"
  9.         "//base/iot_hardware/peripheral/interfaces/kits"
  10.     ] 
【HarmonyOS開發(fā)板試用】之二Hi3861開發(fā)初探和環(huán)境搭建-鴻蒙HarmonyOS技術(shù)社區(qū)

開發(fā)感受

對于新手來說開發(fā)環(huán)境的搭建還是有一定難度,安裝過device tool2 也安裝了device tool 3前前后后搞了快一周也沒搞成功(尷尬)能力限制了去體驗(yàn)一條龍服務(wù),等有空了在研究下。

想了解更多內(nèi)容,請訪問:

51CTO和華為官方合作共建的鴻蒙技術(shù)社區(qū)

https://harmonyos.51cto.com

 

責(zé)任編輯:jianghua 來源: 鴻蒙社區(qū)
相關(guān)推薦

2020-12-09 09:44:29

Hi3861硬件介紹鴻蒙開發(fā)板

2020-12-31 12:22:15

鴻蒙Hi3861應(yīng)用開發(fā)

2021-12-15 15:28:18

鴻蒙HarmonyOS應(yīng)用

2020-10-30 17:42:36

鴻蒙 OS Hi386

2020-10-29 09:53:06

Hi3861硬件開發(fā)板

2020-11-06 10:15:16

HiBurn

2020-10-14 09:37:03

HiBurn鴻蒙.bin文件

2021-06-25 15:32:13

鴻蒙HarmonyOS應(yīng)用

2020-12-15 11:57:49

Hi3861 HarmonyOS開發(fā)板

2021-09-16 10:03:39

鴻蒙HarmonyOS應(yīng)用

2020-10-30 17:12:05

Hi3861

2020-12-17 10:02:16

鴻蒙Hi3861開發(fā)板

2020-10-30 09:48:03

Hi3861開發(fā)板get請求

2022-08-19 10:54:47

操作系統(tǒng)鴻蒙

2020-11-18 11:56:06

鴻蒙Hi3861

2020-11-06 11:32:11

NV操作

2020-12-08 12:36:41

Hi3861 ADC驅(qū)動開發(fā)

2020-10-27 10:08:19

Hi3861ADC驅(qū)動

2020-12-11 12:45:04

鴻蒙Hi3861游戲

2022-01-05 20:27:45

鴻蒙HarmonyOS應(yīng)用
點(diǎn)贊
收藏

51CTO技術(shù)棧公眾號