鴻蒙南北向開發(fā)基礎(chǔ)及項(xiàng)目實(shí)戰(zhàn)教程 課件 第2章 鴻蒙系統(tǒng)設(shè)備開發(fā)基礎(chǔ)_第1頁(yè)
鴻蒙南北向開發(fā)基礎(chǔ)及項(xiàng)目實(shí)戰(zhàn)教程 課件 第2章 鴻蒙系統(tǒng)設(shè)備開發(fā)基礎(chǔ)_第2頁(yè)
鴻蒙南北向開發(fā)基礎(chǔ)及項(xiàng)目實(shí)戰(zhàn)教程 課件 第2章 鴻蒙系統(tǒng)設(shè)備開發(fā)基礎(chǔ)_第3頁(yè)
鴻蒙南北向開發(fā)基礎(chǔ)及項(xiàng)目實(shí)戰(zhàn)教程 課件 第2章 鴻蒙系統(tǒng)設(shè)備開發(fā)基礎(chǔ)_第4頁(yè)
鴻蒙南北向開發(fā)基礎(chǔ)及項(xiàng)目實(shí)戰(zhàn)教程 課件 第2章 鴻蒙系統(tǒng)設(shè)備開發(fā)基礎(chǔ)_第5頁(yè)
已閱讀5頁(yè),還剩98頁(yè)未讀, 繼續(xù)免費(fèi)閱讀

付費(fèi)下載

下載本文檔

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

文檔簡(jiǎn)介

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

INSTITUTE

OF

INFORMATION

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

INFORMATIONTECHNOLOGY第2頁(yè)本節(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é)院SHENZHENINSTITUTEOF

INFORMATIONTECHNOLOGY第3頁(yè)目錄1.VSCode的安裝2.

devicetool鴻蒙插件安裝3.

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

INFORMATIONTECHNOLOGY第4頁(yè)●Visual

Studio

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

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

Windows

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

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

INFORMATIONTECHNOLOGY第5頁(yè)●下載完成后執(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é)院SHENZHENINSTITUTEOF

INFORMATIONTECHNOLOGYC++Cc++C/C++第6頁(yè)VSCode

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

對(duì)鴻蒙系

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

對(duì)鴻蒙系統(tǒng)的

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

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

序頭文件名的自動(dòng)補(bǔ)全。

FileEditSelection

View

GoRunTerminalEXTENSIONSSearch

Extensionsin

MarketplaceINSTALLED

3C/C++C/C++IntelliSense,debugging,and..MicrosoftGNEditGNfiles

inVisualStudio

Code

npclaudiuIncludeAutocompleteAutocompletionforC++includes

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

INSTITUTE

OF

INFORMATION

TECHNOLOGY第7頁(yè)目錄1.

VSCode

的安裝2.devicetool

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

INFORMATIONTECHNOLOGY第8頁(yè)△DevEco

Device

Tool安裝安裝DevEco

Device

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

版本要求

已安裝Python3.8-3.9(64-bit)3.8VSCode

1.66.2+

1.92.0選擇Python路徑狀態(tài)0k0kDevEco

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é)院(P)安裝(I)取消(C)SHENZHEN

INSTITUTE

OF

INFORMATIONTECHNOLOGY第9頁(yè)devicetool

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

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

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

頁(yè)

框按鈕DevEco

Device

Tool

Debug③12ms

HUAWEIDevEco

DeviceTool

Debug

HuaweiDevEco

Device

Tool

Remo...③203msDevelopment

environment

for

Open..

HuaweiBurn

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

Microsoft

章INSTALLED

9DevEco

Chip

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

INSTITUTE

OF

INFORMATIONTECHNOLOGY③5ms第10頁(yè)C/C++a目錄1.

VSCode

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

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

INFORMATIONTECHNOLOGY第11頁(yè).git

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

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

腳本程序doc

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

提供開發(fā)案例src

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

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

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

INSTITUTEOF

INFORMATIONTECHNOLOGYSDK

