鴻蒙南北向開發(fā)基礎(chǔ)及項(xiàng)目實(shí)戰(zhàn)教程 課件全套1-8 鴻蒙系統(tǒng)應(yīng)用開發(fā)基礎(chǔ) - -智慧城市云管理項(xiàng)目開發(fā)副本_第1頁
鴻蒙南北向開發(fā)基礎(chǔ)及項(xiàng)目實(shí)戰(zhàn)教程 課件全套1-8 鴻蒙系統(tǒng)應(yīng)用開發(fā)基礎(chǔ) - -智慧城市云管理項(xiàng)目開發(fā)副本_第2頁
鴻蒙南北向開發(fā)基礎(chǔ)及項(xiàng)目實(shí)戰(zhàn)教程 課件全套1-8 鴻蒙系統(tǒng)應(yīng)用開發(fā)基礎(chǔ) - -智慧城市云管理項(xiàng)目開發(fā)副本_第3頁
鴻蒙南北向開發(fā)基礎(chǔ)及項(xiàng)目實(shí)戰(zhàn)教程 課件全套1-8 鴻蒙系統(tǒng)應(yīng)用開發(fā)基礎(chǔ) - -智慧城市云管理項(xiàng)目開發(fā)副本_第4頁
鴻蒙南北向開發(fā)基礎(chǔ)及項(xiàng)目實(shí)戰(zhàn)教程 課件全套1-8 鴻蒙系統(tǒng)應(yīng)用開發(fā)基礎(chǔ) - -智慧城市云管理項(xiàng)目開發(fā)副本_第5頁
已閱讀5頁,還剩656頁未讀 繼續(xù)免費(fèi)閱讀

付費(fèi)下載

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡介

第1章鴻蒙系統(tǒng)應(yīng)用開發(fā)基礎(chǔ)深圳信息職棠技術(shù)學(xué)院SHENZHEN

INSTITUTE

OF

INFORMATION

TECHNOLOGY前言●本章主要講述鴻蒙系統(tǒng)應(yīng)用開發(fā)基礎(chǔ)知識(shí)。深圳信息職業(yè)技術(shù)學(xué)院SHENZHEN

INSTTUTEOF

INFORMATIONTECHNOLOGY第2頁本節(jié)概述和學(xué)習(xí)目標(biāo)●通過學(xué)習(xí)本節(jié)將能夠了解鴻蒙系統(tǒng)的開發(fā)基礎(chǔ)知識(shí)?!?/p>

通過本節(jié)學(xué)習(xí)可以:□了解物聯(lián)網(wǎng)系統(tǒng)□了解Hi3861

芯片□了解OpenHarmony

鴻蒙系統(tǒng)深圳信息職業(yè)技術(shù)學(xué)院SHENZHEN

INSTTUTEOF

INFORMATIONTECHNOLOGY第3頁目錄1.

物聯(lián)網(wǎng)系統(tǒng)概述2.

華為海思Hi3861芯片概述3.

鴻蒙系統(tǒng)概述深圳信息職業(yè)技術(shù)學(xué)院SHENZHEN

INSTTUTEOF

INFORMATIONTECHNOLOGY第4頁●物聯(lián)網(wǎng)

(Internet

of

Things,IoT):

把所有物品通過信息傳感器與互聯(lián)網(wǎng)連接起來,實(shí)現(xiàn)智能化識(shí)別和管理的萬物互聯(lián)網(wǎng)絡(luò)。物聯(lián)網(wǎng)系統(tǒng)概述深圳信息職業(yè)技術(shù)學(xué)院SHENZHEN

INSTTUTEOF

INFORMATIONTECHNOLOGY第5頁●健康管理通過物聯(lián)網(wǎng)技術(shù),智能設(shè)備實(shí)時(shí)監(jiān)測健康指標(biāo),提供專業(yè)運(yùn)動(dòng)建議和疾病

防治方案,助力科學(xué)健身和疾病預(yù)防?!裰悄?/p>

居物聯(lián)網(wǎng)技術(shù)驅(qū)動(dòng)家用電器智能化,通過各類智能設(shè)備實(shí)現(xiàn)遠(yuǎn)程控制,提升

家居舒適度和生活便利性?!裰腔鄢鞘兄Τ鞘薪煌?、環(huán)境監(jiān)測、市政管理智能化,實(shí)現(xiàn)節(jié)能減排,提升城市可

持續(xù)發(fā)展能力,改善市民生活質(zhì)量?!癞a(chǎn)業(yè)促進(jìn)5G技術(shù)為車聯(lián)網(wǎng)提供了更高速、更可

靠的網(wǎng)絡(luò)連接;同時(shí)人工智能、大數(shù)

據(jù)、云計(jì)算等技術(shù)的深度融合。

深圳信息職棠技術(shù)學(xué)院物聯(lián)網(wǎng)系統(tǒng)概述物聯(lián)網(wǎng)應(yīng)用領(lǐng)域第6頁內(nèi)存CPU輸出設(shè)備外存●計(jì)算機(jī)系統(tǒng)硬件架構(gòu)基本上是由CPU、

內(nèi)存、外存、輸入設(shè)備和輸出設(shè)備等五個(gè)部件組成計(jì)算機(jī)系統(tǒng)深圳信息職業(yè)技術(shù)學(xué)院SHENZHEN

INSTTUTEOF

INFORMATIONTECHNOLOGY輸入設(shè)備第7頁●嵌入式系統(tǒng)是以計(jì)算機(jī)系統(tǒng)技術(shù)為中心,綜合考慮產(chǎn)品需求、成本、功耗、可靠性等特性,而定制軟硬件資源的計(jì)算機(jī)系統(tǒng)。嵌入式系統(tǒng)深圳信息職業(yè)技術(shù)學(xué)院手機(jī)-計(jì)算機(jī)系統(tǒng)PC-計(jì)算機(jī)系統(tǒng)SHENZHEN

INSTTUTEOF

INFORMATIONTECHNOLOGY第8頁●物聯(lián)網(wǎng)系統(tǒng)是以嵌入式系統(tǒng)為基礎(chǔ),加入各種傳感器與聯(lián)網(wǎng)設(shè)備構(gòu)造而成。電池電壓采集EM7028SPL06-001LSM303DLHC藍(lán)牙MPU6050按鍵NFC模塊無線充電(或磁吸充電)深圳信息職業(yè)技術(shù)學(xué)院SHENZHEN

INSTTUTEOF

INFORMATIONTECHNOLOGY物聯(lián)網(wǎng)系統(tǒng)OLED屏LVGLSTM32F411

CEU6FreeRTOS第9頁9目錄1.

物聯(lián)網(wǎng)系統(tǒng)概述2.

華為海思Hi3861芯片概述3.

