物联网技术开发实战_第1页
物联网技术开发实战_第2页
物联网技术开发实战_第3页
物联网技术开发实战_第4页
物联网技术开发实战_第5页
已阅读5页,还剩279页未读 继续免费阅读

付费下载

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

从感知到边缘智能BY

WPSAloT系统设计与实践——101开启万物互联之门——

ESP32初探02赋予智能节点“五官”与

“手脚”——基础感知与

控制CONTENTS目录03剪断网线——无线通信技

术的魅力04loT的通用语言——通信

协议与MQTT05掌控一切——多端应用开

发06从0到1——综合项目实战

演练第一章开启万物互联之门一—ESP32

探3什么是loT?

从“连接”到“智能”的进化想象一下:你的智能手表告诉你该喝水了(感知)→手机APP提醒你(连接)→水壶自动加热(智

能)

!IoT就是让万物“开口说话”并“互相帮忙”的技术,本章带你从0理解这个神奇世界。未来赛道:智能家居、智慧城市与工业4.0别以为IoT

离你很远:早上被智能闹钟叫醒→用智能手环记录运动→回家用语音助手开灯,这些

都是IOT的“日常操作”!本章揭秘这些场景背后的技术原理,让你秒变科技达人。口物联网全景图:重塑身边的世界·

定义物联网(

InternetofThings

,

简称IoT)是一种利用各种传感器将物体与

互联网相联系,并按照一定的规则进行数据交互和通信,从而实现智能化识别、

定位、跟踪、监控和管理的一种网络。它是通信网和互联网的一种扩展使用方

式,通过使用传感器技术和智能设备,对实体世界展开感知和辨识,在此基础

上对人与物、物与物进行计算、处理和知识的发掘,并在人与物、物与物之间

建立起信息互动和无缝连接的方式,实现对实体世界的实时控制、精确管理。物联网的基本概念5·

核心架构√

感知层:传感器采集环境数据(五官)√

网络层:Wi-Fi/蓝牙等协议传输数据(神经血管)√

应用层:数据分析与智能化控制(大脑决策)·

特点全面感知物理世界、设备互联互通、智能处理数据、连接泛在无界,兼具

低功耗高可靠性,最终以数据驱动实现价值闭环。物联网的基本概念6·物联网的落地依托核心技术支撑,且已深度渗透多领域形成丰富

应用场景,具体可概括为:√关键技术层面:以感知层的传感器、RFID实现物理信息采集,通过蓝牙、Wi-Fi、

NB-

IoT等网络技术完成设备互联,再经边缘计算、云计算与AI算法实现数据智能处理,同时

以低功耗芯片、数据加密保障设备稳定运行;√典型应用层面:覆盖生活与产业,如智能家居(联动家电、智能安防)、智慧农业(土壤监测、自动灌溉)、工业互联网(设备预测性维护、生产线智能化)、智慧城市(智能交

通、智慧路灯)及智慧医疗(远程监测、医疗设备联网),全方位赋能场景升级。物联网的关键技术与应用·物联网的概念最早可追溯到1990年施乐公司的网络可乐贩售机,

这可以看作是物联网实践的早期雏形。·1995年,微软创始人比尔·盖茨在《未来之路》一书中也曾提及

相关场景,但当时并未引起广泛重视。1999年,美国麻省理工学

院(MIT)

的KevinAshton教授首次提出物联网的概念,美国麻

省理工学院还建立了"自动识别中心(Auto-ID)”,提出"万物皆可

通过网络互联”,阐明了物联网的基本含义,早期的物联网是依

托射频识别(RFID)

技术的物流网络。

物联网的起源与发展·2003年,美国《技术评论》提出传感网络技术将是未来改变人们生活的十大技术之首,引发了全球对物联

网技术的关注。·2004年,日本总务省(MIC)

提出u-Japan

计划,力求实现人与人、物与物、人与物之间的连接,希望将日

本建设成一个随时、随地、任何物体、任何人均可连接的泛在网络社会。·

2005年11月17日,在突尼斯举行的信息社会世界峰会(WSIS

)上,国际电信联盟(ITU)

发布《ITU互联网

报告2005:物联网》,引用了“物联网”的概念,进一步推动了物联网在全球范围内的认知和发展。此后,

美国在物联网软硬件制造方面展现出优势,制定并主导了物联网应用的标准,如1999年美国麻省理工学院

联合七所著名高校制定了RFID电子标签应用领域的EPCglobal标准,美国国防部制定了“智能微尘计划”,