下載第12頁(yè)目錄1.

VSCode

的安裝2.

devicetool鴻蒙插件安裝3.

SDK下載4.

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

INFORMATIONTECHNOLOGY第13頁(yè)鴻蒙設(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

INSTITUTEOF

INFORMATIONTECHNOLOGY第14頁(yè)設(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)安裝看到對(duì)應(yīng)的COM口深圳信息職業(yè)技術(shù)學(xué)院SHENZHEN

INSTITUTEOF

INFORMATIONTECHNOLOGY第15頁(yè)思考題1.

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

INFORMATIONTECHNOLOGY第16頁(yè)本節(jié)小結(jié)●

講述了VSCode的安裝?!?/p>

講述了devicetool

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

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

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

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

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

INFORMATIONTECHNOLOGY第19頁(yè)目錄1.

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

工程配置3.

工程源碼編譯4.

工程程序燒錄5.

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

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

INFORMATIONTECHNOLOGY第20頁(yè)SearchDEVECO:QUICK

ACCESS

Welcome

DevEco

Device

Tool×Welcome

to

DevEco

DeviceToolRemote

DevelopmentResource

ManagerCLIDevEco

CLINewTerminalOfficial

WebSite

Document

FAQ

FeedbackUserAgreement&&StatementAboutPrivacyProjectsInput

pro...

All

NewProjectImport

Project工程源碼導(dǎo)入(1/3)深圳信息職棠技術(shù)學(xué)院SHENZHEN

INSTITUTEOF

INFORMATIONTECHNOLOGY第21頁(yè)Boards3即可,其他兩項(xiàng)設(shè)置會(huì)自動(dòng)適配。ImportProject*

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

INFORMATIONTECHNOLOGY第22頁(yè)在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)測(cè)試框架的組件與工具主要提供第三方開源的功能庫(kù),如paho.mqtt

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

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

HI3861-IOT>.deveco

工程具體源文件目錄與用途>.vscode>build>doc>sampleY

src>ap

plications

>base>build>device

ird_party>utils>vendorthest工程源碼導(dǎo)入(3/3)深圳信息職業(yè)技術(shù)學(xué)院SHENZHENINSTITUTEOF

INFORMATIONTECHNOLOGY>domains>foundation>prebuilts>productdefine第23頁(yè)目錄1.

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

工程配置3.

工程源碼編譯4.

工程程序燒錄5.

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

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

INFORMATIONTECHNOLOGY第24頁(yè)9hi3861-iot08compiler_bin_pathcompliertool

chainD:\development'Hi3861hi3861-tools

5V

uploadupload_portnupoau

ponwne

cn

uprozteroruse1rammwaresCOM3

[USB-SERIALCH340(COM3)]6upload_protocolAprotocolthatuploader

tooluses

to

talk

to

aboardhiburn-serialGoDevEco

Device

Tool×hi3861-iot3Tool

Chain

hi3861ProjectConfigbuildbuild_typeboard_frameworks.hb.build.productcompiler_bin_pathuploadupload_portupload_protocolupload_partitionsupload_resetupload_speeddebugdebug

clientSHENZHEN

INSTITUTEOF

INFORMATIONTECHNOLOGY□×manager×C工程配置

File

Edit

Selection

ViewDEVECOQUICK

ACCESSMenuHomeProjectSettings

2

BoardsHDFRemoteDevelopmentResource

ManagerCLIDevEco

CLI上

New

Terminal7PROJECT

TASKShi3861面

CleanBuildRebuildUploadMonitorlDoD

ProfilingStack

AnalysisD?Image

Analysis8master0

×0△0

200深圳信息職業(yè)技術(shù)學(xué)院第25頁(yè)V目錄1.

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

工程配置3.

工程源碼編譯4.

工程程序燒錄5.

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

INFORMATIONTECHNOLOGY第26頁(yè)P(yáng)ROJECT

TASKShi3861RebuildUploadMonitorDoD

Profiling&Stack

Analysis0D

Image