鴻蒙系統(tǒng)概述深圳信息職業(yè)技術(shù)學(xué)院SHENZHEN

INSTTUTEOF

INFORMATIONTECHNOLOGY第10頁智能照明環(huán)境監(jiān)測3智慧城市●Hi3861是華為海思基于開源的RISC-V

CPU架構(gòu)推出集成Wi-Fi網(wǎng)絡(luò)的物聯(lián)網(wǎng)低功耗主控芯片Hi3861

芯片概述深圳信息職業(yè)技術(shù)學(xué)院Hi386

1產(chǎn)品

應(yīng)用SHENZHEN

INSTTUTEOF

INFORMATIONTECHNOLOGY智能家電智能門鎖智能安防第11頁25●CPU:32bit

高性能CPU,最大工作頻率160MHz●

內(nèi)存:內(nèi)置SRAM

352KB●

外存:內(nèi)存ROM

288KB與2MB

Flash●

輸入/輸出設(shè)備接口:1個(gè)SDIO

Slave接口、2個(gè)SPI接口、2個(gè)I2C

接口、3

個(gè)

UART

接口、15個(gè)GPIO

接口、7路ADC

輸入、6路

PWM、1個(gè)

I2S接口●

內(nèi)置Wi-Fi:2.4GHz

頻段、支持IEEE

802.11b/g/n、支

密WFAWPA/WPA2

personal/WPS2.0協(xié)議、支持最大速率72.2MbpsHi3861

功能特性深圳信息職業(yè)技術(shù)學(xué)院SHENZHEN

INSTTUTEOF

INFORMATIONTECHNOLOGY第12頁除Hi3861主控芯片電路外,還

提供了LED、按鍵、觸摸LCD屏

接口、type-c的USB轉(zhuǎn)UART接口

等。Hi3861

開發(fā)板(1/3)深圳信息職棠技術(shù)學(xué)院SHENZHEN

INSTTUTE

OF

INFORMATION

TECHNOLOGY第13頁GND核心板原理圖GPIO_GPIO_06/UART1_TXDWL_RF_RFIO_2GWL_RF_RFIO_2GWL_RF_RFIO_2G883Hi3861開發(fā)板(2/3)GPIO_00/IIC_SDAWL_RF_RFIO_2G3V31uFGNDANT1深圳信息職業(yè)技術(shù)學(xué)院12VDD_PM5

GPIO_08202122GNDGNDGP

lO_

14GP

lO_13GPIO_12GPIO_11HI3861GP

IO_10/SPI0_CuKSHENZHEN

INSTTUTEOF

INFORMATIONTECHNOLOGYGP

lO_03GP

lO_04PMU_PWRONGPio_02第

1

4

頁09/SPIO_MOSIGNDGNDGNDGNDHi3861

開發(fā)板(3/3)GPIO

01·GNDLED和按鍵的電路原理圖深圳信息職業(yè)技術(shù)學(xué)院SHENZHEN

INSTTUTEOF

INFORMATIONTECHNOLOGYKEY11212pFKEY2LED1R61kQR91kQ第15頁GPIOR502目錄1.

物聯(lián)網(wǎng)系統(tǒng)概述2.

華為海思Hi3861芯片概述3.

鴻蒙系統(tǒng)概述深圳信息職業(yè)技術(shù)學(xué)院SHENZHEN

INSTTUTEOF

INFORMATIONTECHNOLOGY第16頁·OpenHarmony是華為向開放原子開源基金會(huì)捐贈(zèng)的一整套開源操作系統(tǒng)項(xiàng)目,它是鴻蒙操作系統(tǒng)的基礎(chǔ)版本,提供了一個(gè)完整的、基于微內(nèi)核的分布式操作系統(tǒng)

框架,具有多種操作系統(tǒng)內(nèi)核、多種網(wǎng)絡(luò)協(xié)議、圖形界面框架及文件系統(tǒng)等功能模

塊。鴻蒙系統(tǒng)概述深圳信息職業(yè)技術(shù)學(xué)院SHENZHEN

INSTTUTEOF

INFORMATIONTECHNOLOGY第17頁系統(tǒng)基本能力子系統(tǒng)集ArkUI用戶程序框架Ability框架分布式任務(wù)調(diào)度分布式數(shù)據(jù)管理分布式軟總線方舟多語言運(yùn)行時(shí)子系統(tǒng)KAL(內(nèi)核抽象層)內(nèi)核子系統(tǒng)

Linux

KernelLiteOS

驅(qū)動(dòng)子系統(tǒng)

HDF

(硬件驅(qū)動(dòng)框架)系統(tǒng)應(yīng)用

控制欄

設(shè)

擴(kuò)展應(yīng)用/三方應(yīng)用8

I

O

T

務(wù)

統(tǒng))9穿戴專有硬件服務(wù)子系統(tǒng)用戶IAM子系統(tǒng)。

I

O

T

業(yè)

務(wù)

統(tǒng)○

穿

業(yè)

務(wù)

統(tǒng)智慧屏專有業(yè)務(wù)子系統(tǒng)鴻蒙系統(tǒng)架構(gòu)安全子系統(tǒng)圖形子系統(tǒng)多模輸入子系統(tǒng)基礎(chǔ)軟件服務(wù)子系統(tǒng)集二應(yīng)

層框架層系統(tǒng)服務(wù)層內(nèi)核層深圳信息職業(yè)技術(shù)學(xué)院多媒體子系統(tǒng)電話子系統(tǒng)增強(qiáng)軟件服務(wù)子系統(tǒng)集

—□

統(tǒng)硬件服務(wù)子系統(tǒng)集、公共基礎(chǔ)庫子系統(tǒng)位置服務(wù)子系統(tǒng)第18頁。

E

A

I

統(tǒng)子統(tǒng)系&VDDPS系統(tǒng)類型輕量級系統(tǒng)小型級系統(tǒng)標(biāo)準(zhǔn)級系統(tǒng)支持的處理器ARM

Cortex-M、RISC-V32位等

資源極其有限的設(shè)備Arm

Cortex-A等高性能的

設(shè)備Arm

Cortex-A等超高性能的設(shè)備最少要求內(nèi)存128KB1MB128MB系統(tǒng)能力輕量級網(wǎng)絡(luò)協(xié)議,輕量級的圖形

框架,以及傳感器接口統(tǒng)一標(biāo)準(zhǔn)的圖形框架、性能強(qiáng)大的音視頻編解碼能力更強(qiáng)的交互響應(yīng)能力、3D

GPU以及出色的硬件加速能力、豐富的界面控件及效果突出的圖形框架、完整的應(yīng)用程序開發(fā)框架系統(tǒng)內(nèi)核LiteOS-MLiteOS-ALinux面向產(chǎn)品智能家居設(shè)備、傳感器設(shè)備、智