政府大力推动智能电网等项目,物联网技术也广泛应用于医疗、工业、农业、军事、空间探索等领域。欧盟于2009年11月发布了《欧盟物联网行动计划》,关注运用物联网技术推动节能、环保、精益生产等物联网产业,提出三阶段行动路线图,明确物联网研究领域为制造、供应链、环境检测等方面,同时加强物联

网管理,包括物联网管理、隐私保护、提高物联网的安全性及可信性,并在信息和通信技术方面投资4亿欧

元,支持90多个物联网相关项目的研究及实施。

物联网的国外发展历程·物联网技术在中国的发展历史最早可以追溯到上世纪末期,当时开展了许多相关项目和试点,如"天网工程”数字城市”等,但直到近年才得到快速发展。·2008年,"中国移动政府工作会议"指出以移动技术和物联网为标志的新型信息技术正在兴起。2009

年,IBM公司CEO彭明盛首次引入“智慧地球”理念,同年,无锡市成立“感知中国”研发中心,中国科学

院、电信运营商、多所大学在无锡建立了“物联网研究院”。2014年,国家工信部印发《物联网产业发

展规划》,明确了物联网产业发展的目标和任务。2017年,国务院发布《新一代人工智能发展规划》,

将物联网与人工智能作为两大核心技术支撑。2018年起,杭州市启动城市区域物联网的规划与建设,实现了城市区域700公里范围内的LoRa技术全

覆盖。2020年,国务院发布《数字经济发展战略》,明确物联网产业是数字经济的重要组成部分。

2021年,中国发布《全国物联网产业发展白皮书(2021)》,总结发展历程和成就,提出未来发展

方向和目标。2022年底,中国移动物联网连接数比2021年底净增4.47亿,达18.45亿,占世界总接

入量的70%。2024年11月3日,第九届世界物联网大会在北京国家会议中心开幕,并发布《世界万物

智联数字经济白皮书》,数据显示,2024年中国建成承载物联网的5G基站有望超过430万个,“物”的

连接数有望突破30亿。

物联网的国内发展历程10智慧城市是物联网在城市管理中的重要应用。通过传感器和数据分析,城市管理者可以实时监控交通流量、环

境质量和公共设施的运行状态。在交通管理方面,物联网技术实现了智能交通信号控制,根据实时车流量自动调整信号灯时间,有效缓解交通拥堵;智能停车系统能够引导司机快速找到空闲停车位,提高停车效率。在环境监测方面,可以实时监控空气质量、噪音等环境数据,为城市环境保护提供数据支持。公共安全领域,智能监控和应急系

统能够及时发现并处理突发事件,提升城市的安全保障能力。智能家居是物联网最为直观的应用之一。通过智能设备的互联互通,用户可以远程控制家中的灯光、温度和安防系统。比如,下班回家前,用户可以通过手机APP提前打开空调,调节到舒适的温度,还能让智能灯光自动亮起,营造温馨的氛围。智能恒温器能够根据用户的生活习惯自动调节室内温度,实现能源的高效利用,节省能源消耗。智能家居的安全性也得到显著提升,智能监控和报警系统可以实时监控家中情况,一旦发现异常,会及时向用户发送警报信息,让用户随时随地都能掌握家中的安全状况。物联网的应用领域11物联网在医疗健康领域的应用日益广泛。通过可穿戴设备,如智能手环、智能手表等,患者的健康数据,如心

率、血压、睡眠质量等可以实时传输给医生,医生能够及时监测患者的健康状况,为慢性病患者提供更好的管理方案,也减轻了医院的负担。物联网技术还优化了医疗资源的配置,医院通过数据分析可以更好地预测患者的就诊需

求,合理安排医疗资源,提高医疗服务的效率。未来,随着技术的不断进步,物联网将在个性化医疗和精准医疗方面发挥更大作用,通过大数据分析为患者提供更为精准的治疗方案。工业物联网(

IIoT)在制造业中发挥着关键作用。通过在生产设备上安装传感器,企业可以实时监控设备的运行状态,预测设备故障,提前进行维护,减少停机时间,降低维修成本。物联网技术还实现了生产流程的自动化和智能化,通过数据分析优化生产流程,提高生产效率,减少资源浪费。例如,汽车制造企业利用工业物联网技术,实现了生产线的自动化协同作业,提高了汽车的生产质量和效率。物联网的应用领域12·什么是ESP32ESP32是中国厂商Espressif

(

乐鑫科技)推出的一系列集成了Wi-Fi、蓝

牙双模(Bluetooth4.2/BLE)的32位微控制器芯片。它基于Tensilica