Analysismaster0

×0△0

0點(diǎn)擊“Build”或

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

Rebuild

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

它只會(huì)更新這些修改過的文件。工程源碼編譯深圳信息職業(yè)技術(shù)學(xué)院SHENZHEN

INSTITUTEOF

INFORMATIONTECHNOLOGY第27頁(yè)目錄1.

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

工程配置3.

工程源碼編譯4.

工程程序燒錄5.

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

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

INFORMATIONTECHNOLOGY第28頁(yè)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

INSTITUTEOF

INFORMATIONTECHNOLOGY第29頁(yè)目錄1.

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

工程配置3.

工程源碼編譯4.

工程程序燒錄5.

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

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

INFORMATIONTECHNOLOGY第30頁(yè)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é)院SHENZHENINSTITUTEOF

INFORMATIONTECHNOLOGYformatting

spiffs...Filesystemmount

ok.第31頁(yè)目錄1.

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

工程配置3.

工程源碼編譯4.

工程程序燒錄5.

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

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

INFORMATIONTECHNOLOGY第32頁(yè)√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

INSTITUTEOF

INFORMATIONTECHNOLOGY第33頁(yè)工程加入程序代碼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

INSTITUTE

OF

INFORMATIONTECHNOLOGY第34頁(yè)工程加入程序代碼在

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

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

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

INSTITUTE

OF

INFORMATIONTECHNOLOGY第35頁(yè)工程加入程序代碼修改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

INSTITUTE

OF

INFORMATIONTECHNOLOGY第36頁(yè)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é)院SHENZHENINSTITUTEOF

INFORMATIONTECHNOLOGY第37頁(yè)思考題1.

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

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

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

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

INFORMATIONTECHNOLOGY第40頁(yè)本節(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é)院SHENZHENINSTITUTEOF

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

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

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

INFORMATIONTECHNOLOGY第42頁(yè)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)需要通過GPI

O

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

GPIO

應(yīng)當(dāng)設(shè)置輸入功能。Hi3861芯片手冊(cè)中GPIO_03GPIO的用途選擇寄存器:GPIO_03_SEL

GPIO_03

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

Reset

Value:Ox0000_0000華為海思的GPIO

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

INFORMATIONTECHNOLOGY第43頁(yè)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

INSTITUTEOF

INFORMATIONTECHNOLOGYGPIO02>>PWMLED第44頁(yè)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對(duì)應(yīng)著GPIO_02引腳。//表示GPI00//表示GPI014深圳信息職業(yè)技術(shù)學(xué)院SHENZHEN

INSTITUTEOF

INFORMATIONTECHNOLOGY第45頁(yè)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控制器信號(hào)輸出引腳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é)院SHENZHEN

INSTITUTE

OF

INFORMATIONTECHNOLOGY第46頁(yè)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é)院SHENZHEN

INSTITUTEOFINFORMATIONTECHNOLOGY第47頁(yè)HI_GPIO_IDX_14,

//表示GPIO14}hi_gpio_idx;與hi_io.h中GPIO的枚舉常量相對(duì)應(yīng),也可以直接使用hi_io.h中的常量用于設(shè)置id對(duì)應(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é)院SHENZHENINSTITUTEOF

INFORMATIONTECHNOLOGY第48頁(yè)華為海思的GPIO操作函數(shù)(7/7)

T

IN

M