能穿戴類設(shè)備等視頻監(jiān)控、視頻貓眼、人

臉識(shí)別門禁等智能電視、手機(jī)、平板等鴻蒙系統(tǒng)類型第19頁KAL

層文件系統(tǒng)FAT任務(wù)管理軟件定時(shí)器HPF時(shí)間管理ARMPOSIX可選組件CMSIS調(diào)測工具庫VFSLittleFs網(wǎng)

絡(luò)基礎(chǔ)內(nèi)核通信機(jī)制

內(nèi)存管理事件

互斥鎖動(dòng)態(tài)內(nèi)存CPU占用率TraceLMKexchook動(dòng)態(tài)鏈接C++GPIO?;厮軸hellLMS信號低功耗框架HDFI2C消息隊(duì)列調(diào)度器IDLE硬件相關(guān)中斷管理信號量靜態(tài)內(nèi)存Tickless異常處理

TrustZone硬件架構(gòu)RISC-VXtensa

C-SKYLiteOS-M

內(nèi)核鴻蒙系統(tǒng)架構(gòu)深圳信息職業(yè)技術(shù)學(xué)院SHENZHEN

INSTTUTEOF

INFORMATIONTECHNOLOGY第20頁內(nèi)核LiteOS-A

內(nèi)核鴻蒙系統(tǒng)架構(gòu)Init通信機(jī)制事件

消息隊(duì)列互斥鎖

讀寫鎖信號量

信號快速鎖

共享內(nèi)存調(diào)度器基礎(chǔ)內(nèi)核多核核間鎖死鎖檢測IDLE硬件架構(gòu)

HDFCortex-AGPIO

I2C進(jìn)程管理任務(wù)管理軟件定時(shí)器OOMHPFTickless時(shí)間管理擴(kuò)展內(nèi)核C++VDSO動(dòng)態(tài)加載

低功耗框架通信機(jī)制Liteipc

Pipe調(diào)試工具虛擬內(nèi)存管理物理頁管理堆內(nèi)存管理動(dòng)態(tài)內(nèi)存靜態(tài)內(nèi)存CPU

率TracehilogblackboxperfHookhidumperLMS用戶進(jìn)程c庫

)系統(tǒng)調(diào)用安全Capability

VIDShell進(jìn)程內(nèi)存管理深圳信息職業(yè)技術(shù)學(xué)院POSIX

口(musl

文件系統(tǒng)信號調(diào)度統(tǒng)計(jì)硬件相關(guān)

中斷管理文件系統(tǒng)

FATprocfs調(diào)測工具

?;厮輧?nèi)存檢測系統(tǒng)調(diào)用適配層(POSIX

接口、

LiteoS接口)RootfsUID/GID線程通信機(jī)制網(wǎng)絡(luò)時(shí)間管理SHENZENINSTTUTEOFINFORMATIONTECHNOLOGYRamfszpfsJFFS2NFS第21頁異常處理內(nèi)存管理鏈接器用戶空間內(nèi)核空間內(nèi)

C

庫網(wǎng)絡(luò)VFS1

O

1

務(wù)

統(tǒng)穿戴專有硬件服務(wù)子系統(tǒng)生物特征識(shí)別子系統(tǒng)位置服務(wù)子系統(tǒng)1

O

7

業(yè)

務(wù)

統(tǒng)穿戴專有業(yè)務(wù)子系統(tǒng)智慧屏專有業(yè)務(wù)子系統(tǒng)擴(kuò)展應(yīng)用/三方應(yīng)用增強(qiáng)軟件服務(wù)子系統(tǒng)集

硬件服務(wù)子系統(tǒng)集M

S

D

P

&

D

V

統(tǒng)D

F

X

子系

統(tǒng)多媒體子系統(tǒng)電話子系統(tǒng)事件通知子系統(tǒng)Linux內(nèi)核鴻蒙系統(tǒng)架構(gòu)系統(tǒng)應(yīng)用

桌面

控制欄

設(shè)置

電話安全子系統(tǒng)圖形子系統(tǒng)多模輸入子系統(tǒng)驅(qū)動(dòng)子系統(tǒng)HDF(OpenHarmony

驅(qū)動(dòng)框架)KAL(內(nèi)核抽象層)Linux

Kernel應(yīng)

層應(yīng)

層系

統(tǒng)

務(wù)

層內(nèi)

層分布式任務(wù)調(diào)度分布式數(shù)據(jù)管理深圳信息職棠技術(shù)學(xué)院分布式軟總線

公共基礎(chǔ)庫子系統(tǒng)UI框架Ability框架基礎(chǔ)軟件服務(wù)子系統(tǒng)集系統(tǒng)基本能力子系統(tǒng)集用戶程序框架內(nèi)核子系統(tǒng)第22頁A

I

統(tǒng)思考題1.

請簡述物聯(lián)網(wǎng)系統(tǒng)與嵌入式系統(tǒng)的關(guān)系。2.

請簡述OpenHarmony系統(tǒng)的三種類型。深圳信息職業(yè)技術(shù)學(xué)院SHENZHEN

INSTTUTEOF

INFORMATIONTECHNOLOGY第23頁本節(jié)小結(jié)●描述了計(jì)算機(jī)系統(tǒng)、嵌入式系統(tǒng)、物聯(lián)網(wǎng)系統(tǒng)間的關(guān)系?!裰v述了Hi3861芯片的功能特性?!裰v述了OpenHarmony鴻蒙系統(tǒng)的三種類型。深圳信息職業(yè)技術(shù)學(xué)院SHENZHEN

INSTTUTEOF

INFORMATIONTECHNOLOGY第24頁謝

謝深圳信息職棠技術(shù)學(xué)院SHENZHEN

INSTITUJTEOF

INFORMATIONTECHNOLOGY25深圳信息職棠技術(shù)學(xué)院SHENZHEN

INSTITUTE

OF

INFORMATION

TECHNOLOGY鴻蒙系統(tǒng)設(shè)備開發(fā)基礎(chǔ)前言●本章主要講述鴻蒙設(shè)備開發(fā)環(huán)境的搭建。深圳信息職業(yè)技術(shù)學(xué)院SHENZHEN

INSTTUTEOF

INFORMATIONTECHNOLOGY第27頁本節(jié)概述和學(xué)習(xí)目標(biāo)●通過學(xué)習(xí)本節(jié)將能夠了解鴻蒙系統(tǒng)設(shè)備開發(fā)環(huán)境的搭建?!裢ㄟ^本節(jié)學(xué)習(xí)可以熟悉:□VSCode的安裝□devicetool鴻蒙插件安裝□設(shè)備開發(fā)的SDK

下載□設(shè)備開發(fā)所需的工具集下載和UART

接口驅(qū)動(dòng)安裝深圳信息職業(yè)技術(shù)學(xué)院SHENZHEN