XtensaLX6内核,具有强大的网络连接能力和外设扩展性,自2016年发布以

来,在物联网、智能家居、可穿戴、工业控制等领域大受欢迎。其工作温度范

围达到-40℃到125℃,具有极高的射频性能、稳定性、通用性和可靠性,

同时功耗极低。主角登场:ESP32简介13选对兵器:市面主流开发板大比拼版本让人眼花缭乱?帮你避坑:

ESP32-C3

(

性价比首选)、

ESP32-S3

(带屏幕接口)、ESP32-WROOM

(工业级稳定)。芯片界的“瑞士军刀”:

ESP32硬件

密把ESP32比作“瑞士军刀”都委屈它了!内置Wi-Fi蓝牙双模、18个GPIO引脚、ADC/DAC转换器,还能跑AI模型!ESP32-C2ESP32-P4主角登场:为什么选择ESP32?ESP32/

WROOMESP32-C3ESP32-C5ESP32-S314零基础上手:ArduinoIDE的安装与配置针对零基础的学习者,详细介绍ArduinoIDE的安装与配置过程,让初学者能够轻松上手,迈出开发的

第一步。Python

爱好者的福音:Thonny与MicroPython环境部署为Python

爱好者提供便利,阐述Thonny

与MicroPython环境的部署方法,使他们能够利用熟悉的Python

语言进行开发。点亮第一束光:HelloWorld!(点灯仪式)以点灯仪式为例,细致演示如何在搭建好的开发环境中实现第一个简单程序,让读者体验开发的乐趣,

感受编程带来的成就感。打造你的兵工厂:开发环境搭建010215关键准备:安装CP210x/CH340驱动→选对COM端口搭建兵工厂:给

ESP32

注入灵魂的工具·

代码简洁·

所见即所得·

解释执行ArduinoIDE-严谨的老教授Thonny

-随性的艺术家·

资源库丰富·

运行效率高16Windows

Win

10or

newer(64-bit)DOWNLOADWindowsMSI

installerWindowsZIPfleLinux

Applmage(64bit

X86-64)Linux

ZIP

fle(64-bit

×86-64)macOS

Intel

10.15Catalina

or

newer

(64-bit)macOS

Apple

Silicon

11Big

Sur

or

newer(64-bit)Arduino

IDE2.3.7ReleasenotesThe

new

major

release

of

the

Arduino

IDE

is

faster

and

even

morepowerful!Inadditiontoa

more

modern

editorand

a

more

responsive

interfaceit

features

autocompletion,codenavigation,andevenalivedebugger.Formoredetails,checkthe

ArduinoIDE2.0documentation.Windows

Win

10

or

newer(64-bit)<1>

Legacy

IDE(1.8.19)DownloadalegacyversionoftheArduino

IDE.·

安装

Arduino

IDE√

访问https://www.arduino.cc/en/software/

,

根据操作系统选择合适的版本下载

Bring

Your

Projects

to

Life

with

Arduino

SoftwareESP32的Arduino

IDE开发环境搭建emostupdatedtub.17sketchjan2Ba|Arduino

IDE2.3.7Arduino

ESP32

BoardsbyAuduinoArduino

Nano

ESP32更

多信

息ESP32Wrover

Module,ESP3253首选项项目文件夹地址□显示项目中的文件夹编铝器字体大小界面比例

四自动调整100颜色主题

明亮中文(简体)□编译□上传□

上传后验证代码白动保存(U)口

议其他开发板管理器地址:https/arduino

me/packoages/esp32jsonhtps/despresifcom/dl/package

.csp32ndex·添加

ESP32

开发板管理器√

在“文件→首选项”窗口中配置开发板管理器URL

,并在"工具→开发板→开发

板管理器”中搜索"ESP32"并安装。ESP32的Arduino

IDE开发环境搭建18·配置开发板管理器URL小提示√受网络环境等影响,有时下载开发板管理器会失败,可单击右侧“复制”按钮,输入其他补充地址。此外,开发者也可下载安装

ESP32

开发板离线包。sketchjan28a|Arduino

IDE2.3.7中

ESP32-WROOM-DA

M

…sketchjan2Baino首选项□显示项目中的文件夹编辑器字体大小界面比例:颜色主题:编辑器语言:中文(简体)

(Reload

required)显示详细输出□编译□上传编译器警告□上传后验证代码☑

自动保存(

U)□编辑快速建议其他开发板管理器地址:

https://

arduinom.e/packages/esp32json,https//dl.espressi...取

消行1.列1

ESP32WROOM-DAModule在COM5上