術(shù)NTEC設(shè)置id對(duì)應(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對(duì)應(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對(duì)應(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)第49頁(yè)目錄1.

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

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

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

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

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

對(duì)應(yīng)的GPIO,

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

IoTGpioInit(unsignedintid);申請(qǐng)成功返回IOT_SUCCESS(值0),失敗返回IOT_FAILURE設(shè)置指定id對(duì)應(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é)院SHENZHENINSTITUTEOF

INFORMATIONTECHNOLOGY第51頁(yè)設(shè)置id對(duì)應(yīng)的GPIO輸出val指定的高低電平unsigned

int

IoTGpioSetOutputVal(unsigned

int

id,IotGpioValue

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

int

IoTGpioGetOutputVal(unsigned

int

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

int

IoTGpioGetInputVal(unsigned

int

id,IotGpioValue*val);鴻蒙系統(tǒng)的GPIO

操作函數(shù)(2/2)typedef

enum{IOT_GPIO_VALUE0

=0,//表示低電平IOT_GPIO_VALUE1

//表示高電平}IotGpioValue;在IoT函數(shù)中表示GPIO電平狀態(tài)的枚舉類型深圳信息職業(yè)技術(shù)學(xué)院SHENZHENINSTITUTEOF

INFORMATIONTECHNOLOGY第52頁(yè)目錄1.

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

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

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

INFORMATIONTECHNOLOGY第53頁(yè)只要GPIO的電平狀態(tài)符合設(shè)定的中斷觸發(fā)條件,系統(tǒng)就會(huì)暫停當(dāng)前工作而執(zhí)行GPIO

中斷處理函數(shù),中斷處理函數(shù)執(zhí)行完成后,系統(tǒng)會(huì)恢復(fù)之前的工作。Hi3861

的GPIO

共有4種中斷觸發(fā)條件,可設(shè)置GPIO電平在高電平、低電平、下降沿(從高電平變成低電平的過程)與上升沿(從低電平變成高電平的過程)狀態(tài)時(shí)觸發(fā)中

斷。鴻蒙系統(tǒng)的GPIO

中斷處理(1/2)深圳信息職業(yè)技術(shù)學(xué)院SHENZHEN

INSTITUTEOF

INFORMATIONTECHNOLOGY第54頁(yè)在iot_gpio.h中提供的IoTGpioRegisterIsrFunc函數(shù)注冊(cè)并設(shè)定GPIO的中斷觸發(fā)條件、中斷處理函數(shù)等。unsigned

int

IoTGpioRegisterIsrFunc(unsigned

int

id,IotGpioIntType

intType,IotGpioIntPolarity

intPolarity,

GpioIsrCallbackFunc

func,char

*arg);參

數(shù)

:id:

定GPIOintType:

指定中斷類型值IOT_INT_TYPE_LEVEL表示電平(高/低電平)觸發(fā)中斷值IOT_INT_TYPE_EDGE

表示邊沿(上升/下降沿)觸發(fā)中斷intPolarity:指定中斷觸發(fā)的電平狀態(tài)值IOT_GPIO_EDGE_FALLLEVELL0W表示低電平或下降沿狀態(tài)觸發(fā)中斷,具體由intType

中斷類型指定值IOT_GPIO_EDGE_RISE_LEVEL_HIGH表示高電平或上升沿狀態(tài)觸發(fā)中斷func:指定I0中斷處理函數(shù),函數(shù)原型:void

irqFunc(char*arg)arg:

指定I0中斷處理函數(shù)的arg

參數(shù)返回值:成功返回IOT_SUCCESS,失敗返回IOT_FAILURE鴻蒙系統(tǒng)的GPIO

中斷處理(2/2)深圳信息職業(yè)技術(shù)學(xué)院SHENZHENINSTITUTEOF

INFORMATIONTECHNOLOGY第55頁(yè)思考題1.

請(qǐng)簡(jiǎn)述對(duì)于GPIO操作函數(shù),使用hixxx與IoTxxx的區(qū)別是什么?深圳信息職業(yè)技術(shù)學(xué)院SHENZHENINSTITUTEOF

INFORMATIONTECHNOLOGY第56頁(yè)本節(jié)小結(jié)●講述了華為海思的GPIO操作函數(shù)。●講述了鴻蒙系統(tǒng)的GPIO操作函數(shù)?!裰v述了鴻蒙系統(tǒng)的GPIO中斷處理。深圳信息職業(yè)技術(shù)學(xué)院SHENZHENINSTITUTEOF

INFORMATIONTECHNOLOGY第57頁(yè)前言●本章主要講述鴻蒙系統(tǒng)PWM應(yīng)用開發(fā)。深圳信息職業(yè)技術(shù)學(xué)院SHENZHENINSTITUTEOF

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

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

PWM工作原理□鴻蒙系統(tǒng)PWM函數(shù)□蜂鳴器的PWM

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

INFORMATIONTECHNOLOGY第59頁(yè)目錄1.PWM

信號(hào)原理2.

鴻蒙系統(tǒng)PWM函數(shù)3.

PWM應(yīng)用案例深圳信息職業(yè)技術(shù)學(xué)院SHENZHENINSTITUTEOF

INFORMATIONTECHNOLOGY第60頁(yè)P(yáng)WM(Pulse

Width

Modulation,

脈沖寬度調(diào)制)基本上就是在一個(gè)重復(fù)的信號(hào)周期內(nèi)分別控制高低電平的持續(xù)時(shí)間PWM

信號(hào)原理(1/3)深圳信息職業(yè)技術(shù)學(xué)院SHENZHEN

INSTITUTEOF

INFORMATIONTECHNOLOGY第61頁(yè)●信號(hào)周期:是指從一個(gè)上升沿到下一個(gè)上升沿信號(hào)(或從下降沿到下一個(gè)下降沿)的間

隔時(shí)間

。●信號(hào)頻率:是指在一秒鐘內(nèi)有多少個(gè)PWM

的信號(hào)周期,如100Hz

表示一秒鐘內(nèi)有100

個(gè)信號(hào)周期,則每個(gè)信號(hào)周期時(shí)間為10毫秒,同樣根據(jù)信號(hào)周期時(shí)間也可推算出頻率。●占空比:是指在一個(gè)信號(hào)周期中,表示有效電平(通常是高電平)在整個(gè)周期時(shí)間中的

比例,如信號(hào)周期時(shí)間為100毫秒而高電平持續(xù)時(shí)間為10毫秒,則占空比為10%。PWM

信號(hào)原理(2/3)PWM信號(hào)三要素:深圳信息職業(yè)技術(shù)學(xué)院SHENZHENINSTITUTEOF

INFORMATIONTECHNOLOGY第62頁(yè)L3LQH44PN100MPOD11U4LED+

SS14C21luF/50V5LED->PWMTOUT3R271R5BACKLIGHTCON4PWM

信號(hào)原理(3/3)PWM調(diào)節(jié)LCD屏背光:深圳信息職業(yè)技術(shù)學(xué)院C20luF/50VSHENZHEN

INSTITUTEOF

INFORMATIONTECHNOLOGYR26OR47VDD_5V第63頁(yè)R421KMP3202GNDSWOVJ26ENFBIN2364目錄1.

PWM

信號(hào)原理2.

鴻蒙系統(tǒng)PWM函數(shù)3.

PWM應(yīng)用案例深圳信息職業(yè)技術(shù)學(xué)院SHENZHENINSTITUTEOF

INFORMATIONTECHNOLOGY第64頁(yè)Hi3861

芯片提供了6個(gè)PWM

控制器,

Hi3861芯片每個(gè)IO

都可以作為PWM

控制器的信號(hào)輸出引腳,IO

具體所屬的PWM

控制可以在鴻蒙工程中的hi_io.h

頭文件中查看相

應(yīng)的定義,如GPIO_03的用途定義:typedef

enum{HI_IO_FUNC_GPIO_3_PWM5_0UT,//作為第5個(gè)PWM控制器信號(hào)輸出引腳}hi_io_func_gpio_3;鴻蒙系統(tǒng)PWM函數(shù)(1/3)深圳信息職棠技術(shù)學(xué)院SHENZHEN

INSTITUTE

OF

INFORMATIONTECHNOLOGY第65頁(yè)鴻蒙系統(tǒng)PWM函數(shù)(2/3)hi_pwm.h中已定義表示PWM控制器的枚舉常量:typedef

enum

{HI_PWM_PORT_PWMO=0,HI_PWM_PORT_PWM1=1,HI_PWM_PORT_PWM2=2,HI_PWM_PORT_PWM3=3,HI_PWM_PORT_PWM4=4,HI_PWM_PORT_PWM5=5,HI_PWM_PORT_MAX}hi_pwm_port;深圳信息職棠技術(shù)學(xué)院SHENZHEN

INSTITUTE

OF

INFORMATIONTECHNOLOGY第66頁(yè)鴻蒙系統(tǒng)PWM函數(shù)(3/3)

SHENZHEN

INSTITUTE

OF

INFORMATION

TECHNOLOGYiot_pwm.h

頭文件也提供了PWM

的操作函數(shù):unsignedintIoTPwmInit(unsignedintport);//初始化PWM控制器//設(shè)置并啟動(dòng)第port個(gè)PWM控制器unsignedintIoTPwmStart(unsignedintport,unsignedshortduty,unsigned

int

freq);//freq參數(shù)是用于設(shè)置PWM輸出的信號(hào)頻率,因PWM控制默認(rèn)使用CPU

160MHz作為時(shí)鐘

信號(hào)源,需要除以一個(gè)分頻系數(shù)才能得到PWM信號(hào)的頻率,而且PWM配置寄存器只能存儲(chǔ)

16位的分頻系數(shù)(最大值為65535),所以PWM輸出的信號(hào)頻率必須大于2442Hz(1600000

00Hz

/65535)。//參數(shù)duty設(shè)置占空比unsignedintIoTPwmStop(unsignedintport);停止port對(duì)應(yīng)的控制器輸出PWM信號(hào)深圳信息職棠技術(shù)學(xué)院第67頁(yè)目錄1.

PWM

信號(hào)原理2.

鴻蒙系統(tǒng)PWM函數(shù)3.PWM應(yīng)用案例深圳信息職業(yè)技術(shù)學(xué)院SHENZHENINSTITUTEOF

INFORMATIONTECHNOLOGY第68頁(yè)錐形紙盒線圈輸入電流蜂鳴器的發(fā)聲利用了電磁感應(yīng)與振動(dòng)產(chǎn)生聲音的原理,當(dāng)不同大小與方向的電流通過線圈時(shí)產(chǎn)生一個(gè)變化的磁場(chǎng),當(dāng)產(chǎn)生的磁場(chǎng)與磁體同向時(shí)相排斥時(shí),紙盒則會(huì)被向外推,而

當(dāng)產(chǎn)生的磁場(chǎng)與磁體異向時(shí)相吸引,紙盒則被向內(nèi)拉,正是這種反復(fù)交替的推拉動(dòng)作,讓PWM應(yīng)用案例(1/3)紙盒產(chǎn)生振動(dòng)而發(fā)出聲音。永久磁體深圳信息職棠技術(shù)學(xué)院SHENZHEN

INSTITUTEOF

INFORMATIONTECHNOLOGY第69頁(yè)望

亮鴻

獅PWM

應(yīng)用案例(2/3)蜂鳴器模塊通過杜邦線與開發(fā)板的連接:深圳信息職業(yè)技術(shù)學(xué)院SHENZHENINSTITUTEOF

INFORMATIONTECHNOLOGY第70頁(yè)IoTGpioInit(BUZZER_IO);//

申請(qǐng)使用I0hi_io_set_func(BUZZER_I0,BUZZER_IOFUNC);//設(shè)置I0

用途IoTPwmInit(BUZZER_PWM);//初始化PWM控制器IoTPwmStart(BUZZER_PWM,50,freq);//設(shè)置PWM控制器的占空比與頻率,并啟動(dòng)控制

器IoTPwmStop(BUZZER_PWM);//停止PWM控制器IoTPwmDeinit(BUZZER_PWM);//釋放PWM控制器的使用PWM

應(yīng)用案例(3/3)蜂鳴器模塊的PWM驅(qū)動(dòng)主過程:深圳信息職業(yè)技術(shù)學(xué)院SHENZHENINSTITUTEOF

INFORMATIONTECHNOLOGY第71頁(yè)思考題1.

請(qǐng)簡(jiǎn)述PWM信號(hào)的三要素。深圳信息職業(yè)技術(shù)學(xué)院SHENZHENINSTITUTEOF

INFORMATIONTECHNOLOGY第72頁(yè)本節(jié)小結(jié)●講述了PWM工作原理●講述了鴻蒙系統(tǒng)PWM函數(shù)●講述了蜂鳴器的PWM驅(qū)動(dòng)深圳信息職業(yè)技術(shù)學(xué)院SHENZHENINSTITUTEOF

INFORMATIONTECHNOLOGY第73頁(yè)前言●本章主要講述鴻蒙系統(tǒng)ADC應(yīng)用開發(fā)。深圳信息職業(yè)技術(shù)學(xué)院SHENZHENINSTITUTEOF

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

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

ADC工作原理□鴻蒙系統(tǒng)ADC函數(shù)□

ADC應(yīng)用案例深圳信息職業(yè)技術(shù)學(xué)院SHENZHENINSTITUTEOF

INFORMATIONTECHNOLOGY第75頁(yè)目錄1.ADC

信號(hào)原理2.

鴻蒙系統(tǒng)ADC函數(shù)3.ADC應(yīng)用案例深圳信息職業(yè)技術(shù)學(xué)院SHENZHENINSTITUTEOF

INFORMATIONTECHNOLOGY第76頁(yè)物聯(lián)網(wǎng)系統(tǒng)電路中廣泛采用數(shù)字信號(hào)與模擬信號(hào)。數(shù)字信號(hào)通過高電平代表二進(jìn)制1,低電平代表二進(jìn)制0,在數(shù)字電路中傳輸數(shù)據(jù);而模擬信號(hào)則在模擬電路中,以

低電平至高電平間的任意電壓值來表示信號(hào)的大小或強(qiáng)度。光敏電阻模塊通過AO輸出一個(gè)表示當(dāng)前亮度的電壓值,當(dāng)感應(yīng)到亮度越強(qiáng)時(shí),AO輸出的電壓值越小,反

,AO

輸出的電壓值就越大。ADC信號(hào)原理(1/2)深圳信息職棠技術(shù)學(xué)院SHENZHEN

INSTITUTE

OF

INFORMATIONTECHNOLOGY第77頁(yè)ADC信號(hào)原理(2/2)ADC

信號(hào)的關(guān)鍵要素:●采樣率:是指一秒鐘內(nèi)檢測(cè)電路電壓的次數(shù),

ADC

采樣率越高則信號(hào)的還原度更高,反之,

過低的采樣率可導(dǎo)致丟失信號(hào)變化的關(guān)鍵過程。

Hi3861

ADC的最大采樣率為157KHz?!窳炕龋毫炕侵笇⒉蓸拥玫诫妷褐缔D(zhuǎn)換成

二進(jìn)制值的過程,此二進(jìn)制值的最大位數(shù)就是

量化精度。越高的量化精度,

ADC

轉(zhuǎn)換的結(jié)果

就更加精確。

Hi3861

ADC的量化精度為12bit其中最低兩位用于小數(shù)。深圳信息職棠技術(shù)學(xué)院SHENZHEN

INSTITUTE

OF

INFORMATIONTECHNOLOGY第78頁(yè)取樣:目錄1.

ADC

信號(hào)原理2.

鴻蒙系統(tǒng)ADC函數(shù)3.

ADC應(yīng)用案例深圳信息職業(yè)技術(shù)學(xué)院SHENZHENINSTITUTEOF

INFORMATIONTECHNOLOGY第79頁(yè)復(fù)用管腳名稱A

D

C

腳GPIO_04ADC1GPIO_05ADC2GPIO_07ADC3GPIO_09ADC4GPIO_11ADC5GPIO_12ADC

溫馨提示

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

最新文檔

評(píng)論

0/150

提交評(píng)論