INSTTUTEOF

INFORMATIONTECHNOLOGY第28頁目錄1.VSCode的安裝2.

devicetool鴻蒙插件安裝3.

SDK下載4.工具集下載和UART接口驅(qū)動(dòng)安裝深圳信息職業(yè)技術(shù)學(xué)院SHENZHEN

INSTTUTEOF

INFORMATIONTECHNOLOGY第29頁·VisualStudioCode(VSCode)是一款功能強(qiáng)大的、免費(fèi)開源的源代碼編輯軟件,它支持所有主流的開發(fā)語言,并在集成的插件市場上提供各種功能插件。鴻蒙系統(tǒng)

利用VSCode的插件機(jī)制,實(shí)現(xiàn)了設(shè)備開發(fā)流程的全面支持。在VSCode官網(wǎng)下載

Windows

系統(tǒng)版本軟件VSCode

安裝(1/3)深圳信息職業(yè)技術(shù)學(xué)院SHENZHEN

INSTTUTEOF

INFORMATIONTECHNOLOGY第30頁●下載完成后執(zhí)行VSCodeUserSetup-x64-1.92.0.exe

后,根據(jù)向?qū)褂媚J(rèn)設(shè)置逐步完成安裝操作。安裝步驟完成后,啟動(dòng)VSCode,安裝必要的設(shè)備開發(fā)插件2

C/C++

①68.1M★3.5

C/C++IntelliSense,debugging,and

...李Microsoft

InstallC++IntellisenseC/C++Intellisense

with

the

help

of

G...

austin

Install

ΔC/C++Extension

Pack31.3M

4.5Popular

extensions

for

C++develop

李Microsoft

InstallBetter

C++Syntax

①11.4MThebleedingedge

ofthe

C++syntax

Jeff

Hykin

InstallDETAILS

FEATURES

CHADacC/C++for

Visual

Studio

CodeRepository

|Issues

|Documentation

|CodeSamplesC/C++

v1.21.5Microsoft

microsoft.com

①68,189,817C/C++IntelliSense,debugging,and

code

browsingInstall

?AutoUpdateFile

Edit

Selection

View

Go

Run

Terminal

HelpEXTENSIONS:MARKETPLACE

WelcomeVSCode

安裝(2/3)OSearchExtension:C/C++×深圳信息職業(yè)技術(shù)學(xué)院SHENZHEN

INSTTUTEOF

INFORMATIONTECHNOLOGYC++Cc++C/C++第31頁VSCode

安裝(3/3)●“C/C++”插件用于實(shí)現(xiàn)VSCode

對鴻蒙系

統(tǒng)C語言源文件的支持?!瘛癎N”插件用于實(shí)現(xiàn)VSCode

對鴻蒙系統(tǒng)的

*.gn編譯配置文件的支持?!瘛癐nclude

AutoComplete”插件實(shí)現(xiàn)源程

序頭文件名的自動(dòng)補(bǔ)全。C/C++C/C++IntelliSense,debugging,and..MicrosoftGNEditGNfiles

inVisualStudio

Code

npclaudiuIncludeAutocompleteAutocompletion

for

C++includes

ajshortEXTENSIONSSearch

Extensionsin

MarketplaceINSTALLED

3深圳信息職棠技術(shù)學(xué)院第32頁目錄1.

VSCode

的安裝2.devicetool

鴻蒙插件安裝3.SDK下載4.工具集下載和UART接口驅(qū)動(dòng)安裝深圳信息職業(yè)技術(shù)學(xué)院SHENZHEN

INSTTUTEOF

INFORMATIONTECHNOLOGY第33頁△DevEco

Device

Tool安裝安裝DevEco

Device

Tool正在檢查依賴項(xiàng).工具

版本要求

已安裝

狀態(tài)Python3.8-3.9(64-bit)3.80kVSCode

1.66.2+

1.92.0

0k選擇Python路徑DevEco

Device

Tool00<上一步在鴻蒙系統(tǒng)官網(wǎng)下載Windows

系統(tǒng)版本后得到“devicetool-windows-tool-00.zip”壓縮包。解壓壓縮包后,運(yùn)行“devicetool-windows-tool-00.exe”安裝程序。devicetool

鴻蒙插件安裝(1/2)C:\Users\jk\AppData\Local\Programs\Python\Python38\python.eze深圳信息職棠技術(shù)學(xué)院SHENZHEN

INSTTUTE

OF

INFORMATION

TECHNOLOGY(P)安裝(I)取消(C)第34頁devicetool

鴻蒙插件安裝(2/2)鴻蒙設(shè)備開發(fā)的VSCode

插件完成安裝后,在VSCode的插件列表中顯示出相關(guān)的插

件并在窗口左側(cè)新增了一個(gè)“DevEco”

框按鈕INSTALLEDBurn

ToolHuaweiC/C++C/C++IntelliSense,debugging,and...DevEco

Device

Tool

Debug③12ms

HUAWEIDevEco

DeviceTool

Debug

HuaweiDevEco

Device

Tool

Remo...③203msDevelopment

environment

for

Open..

Huawei必

MicrosoftDevEco

Chip

ConfigHuawei深圳信息職棠技術(shù)學(xué)院③5ms第35頁目錄1.

VSCode

的安裝2.devicetool鴻蒙插件安裝3.SDK

下載4.工具集下載和UART接口驅(qū)動(dòng)安裝深圳信息職業(yè)技術(shù)學(xué)院SHENZHEN

INSTTUTEOF

INFORMATIONTECHNOLOGY第36頁.git

記錄源碼的版本、配置、跟蹤等管理信息build

工程源碼編譯、打包鏡像等操作的Python

腳本程序doc

提供開發(fā)文檔、芯片手冊等sample

提供開發(fā)案例src

工程源碼目錄LICENSEREADME.md安裝完Git程序后,在命令行窗口執(zhí)行命令:gitclone/HiSpark/hi3861_hdu_iot_application

下載完成后,得到的適配Hi3861

的鴻蒙系統(tǒng)工程源碼深圳信息職業(yè)技術(shù)學(xué)院SHENZHEN

INSTTUTEOF

INFORMATIONTECHNOLOGYSDK

下載第37頁目錄1.

VSCode

的安裝2.

devicetool鴻蒙插件安裝3.

SDK下載4.

工具集下載和UART接口驅(qū)動(dòng)安裝深圳信息職業(yè)技術(shù)學(xué)院SHENZHEN

INSTTUTEOF

INFORMATIONTECHNOLOGY第38頁鴻蒙設(shè)備開發(fā)所需的編譯器等相關(guān)的工具在華為官網(wǎng)的下載地址:

https://hispark-obs.