0□arduino-esp32

W

m

·Y

fot

7m

Su

62

·AboutAduino

cnfr

the

SP322pd中Readne粤LGP.21kenue零Codeof

ondoutAtity田Cuompropeotie☆362stas◎4S1

wathigY7Kk

orsRepot

epotoey■21G8Aadulco

Release

v33.6based

o..Lan

etweek5releasesContibutos期2

rb甲

Dopioymens

sPmute

·PBroodn

87

topsme-no

dv

and

tucaswur

SruatL

P4uss

detat

Pdck

×

85-5mo⑤405

Cemmigthub

su(uokwt

Fi

od

setch

coum

sartem17

hous

sgogituab

dargeleisionLpdatecoreverson560336C1

2weks

ag0■corevep2

6nut

uDes

dah

Pdok

51

mivtes

ago□m

dos

dangebenion

Lpdate

core

vernon

to

3.368CI

2weks

ag0ut

componteraops

fimue

FiaBLu

memony

etease

12922weks

agoeranres

stbherAdtchedsbLEinhiuiaed

012271)utwek■peckuge

DFrelese556beald

122502wkcom

tetsSsjuatfuestingutencangingiTSana

CTSa12202wexsaotocssu(ota)ShowMD

wanigorlywhen

cemnectien

i

suce.atwek■

vafan

safbodtAuiomeaPeNumberu12269

hagt

wekD

dogfomut

mfactoristyle

Changt

tome

syle

opiors

(59520

2

yes

agD

cobesper

oprecommenLoswesionstSHAandapy

taes

(12

9monsagoD

sdzocongdjsongAd

requre

any

feld

andue

Qioby

delut-…2yenagoD

un

fpm

cmitowasatrnha

or

funtio

onyody

4

montht

agoD

sioo

koaikoplbou

tgrore

CoPaot

eatrneton

cong

2we6s

ag0D

slub

im

olteste:Movehardwreteststo

GnLab(0190)

months

agD

stmode

200Add

spport

for

tS93252

and

update

ESP-DFto44.

5yenag0QGoto

ieESP32的Arduino

IDE开发环境搭建Q

orprest/antuinocps2

a

tpoZ

to

sac

5

·◎n)CodeOssoes14n

Rlrequests

s

Q

Drcousions

◎Actions田projcts

2mw

Sscuny

3

e

Inught19·补充地址获取链接√

https://github.com/arduino/Arduino/wiki/Unofficial-list-of-3rd-Haveyouadded

BoardsManaginstallationsupportforanArduinocompatible

board?Please

leteveryone

know

by

publishingyourpackage

indexURLListof3rd

party

Boards

ManagerURLs·Adafruithttps://adafruitgithubio/arduino-board-index/packageadafruitindexjsonAdafruitAVR

Boards(Flora,Metro,Trinket,ProTrinket,&Gemma)AdafruitSAMD

Boards(Feather

M0)oTeeOnArduU5B

MIDIsupportforLeonardo

&Microoarcore

USB

MIDI

support

for

Leonardo

&Micro·Adelino:Adelinoisadual-microcontrollerdevelopmentboardbasedonATmega32U4andESPB266(using

ESP-12FWFi

module),inspiredbyArduino

LeonardoandArduinoYúnoGithubrepo

http://githubcom/neoautus/Adeling·Adlink:htps://rawqithubusercontentcom/ADUNK/OT2IT/main/packaggadlinkot2it,jsonAdlinkOT2ITBoard,

isa

high-performance

microcontrollerthat

hasa32-bitARMB

Cortex3-M4

processor

runnngat

120MHz,256KB

of

SRAM

and

up

to

1MB

Dual

Panel

Flash

with

ECC.A

10/100Ethemet

MAC

and2CAN-FDportsprovideconnectivityforindustrialautomation,automotive,andgeneral-purposeapplications.uvvervIOSDI

mini●

Espressif

ESP32:https://espressif.github.io/arduino-esp32/packageesp32index.jsonoManyvariantsofESP32boards-

ESP32,-S

2,-S3,-C3o

See

wiki

at

https://docs.espressif.com/projects/arduino-esp32/en/latest/getting

started.html

ESP32的ArduinoIDE开发环境搭建20Q

Type7

tosearch<Code

ssues64n

Pul

requests

9◎Actions

wki

①Securty

区IinaighsUnofficiallistof3rd

party

boardssupport

urlsBemhardedtedthaspageon

Dec12,2025·340reiongFinda

poeo

setbon.1.6FrequentyAskedQuestionsArduinoHardwareCores

migration

g

…ArduinoIDE1.53rdpartyHardwares.ArduinoIDE

1.53rdpartyHardwares.

…Arduino

IDE1.5

from

command

lineArduino

IDE1.5:LibraryspecificationArduinoIDE1,6x

package

indexjson.

ArduinoIDEAutoFormatconfigurati..party-boards-support-urlsBuld

ProcessBulding

ArduinoDevelopment

PolicyLibrary

Manager

FAQPluggableUSBand

PluggableHIDhaShow3morpag.networkfactors)AirMCUisanArduino-compatibledevelopmentplatformforAirM2M'sARM-Cortexarchitecturemicroprocessors,·选择开发板型号并连接√单击菜单栏中的“工具→开发板”配置开发板型号,"工具→端口"配置开发板

端口。开发板:"ESP32-WROOM-DAModule">端口:"COM5">串口端口

√COM5COM3ReloadBoardData获得开发板信息开发板:"ESP32-WROOM-DA

Module"

>开发板管理器…Ctrl+Shift+B端

口:"COM5

>ReloadBoardData获得开发板信息ArduinoAVRBoards●esp32ESP32的Arduino

IDE开发环境搭建COM3SerialPortCOM5Serial

Port(US8)□显示所有端口ESP32

Wrover

Kit

(all

versions)ESP32WroverModuleESP32-WROOM-DA

ModuleuPesy

ESP32Wroom

DevkituPesyESP32Wrover

DevKit开发板世理器ESP32选择其他开发板和端口如果要上传项

,请选择开

发板

口,如果你只选择了开发板,你呵以骗译项目,但不能上传项目。开发板esp32by

Espre2.0.12

已安装BoardsinchudediESP32Wrover

MoBoardsincludediArduino

Nano

ESP20.18-·安装

ThonnyIDE√

访问/

,

根据操作系统选择合适的版本下载。=recommended

for

youInstaller

with

32-bit

Python

3.8,suitable

for

all

Windows

versions

since

7thonny=Py38-4.1.7.exe(20MB)Portable

variant

with

64-bit

Python

3.10thonny-4.1.7-windows-portable.zip(31MB)Portable

variant

with

32-bit

Python

3.8thonny=PY38-4.1.7-windows-portable.zip(29MB)Re-using

an

existing

Python

installation(for

advanced

users)

pip

install

thonnyESP32的MicroPython开发环境搭建Installer

with

64-bit

Pythonthonny-4.1.7.exe(21MB)3.10,requires64-bit

Windows8.1/10/11ThonnyDownloadversion

4.1.7forWindows·Mac·LinuxThonnyPythonIDEforbeginnersOfficial

downloads

for

Windows22·

下载

MicroPython

固件√

访问https://micropyth/download/

,

选择合适的ESP32开发板下FirmwareReleasesv1.26.1(2025-09-11).bin/

[app-bin]/[Lelf/Lmap]/[Release

notes](latest)