obs.cn-east-3.myhuaweicloud.com/DevTools_Hi3861V100_v1.0.zip下載并解壓縮開發(fā)工具包后,放在較淺層次的目錄中且重命名文件夾個(gè)

>此電腦>本地磁盤(D:)>development

>Hi3861名稱hi3861-iothi3861-tools快速訪問WP

S云盤

此電腦修改日期2024/8/610:562024/8/613:09工具集下載類型文件夾文件夾深圳信息職業(yè)技術(shù)學(xué)院SHENZHEN

INSTTUTEOF

INFORMATIONTECHNOLOGY第39頁設(shè)備管理器文件(F)

操作(A)查看(V)

幫助(H)安全設(shè)備處理器磁盤驅(qū)動(dòng)器存儲(chǔ)控制器打印隊(duì)列電池端口(COM

LPT)USB-SERIAL

CH340(COM3)固件執(zhí)行“D:\development\Hi3861\hi3861-tools\usb_serial_driver\CH341SER.EXE”完成驅(qū)動(dòng)安裝。安裝完成并通過數(shù)據(jù)線連接開發(fā)板與PC

機(jī)后,在系統(tǒng)的設(shè)備管理器即可查UART驅(qū)動(dòng)安裝看到對應(yīng)的COM口深圳信息職業(yè)技術(shù)學(xué)院SHENZHEN

INSTTUTEOF

INFORMATIONTECHNOLOGY第40頁思考題1.

請簡述devicetool與VSCode的關(guān)系。深圳信息職業(yè)技術(shù)學(xué)院SHENZHEN

INSTTUTEOF

INFORMATIONTECHNOLOGY第41頁本節(jié)小結(jié)●

講述了VSCode的安裝。●

講述了devicetool

插件的安裝?!裰v述了設(shè)備開發(fā)的SDK下載。●講述了設(shè)備開發(fā)的工具集下載?!裰v述了開發(fā)板UART接口的驅(qū)動(dòng)安裝。深圳信息職業(yè)技術(shù)學(xué)院SHENZHEN

INSTTUTEOF

INFORMATIONTECHNOLOGY第42頁前言●本章主要講述Hi3861工程源碼開發(fā)基礎(chǔ)。深圳信息職業(yè)技術(shù)學(xué)院SHENZHEN

INSTTUTEOF

INFORMATIONTECHNOLOGY第43頁本節(jié)概述和學(xué)習(xí)目標(biāo)●

通過學(xué)習(xí)本節(jié)將能夠?qū)W習(xí)Hi3861

工程源碼開發(fā)基礎(chǔ)?!裢ㄟ^本節(jié)學(xué)習(xí)可以熟悉:□工程源碼導(dǎo)入□工程配置□工程源碼編譯□工程程序燒錄□工程程序調(diào)試□工程加入程序代碼深圳信息職業(yè)技術(shù)學(xué)院SHENZHEN

INSTTUTEOF

INFORMATIONTECHNOLOGY第44頁目錄1.

工程源碼導(dǎo)入2.

工程配置3.

工程源碼編譯4.

工程程序燒錄5.

工程程序調(diào)試6.

工程加入程序代碼深圳信息職業(yè)技術(shù)學(xué)院SHENZHEN

INSTTUTEOF

INFORMATIONTECHNOLOGY第45頁OSearchWelcome

DevEco

Device

Tool×HomeWelcome

to

DevEco

Device

ToolRemoteDevelopmentResource

ManagerCLIDevEco

CLINewTerminalOfficial

WebSite

Document

FAQFeedbackUser

Agreement&&Statement

About

PrivacyProjectsInput

pro...

All

New

Project

Import

Project×0△020

深圳信息職棠技術(shù)學(xué)院工程源碼導(dǎo)入(1/3)DEVECO:QUICKACCESS第46頁Boards即可,其他兩項(xiàng)設(shè)置會(huì)自動(dòng)適配。ImportProject*

SOCHI3861FrameworkHbCancel●在首次導(dǎo)入工程源碼時(shí)會(huì)彈出設(shè)置窗口,設(shè)置源碼工程所用的主控芯片為HI3861Boardhi3861Import工程源碼導(dǎo)入(2/3)深圳信息職業(yè)技術(shù)學(xué)院SHENZHEN

INSTTUTEOF

INFORMATIONTECHNOLOGY第47頁工程源碼導(dǎo)入(3/3)

SHENZHEN

INSTTUTE

OF

INFORMATION

TECHNOLOGYY

HI3861-IOT>.deveco

工程具體源文件目錄與用途>.vscode>build>doc>sample在sample\wifi-iot\app

子目錄下開發(fā)應(yīng)用程序提供一些如電源管理、

IO口操作等基礎(chǔ)功能調(diào)用接口

主要提供編譯配置等工具主控芯片適配鴻蒙系統(tǒng)的功能代碼主要提供芯片廠商的開發(fā)工具包主要提供鴻蒙系統(tǒng)的無線網(wǎng)絡(luò)、數(shù)據(jù)管理等功能框架主要提供解析gn

配置文件與構(gòu)建鴻蒙系統(tǒng)的工具

主要提供源碼工程系統(tǒng)類型、產(chǎn)品名稱等配置信息

主要提供系統(tǒng)測試框架的組件與工具主要提供第三方開源的功能庫,如paho.mqtt

庫主要提供鴻蒙系統(tǒng)通用的基礎(chǔ)組件,如定時(shí)器、文件操作等

主要提供芯片廠商或開發(fā)板商實(shí)現(xiàn)的系統(tǒng)層功能>ap

plications

>base>build>device

ird_party>utils>vendorthest>domains>foundation>prebuilts>productdefine深圳信息職業(yè)技術(shù)學(xué)院Y

src第48頁目錄1.

工程源碼導(dǎo)入2.

工程配置3.

工程源碼編譯4.

工程程序燒錄5.

工程程序調(diào)試6.

工程加入程序代碼深圳信息職業(yè)技術(shù)學(xué)院SHENZHEN

INSTTUTEOF

INFORMATIONTECHNOLOGY第49頁Go

9hi3861-iot□

08

×DevEco

Device

Tool×1hi3861-iot3Tool

Chain

hi3861ProjectConfig

managerbuild

compiler_bin_pathbuild_type

complier

tool

chainboard_duct

D:\development'Hi3861hi3861-tools5

×compiler_bin_pathupload

V

uploadupload_portupload_portnupoau

ponwnecn

uprozter

oruse1rammware

supload_partitionsCOM3

[USB-SERIALCH340(COM3)]

6upload_resetupload_speedupload_protocolA

protocol

that

uploader

tool

uses

to

talk

to

a

boarddebughiburn-serialdebug

clientCPROJECT

TASKShi3861面CleanBuildRebuildUploadMonitorlDoD

ProfilingStackAnalysisD?Image

Analysis°master0

×0△0

200工程配置 File

Edit

SelectionViewDEVECOQUICK

ACCESSMenuHomeProjectSettings

2

BoardsHDFRemote

Development

Resource

ManagerCLIDevEco

CLINew

Terminal深圳信息職業(yè)技術(shù)學(xué)院V7upload_protocol第50頁上目錄1.

工程源碼導(dǎo)入2.

工程配置3.

工程源碼編譯4.

工程程序燒錄5.

工程程序調(diào)試深圳信息職業(yè)技術(shù)學(xué)院SHENZHEN

INSTTUTEOF

INFORMATIONTECHNOLOGY第51頁點(diǎn)擊“Build”或

“Rebuild”按鈕進(jìn)行編譯。

Rebuild

會(huì)清除所有已編譯文件并重新編譯,適用于新增或刪除工程源文件時(shí);使用Build,

它只會(huì)更新這些修改過的文件。PROJECTTASKShi3861煎CleanO

Build④RebuildUpload草MonitorD0DProfiling&StackAnalysis0D

ImageAnalysisOmaster*

×0△0

00工程源碼編譯深圳信息職業(yè)技術(shù)學(xué)院SHENZHEN

INSTTUTEOF

INFORMATIONTECHNOLOGY第52頁目錄1.

工程源碼導(dǎo)入2.

工程配置3.

工程源碼編譯4.

工程程序燒錄5.

工程程序調(diào)試6.

工程加入程序代碼深圳信息職業(yè)技術(shù)學(xué)院SHENZHEN

INSTTUTEOF

INFORMATIONTECHNOLOGY第53頁P(yáng)ROBLEMS

OUTPUT

TERMINA

L

PORTS

DEBUG

CONSOLE

2deveco:upload-hi3861-Task*Executing

task:C:\Program

Files\Huawei\DevECo-Device-Tool\core\deveco-venv\Scripts\hos.exepload--project-dir

D:\development\Hi3861\hi3861-iot--environment

hi3861Processing

hi3861