V1.26.0(2025-08-09).bin/l.app-bin/Lelfj/.map]/[R

elease

notes]V1.25.0(2025-04-15).bin/[.app-bin]/[.elfj/

[map]/[Releasenotes]

V1.24.1(2024-11-29).bin/[app-bin]/[.elfj/[.map]/[Releasenotes]V1.24.0(2024-10-25).bin/[app-bin]/L.elf]/[.map]/[Release

notes]Preview

buildsv1.27.0-preview.135.gd28844d11(2025-09-15).bin/[app-bin]/[.elf]/[map]V1.27.0-preview.117.g1d90577b7(2025-09-10).bin/[.app-bin]/[.elfj/[map]V1.27.0-preview.112.ga43e38544(2025-09-10).bin/[.app-bin]/[elf/[map]V1.27.0-preview.107.gd1607598f(2025-09-09).bin/[app-bin]/[elf]/[map](These

are

automatic

builds

of

the

development

branch

for

thenext

release)OptaWiFiArduinoPrimoArduinoPortenta.C33Arduinomicro:bitv1BBCPortenta

H7ArduinoESP32/WROOMEspressifESP32的MicroPython开发环境搭建v1.23.0(2024-06-02).bin/[app-bin]/[elf]/[.map]/

[Releasenotes]v1.22.2(2024-02-22).bin/[.app-bin]/[elfj/[map]/[Release

notes]V1.22.1(2024-01-05).bin/[app-bin]/Lelfj/[.map]/[Release

notes]V1.22.0(2023-12-27)bin/[app-bin]/Lelfj/[.map]/[Release

notes]V1.21.0(2023-10-05).bin/[app-bin]/Lelfj/[.map]/

[Release

notes]V1.20.0(2023-04-26).bin/[.elf]/[map]/[Release

notes]V1.19.1(2022-06-18).bin/[elfj/[.

mapl/[Release

notesjV1.18(2022-01-17)bin/[elf/[map]/[Releasenotes]v1.17(2021-09-02).bin/[elfj/[.map]/[Release

notes]V1.16(2021-06-23).bin/[elfj

/[map]/[Release

notes]

V1.15(2021-04-18).bin/[.elfj/[

.map]/[Release

notes]

V1.14(2021-02-02).bin/[elfj/map]/[Release

notes]V1.13(2020-09-02)

.bin/[elfj/[.map]/[Releasenotes]v1.12(2019-12-20).bin/[.elfj/[.map]/[Release

notesjTn

InstallMicroPython

(esptool)Clickthe

=

buttontoseeallfeaturesandoptions.Ifyou'restuckthencheckthevariant's

'info'pagefordetailsoraskin

MicroPythonforum.NB!Someboardsneedtobe

put

intoa

special

mode

beforethey

can

be

managed

here(e.g.byholdingthe

BOOTbuttonwhilepluggingin).Some

require

hard

reset

after

installing.You

may

need

to

tweak

the

install

options(三)if

the

selected

MicroPython

variant

doesn't

matchyourdeviceprecisely.Forexample,youmayneedtosetflash-mode

to

'dio'orflash-sizeto

'detect'.Target

port

PCI串行端口@

COM3×Eraseallflashbeforeinstalling(not

justthewriteareas)MicroPythonfamilyvariantversioninfo单击此处选择本地镜像

安装

取消Selectlocal

MicroPythonimage...Querydevice

info常规MicroPython(ESP32)MicroPython

(esptool)|解释器主题&字体|运行和调试|终端

Shell|

助手Thonny

应该使用哪种解释器来运行您的代码?详细信息Connectingvia

USBcable:将您的设备连接到计算机,并在下面选择相应的端口(查找你的设备名字,"USB

Serial"或"UART").如果您找不到它,您可能需要先安装适当的USB驱动程序。ConnectingviaWebREPL:fyourdevicesupportsWebREPL,firstconnectviaserial,makesureWebREPLisenabled(importwebrepl_setup),connectyourcomputeranddevicetosamenetworkandselect

<WebREPL>below端

或WebR

E

P

L·配置

MicroPython解释器√点击菜单栏中的"Tools”→"Options",弹出"Thonny

选项"对话框。ESP32的MicroPython开发环境搭建单击此处安装或更新(UF2)×连接时中断运行中的程序

×同步设备的实时时钟×在实时时钟中使用本地时间

×运行代码前,先重启解释器确认

取消T.

Thonny选项Tn

InstallMicroPython

(esptool)Clickthe

=

buttontoseeallfeaturesandoptions.Ifyou'restuckthencheckthevariant's

'info'pagefordetailsoraskin

MicroPythonforum.NB!Someboardsneedtobe

put

intoa

special

mode

beforethey

can

be

managed

here(e.g.byholdingthe

BOOTbuttonwhilepluggingin).Some

require

hard

reset

after

installing.You

may

need

to

tweak

the

install

options(三)if

the

selected

MicroPython

variant

doesn't

matchyourdeviceprecisely.Forexample,youmayneedtosetflash-mode

to

'dio'orflash-sizeto

'detect'.Target

port

PCI串行端口@

COM3×Eraseallflashbeforeinstalling(not

justthewriteareas)MicroPythonfamilyvariantversioninfo单击此处选择本地镜像

安装

取消Selectlocal

MicroPythonimage...Querydevice

info常规MicroPython(ESP32)MicroPython

(esptool)|解释器

主题&字体

运行和调试终端

Shll|

助手Thonny

应该使用哪种解释器来运行您的代码?详细信息Connectingvia

USBcable:将您的设备连接到计算机,并在下面选择相应的端口(查找你的设备名字,"USB

Serial"或"UART").如果您找不到它,您可能需要先安装适当的USB驱动程序。ConnectingviaWebREPL:fyourdevicesupportsWebREPL,firstconnectviaserial,makesureWebREPLisenabled(importwebrepl_setup),connectyourcomputeranddevicetosamenetworkandselect

<WebREPL>below端

或WebR

E

P

L·加载本地镜像√

在弹出的对话框中,选择并加载本地镜像。ESP32的MicroPython开发环境搭建单击此处安装或更新(UF2)×连接时中断运行中的程序

×同步设备的实时时钟×在实时时钟中使用本地时间

×运行代码前,先重启解释器确认

取消T.

Thonny选项T.Thonny选项Fs

Install

MicroPython(esptool)Click

the=

button

to

see

all

features

and

options.

Ifyou're

stuck

then

check

the

variant's

'info'page

for

details

or

ask

in

MicroPython

forum.NB!Some

boards

needto

be

put

intoaspecial

mode

beforetheycan

be

managed

here(e.g.by

holding

the

BOOT

buttonwhile

plugging

in).Some

require

hard

reset

after

installing.You

may

needtotweakthe

installoptions(=)iftheselected

MicroPython

variant

doesn't

matchyourdevice

precisely.Forexample,you

may

needto

setflash-mode

to

'dio'orflash-size

to

'detect'.选择ESP32连接的串口Targetport

USBSerial

@COM6×Erase

all

flash

before

installing(notjust

the

write

areas)MicroPython

familyESP32variant

<localfile>version

ESP32_GENERIC-20241129-v1.24.1.bininfo

D:\Downloads加载本地镜像

安装

取消Select

local

MicroPython

image..Querydevice

infoShow

image

infoShowesptoolversionShow

installoptions·

选择串口√

选择

ESP32开发板连接的串口(

Windows

通常为

COM*,

macOS通常ESP32的MicroPython开发环境搭建为/dev/

ttyS*。26Target

port

USB

Serial@COM6

TargetportUSBSerial

@COM3

Erasealfls

befor

instaling(no

just

thewit

ares)

Erase

allfash

before

installing

(not

just

the

write

areas)MicroPythonfamilyESP32

MicroPython

family

ESP32

variant

<localfile>

version

ESP32_GENERIC-20241129-v1.24.1.bin

variant

<local

file>

info

D:\Downloads

version

ESP32

GENERIC-20241129-v1.24.1.bin

infoE:Downloads三

Done!

安装

消·烧录固件√选择已下载的固件文件(.bin

文件),然后点击"Flash"按钮开始烧录。InstallMicroPython(esptool)Click

the

=

buttontoseeallfeaturesandoptions.If

you'restuck

then

check

the

variant's

'info'page

for

details

or

ask

inMicroPython

forum.NB!

Some

boards

need

to

be

put

into

a

special

mode

before

they

can

be

managed

here(e.g.

by

holding

the

BOOT

button

while

plugging

in).Somerequirehardresetafterinstalling.You

may

need

to

tweak

the

install

options(三)if

the

selected

MicroPython

variant

doesn't

matchyour

device

precisely.For

example,

you

may

need

to

set

flash-mode

to'dio'or

flash-size

to'detect'.Te

Thonny选项业

n

A

n

mTnInstallMicroPython(esptool)Clickthe=buttontoseeall

features

and

options.If

you're

stuck

then

check

the

variant'sinfo'page

for

details

or

ask

in

MicroPython

forum.NB!Someboardsneedtobe

put

into

a

specialmode

before

they

can

be

managed

here(e.g.by

holding

the

BOOT

button

while

plugging

in).Some

require

hard

reset

after

installing.Youmayneedtotweakthe

installoptions

(三)if

the

selectedMicroPython

variant

doesn'tmatchyour

device

precisely.For

example,you

may

need

to

set

flash-mode

to

'dio'or

flash-size

to

'detect

ESP32的MicroPython开发环境搭建√单击菜单栏中的“文件→示例→01.Basics→

Blink”

为适配ESP32,

荐在代码开头通过宏定义,将LED

BUILTIN重新指定为ESP32

的内置

LED引脚(通常为GPIO2),无须逐行修改引用。defineLED_BUELTIN

2//定义内置LED

的引脚号voidsetup

()(piniode

(LEO_BUTLTIN,OUTPUT);行

1

,

2

在MS上

掬Q2口点亮第

束光:HelloWorld!(

以Arduino

IDE为

)·运行点灯程序验证开发环境28·运行点灯程序验证开发环境√

点击Thonny

菜单栏中的"View"→"Show

REPL"

,

打开交互式编程环境

(REPL)后输入以下代码后按回车键。1|

#导入machine

模块中的Pin

类2from

machine

import

Pin3|

#创建一个Pin

对象,指定引脚号为2,模式为输出

(

Pin.OUT)4

pin2

=Pin(2,Pin.OUT)5#设置引脚2的值为1(高电平),点亮LED6pin2.value(1)点亮第一束光:HelloWorld!

(

以Thonny为例)29·

观察结果√

如果ESP32

开发板的内置LED(

通常连接到

GPIO2)点亮/闪烁(示例

开发板上

D2

点亮/闪烁)。点亮第一束光:Hello

World!30·常见问题及解决方法√无法识别串口确保ESP32开发板已正确连接到计算机。对于

Windows系统,可能需

要安装串口驱动(如CP210x

或CH340驱动)。驱动程序可以从开发板供应商的官方网站下载。√烧录失败确保选择了正确的串口和固件文件,尝试重新连接

ESP32开发板,然后

再次烧录固件。√

REPL

无响应确保烧录的MicroPython固件版本与ESP32开发板兼容,尝试重启ESP32

开发板和Thonny

IDE。常见问题及解决方法31·本章主要介绍了物联网的基本概念、应用场景及关键技术,同时详细说明了ESP32

开发板的硬件架构、核心功能,并

分步骤讲解了

Arduino

IDE

MicroPython

两种主流开

发环境的搭建方法。本章小结32谢

谢33浙大城市學院HANGZHOUCITY

UNIVERSITYAloT系统设计与实践

——从感知到边缘智能34浙大

市學院HANGZHOUCITYUNIVERSITY第二章赋予智能节点“五官”与“手脚”——基础感知与控制35GPIO控制与PWM电子世界的“开关”与“调光器”,掌握输入输出控制的核心逻辑。传感器应用开发给设备装上“五官”,探索温度、湿度等环境感知的奥秘。执行器应用开发从

PWM到

OLED显示屏,执行器应用实战常见问题及解决方法Q&A:这些坑你可能会踩01020304今天我们要学点啥?36

输入(INPUT):

感知外界的“感觉手”负责“拿”取信息,如读取温度、湿度、光线等传感器数据。

输出(OUTPUT):执行指令的“行动手”负责”放”出指令,控制LED亮灭、电机转动或继电器开

关。

进阶变身:多才多艺的“万能手”支持PWM调光、ADC模拟信号读取,以及I2C/SPI等多

种通信协议。GPIO:

ESP32的“万能手”37SDeGND3V3GPI03RSTGMD引脚复用:一专多能的秘密□ESP32的GPIO口能“兼职”!同一个引脚既可以当普

通I/O

接口,又能当I2C/SPI

接口,本节将教你查看

引脚图,避免"引脚冲突"这个新手坑数

脚VS

脚控

式旋

钮输

态亮/

灭暗到

变数字引脚VS模拟引脚□数字引脚像电灯开关(只有开/关),模拟引脚像调

光旋钮(可以调节亮度)。用“水龙头”和"调光开关”

的类比,3分钟区分清楚。GPIO口:具体怎么用?引

型数

脚模

脚RXD2TXD2RXD838GND6PT014GPI013HSCLKHWOSTD5

直观类比:智能水龙头普通开关只有全开全关,而PWM如同极快的自动开关,通过

高频反复通断来模拟连续调节。

核心原理:占空比控制调节一个周期内“开”的时间比例(占空比)。占空比越高,

平均电流越大,反之则越小。

实际应用:数字模拟连续利用数字信号模拟模拟信号效果,广泛用于调节LED亮度、

控制电机转速等场景。PWM:

像拧水龙头一样控制电流39

核心功能:感知光线的“眼睛”光敏电阻能够实时感知环境光线的强弱变化,就像设备的视觉器官一样,为系统提供视觉输入。

工作原理:阻值随光照变化光线越强,电阻越小;光线越弱,电阻越大。ESP32通

过检测这个电阻值的变化,即可精准判断环境亮度。

实际应用场景自动路灯控制、手机屏幕亮度自动调节、相机自动对

焦辅助系统。传感器应用开发:光敏电阻40光敏传感器ino#define

D033void

setup(){//初始化串口通信,设置波特率为9600Serial.begin(9600);//

将引脚D0设置为输入模式,并启用内部上拉电阻

pinMode(D0,INPUT_PULLUP);void

loop(){//读取引脚D0的数字输入值,并通过串口打印出来,换行

Serial.printf("%d\n",digitalRead(D0));关键代码解析初始化串口通信初始化串口通信并设置波特率为9600,是

通过串口输出数据的基础前提。配置引脚输入模式将D0(33

号)引脚配置为输入模式并启用内部上拉电阻,保证引脚电平读取稳定。读取并打印引脚电平读取D0引脚的数字电平值(1/0),

并通过

串口以整数形式换行打印出来。传感器应用开发:光敏电阻·光敏数值打印关键代码解析光敏传感器运

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论