(platform:cfbb;board:hi3861;framework:hb)Verbosemodecanbeenabledvia^-v,--verbose`optionConfiguringupload..CURRENT:upload_protocol=hiburn-serialUploading

with

HiBurnConnecting,please

reset

device

.點(diǎn)擊“Upload

”待TERMINAL窗口上輸出提示后,則按開發(fā)板的RESET鍵后啟動(dòng)通過UART

接口傳輸并燒錄程序文件。V

PROJECTTASKShi3861CleanO

BuildRebuildUpload草

MonitorL0DProflingR&StackAnalysis00

ImageAnalysis深圳信息職業(yè)技術(shù)學(xué)院SHENZHEN

INSTTUTEOF

INFORMATIONTECHNOLOGY工程程序燒錄第54頁目錄1.

工程源碼導(dǎo)入2.

工程配置3.

工程源碼編譯4.

工程程序燒錄5.

工程程序調(diào)試6.

工程加入程序代碼深圳信息職業(yè)技術(shù)學(xué)院SHENZHEN

INSTTUTEOF

INFORMATIONTECHNOLOGY第55頁P(yáng)ROBLEMSOUTPUTTERMINAL

DEBUGCONSOLE--encoding

UTF-8--project-dir

D:\development\Hi3861\hi3861-iot-Miniterm

on

COM4115200,8,N,1

Quit:Ctrl+C|Menu:Ctrl+T|Help:ctrl+T

followedbyctrl+H

ready

to

oS

startsdk

ver:Hi3861V100RO01COOSPC0252020-09-0318:10:00wifi

init

success!hilog

willinit.PROJECTTASKSO

BuildRebuildUploadJ

MonitorLD0D

Profiling&StackAnalysisD0

ImageAnalysis點(diǎn)擊“Monitor”

以啟動(dòng)UART接收功能,此時(shí)開發(fā)板會(huì)通過UART接口返回相關(guān)信息。工程程序調(diào)試深圳信息職業(yè)技術(shù)學(xué)院SHENZHEN

INSTTUTEOF

INFORMATIONTECHNOLOGYformatting

spiffs...Filesystemmount

ok.第56頁目錄1.

工程源碼導(dǎo)入2.

工程配置3.

工程源碼編譯4.

工程程序燒錄5.

工程程序調(diào)試6.

工程加入程序代碼深圳信息職業(yè)技術(shù)學(xué)院SHENZHEN

INSTTUTEOF

INFORMATIONTECHNOLOGY第57頁√applications\sample\wifi-iotapp>demolink>iothardwaremyhelloC

myhello_demo.c>samgr>startupBUILD.gn在VSCode

源文件瀏覽器上選中“app”

文件夾后,右鍵菜單選擇“New

Folder…

”創(chuàng)

建myhello

子目錄,并通過“New

File

…”

右鍵菜單創(chuàng)建myhello_demo.c源文件工程加入程序代碼深圳信息職業(yè)技術(shù)學(xué)院SHENZHEN

INSTTUTEOF

INFORMATIONTECHNOLOGY第58頁工程加入程序代碼Myhello_demo.c

輸入代碼:#include<stdio.h>//提供printf

函數(shù)#include<ohos_init.h>//提供SYS_RUN/APP_FEATURE_INIT

宏定義voidmyhelloInit()//自定義的入口函數(shù){printf("myhello

init\n");}//指定在鴻蒙系統(tǒng)的應(yīng)用層執(zhí)行入口函數(shù)APP_FEATURE_INIT(myhelloInit);//指定在鴻蒙系統(tǒng)的系統(tǒng)服務(wù)層執(zhí)行入口函數(shù)//SYS_RUN(myhelloInit);深圳信息職棠技術(shù)學(xué)院SHENZHEN

INSTTUTE

OF

INFORMATION

TECHNOLOGY第59頁工程加入程序代碼在

myhello目錄下創(chuàng)建BUILD.gn

文件,并輸入內(nèi)容:#指定編譯目標(biāo)名為myhello_test,生成靜態(tài)庫libmyhello_test.astatic_library("myhello_test"){#指定程序是由哪些源文件組成,當(dāng)多個(gè)源文件時(shí)由","分隔sources=["myhello_demo.c"]#指定頭文件所在路徑include_dirs

=["http://utils/native/lite/include",深圳信息職棠技術(shù)學(xué)院SHENZHEN

INSTTUTE

OF

INFORMATION

TECHNOLOGY第60頁工程加入程序代碼修改app目錄下BUILD.gn文件內(nèi)容:import("http://build/lite/config/component/lite_component.gni")lite_component("app"){features=[#

"startup",#注釋不參與編譯的程序#格式:"子目錄名:子目錄BUILD.gn中定義的目標(biāo)名""myhello:myhello_test"深圳信息職棠技術(shù)學(xué)院SHENZHEN

INSTTUTE

OF

INFORMATION

TECHNOLOGY第61頁Build編譯工程時(shí)在終端輸出:[OHOSINFO][1/6]gcccrosscompilerobj/applications/sample/wifi-iot/app/myhello/libmyhello_test.myhello_demo.0[OHOSINFO][2/6]ARlibs/libmyhello_test.a[0HOSINFO][3/6]STAMPobj/applications/sample/wifi-iot/app/app.stamp[OHOS

INFO][4/6]STAMP

obj/build/lite/ohos.stamp[OHOSINFO][5/6]ACTION//device/hisilicon/hispark_pegasus/sdk_liteos:run_wifiiot_scons(//build/lite/toolchain:riscv32-unknown-elf)[OHOSINFO]D:\development\Hi3861\hi3861-iot\src\vendor\hisilicon\hispark_pegasus\fs.ymlnotfound,

stoppacking

fs.If

theproduct

doesnotneed

tobepackaged,ignoreit.[OHOS

INFO]wifiiot_hispark_pegasus

build

success[OHOS

INF0]cost

time:0:00:04please

check

the

compilation

log:C:\Users\jk\.deveco-device-tool\logs\build\build.log將程序燒錄至開發(fā)板后,執(zhí)行Monitor程序并重啟開發(fā)板,隨后即可在終端中查看到“myhello

init”的

輸出信息。====================[SUCCESS]Took6.09seconds

======

Terminal

willbereusedbytasks,pressanykeytoclose

it.

深圳信息職業(yè)技術(shù)學(xué)院工程加入程序代碼第62頁思考題1.

請簡述開發(fā)板USB線的作用。深圳信息職業(yè)技術(shù)學(xué)院SHENZHEN

INSTTUTEOF

INFORMATIONTECHNOLOGY第63頁本節(jié)小結(jié)●講述了工程源碼導(dǎo)入操作?!裰v述了工程的配置?!裰v述了工程源碼的編譯。●講述了工程程序燒錄方法?!裰v述了工程程序調(diào)試方法?!裰v述了工程中加入程序代碼的方法深圳信息職業(yè)技術(shù)學(xué)院SHENZHEN

INSTTUTEOF

INFORMATIONTECHNOLOGY第64頁前言●本章主要講述鴻蒙設(shè)備GPIO

應(yīng)用開發(fā)。深圳信息職業(yè)技術(shù)學(xué)院SHENZHEN

INSTTUTEOF

INFORMATIONTECHNOLOGY第65頁本節(jié)概述和學(xué)習(xí)目標(biāo)●通過學(xué)習(xí)本節(jié)將能夠了解鴻蒙系統(tǒng)設(shè)備GPIO

應(yīng)用開發(fā)?!裢ㄟ^本節(jié)學(xué)習(xí)可以熟悉:□華為海思的GPIO

操作函數(shù)□鴻蒙系統(tǒng)的GPIO

操作函數(shù)□鴻蒙系統(tǒng)的GPIO中斷處理深圳信息職業(yè)技術(shù)學(xué)院SHENZHEN

INSTTUTEOF

INFORMATIONTECHNOLOGY第66頁目錄1.華為海思的GPIO操作函數(shù)2.

鴻蒙系統(tǒng)的GPIO操作函數(shù)3.

鴻蒙系統(tǒng)的GPIO中斷處理深圳信息職業(yè)技術(shù)學(xué)院SHENZHEN

INSTTUTEOF

INFORMATIONTECHNOLOGY第67頁BitsAccessNameDescriptionReset[31:3]reserved保留。0x00000000[2:0]RWgpio_03_selGPIO_03管腳的具體復(fù)用情況。000:GPIO[3];001:UART0_TXD;010:UART1_CTS_N;011:SPI1_CSN;100:JTAG_TDI;101:PWM5_OUT;110:I2C1_SDA;111:SSI_DATA。0x0GPIO(General

Purpose

Input/Output,通用輸入輸出口)主要作為輸入或輸出功能使用,當(dāng)需要用代碼主動(dòng)控制GPIO

輸出高低電平時(shí),

GPIO

應(yīng)當(dāng)設(shè)置輸出功能;當(dāng)需要通過GPIO

取連接設(shè)備輸出的高低電平時(shí),

GPIO

應(yīng)當(dāng)設(shè)置輸入功能。Hi3861

芯片手冊中GPIO_03

GPIO的用途選擇寄存器:GPIO_03_SEL

GPIO_03

管腳復(fù)用控制寄存器。OffsetAddress:0x610Total

Reset

Value:Ox0000_0000華為海思的GPIO

操作函數(shù)(1/7)第68頁LED連接到GPIO_02引

,GPIO_02應(yīng)當(dāng)被配置為輸出功能。當(dāng)GPIO_02引腳輸出高電平時(shí),LED亮;而當(dāng)GPIO_02輸出低電平時(shí),LED熄。華為海思的GPIO操作函數(shù)(2/7)D3LED-0603深圳信息職業(yè)技術(shù)學(xué)院SHENZHEN

INSTTUTEOF

INFORMATIONTECHNOLOGYGPIO02>>PWMLED第69頁R19Hi3861

共有15個(gè)多功能的GPIO,

在鴻蒙工程中的hi_io.h頭文件,芯片廠家已定義好表示每個(gè)GPIO的枚舉常量:typedef

enum

{HI_IO_NAME_GPIO_0,HI_IO_NAME_GPIO_

14,}hi_io_name;華為海思的GPIO

操作函數(shù)(3/7)由此可見,HI_IO_NAME_GPIO_2對應(yīng)著GPIO_02引腳。//表示GPI00//表示GPI014深圳信息職業(yè)技術(shù)學(xué)院SHENZEN

INSTITUTEOF

INFORMATIONTECHNCLOGY第70頁typedef

enum{HI_IO_FUNC_GPIO_2_GPIO,//該引腳可作為通用GPIO,用于連接輸入輸出高低電平的設(shè)備。HI_I0_FUNC_GPIO_2_UART1_RTS_N=2,//該引腳可作為第1個(gè)UART控制器的硬件流控功能

。HI_IO_FUNC_GPIO_2_SPI1_TXD,//作為第1個(gè)SPI控制器的數(shù)據(jù)發(fā)送引腳HI_IO_FUNC_GPIO_2_JTAG_TRSTN,//作為連接JTAG調(diào)試器的功能引腳HI_IO_FUNC_GPIO_2_PWM2_OUT,

//

作為第2個(gè)PWM控制器信號輸出引腳HI_IO_FUNC_GPIO_2_SSI_CLK

=7,//作為SSI控制器的時(shí)鐘輸出引腳}hi_io_func_gpio_2;華為海思的GPIO操作函數(shù)(4/7)在hi_io.h頭文件中,也定義一系列的枚舉常量描述每個(gè)GPIOPIO_02

的功能描述為:可選擇使用的功能,例如G深圳信息職棠技術(shù)學(xué)院SHENZHENINSTTUTE

OFINFORMATION

TECHNCLOGY第71頁Hi3861

的每個(gè)GPIO

都是多用途功能的,但某一時(shí)刻只能選擇其中一種功能。同時(shí)在hi_io.h頭文件中提供了設(shè)置GPIO用途的函數(shù):hi_u32hi_io_set_func(hi_io_name

id,hi_u8val);用法:由于GPIO_2僅需通過輸出高低電平即可實(shí)現(xiàn)控制LED

的亮滅,因此應(yīng)將GPIO_02引腳配置為GPIO引腳用途,相應(yīng)的設(shè)置代碼如下:hi_io_set_func(HI_IO_NAME_GPIO_2,HI_IO_FUNC_GPIO_2_GPIO);若要使GPIO

默認(rèn)保持高低電平狀態(tài),可以配置GPIO

的上下拉功能,該功能由hi_io.h頭文件中

的配置函數(shù)提供:hi_u32

hi_io_set_pull(hi_io_name

id,hi_io_pull

val);用法:如設(shè)置GPIO_02引腳默認(rèn)處于高電平狀態(tài),則設(shè)置上拉的代碼應(yīng)當(dāng)如下:hi_io_set_pull(HI_IO_NAME_GPIO_2,HI_IO_PULL_UP);華為海思的GPIO操作函數(shù)(5/7)深圳信息職業(yè)技術(shù)學(xué)院SHENZEN

INSTTUTE

OF

NFORMATION

TECHNOLOGY第72頁HI_GPIO_IDX_14,

//表示GPIO14}hi_gpio_idx;與hi_io.h中GPIO的枚舉常量相對應(yīng),也可以直接使用hi_io.h中的常量用于設(shè)置id對應(yīng)的GPIO

選擇dir值指定的輸入或輸出功能,注意IO須設(shè)置GPIO

用途。

hi_u32

hi_gpio_set_dir(hi_gpio_idx

id,hi_gpio_dirdir);typedef

enum{HI_GPIO_DIR_IN

=0,//表示輸入HI_GPIO_DIR_OUT//

表示輸出}hi_gpio_dir;

表示輸入與輸出功能的枚舉類型華為海思的GPIO

操作函數(shù)(6/7)typedef

enum{HI_GPIO_IDX_0,//表示GPIO0深圳信息職業(yè)技術(shù)學(xué)院SHENZHEN

INSTTUTEOF

INFORMATIONTECHNOLOGY第73頁

華為海思的GPIO操作函數(shù)(7/7)

設(shè)置id對應(yīng)的GPIO

輸出val值指定的高或低電平,注意GPIO

須設(shè)置輸出功能hi_u32hi_gpio_set_ouput_val(hi_gpio_idx

id,hi_gpio_value

val);typedef

enum{HI_GPIO_VALUEO=0,//

表示低電平HI_GPIO_VALUE1

//

表示高電平}hi_gpio_value;表示GPIO

電平狀態(tài)的枚舉類型獲取id對應(yīng)的GPIO

輸出電平狀態(tài),

val參數(shù)為一個(gè)hi_gpio_value變量的地址,用于存放電平狀態(tài)值

hi_u32hi_gpio_get_output_val(hi_gpio_idx

id,hi_gpio_value*val);獲取id對應(yīng)的GPIO

輸入電平狀態(tài),

val參數(shù)為hi_gpio_value類型變量的地址,用于存放獲取的電平狀態(tài)

hi_u32hi_gpio_get_input_val(hi_gpio_idx

id,hi_gpio_value*val)深圳信息職業(yè)技術(shù)學(xué)院SHENZEN

INSTTUTEOF

NFORMATIONTECHNOLOGY第74頁目錄1.

華為海思的GPIO操作函數(shù)2.

鴻蒙系統(tǒng)的GPIO操作函數(shù)3.

鴻蒙系統(tǒng)的GPIO中斷處理深圳信息職業(yè)技術(shù)學(xué)院SHENZHEN

INSTTUTEOF

INFORMATIONTECHNOLOGY第75頁鴻蒙系統(tǒng)在iot_gpio.h

頭文件中提供了大量以IoT開頭命名的通用操作函數(shù)申請并標(biāo)記使用id

對應(yīng)的GPIO,

在多人協(xié)同開發(fā)中避免重復(fù)使用同一個(gè)IOunsignedint

IoTGpioInit(unsignedintid);申請成功返回IOT_SUCCESS(值0),失敗返回IOT_FAILURE設(shè)置指定id對應(yīng)的GPIO功能,dir指定的輸入或輸出功能unsignedintIoTGpioSetDir(unsignedintid,IotGpioDirdir);

typedef

enum

{IOT_GPIO_DIR_IN=0,//

表示輸入IOT_GPIO_DIR_OUT

//表示輸出}IotGpioDir;輸入輸出類型鴻蒙系統(tǒng)的GPIO

操作函數(shù)(1/2)深圳信息職業(yè)技術(shù)學(xué)院SHENZHEN

INSTTUTEOF

INFORMATIONTECHNOLOGY第76頁typedef

enum{IOT_GPIO_VALUE0

=0,//表示低電平IOT_GPIO_VALUE1

//表示高電平}IotGpioValue;在IoT函數(shù)中表示GPIO電平狀態(tài)的枚舉類型設(shè)置id對應(yīng)的GPIO輸出val指定的高低電平unsigned

int

IoTGpioSetOutputVal(unsigned

int

id,IotGpioValue獲取id對應(yīng)的GPIO輸出電平狀態(tài),并將輸出的電平值存入val指向的變量unsigned

int

IoTGpioGetOutputVal(unsigned

int

id,IotGpioValue獲取id對應(yīng)的GPIO輸入電平狀態(tài),并將獲取的電平值存入val指向的變量

unsigned

int

IoTGpioGetInputVal(unsigned

int

id,IotGpioValue深圳信息職業(yè)技術(shù)學(xué)院SHENZHEN

INSTTUTEOF

INFORMATIONTECHNOLOGYval);*val);*val);

鴻蒙系統(tǒng)的GPIO

操作函數(shù)(2/2)第77頁目錄1.

華為海思的GPIO操作函數(shù)2.

鴻蒙系統(tǒng)的GPIO操作函數(shù)3.

鴻蒙系統(tǒng)的GPIO中斷處理深圳信息職業(yè)技術(shù)學(xué)院SHENZHEN

INSTTUTEOF

INFORMATIONTECHNOLOGY第78頁只要GPIO的電平

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲(chǔ)空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

最新文檔

評論

0/150

提交評論