LAFVIN logoESP32 Basic Starter
Kit

Daim ntawv teev npe

LAFVIN ESP32 Basic Starter Kit - PackingList

ESP32 Taw qhia

Tshiab rau ESP32? Pib ntawm no! ESP32 yog ib qho ntawm cov nqi qis thiab qis zog ntawm Chip (SoC) microcontrollers tsim los ntawm Espressif uas suav nrog Wi-Fi thiab Bluetooth wireless muaj peev xwm thiab dual-core processor. Yog tias koj paub txog ESP8266, ESP32 yog nws qhov kev vam meej, muaj ntau yam tshiab.LAFVIN ESP32 Basic Starter Kit - ESP32 Taw qhiaSpecifications ntawm ESP32
Yog tias koj xav kom tau txais kev paub me ntsis ntxiv thiab tshwj xeeb, koj tuaj yeem saib cov lus qhia ntxaws ntxaws ntawm ESP32 (qhov chaw: http://esp32.net/) - kom paub meej ntxiv, tshawb xyuas cov ntaub ntawv):

  • Kev sib txuas wireless WiFi: 150.0 Mbps cov ntaub ntawv tus nqi nrog HT40
  • Bluetooth: BLE (Bluetooth Tsawg Zog) thiab Bluetooth Classic
  • Tus Txheej Txheem: Tensilica Xtensa Dual-Core 32-ntsis LX6 microprocessor, khiav ntawm 160 lossis 240 MHz
  • Nco:
  • ROM: 448 KB (rau booting thiab core functions)
  • SRAM: 520 KB (rau cov ntaub ntawv thiab cov lus qhia)
  • RTC fas SRAM: 8 KB (rau cov ntaub ntawv khaws cia thiab CPU tseem ceeb thaum RTC khau raj los ntawm hom pw tsaug zog)
  • RTC qeeb SRAM: 8KB (rau co-processor nkag mus rau lub sijhawm sib sib zog nqus pw tsaug zog hom) eFuse: 1 Kbit (ntawm uas 256 khoom siv rau lub kaw lus (MAC chaw nyob thiab nti teeb tsa) thiab qhov seem 768 khoom yog tshwj tseg rau cov neeg siv khoom siv, suav nrog Flash-Encryption thiab Chip-ID)

Embedded flash: flash txuas nrog sab hauv ntawm IO16, IO17, SD_CMD, SD_CLK, SD_DATA_0 thiab SD_DATA_1 ntawm ESP32-D2WD thiab ESP32-PICO-D4.

  • 0 MiB (ESP32-D0WDQ6, ESP32-D0WD, thiab ESP32-S0WD chips)
  • 2 MiB (ESP32-D2WD chip)
  • 4 MiB (ESP32-PICO-D4 SiP module)

Tsawg Fais Fab: xyuas kom meej tias koj tseem tuaj yeem siv ADC hloov pauv, piv txwv liample, thaum pw tsaug zog.
Peripheral Input / Output:

  • peripheral interface nrog DMA uas suav nrog capacitive kov
  • ADCs (Analog-rau-Digital Converter)
  • DACs (Digital-rau-Analog Converter)
  • I²C (Inter-Integrated Circuit)
  • UART (Universal Asynchronous Receiver / Transmitter)
  • SPI (Serial Peripheral Interface)
  • I²S (Integrated Interchip Suab)
  • RMII (Txo Media-Independent Interface)
  • PWM (Pulse-Width Modulation)

Kev ruaj ntseg: hardware accelerators rau AES thiab SSL/TLS

ESP32 Development Boards

ESP32 yog hais txog ESP32 nti. Txawm li cas los xij, lo lus "ESP32" kuj tseem siv los xa mus rau ESP32 pawg thawj coj loj hlob. Siv ESP32 liab qab chips tsis yog ib qho yooj yim los yog siv tau, tshwj xeeb tshaj yog thaum kawm, kuaj, thiab prototyping. Feem ntau, koj yuav xav siv ESP32 txhim kho pawg thawj coj saib.
Peb yuav siv lub rooj tsavxwm ESP32 DEVKIT V1 raws li kev siv.Cov duab hauv qab no qhia txog ESP32 DEVKIT V1 pawg thawj coj saib, version nrog 30 GPIO pins.LAFVIN ESP32 Basic Starter Kit - ESP32 Development BoardsSpecifications - ESP32 DEVKIT V1
Cov lus hauv qab no qhia txog cov ntsiab lus ntawm ESP32 DEVKIT V1 DOIT board nta thiab specifications:

Tus naj npawb ntawm cov cores 2 (dual core)
Wi-nkaus 2.4 GHz mus txog 150 Mbits / s
Bluetooth BLE (Bluetooth Tsawg Zog) thiab qub Bluetooth
Kev tsim vaj tsev 32 bits
moos zaus Mus txog 240 MHz
RAM 512 kb ua
Pins 30 (nyob ntawm tus qauv)
Peripherals Capacitive touch, ADC (analog to digital converter), DAC (digital to analog converter), 12C (Inter-Integrated Circuit), UART (universal asynchronous receiver/transmitter), CAN 2.0 (Controller Area Netwokr), SPI (Serial Peripheral Interface), 12S (Integrated Inter-IC)
Suab), RMII (Txo Media-Independent Interface), PWM (mulse width modulation), thiab ntau dua.
Built-in nyees khawm RESET thiab BOOT khawm
Built-in LEDs built-in xiav LED txuas nrog GPIO2; built-in liab LED uas qhia tau hais tias lub rooj tsavxwm yog powered
USB rau UART
tus choj
CP2102

LAFVIN ESP32 Basic Starter Kit - ESP32 DEVKITNws los nrog microUSB interface uas koj tuaj yeem siv los txuas lub rooj tsavxwm rau koj lub khoos phis tawj kom xa cov lej lossis siv lub zog.
Nws siv CP2102 nti (USB rau UART) sib txuas lus nrog koj lub computer ntawm COM chaw nres nkoj siv lub serial interface. Lwm cov nti nrov yog CH340. Tshawb xyuas dab tsi yog USB rau UART nti converter ntawm koj lub rooj tsavxwm vim koj yuav tsum tau nruab cov tsav tsheb uas xav tau kom koj lub khoos phis tawj tuaj yeem sib txuas lus nrog lub rooj tsavxwm (cov ntaub ntawv ntxiv txog qhov no tom qab hauv phau ntawv qhia no).
Lub Rooj Tswjhwm Saib no kuj los nrog lub pob RESET (tej zaum yuav sau npe EN) kom rov pib lub rooj tsavxwm thiab lub pob BOOT kom muab lub rooj tsavxwm rau hauv hom flashing (muaj kom tau txais code). Nco ntsoov tias qee lub boards yuav tsis muaj BOOT khawm.
Nws kuj tuaj nrog lub teeb xiav LED uas muaj kev sib txuas nrog GPIO 2. Qhov LED no muaj txiaj ntsig zoo rau kev debugging kom muab qee yam kev pom lub cev tawm. Kuj tseem muaj lub teeb liab LED teeb thaum koj muab lub zog rau lub rooj tsavxwm.LAFVIN ESP32 Basic Starter Kit -boardESP32 Pinout
ESP32 peripherals muaj xws li:

  • 18 Analog-to-Digital Converter (ADC) raws
  • 3 SPI interfaces
  • 3 UART interfaces
  • 2 I2C interfaces
  • 16 PWM output channels
  • 2 Digital-rau-Analog Converters (DAC)
  • 2 I2S interfaces
  • 10 Capacitive sensing GPIOs

Lub ADC (analog rau digital converter) thiab DAC (digital to analog converter) nta tau muab rau cov pins tshwj xeeb zoo li qub. Txawm li cas los xij, koj tuaj yeem txiav txim siab seb tus pins twg yog UART, I2C, SPI, PWM, thiab lwm yam - koj tsuas yog yuav tsum muab lawv rau hauv cov cai. Qhov no yog ua tau vim ESP32 nti lub multiplexing feature.
Txawm hais tias koj tuaj yeem txhais cov pins zog ntawm lub software, muaj cov pins muab los ntawm lub neej ntawd raws li qhia hauv daim duab hauv qab noLAFVIN ESP32 Basic Starter Kit - ESP32 PinoutTsis tas li ntawd, muaj cov pins nrog cov yam ntxwv tshwj xeeb uas ua rau lawv haum lossis tsis haum rau ib qhov project. Cov lus hauv qab no qhia tau hais tias tus pins twg yog qhov zoo tshaj plaws los siv los ua cov khoom siv, cov zis thiab qhov twg koj yuav tsum tau ceev faj.
Cov pins highlighted ntsuab yog OK siv. Cov uas tseem ceeb hauv daj yog siv tau, tab sis koj yuav tsum tau xyuam xim vim tias lawv yuav muaj tus cwj pwm tsis txaus ntseeg feem ntau ntawm khau raj. Cov pins tseem ceeb hauv liab tsis pom zoo siv los ua cov khoom siv lossis cov khoom tawm.

GP IB Tswv yim Tso zis Sau ntawv
0 rub li OK outputs PWM teeb liab ntawm khau raj, yuav tsum yog LOW mus rau flashing hom
1 TX pin OK debug tso zis ntawm khau raj
2 OK OK txuas nrog on-board LED, yuav tsum tau sab laug los yog LOW nkag mus rau flashing hom
3 OK RX pin HIGH ntawm khau raj
4 OK OK
5 OK OK outputs PWM teeb liab ntawm khau raj, strapping pin
12 OK OK khau raj tsis yog rub siab, strapping pin
13 OK OK
14 OK OK outputs PWM signal at boot
15 OK OK outputs PWM teeb liab ntawm khau raj, strapping pin
16 OK OK
17 OK OK
18 OK OK
19 OK OK
21 OK OK
22 OK OK
23 OK OK
25 OK OK
26 OK OK
27 OK OK
32 OK OK
33 OK OK
34 OK input nkaus xwb
35 OK input nkaus xwb
36 OK input nkaus xwb
39 OK input nkaus xwb

Txuas ntxiv nyeem kom paub meej ntxiv thiab tsom xam qhov tob ntawm ESP32 GPIOs thiab nws txoj haujlwm.
Input tsuas pins
GPIOs 34 txog 39 yog GPIs - cov tswv yim tsuas yog pins. Cov pins no tsis muaj qhov rub-up lossis rub-down resistors. Lawv tsis tuaj yeem siv los ua cov khoom tawm, yog li siv cov pins no tsuas yog cov khoom siv:

  • PIB 34
  • PIB 35
  • PIB 36
  • PIB 39

SPI flash ua ke ntawm ESP-WROOM-32
GPIO 6 rau GPIO 11 tau nthuav tawm hauv qee qhov kev txhim kho ESP32. Txawm li cas los xij, cov pins no txuas nrog kev sib xyaw SPI flash ntawm ESP-WROOM-32 nti thiab tsis pom zoo rau lwm yam kev siv. Yog li, tsis txhob siv cov pins hauv koj cov haujlwm:

  • GPIO 6 (SCK/CLK)
  • GPIO 7 (SDO / SD0)
  • GPIO 8 (SDI / SD1)
  • GPIO 9 (SHD / SD2)
  • GPIO 10 (SWP/SD3)
  • GPIO 11 (CSC/CMD)

Capacitive kov GPIOs
ESP32 muaj 10 sab hauv capacitive touch sensors. Cov no tuaj yeem paub qhov txawv ntawm txhua yam uas tuav cov nqi hluav taws xob, zoo li tib neeg daim tawv nqaij. Yog li lawv tuaj yeem tshawb pom qhov txawv txav tshwm sim thaum kov GPIOs nrog tus ntiv tes. Cov pins no tuaj yeem yooj yim ua ke rau hauv cov ntaub qhwv lub taub hau thiab hloov cov nyees khawm txhua yam. Lub capacitive kov pins kuj tuaj yeem siv los tsa ESP32 los ntawm kev pw tsaug zog. Cov touch sensors txuas nrog rau cov GPIOs no:

  • T0 (GPIO 4)
  • T1 (GPIO 0)
  • T2 (GPIO 2)
  • T3 (GPIO 15)
  • T4 (GPIO 13)
  • T5 (GPIO 12)
  • T6 (GPIO 14)
  • T7 (GPIO 27)
  • T8 (GPIO 33)
  • T9 (GPIO 32)

Analog rau Digital Converter (ADC)
ESP32 muaj 18 x 12 ntsis ADC input channels (thaum ESP8266 tsuas muaj 1x 10 ntsis ADC). Cov no yog GPIOs uas tuaj yeem siv los ua ADC thiab cov kev sib txuas:

  • ADC1_CH0 (GPIO 36)
  • ADC1_CH1 (GPIO 37)
  • ADC1_CH2 (GPIO 38)
  • ADC1_CH3 (GPIO 39)
  • ADC1_CH4 (GPIO 32)
  • ADC1_CH5 (GPIO 33)
  • ADC1_CH6 (GPIO 34)
  • ADC1_CH7 (GPIO 35)
  • ADC2_CH0 (GPIO 4)
  • ADC2_CH1 (GPIO 0)
  • ADC2_CH2 (GPIO 2)
  • ADC2_CH3 (GPIO 15)
  • ADC2_CH4 (GPIO 13)
  • ADC2_CH5 (GPIO 12)
  • ADC2_CH6 (GPIO 14)
  • ADC2_CH7 (GPIO 27)
  • ADC2_CH8 (GPIO 25)
  • ADC2_CH9 (GPIO 26)

Nco tseg: ADC2 tus pins tsis tuaj yeem siv thaum siv Wi-Fi. Yog li, yog tias koj siv Wi-Fi thiab koj muaj teeb meem tau txais tus nqi los ntawm ADC2 GPIO, koj tuaj yeem xav siv ADC1 GPIO hloov. Qhov ntawd yuav tsum daws koj qhov teeb meem.
ADC input channels muaj 12-ntsis daws teeb meem. Qhov no txhais tau hais tias koj tuaj yeem tau txais kev nyeem analog ntawm 0 txog 4095, uas 0 sib raug rau 0V thiab 4095 txog 3.3V. Koj tuaj yeem teeb tsa qhov kev daws teeb meem ntawm koj cov channel ntawm cov cai thiab ADC ntau yam.
ESP32 ADC tus pins tsis muaj tus cwj pwm linear. Tej zaum koj yuav tsis paub qhov txawv ntawm 0 thiab 0.1V, lossis nruab nrab ntawm 3.2 thiab 3.3V. Koj yuav tsum nco ntsoov qhov ntawd thaum siv ADC tus pins. Koj yuav tau txais tus cwj pwm zoo ib yam li qhov pom hauv daim duab hauv qab no.LAFVIN ESP32 Basic Starter Kit - tus cwj pwmDigital rau Analog Converter (DAC)
Muaj 2 x 8 ntsis DAC raws ntawm ESP32 los hloov cov cim digital rau hauv analog vol.tage teeb liab outputs. Cov no yog DAC channels:

  • DAC1 (GPIO25)
  • DAC2 (GPIO26)

RTC GPIOs
Muaj RTC GPIO kev txhawb nqa ntawm ESP32. Cov GPIOs xa mus rau RTC lub zog qis qis tuaj yeem siv tau thaum ESP32 nyob rau hauv kev pw tsaug zog. Cov RTC GPIOs no tuaj yeem siv los tsa ESP32 los ntawm kev pw tsaug zog thaum Ultra Low
Lub zog (ULP) co-processor tab tom khiav. Cov GPIOs hauv qab no tuaj yeem siv los ua qhov tsim tawm sab nraud.

  • RTC_GPIO0 (GPIO36)
  • RTC_GPIO3 (GPIO39)
  • RTC_GPIO4 (GPIO34)
  • RTC_GPIO5 (GPIO35)
  • RTC_GPIO6 (GPIO25)
  • RTC_GPIO7 (GPIO26)
  • RTC_GPIO8 (GPIO33)
  • RTC_GPIO9 (GPIO32)
  • RTC_GPIO10 (GPIO4)
  • RTC_GPIO11 (GPIO0)
  • RTC_GPIO12 (GPIO2)
  • RTC_GPIO13 (GPIO15)
  • RTC_GPIO14 (GPIO13)
  • RTC_GPIO15 (GPIO12)
  • RTC_GPIO16 (GPIO14)
  • RTC_GPIO17 (GPIO27)

PWM
ESP32 LED PWM maub los muaj 16 txoj kev ywj pheej uas tuaj yeem teeb tsa los tsim PWM cov cim nrog cov khoom sib txawv. Txhua tus pins uas tuaj yeem ua raws li cov zis tuaj yeem siv los ua PWM tus pins (GPIOs 34 txog 39 tsis tuaj yeem tsim PWM).
Txhawm rau teeb tsa PWM teeb liab, koj yuav tsum txhais cov kev ntsuas no hauv cov cai:

  • Lub teeb liab zaus;
  • Lub voj voog ua haujlwm;
  • PWM channel;
  • GPIO qhov twg koj xav kom tso tawm lub teeb liab.

I2C
ESP32 muaj ob txoj kev I2C thiab txhua tus pin tuaj yeem tsim los ua SDA lossis SCL. Thaum siv ESP32 nrog Arduino IDE, lub neej ntawd I2C pins yog:

  • GPIO 21 (SDA)
  • GPIO 22 (SCL)

Yog tias koj xav siv lwm tus pins thaum siv lub tsev qiv ntawv xaim, koj tsuas yog xav tau hu rau:
Wire.begin(SDA, SCL);
SPI
Los ntawm lub neej ntawd, tus pin mapping rau SPI yog:

SPI MOSI MISO CLK CS
VSPI PIB 23 PIB 19 PIB 18 PIB 5
HSPI PIB 13 PIB 12 PIB 14 PIB 15

Kev cuam tshuam
Txhua GPIOs tuaj yeem teeb tsa ua kev cuam tshuam.
Strapping Pins
ESP32 nti muaj cov hauv qab no strapping pins:

  • GPIO 0 (yuav tsum yog qis kom nkag mus rau hom khau raj)
  • GPIO 2 (yuav tsum ntab lossis qis thaum khau raj)
  • PIB 4
  • GPIO 5 (yuav tsum siab thaum khau raj)
  • GPIO 12 (yuav tsum qis thaum khau raj)
  • GPIO 15 (yuav tsum siab thaum khau raj)

Cov no yog siv los muab ESP32 rau hauv bootloader lossis flashing hom. Nyob rau feem ntau cov kev loj hlob boards nrog built-in USB / Serial, koj tsis tas yuav txhawj txog lub xeev ntawm cov pins. Lub rooj tsavxwm tso cov pins rau hauv lub xeev txoj cai rau flashing lossis khau raj hom. Xav paub ntau ntxiv ntawm ESP32 Boot Hom Xaiv tuaj yeem pom ntawm no.
Txawm li cas los xij, yog tias koj muaj cov khoom siv txuas nrog cov pins, koj yuav muaj teeb meem sim upload cov lej tshiab, flashing ESP32 nrog cov firmware tshiab, lossis rov pib dua lub rooj tsavxwm. Yog tias koj muaj qee qhov khoom siv txuas nrog rau cov hlua khi thiab koj tau txais teeb meem uploading code lossis flashing ESP32, nws yuav yog vim tias cov khoom siv no tiv thaiv ESP32 los ntawm kev nkag mus rau txoj cai. Nyeem cov ntaub ntawv xaiv khau raj khau raj kom coj koj mus rau qhov yog. Tom qab rov pib dua, flashing, lossis booting, cov pins ua haujlwm raws li qhov xav tau.
Pins HIGH ntawm Boot
Qee qhov GPIOs hloov lawv lub xeev mus rau HIGH lossis tso tawm PWM cov cim ntawm khau raj lossis rov pib dua.
Qhov no txhais tau hais tias yog tias koj muaj cov txiaj ntsig txuas nrog cov GPIOs no koj tuaj yeem tau txais cov txiaj ntsig xav tau thaum ESP32 rov pib dua lossis khau raj.

  • PIB 1
  • PIB 3
  • PIB 5
  • GPIO 6 rau GPIO 11 (txuas mus rau ESP32 integrated SPI flash nco - tsis pom zoo siv).
  • PIB 14
  • PIB 15

Qhib (EN)
Enable (EN) yog 3.3V regulator's enable pin. Nws tau rub tawm, yog li txuas mus rau hauv av kom lov tes taw 3.3V regulator. Qhov no txhais tau tias koj tuaj yeem siv tus pin txuas nrog lub laub khawm kom rov pib dua koj ESP32, piv txwv liample.
GPIO tam sim no kos
Qhov siab tshaj plaws tam sim no tau kos ib GPIO yog 40mA raws li "Cov Cai Ua Haujlwm Pom Zoo" ntu hauv ESP32 datasheet.
ESP32 Built-In Hall Effect Sensor
ESP32 kuj tseem muaj lub teeb pom kev zoo hauv tsev uas pom cov kev hloov pauv hauv cov hlau nplaum hauv nws qhov chaw nyob ib puag ncig
ESP32 Arduino IDE
Muaj ib qho ntxiv rau Arduino IDE uas tso cai rau koj los tsim cov ESP32 siv Arduino IDE thiab nws cov lus programming. Hauv no nyeem peb yuav qhia koj yuav ua li cas rau nruab ESP32 board hauv Arduino IDE txawm tias koj siv Windows, Mac OS X lossis Linux.
Yam yuavtsum tau kawm uantej: Nruab Arduino IDE
Ua ntej pib txheej txheem kev teeb tsa no, koj yuav tsum muaj Arduino IDE nruab rau hauv koj lub computer. Muaj ob lub versions ntawm Arduino IDE koj tuaj yeem nruab: version 1 thiab version 2.
Koj tuaj yeem rub tawm thiab nruab Arduino IDE los ntawm nyem rau ntawm qhov txuas hauv qab no: arduino.cc/en/Main/Software
Qhov twg Arduino IDE version peb pom zoo? Tam sim no, muaj qee yam plugins rau ESP32 (zoo li SPIFFS Filesystem Uploader Plugin) uas tseem tsis tau txhawb nqa ntawm Arduino 2. Yog li, yog tias koj npaj siab yuav siv SPIFFS plugin yav tom ntej, peb pom zoo kom txhim kho cov cuab yeej cuab tam 1.8.X. Koj tsuas yog yuav tsum tau nqes mus rau ntawm Arduino software nplooj ntawv kom pom nws.
Txhim kho ESP32 Add-on hauv Arduino IDE
Txhawm rau nruab ESP32 pawg thawj coj saib hauv koj lub Arduino IDE, ua raws cov lus qhia nram qab no:

  1. Hauv koj lub Arduino IDE, mus rau File> nyiamLAFVIN ESP32 Basic Starter Kit - Nyiam
  2. Nkag mus rau hauv qab no rau hauv "Additional Board Manager URLs" field:

https://raw.githubusercontent.com/espressif/arduino-esp32/gh-pages/package_esp32_index.json
Tom qab ntawd, nyem lub pob "OK":LAFVIN ESP32 Basic Starter Kit - "OK" khawmNco tseg: Yog tias koj twb muaj ESP8266 boards URL, koj tuaj yeem cais cov URLs nrog comma raws li hauv qab no:
https://raw.githubusercontent.com/espressif/arduino-esp32/gh-pages/package_esp32_index.json,
http://arduino.esp8266.com/stable/package_esp8266com_index.json
Qhib cov Boards Manager. Mus rau Cov Cuab Yeej> Board> Boards Manager…LAFVIN ESP32 Basic Starter Kit - EspressifNrhiav rau ESP32 and press install button for the “ESP32 by Espressif Systems“:LAFVIN ESP32 Basic Starter Kit - EspressifQhov ntawd yog nws. Nws yuav tsum tau ntsia tom qab ob peb feeb.LAFVIN ESP32 Basic Starter Kit - ntsia

Upload Test Code

Txuas lub ESP32 board rau koj lub computer. Nrog koj Arduino IDE qhib, ua raws cov kauj ruam no:

  1. Xaiv koj lub Rooj Tswjhwm Saib hauv Cov Cuab Yeej> Board menu (hauv kuv rooj plaub nws yog ESP32 DEV Module)LAFVIN ESP32 Basic Starter Kit - Cov cuab yeej Board
  2. Xaiv qhov chaw nres nkoj (yog tias koj tsis pom COM Chaw nres nkoj hauv koj lub Arduino IDE, koj yuav tsum tau nruab CP210x USB rau UART Choj VCP Tsav Tsheb):LAFVIN ESP32 Basic Starter Kit - UART Choj
  3. Qhib cov nram qab no example sub File > Examples > WiFi
    (ESP32) > WiFiScanLAFVIN ESP32 Basic Starter Kit - WiFiScanLAFVIN ESP32 Basic Starter Kit - WiFiScan 1
  4. Ib daim duab tshiab qhib hauv koj lub Arduino IDE:LAFVIN ESP32 Basic Starter Kit - Arduino IDE
  5. Nias lub Upload khawm hauv Arduino IDE. Tos ob peb lub vib nas this thaum lub code compiles thiab uploads rau koj lub rooj tsavxwm.LAFVIN ESP32 Basic Starter Kit - board
  6. Yog tias txhua yam mus raws li qhov xav tau, koj yuav tsum pom qhov "Done uploading." lus.LAFVIN ESP32 Basic Starter Kit - Ua tiav uploading
  7. Qhib Arduino IDE Serial Monitor ntawm tus nqi baud ntawm 115200:LAFVIN ESP32 Basic Starter Kit - Saib
  8. Nias lub ESP32 on-board Enable khawm thiab koj yuav tsum pom cov tes hauj lwm muaj nyob ze koj ESP32:LAFVIN ESP32 Basic Starter Kit - Qhib khawm

Kev daws teeb meem

Yog tias koj sim upload cov duab kos tshiab rau koj ESP32 thiab koj tau txais cov lus yuam kev no "Ib qho yuam kev tuag tshwm sim: Ua tsis tiav txuas rau ESP32: Sijhawm tawm… Txuas…”. Nws txhais tau tias koj ESP32 tsis nyob hauv flashing / uploading hom.
Muaj lub npe ntawm pawg thawj coj saib zoo thiab COM por xaiv, ua raws li cov kauj ruam no:
Tuav-hauv lub pob "BOOT" hauv koj lub rooj tsavxwm ESP32LAFVIN ESP32 Basic Starter Kit - "BOOT"

  • Nias lub pob "Upload" hauv Arduino IDE kom xa koj cov duab kos:LAFVIN ESP32 Basic Starter Kit - ICON 6
  • Tom qab koj pom "Kev Txuas ...". lus hauv koj Arduino IDE, tso tus ntiv tes los ntawm "BOOT" khawm:LAFVIN ESP32 Basic Starter Kit - "Ua tiav uploading
  • Tom qab ntawd, koj yuav tsum pom cov lus "Done uploading".
    Qhov ntawd yog nws. Koj ESP32 yuav tsum muaj cov duab kos tshiab khiav. Nias lub pob "ENABLE" kom rov pib dua ESP32 thiab khiav cov duab kos tshiab.
    Koj tseem yuav tau rov ua cov pob ntawd ua ntu zus txhua zaus koj xav rub tawm cov duab kos tshiab.

Project 1 ESP32 Inputs Outputs

Hauv phau ntawv qhia pib no koj yuav kawm paub nyeem cov tswv yim digital zoo li lub pob hloov thiab tswj cov txiaj ntsig digital zoo li LED siv ESP32 nrog Arduino IDE.
Yam yuavtsum tau kawm uantej
Peb mam li program ESP32 siv Arduino IDE. Yog li, xyuas kom tseeb tias koj muaj ESP32 boards add-on ntsia ua ntej pib:

  • Txhim kho ESP32 Add-on hauv Arduino IDE

ESP32 Tswj Digital Outputs
Ua ntej, koj yuav tsum teeb tsa GPIO koj xav tswj raws li OUTPUT. Siv tus pinMode() ua haujlwm raws li hauv qab no:
pinMode(GPIO, OUTPUT);
Txhawm rau tswj cov txiaj ntsig digital koj tsuas yog yuav tsum siv digitalWrite() muaj nuj nqi, uas lees txais cov lus sib cav, GPIO (tus lej) koj xa mus rau, thiab lub xeev, HIGH lossis LOW.
digitalWrite(GPIO, STATE);
Tag nrho GPIOs tuaj yeem siv los ua cov khoom tawm tshwj tsis yog GPIOs 6 txog 11 (txuas mus rau kev sib xyaw SPI flash) thiab GPIOs 34, 35, 36 thiab 39 (tsuas yog GPIOs);
Kawm paub ntxiv txog ESP32 GPIOs: ESP32 GPIO Reference Guide
ESP32 Nyeem Digital Inputs
Ua ntej, teeb tsa GPIO koj xav nyeem ua INPUT, siv tus pinMode() ua haujlwm raws li hauv qab no:
pinMode(GPIO, INPUT);
Txhawm rau nyeem cov tswv yim digital, zoo li lub pob, koj siv digitalRead() ua haujlwm, uas lees txais kev sib cav, GPIO (tus lej) koj xa mus.
digitalRead(GPIO);
Txhua ESP32 GPIOs tuaj yeem siv los ua cov khoom siv, tshwj tsis yog GPIOs 6 txog 11 (txuas mus rau kev sib xyaw SPI flash).
Kawm paub ntxiv txog ESP32 GPIOs: ESP32 GPIO Reference Guide
Project Example
Txhawm rau qhia koj yuav ua li cas siv digital inputs thiab digital outputs, peb yuav tsim qhov project yooj yim example nrog lub laub khawm thiab LED. Peb mam li nyeem lub xeev ntawm lub laub khawm thiab teeb lub LED raws li tau piav qhia hauv daim duab hauv qab no.LAFVIN ESP32 Basic Starter Kit - Project Example

Yam yuav tsum tau muaj
Nov yog cov npe ntawm cov khoom uas koj xav tau los tsim lub Circuit Court:

  • ESP32 DEVKIT V1
  • 5 hli LED
  • 220 Ohm tus tiv thaiv
  • Pob Tsoob
  • 10k Ohm resistor
  • Khoom noj khoom haus
  • Jumper cov kab

Schematic daim duab
Ua ntej yuav mus, koj yuav tsum sib sau ua ke ib lub voj voog nrog LED thiab lub laub khawm.
Peb yuav txuas lub LED rau GPIO 5 thiab lub laub khawm rau GPIO 4.LAFVIN ESP32 Basic Starter Kit - Schematic DiagramCode
Qhib qhov chaws Project_1_ESP32_Inputs_Outputs.ino hauv arduino IDELAFVIN ESP32 Basic Starter Kit - CodeLAFVIN ESP32 Basic Starter Kit - Code 1Txoj Cai Ua Haujlwm li cas
Hauv ob kab hauv qab no, koj tsim qhov sib txawv los muab tus pins:

LAFVIN ESP32 Basic Starter Kit - Code WorksLub khawm txuas nrog GPIO 4 thiab LED txuas nrog GPIO 5. Thaum siv Arduino IDE nrog ESP32, 4 sib raug rau GPIO 4 thiab 5 sib raug rau GPIO 5.
Tom ntej no, koj tsim qhov sib txawv los tuav lub xeev khawm. Los ntawm lub neej ntawd, nws yog 0 (tsis nias).
int buttonState = 0;
Hauv kev teeb tsa (), koj pib lub pob ua ib qho kev nkag, thiab LED raws li OUTPUT.
Rau qhov ntawd, koj siv tus pinMode() ua haujlwm uas lees txais tus pin koj xa mus, thiab hom: INPUT lossis OUTPUT.
pinMode(buttonPin, INPUT);
pinMode(ledPin, OUTPUT);
Hauv lub voj () yog qhov uas koj nyeem lub xeev khawm thiab teeb lub LED raws li.
Nyob rau hauv kab tom ntej no, koj nyeem lub xeev khawm thiab txuag nws nyob rau hauv lub buttonState variable.
Raws li peb tau pom yav dhau los, koj siv digitalRead() ua haujlwm.
buttonState = digitalRead(buttonPin);
Cov lus hauv qab no yog cov lus qhia, xyuas seb lub xeev pob yog HIGH. Yog tias nws yog, nws tig lub LED ntawm kev siv digitalWrite() muaj nuj nqi uas lees txais raws li kev sib cav ntawm ledPin, thiab lub xeev HIGH.
yog tias (buttonState == HIGH)LAFVIN ESP32 Basic Starter Kit - Code Works 1Yog tias lub xeev khawm tsis HIGH, koj teeb lub LED tawm. Tsuas yog teeb tsa LOW ua qhov kev sib cav thib ob rau hauv digitalWrite() ua haujlwm.LAFVIN ESP32 Basic Starter Kit - digitalWriteUploading lub Code
Ua ntej nias lub khawm upload, mus rau Cov Cuab Yeej> Board, thiab xaiv lub rooj tsavxwm: DOIT ESP32 DEVKIT V1 board.
Mus rau Cov Cuab Yeej> Chaw nres nkoj thiab xaiv COM chaw nres nkoj ESP32 txuas nrog. Tom qab ntawd, nias lub pob upload thiab tos rau "Done uploading" lus.LAFVIN ESP32 Basic Starter Kit - ICON 7Nco tseg: Yog tias koj pom ntau cov dots (txuas… __… __) ntawm lub qhov rai debugging thiab "Tsis ua haujlwm txuas rau ESP32: Sijhawm tos rau pob ntawv header" cov lus, txhais tau tias koj yuav tsum nias lub ESP32 on-board BOOT khawm tom qab cov dots
pib tshwm. Kev daws teeb meem

Ua qauv qhia

Tom qab uploading code, sim koj lub voj voog. Koj lub LED yuav tsum teeb thaum koj nias lub laub khawm:LAFVIN ESP32 Basic Starter Kit - Ua qauv qhiaThiab tua thaum koj tso nws:LAFVIN ESP32 Basic Starter Kit - tig ntawm

Project 2 ESP32 Analog Inputs

Qhov project no qhia yuav ua li cas nyeem analog inputs nrog ESP32 siv Arduino IDE.
Kev nyeem ntawv analog yog qhov tseem ceeb rau kev nyeem cov txiaj ntsig los ntawm cov khoom sib txawv xws li potentiometers, lossis analog sensors.
Analog Inputs (ADC)
Kev nyeem tus nqi analog nrog ESP32 txhais tau tias koj tuaj yeem ntsuas qhov sib txawv ntawm voltage theem ntawm 0 V thiab 3.3 V.
Qhov voltage ntsuas yog ces muab rau tus nqi ntawm 0 thiab 4095, nyob rau hauv uas 0 V sib raug rau 0, thiab 3.3 V sib raug rau 4095.tage ntawm 0 V thiab 3.3 V yuav muab tus nqi sib thooj nyob nruab nrab.LAFVIN ESP32 Basic Starter Kit - Analog InputsADC yog Non-linear
Qhov zoo tshaj plaws, koj yuav xav kom muaj tus cwj pwm tawm thaum siv ESP32 ADC pins.
Txawm li cas los xij, qhov ntawd tsis tshwm sim. Qhov koj yuav tau txais yog tus cwj pwm raws li qhia hauv kab ntawv hauv qab no:LAFVIN ESP32 Basic Starter Kit - Tsis-linearTus cwj pwm no txhais tau tias koj ESP32 tsis tuaj yeem paub qhov txawv ntawm 3.3 V los ntawm 3.2 V.
Koj yuav tau txais tus nqi tib yam rau ob qho tib si voltagib: 4095.
Tib yam tshwm sim rau tsawg heev voltage qhov tseem ceeb: rau 0 V thiab 0.1 V koj yuav tau txais tib tus nqi: 0. Koj yuav tsum nco ntsoov qhov no thaum siv ESP32 ADC pins.
analogRead() Function
Nyeem ib qho analog tawm tswv yim nrog ESP32 siv Arduino IDE yog qhov yooj yim li kev siv analogRead() muaj nuj nqi. Nws lees txais kev sib cav, GPIO koj xav nyeem:
analogRead(GPIO);
Tsuas yog 15 muaj nyob rau hauv DEVKIT V1board (version nrog 30 GPIOs).
Rub koj lub ESP32 board pinout thiab nrhiav tus ADC pins. Cov no yog highlighted nrog ib tug liab ciam teb nyob rau hauv daim duab hauv qab no.LAFVIN ESP32 Basic Starter Kit - ciam tebCov analog input pins muaj 12-ntsis daws teeb meem. Qhov no txhais tau tias thaum koj nyeem ib qho analog input, nws qhov ntau yuav txawv ntawm 0 txog 4095.
Nco tseg: ADC2 tus pins tsis tuaj yeem siv thaum siv Wi-Fi. Yog li, yog tias koj siv Wi-Fi thiab koj muaj teeb meem tau txais tus nqi los ntawm ADC2 GPIO, koj tuaj yeem xav siv ADC1 GPIO hloov, uas yuav tsum daws koj qhov teeb meem.
Txhawm rau pom tias txhua yam kev sib raug zoo li cas, peb yuav ua kom yooj yim example nyeem ib tug analog nqi ntawm ib tug potentiometer.
Yam yuav tsum tau muaj
Rau qhov no example, koj xav tau cov nram qab no:

  • ESP32 DEVKIT V1 Board
  • Potentiometer
  • Khoom noj khoom haus
  • Jumper cov kab

Schematic
Xa ib lub potentiometer rau koj ESP32. Lub potentiometer nruab nrab tus pin yuav tsum txuas nrog GPIO 4. Koj tuaj yeem siv cov duab kos duab hauv qab no ua ib qho kev siv.LAFVIN ESP32 Basic Starter Kit - SchematicCode
Peb mam li program ESP32 siv Arduino IDE, yog li xyuas kom koj muaj ESP32 add-on ntsia ua ntej ua haujlwm: (Yog tias koj tau ua tiav cov kauj ruam no, koj tuaj yeem hla mus rau kauj ruam tom ntej.)
Txhim kho ESP32 Add-on hauv Arduino IDE
Qhib qhov chaws Project_2_ESP32_Inputs_Outputs.ino hauv arduino IDELAFVIN ESP32 Basic Starter Kit - Code 2Cov cai no tsuas yog nyeem cov txiaj ntsig ntawm potentiometer thiab luam tawm cov txiaj ntsig hauv Serial Monitor.
Hauv txoj cai, koj pib los ntawm kev txhais cov GPIO lub potentiometer txuas nrog. Hauv no example, GPIO 4.LAFVIN ESP32 Basic Starter Kit - exampleHauv kev teeb tsa (), pib qhov kev sib txuas lus sib txuas ntawm tus nqi baud ntawm 115200.LAFVIN ESP32 Basic Starter Kit - examplwm 1Hauv lub voj (), siv qhov ua haujlwm analogRead() los nyeem cov lus qhia analog los ntawm potPin.LAFVIN ESP32 Basic Starter Kit - examplwm 2Thaum kawg, luam tawm cov txiaj ntsig tau nyeem los ntawm potentiometer hauv lub ntsuas ntsuas.LAFVIN ESP32 Basic Starter Kit - examplwm 3Upload tus lej muab rau koj ESP32. Xyuas kom tseeb tias koj muaj lub rooj tsavxwm zoo thiab COM chaw nres nkoj xaiv hauv cov cuab yeej ntawv qhia zaub mov.
Kev xeem Example
Tom qab uploading cov cai thiab nias lub pob pib dua ESP32, qhib Serial Monitor ntawm tus nqi baud ntawm 115200. Tig lub potentiometer thiab pom cov txiaj ntsig hloov.Tus nqi siab tshaj plaws uas koj yuav tau txais yog 4095 thiab qhov tsawg kawg nkaus tus nqi yog 0.LAFVIN ESP32 Basic Starter Kit - tus nqi siab tshaj

Wrapping Up

Hauv tsab xov xwm no koj tau kawm yuav ua li cas nyeem cov tswv yim analog siv ESP32 nrog Arduino IDE. Hauv cov ntsiab lus:

  • Lub ESP32 DEVKIT V1 DOIT board (version nrog 30 pins) muaj 15 ADC tus pins koj tuaj yeem siv los nyeem analog inputs.
  • Cov pins no muaj kev daws teeb meem ntawm 12 cov khoom, uas txhais tau tias koj tuaj yeem tau txais txiaj ntsig los ntawm 0 txog 4095.
  • Txhawm rau nyeem tus nqi hauv Arduino IDE, koj tsuas yog siv analogRead() muaj nuj nqi.
  • ESP32 ADC tus pins tsis muaj tus cwj pwm linear. Tej zaum koj yuav tsis paub qhov txawv ntawm 0 thiab 0.1V, lossis nruab nrab ntawm 3.2 thiab 3.3V. Koj yuav tsum nco ntsoov qhov ntawd thaum siv ADC tus pins.

Project 3 ESP32 PWM (Analog Output)

Hauv no nyeem peb yuav qhia koj yuav ua li cas tsim PWM cov cim nrog ESP32 siv Arduino IDE. Raws li ib tug examppeb yuav tsim ib lub voj voog yooj yim uas dims ib qho LED siv LED PWM tswj ntawm ESP32.LAFVIN ESP32 Basic Starter Kit - AnalogOutputESP32 LED PWM Controller
ESP32 muaj LED PWM maub los nrog 16 txoj kev ywj pheej uas tuaj yeem teeb tsa los tsim PWM cov cim nrog cov khoom sib txawv.
Nov yog cov kauj ruam uas koj yuav tau ua raws kom dim LED nrog PWM siv Arduino IDE:

  1. Ua ntej, koj yuav tsum xaiv PWM channel. Muaj 16 channels ntawm 0 txog 15.
  2. Tom qab ntawd, koj yuav tsum teeb tsa PWM teeb liab zaus. Rau ib qho LED, qhov zaus ntawm 5000 Hz yog qhov zoo siv.
  3. Koj kuj yuav tsum tau teeb tsa lub teeb liab lub luag haujlwm kev daws teeb meem: koj muaj kev daws teeb meem los ntawm 1 txog 16 khoom. Peb yuav siv 8-ntsis daws teeb meem, uas txhais tau hais tias koj tuaj yeem tswj lub teeb ci LED siv tus nqi ntawm 0 txog 255.
  4.  Tom ntej no, koj yuav tsum qhia kom meej rau qhov twg GPIO lossis GPIOs lub teeb liab yuav tshwm sim. Rau qhov koj yuav siv cov haujlwm hauv qab no:
    ledcAttachPin(GPIO, channel)
    Txoj haujlwm no lees txais ob qhov kev sib cav. Thawj yog GPIO uas yuav tso tawm cov teeb liab, thiab qhov thib ob yog cov channel uas yuav tsim cov teeb liab.
  5. Thaum kawg, txhawm rau tswj lub teeb ci LED siv PWM, koj siv cov haujlwm hauv qab no:

ledcWrite(channel, luag hauj lwmcycle)
Txoj haujlwm no lees txais raws li kev sib cav ntawm cov channel uas tsim cov teeb liab PWM, thiab lub voj voog ua haujlwm.
Yam yuav tsum tau muaj
Ua raws li cov lus qhia no koj xav tau cov ntu no:

  • ESP32 DEVKIT V1 Board
  • 5 hli LED
  • 220 Ohm tus tiv thaiv
  •  Khoom noj khoom haus
  • Jumper cov kab

Schematic
Xaim ib qho LED rau koj ESP32 raws li hauv daim duab schematic hauv qab no. LED yuav tsum txuas nrog GPIO 4.LAFVIN ESP32 Basic Starter Kit - SchematicNco tseg: koj tuaj yeem siv txhua tus pin koj xav tau, tsuav nws tuaj yeem ua raws li cov zis. Txhua tus pins uas tuaj yeem ua raws li cov zis tuaj yeem siv los ua PWM tus pins. Yog xav paub ntxiv txog ESP32 GPIOs, nyeem: ESP32 Pinout Reference: Qhov twg GPIO pins koj yuav tsum siv?
Code
Peb mam li program ESP32 siv Arduino IDE, yog li xyuas kom koj muaj ESP32 add-on ntsia ua ntej ua haujlwm: (Yog tias koj tau ua tiav cov kauj ruam no, koj tuaj yeem hla mus rau kauj ruam tom ntej.)
Txhim kho ESP32 Add-on hauv Arduino IDE
Qhib cov code Project_3_ESP32_PWM.ino hauv arduino IDELAFVIN ESP32 Basic Starter Kit - Code 3LAFVIN ESP32 Basic Starter Kit - Code 4Koj pib los ntawm kev txhais tus pin lub LED txuas rau. Hauv qhov no, LED txuas nrog GPIO 4.LAFVIN ESP32 Basic Starter Kit - Code 5Tom qab ntawd, koj teeb tsa PWM teeb liab cov khoom. Koj txhais cov zaus ntawm 5000 Hz, xaiv channel 0 los tsim cov teeb liab, thiab teeb tsa kev daws teeb meem ntawm 8 ntsis. Koj tuaj yeem xaiv lwm yam khoom, txawv dua li cov no, los tsim cov PWM sib txawv.LAFVIN ESP32 Basic Starter Kit - Code 6Hauv kev teeb tsa(), koj yuav tsum teeb tsa LED PWM nrog cov khoom koj tau teev tseg ua ntej los ntawm kev siv ledcSetup() muaj nuj nqi uas lees txais cov lus sib cav, ledChannel, zaus, thiab kev daws teeb meem, raws li hauv qab no:LAFVIN ESP32 Basic Starter Kit - Code 8Tom ntej no, koj yuav tsum xaiv GPIO koj yuav tau txais lub teeb liab los ntawm. Rau qhov ntawd siv ledcAttachPin() muaj nuj nqi uas lees txais raws li kev sib cav GPIO qhov twg koj xav tau lub teeb liab, thiab cov channel uas tsim cov teeb liab. Hauv no example, peb yuav tau txais lub teeb liab nyob rau hauv lub ledPin GPIO, uas sib raug rau GPIO 4. Cov channel uas generates lub teeb liab yog lub ledChannel, uas sib raug rau channel 0.LAFVIN ESP32 Basic Starter Kit - Code 9Nyob rau hauv lub voj, koj yuav txawv lub luag hauj lwm voj voog ntawm 0 thiab 255 kom lub LED brightness.LAFVIN ESP32 Basic Starter Kit - brightnessThiab tom qab ntawd, ntawm 255 thiab 0 kom txo qhov ci.LAFVIN ESP32 Basic Starter Kit - brightness 1Txhawm rau teeb tsa qhov ci ntsa iab ntawm LED, koj tsuas yog yuav tsum siv lub ledcWrite() muaj nuj nqi uas lees txais raws li kev sib cav ntawm cov channel uas tsim cov teeb liab, thiab lub voj voog ua haujlwm.LAFVIN ESP32 Basic Starter Kit - brightness 2Raws li peb tab tom siv 8-ntsis daws teeb meem, lub voj voog lub luag haujlwm yuav raug tswj los ntawm tus nqi ntawm 0 txog 255. Nco ntsoov tias hauv ledcWrite() muaj nuj nqi peb siv cov channel uas tsim cov teeb liab, thiab tsis yog GPIO.

Kev xeem Example

Upload code rau koj ESP32. Nco ntsoov tias koj muaj lub rooj tsavxwm zoo thiab COM chaw nres nkoj xaiv. Saib ntawm koj lub voj voog. Koj yuav tsum muaj lub dimmer LED uas nce thiab txo qhov ci.LAFVIN ESP32 Basic Starter Kit - Xeem Example

Project 4 ESP32 PIR Motion Sensor

Qhov project no qhia txog yuav ua li cas txhawm rau txheeb xyuas cov lus tsa suab nrog ESP32 siv lub PIR motion sensor.Lub buzzer yuav suab lub tswb thaum kuaj pom, thiab nres lub tswb thaum tsis muaj kev txav mus los rau lub sijhawm preset (xws li 4 vib nas this)
HC-SR501 Motion Sensor ua haujlwm li cas
.LAFVIN ESP32 Basic Starter Kit - Motion Sensor Ua haujlwmLub hauv paus ntsiab lus ntawm kev ua haujlwm ntawm HC-SR501 sensor yog raws li kev hloov pauv ntawm cov hluav taws xob infrared ntawm cov khoom txav mus los.Yuav kom kuaj tau los ntawm HC-SR501 sensor, cov khoom yuav tsum ua tau raws li ob txoj cai:

  • Cov khoom yog emitting txoj kev infrared.
  • Cov khoom txav los yog co

Yog li:
Yog hais tias ib yam khoom yog emitting lub infrared rays tab sis tsis txav (piv txwv li, ib tug neeg sawv tseem tsis txav), nws yuav tsis pom los ntawm lub sensor.
Yog tias ib qho khoom txav mus, tiam sis tsis muaj qhov hluav taws xob infrared (xws li, neeg hlau lossis tsheb), nws tsis pom los ntawm lub sensor.
Qhia Timers
Hauv no example peb tseem yuav qhia timers. Peb xav kom lub LED nyob twj ywm rau ib tug predetermined tus naj npawb ntawm vib nas this tom qab kuaj pom. Es tsis txhob siv ncua sijhawm () ua haujlwm uas thaiv koj cov cai thiab tsis tso cai rau koj ua lwm yam rau tus lej txiav txim, peb yuav tsum siv lub sijhawm.LAFVIN ESP32 Basic Starter Kit - Qhia TimersKev ncua ( ) ua haujlwm
Koj yuav tsum paub txog qhov ncua sijhawm () ua haujlwm raws li nws tau siv dav. Cov haujlwm no yog qhov yooj yim heev rau siv. Nws lees txais ib tus lej int nkaus xwb raws li kev sib cav.
Tus lej no sawv cev rau lub sijhawm nyob hauv milliseconds qhov program yuav tsum tau tos kom txog thaum tsiv mus rau kab txuas ntxiv.LAFVIN ESP32 Basic Starter Kit - codeThaum koj ncua (1000) koj qhov kev zov me nyuam nres ntawm kab ntawd rau 1 thib ob.
ncua ( ) yog qhov thaiv kev ua haujlwm. Kev thaiv cov haujlwm tiv thaiv ib qho kev pab cuam los ntawm kev ua lwm yam kom txog thaum qhov haujlwm tshwj xeeb no tiav. Yog tias koj xav tau ntau yam dej num tshwm sim tib lub sijhawm, koj siv tsis tau ncua ().
Rau feem ntau cov haujlwm koj yuav tsum tsis txhob siv ncua sijhawm thiab siv sijhawm hloov pauv.
millis() ua haujlwm
Siv ib txoj haujlwm hu ua millis() koj tuaj yeem xa rov qab tus lej milliseconds uas tau dhau los txij li qhov kev pab cuam thawj zaug pib.LAFVIN ESP32 Basic Starter Kit - qhov kev pab cuam thawj zaug pibVim li cas qhov haujlwm ntawd tseem ceeb? Vim tias los ntawm kev siv qee qhov lej, koj tuaj yeem tshawb xyuas tau yooj yim npaum li cas lub sijhawm dhau los yam tsis thaiv koj cov lej.
Yam yuav tsum tau muaj
Ua raws li cov lus qhia no koj xav tau cov hauv qab no

  • ESP32 DEVKIT V1 Board
  • PIR suab sensor (HC-SR501)
  • Nquag Buzzer
  • Jumper cov kab
  • Khoom noj khoom haus

SchematicLAFVIN ESP32 Basic Starter Kit - Schematic 1Nco tseg: Kev ua haujlwm voltage ntawm HC-SR501 yog 5V. Siv Vin pin los ua kom muaj zog.
Code
Ua ntej pib nrog qhov kev qhia no koj yuav tsum muaj ESP32 add-on ntsia hauv koj Arduino IDE. Ua raws li ib qho ntawm cov lus qhia hauv qab no rau nruab ESP32 ntawm Arduino IDE, yog tias koj tsis tau ua tiav.
Txhim kho ESP32 Add-on hauv Arduino IDE
Qhib qhov chaws Project_4_ESP32_PIR_Motion_Sensor.ino hauv arduino IDE.
Ua qauv qhia
Upload code rau koj lub rooj tsavxwm ESP32. Nco ntsoov tias koj muaj lub rooj tsavxwm zoo thiab COM chaw nres nkoj xaiv.Upload code siv cov kauj ruam.
Qhib Serial Monitor ntawm tus nqi baud ntawm 115200.LAFVIN ESP32 Basic Starter Kit - Ua qauv qhia 1Txav koj txhais tes rau pem hauv ntej ntawm PIR sensor. Lub buzzer yuav tsum tig rau, thiab cov lus tau luam tawm hauv Serial Monitor hais tias "Kev txav chaw pom! Buzzer tswb".
Tom qab 4 vib nas this, lub buzzer yuav tsum tua.LAFVIN ESP32 Basic Starter Kit - buzzer

Project 5 ESP32 Hloov Web Server

Nyob rau hauv qhov project no koj yuav tsim ib tug standalone web server nrog ESP32 uas tswj cov zis (ob lub LEDs) siv Arduino IDE programming ib puag ncig. Cov web server yog mobile teb thiab tuaj yeem nkag tau nrog txhua yam khoom siv uas yog browser ntawm lub network hauv zos. Peb mam li qhia koj yuav ua li cas los tsim lub web server thiab yuav ua li cas cov cai ua haujlwm ib ntus.
Project Tshajview
Ua ntej yuav ncaj nraim mus rau qhov project, nws yog ib qho tseem ceeb uas yuav tau piav qhia txog qhov peb web server yuav ua, kom nws yooj yim dua ua raws cov kauj ruam tom qab.

  • Cov web neeg rau zaub mov koj yuav tsim tswj ob LEDs txuas nrog ESP32 GPIO 26 thiab GPIO 27;
  • Koj tuaj yeem nkag mus rau ESP32 web neeg rau zaub mov los ntawm kev ntaus ESP32 IP chaw nyob ntawm tus browser hauv lub network hauv zos;
  • Los ntawm txhaj cov nyees khawm ntawm koj web server koj tuaj yeem hloov pauv lub xeev ntawm txhua LED.

Yam yuav tsum tau muaj
Rau qhov kev qhia no koj yuav xav tau cov hauv qab no:

  • ESP32 DEVKIT V1 Board
  • 2 x 5 mm LED
  • 2 x 200 Ohm resistor
  • Khoom noj khoom haus
  • Jumper cov kab

Schematic
Pib los ntawm kev tsim lub voj voog. Txuas ob lub LEDs rau ESP32 raws li qhia hauv daim duab kos duab hauv qab no - ib qho LED txuas nrog GPIO 26, thiab lwm qhov rau GPIO 27.
Nco tseg: Peb tab tom siv ESP32 DEVKIT DOIT board nrog 36 tus pins. Ua ntej sib dhos lub voj voog, nco ntsoov xyuas lub pinout rau lub rooj tsavxwm koj siv.LAFVIN ESP32 Basic Starter Kit - SchematicCode
Ntawm no peb muab cov cai uas tsim ESP32 web server. Qhib qhov chaws Project_5_ESP32_Switch _Web_Server.ino hauv arduino IDE, tab sis tsis txhob upload nws tseem. Koj yuav tsum ua qee qhov kev hloov pauv kom nws ua haujlwm rau koj.
Peb mam li program ESP32 siv Arduino IDE, yog li xyuas kom koj muaj ESP32 add-on ntsia ua ntej ua haujlwm: (Yog tias koj tau ua tiav cov kauj ruam no, koj tuaj yeem hla mus rau kauj ruam tom ntej.)
Txhim kho ESP32 Add-on hauv Arduino IDE
Teem Koj Cov Ntawv Pov Thawj Network
Koj yuav tsum hloov kho cov kab hauv qab no nrog koj cov ntaub ntawv pov thawj network: SSID thiab lo lus zais. Cov cai tau pom zoo rau qhov twg koj yuav tsum hloov pauv.LAFVIN ESP32 Basic Starter Kit - Network CredentialsUploading lub Code
Tam sim no, koj tuaj yeem upload tus lej thiab thiab cov web server yuav ua haujlwm tam sim ntawd.
Ua raws li cov kauj ruam tom ntej kom upload code rau ESP32:

  1. Txuas koj lub rooj tsavxwm ESP32 hauv koj lub computer;
  2. Hauv Arduino IDE xaiv koj lub rooj tsavxwm hauv Cov Cuab Yeej> Board (hauv peb rooj plaub peb siv ESP32 DEVKIT DOIT board);LAFVIN ESP32 Basic Starter Kit - Uploading the Code
  3. Xaiv qhov chaw nres nkoj COM hauv Cov Cuab Yeej> Chaw nres nkoj.LAFVIN ESP32 Basic Starter Kit - Cov cuab yeej Chaw nres nkoj
  4. Nias lub Upload khawm hauv Arduino IDE thiab tos ob peb lub vib nas this thaum lub code compiles thiab uploads rau koj lub rooj tsavxwm.LAFVIN ESP32 Basic Starter Kit - ICON 7
  5. Tos rau "Done uploading" lus.LAFVIN ESP32 Basic Starter Kit - Ua tiav uploading 1

Nrhiav ESP IP Chaw Nyob
Tom qab uploading cov cai, qhib Serial Monitor ntawm tus nqi baud ntawm 115200.LAFVIN ESP32 Basic Starter Kit - ESP IP Chaw NyobNias lub pob ESP32 EN (rov pib dua). ESP32 txuas rau Wi-Fi, thiab tso tawm ESP IP chaw nyob ntawm Serial Monitor. Luam qhov chaw nyob IP, vim tias koj xav tau nws nkag mus rau ESP32 web server.LAFVIN ESP32 Basic Starter Kit - web serverNkag mus rau Web Server
Nkag mus rau qhov web neeg rau zaub mov, qhib koj lub browser, muab tshuaj txhuam ESP32 IP chaw nyob, thiab koj yuav pom cov nplooj ntawv nram qab no.
Nco tseg: Koj tus browser thiab ESP32 yuav tsum txuas nrog tib LAN.LAFVIN ESP32 Basic Starter Kit - Nkag mus rau Web ServerYog tias koj saib ntawm Serial Monitor, koj tuaj yeem pom tias muaj dab tsi tshwm sim hauv keeb kwm yav dhau. ESP tau txais HTTP thov los ntawm tus neeg siv khoom tshiab (qhov no, koj tus browser).LAFVIN ESP32 Basic Starter Kit - HTTP thovKoj tuaj yeem pom lwm cov ntaub ntawv hais txog HTTP thov.
Ua qauv qhia
Tam sim no koj tuaj yeem sim yog koj li web server ua haujlwm zoo. Nyem cov nyees khawm los tswj cov LEDs.LAFVIN ESP32 Basic Starter Kit - keeb kwm yav dhauTib lub sijhawm, koj tuaj yeem saib ntawm Serial Monitor kom pom tias muaj dab tsi tshwm sim hauv keeb kwm yav dhau. Rau example, thaum koj nias lub pob kom tig GPIO 26 ON, ESP32 tau txais kev thov ntawm /26/on URL.LAFVIN ESP32 Basic Starter Kit - URLThaum ESP32 tau txais qhov kev thov ntawd, nws tig lub LED txuas nrog GPIO 26 ON thiab hloov kho nws lub xeev ntawm web nplooj.LAFVIN ESP32 Basic Starter Kit - web nploojLub pob rau GPIO 27 ua haujlwm zoo ib yam. Kuaj tias nws ua haujlwm zoo.LAFVIN ESP32 Basic Starter Kit - ua haujlwm zoo

Txoj Cai Ua Haujlwm li cas

Hauv seem no yuav ua tib zoo saib cov cai kom pom tias nws ua haujlwm li cas.
Thawj qhov koj yuav tsum tau ua yog suav nrog lub tsev qiv ntawv WiFi.LAFVIN ESP32 Basic Starter Kit - WiFi tsev qiv ntawvRaws li tau hais dhau los, koj yuav tsum tau ntxig koj ssid thiab lo lus zais hauv cov kab hauv qab no hauv ob nqe lus.LAFVIN ESP32 Basic Starter Kit - ob nqe lusCes, koj teev koj web server rau chaw nres nkoj 80.LAFVIN ESP32 Basic Starter Kit - web serverCov kab hauv qab no tsim qhov sib txawv los khaws cov header ntawm HTTP thov:LAFVIN ESP32 Basic Starter Kit - HTTPrequestTom ntej no, koj tsim auxiliar variables khaws cia lub xeev tam sim no ntawm koj outputs. Yog tias koj xav ntxiv cov zis ntau ntxiv thiab txuag nws lub xeev, koj yuav tsum tsim kom muaj ntau qhov sib txawv.LAFVIN ESP32 Basic Starter Kit - hloov pauvKoj kuj yuav tsum tau muab GPIO rau txhua qhov ntawm koj cov txiaj ntsig. Ntawm no peb siv GPIO 26 thiab GPIO 27. Koj tuaj yeem siv lwm yam GPIOs tsim nyog.LAFVIN ESP32 Basic Starter Kit - lwm yam haumteeb tsa()
Tam sim no, cia peb mus rau hauv kev teeb tsa (). Ua ntej, peb pib sib txuas lus sib txuas ntawm tus nqi baud ntawm 115200 rau kev debugging lub hom phiaj.LAFVIN ESP32 Basic Starter Kit - Lub hom phiajKoj kuj txhais tau tias koj GPIOs ua OUTPUTs thiab teem rau LOW.LAFVIN ESP32 Basic Starter Kit - GPIOs raws li OUTPUTsCov kab hauv qab no pib qhov kev sib txuas ntawm Wi-Fi nrog WiFi.begin(ssid, lo lus zais), tos kom muaj kev sib txuas zoo thiab luam tawm ESP IP chaw nyob hauv Serial Monitor.LAFVIN ESP32 Basic Starter Kit - SerialLAFVIN ESP32 Basic Starter Kit - Serial 1voj()
Nyob rau hauv lub voj () peb program dab tsi tshwm sim thaum tus neeg siv tshiab tsim kev sib txuas nrog rau web server.
ESP32 yeej ib txwm mloog rau cov neeg tuaj nrog cov kab hauv qab no:LAFVIN ESP32 Basic Starter Kit - vojThaum qhov kev thov tau txais los ntawm tus neeg siv khoom, peb yuav khaws cov ntaub ntawv tuaj. Lub voj voog uas tom qab ntawd yuav ua haujlwm ntev npaum li tus neeg siv khoom txuas nrog. Peb tsis pom zoo kom hloov cov lej hauv qab no tshwj tsis yog tias koj paub tseeb tias koj ua dab tsi.LAFVIN ESP32 Basic Starter Kit - raws nraimLAFVIN ESP32 Basic Starter Kit - raws nraim 1LAFVIN ESP32 Basic Starter Kit - raws nraim 2Tshooj tom ntej ntawm yog thiab lwm cov nqe lus xyuas seb lub pob twg raug nias hauv koj web nplooj, thiab tswj cov zis raws li. Raws li peb tau pom yav dhau los, peb thov rau qhov sib txawv URLs nyob ntawm lub pob nyem.LAFVIN ESP32 Basic Starter Kit - khawm niasLAFVIN ESP32 Basic Starter Kit - khawm nias 1Rau example, yog tias koj tau nias lub pob GPIO 26 ON, ESP32 tau txais kev thov ntawm /26/ON URL (peb tuaj yeem pom cov ntaub ntawv ntawd ntawm HTTP header ntawm Serial Monitor). Yog li, peb tuaj yeem tshawb xyuas seb lub header muaj cov lus qhia GET / 26 / on. Yog tias nws muaj, peb hloov qhov output26state hloov pauv mus rau ON, thiab ESP32 tig lub LED rau.
Qhov no ua haujlwm zoo ib yam rau lwm cov nyees khawm. Yog li, yog tias koj xav ntxiv cov txiaj ntsig ntxiv, koj yuav tsum hloov kho qhov ntu ntawm cov cai kom suav nrog lawv.
Displaying HTML web nplooj
Lwm yam uas koj yuav tsum tau ua, yog tsim lub web nplooj. ESP32 yuav xa cov lus teb rau koj tus browser nrog qee tus lej HTML los tsim cov web nplooj.
Cov web nplooj ntawv raug xa mus rau tus neeg siv khoom siv no nthuav qhia client.println(). Koj yuav tsum sau qhov koj xav xa mus rau tus neeg siv khoom raws li kev sib cav.
Thawj qhov peb yuav tsum xa yog ib txwm kab hauv qab no, uas qhia tias peb xa HTML.LAFVIN ESP32 Basic Starter Kit - xa HTMLTom qab ntawd, cov kab hauv qab no ua rau web nplooj teb nyob rau hauv ib qho twg web browser.LAFVIN ESP32 Basic Starter Kit - web browserThiab cov hauv qab no yog siv los tiv thaiv kev thov ntawm favicon. - Koj tsis tas yuav txhawj txog kab no.LAFVIN ESP32 Basic Starter Kit - client.println

Styling cov Web Nplooj

Tom ntej no, peb muaj qee cov ntawv CSS rau style cov nyees khawm thiab cov web nplooj ntawv tsos.
Peb xaiv Helvetica font, txhais cov ntsiab lus los tso tawm kom pom raws li qhov thaiv thiab ua raws li qhov chaw.LAFVIN ESP32 Basic Starter Kit - Styling tus Web NploojPeb style peb cov nyees khawm nrog # 4CAF50 xim, tsis muaj ciam teb, ntawv hauv xim dawb, thiab nrog cov padding no: 16px 40px. Peb kuj tau teeb tsa cov ntawv kho kom zoo nkauj kom tsis muaj ib qho, txhais cov ntawv loj, cov npoo, thiab tus cursor rau tus pointer.LAFVIN ESP32 Basic Starter Kit - pointerPeb kuj txhais cov style rau ib lub pob thib ob, nrog rau tag nrho cov khoom ntawm lub pob peb tau txhais ua ntej, tab sis nrog cov xim sib txawv. Qhov no yuav yog qhov style rau lub khawm off.LAFVIN ESP32 Basic Starter Kit - client.println 1

Kev teeb tsa Web Page Thawj Lub Ntsiab Lus
Hauv kab tom ntej no koj tuaj yeem teeb tsa thawj lub ntsiab lus ntawm koj web nplooj. Ntawm no peb muaj "ESP32 Web Server", tab sis koj tuaj yeem hloov cov ntawv no rau yam koj nyiam.LAFVIN ESP32 Basic Starter Kit - Web Nplooj ntawvTso cov nyees khawm thiab lub xeev sib thooj
Tom qab ntawd, koj sau ib nqe lus los tso saib GPIO 26 lub xeev tam sim no. Raws li koj tuaj yeem pom peb siv cov output26State hloov pauv, kom lub xeev hloov kho tam sim ntawd thaum qhov hloov pauv no.LAFVIN ESP32 Basic Starter Kit - hloov pauv hloov pauvTom qab ntawd, peb tso saib lub khawm rau lossis tawm, nyob ntawm lub xeev tam sim no ntawm GPIO. Yog tias lub xeev tam sim no ntawm GPIO raug kaw, peb pom lub pob ON, yog tias tsis yog, peb tso tawm khawm OFF.LAFVIN ESP32 Basic Starter Kit - tso saib lub khawm OFFPeb siv tib txoj kev rau GPIO 27.
Kaw qhov kev sib txuas
Thaum kawg, thaum cov lus teb xaus, peb tshem tawm qhov hloov pauv ntawm lub taub hau, thiab nres kev sib txuas nrog tus neeg siv khoom nrog client.stop().LAFVIN ESP32 Basic Starter Kit - Kaw qhov kev sib txuas

Wrapping Up

Nyob rau hauv no nyeem peb twb qhia koj yuav ua li cas los tsim ib tug web server nrog ESP32. Peb tau qhia koj ib qho yooj yim example uas tswj ob LEDs, tab sis lub tswv yim yog los hloov cov LEDs nrog ib tug relay, los yog lwm yam tso zis koj xav tswj.

Project 6 RGB LED Web Server

Hauv qhov project no peb yuav qhia koj yuav ua li cas tswj lub RGB LED nrog lub rooj tsavxwm ESP32 siv a web server nrog tus xaiv xim.
Project Tshajview
Ua ntej pib, cia saib seb qhov project no ua haujlwm li cas:LAFVIN ESP32 Basic Starter Kit - Project Tshajview

  • Lub ESP32 web server qhia cov xim xaiv.
  • Thaum koj xaiv xim, koj tus browser ua qhov kev thov ntawm a URL uas muaj R, G, thiab B tsis nyob ntawm cov xim xaiv.
  • Koj ESP32 tau txais qhov kev thov thiab faib tus nqi rau txhua qhov xim tsis muaj xim.
  • Tom qab ntawd, nws xa PWM teeb liab nrog tus nqi sib xws rau GPIOs uas tswj RGB LED.

RGB LEDs ua haujlwm li cas?
Nyob rau hauv ib qho cathode RGB LED, tag nrho peb LEDs sib koom qhov kev sib txuas tsis zoo (cathode).Tag nrho cov khoom muaj nyob hauv cov khoom siv yog hom-cathode RGB.LAFVIN ESP32 Basic Starter Kit - RGB LEDs ua haujlwmYuav tsim cov xim sib txawv li cas?
Nrog RGB LED koj tuaj yeem, tau kawg, tsim lub teeb liab, ntsuab, thiab xiav, thiab los ntawm kev teeb tsa kev siv ntawm txhua lub LED, koj tuaj yeem tsim lwm yam xim thiab.
Rau example, los tsim lub teeb xiav nkaus xwb, koj yuav teeb lub xiav LED mus rau qhov siab tshaj plaws thiab cov ntsuab thiab liab LEDs rau qhov qis tshaj plaws. Rau lub teeb dawb, koj yuav teeb tag nrho peb lub LEDs rau qhov siab tshaj plaws.
Kev sib xyaw xim
Txhawm rau tsim lwm cov xim, koj tuaj yeem muab peb cov xim sib txawv. Txhawm rau kho qhov kev siv ntawm txhua LED koj tuaj yeem siv PWM teeb liab.
Vim tias cov LEDs nyob ze rau ib leeg, peb ob lub qhov muag pom qhov tshwm sim ntawm kev sib xyaw ntawm cov xim, tsis yog peb xim ib leeg.
Kom muaj lub tswv yim yuav ua li cas muab cov xim sib xyaw, ua tib zoo saib ntawm daim duab hauv qab no.
Qhov no yog daim ntawv qhia sib xyaw xim yooj yim tshaj plaws, tab sis muab koj lub tswv yim nws ua haujlwm li cas thiab tsim cov xim sib txawv.LAFVIN ESP32 Basic Starter Kit - txawv ximYam yuav tsum tau muaj
Rau qhov project no koj xav tau cov hauv qab no:

  • ESP32 DEVKIT V1 Board
  • RGB LED teeb
  • 3 x 220 ohm resistors
  • Jumper cov kab
  • Khoom noj khoom haus

SchematicLAFVIN ESP32 Basic Starter Kit - SchematicCode
Peb mam li program ESP32 siv Arduino IDE, yog li xyuas kom koj muaj ESP32 add-on ntsia ua ntej ua haujlwm: (Yog tias koj tau ua tiav cov kauj ruam no, koj tuaj yeem hla mus rau kauj ruam tom ntej.)

  • Txhim kho ESP32 Add-on hauv Arduino IDE

Tom qab sib dhos lub voj voog, Qhib qhov chaws
Project_6_RGB_LED_Web_Server.ino hauv arduino IDE.
Ua ntej uploading tus lej, tsis txhob hnov ​​​​qab ntxig koj cov ntaub ntawv pov thawj network kom ESP tuaj yeem txuas rau koj lub network hauv zos.LAFVIN ESP32 Basic Starter Kit - lub network hauv zosTxoj cai ua haujlwm li cas
Daim duab ESP32 siv lub tsev qiv ntawv WiFi.h.LAFVIN ESP32 Basic Starter Kit - WiFi.h tsev qiv ntawvCov kab hauv qab no txhais cov hlua sib txawv los tuav R, G, thiab B tsis tau los ntawm qhov kev thov.LAFVIN ESP32 Basic Starter Kit - String redStringPlaub qhov sib txawv tom ntej no yog siv los txiav txim siab HTTP thov tom qab.LAFVIN ESP32 Basic Starter Kit - HTTP thovTsim peb qhov sib txawv rau GPIOs uas yuav tswj cov kab nrib R, G, thiab B. Hauv qhov no, peb siv GPIO 13, GPIO 12, thiab GPIO 14.LAFVIN ESP32 Basic Starter Kit - GPIOs xav tauCov GPIOs no yuav tsum tso tawm PWM cov cim, yog li peb yuav tsum tau teeb tsa PWM cov khoom ua ntej. Teem lub PWM teeb liab zaus rau 5000 Hz. Tom qab ntawd, koom nrog PWM channel rau txhua ximLAFVIN ESP32 Basic Starter Kit - txhua ximThiab thaum kawg, teeb tsa qhov kev daws teeb meem ntawm PWM raws rau 8-ntsisLAFVIN ESP32 Basic Starter Kit - PWM channelsHauv kev teeb tsa(), muab lub zog PWM rau PWM rawsLAFVIN ESP32 Basic Starter Kit - PWM channelsTxuas cov PWM channel rau cov GPIOs sib xwsLAFVIN ESP32 Basic Starter Kit - coj GPIOsTshooj cai hauv qab no qhia cov xim xaiv hauv koj li web nplooj ntawv thiab ua kev thov raws li xim koj tau xaiv.LAFVIN ESP32 Basic Starter Kit - xaivLAFVIN ESP32 Basic Starter Kit - client.printlnLAFVIN ESP32 Basic Starter Kit - client.println 1Thaum koj xaiv xim, koj tau txais ib daim ntawv thov nrog cov hom hauv qab no.LAFVIN ESP32 Basic Starter Kit - cov qauv hauv qab no

Yog li, peb yuav tsum tau faib cov hlua no kom tau txais R, G, thiab B tsis. Cov tsis tau txais kev cawmdim hauv redString, greenString, thiab blueString variables thiab tuaj yeem muaj qhov tseem ceeb ntawm 0 thiab 255.LAFVIN ESP32 Basic Starter Kit - headerLAFVIN ESP32 Basic Starter Kit - header 1Txhawm rau tswj cov sawb nrog ESP32, siv ledcWrite() ua haujlwm los tsim PWM cov cim nrog cov txiaj ntsig txiav txim siab los ntawm HTTP thov.LAFVIN ESP32 Basic Starter Kit - HTTP thov 1Nco tseg: Learn more about PWM with ESP32: Project 3 ESP32 PWM(Analog Output)
Txhawm rau tswj cov sawb nrog ESP8266, peb tsuas yog yuav tsum siv
lub analogWrite() muaj nuj nqi los tsim PWM cov cim nrog cov txiaj ntsig txiav txim siab los ntawm HTPP thov.
analogWrite(redPin, redString.toInt());
analogWrite(greenPin, greenString.toInt());
analogWrite(bluePin, blueString.toInt())
Vim tias peb tau txais cov txiaj ntsig hauv txoj hlua sib txawv, peb yuav tsum hloov lawv mus rau cov lej siv tus qauv toInt() .
Ua qauv qhia
Tom qab tso koj cov ntaub ntawv pov thawj hauv lub network, xaiv lub rooj tsav xwm sab xis thiab COM chaw nres nkoj thiab xa cov lej rau koj ESP32.Upload code siv cov kauj ruam.
Tom qab uploading, qhib Serial Monitor ntawm tus nqi baud ntawm 115200 thiab nias lub pob ESP Enable/Reset khawm. Koj yuav tsum tau txais board IP chaw nyob.LAFVIN ESP32 Basic Starter Kit - tib LANQhib koj tus browser thiab ntxig rau ESP IP chaw nyob. Tam sim no, siv cov xim xaiv xaiv xim rau RGB LED.
Tom qab ntawd, koj yuav tsum nias lub pob "Hloov xim" kom cov xim ua haujlwm.LAFVIN ESP32 Basic Starter Kit - RGB LEDTxhawm rau tua RGB LED, xaiv cov xim dub.
Cov xim muaj zog tshaj plaws (nyob rau sab saum toj ntawm cov xim xaiv), yog cov uas yuav tsim cov txiaj ntsig zoo dua.LAFVIN ESP32 Basic Starter Kit - Cov txiaj ntsig zoo dua

Project 7 ESP32 Relay Web Server

Siv lub relay nrog ESP32 yog ib txoj hauv kev zoo los tswj AC cov khoom siv hauv tsev nyob deb. Qhov kev qhia no piav qhia yuav ua li cas tswj lub relay module nrog ESP32.
Peb mam li saib yuav ua li cas lub relay module ua haujlwm, yuav ua li cas txuas lub relay mus rau ESP32 thiab tsim ib qho web server tswj lub relay remotely.
Taw qhia Relays
Lub relay yog ib qho hluav taws xob hloov hluav taws xob thiab zoo li lwm yam hloov pauv, nws tuaj yeem qhib lossis kaw, cia tam sim no mus los tsis tau. Nws tuaj yeem tswj tau nrog qis voltages, zoo li 3.3V muab los ntawm ESP32 GPIOs thiab tso cai rau peb los tswj lub siab vol.tages zoo li 12V, 24V lossis mains voltage (230V hauv Tebchaws Europe thiab 120V hauv Tebchaws Meskas).LAFVIN ESP32 Basic Starter Kit - Qhia RelaysNyob rau sab laug, muaj ob txheej ntawm peb lub qhov (socket) los txuas siab voltages, thiab cov pins ntawm sab xis (low-voltage) txuas rau ESP32 GPIOs.
Cov Voltage Kev Sib TxuasLAFVIN ESP32 Basic Starter Kit - Mains Voltage Kev Sib TxuasLub relay module qhia nyob rau hauv daim duab dhau los muaj ob qhov txuas, txhua qhov muaj peb lub qhov (socket): common (COM), Nquag kaw (NC), thiab Nquag Qhib (NO).

  • COM: txuas rau tam sim no koj xav tswj (tseem ceeb voltagthiab).
  • NC (Ib txwm Kaw): qhov kev teeb tsa ib txwm raug kaw yog siv thaum koj xav kom lub relay kaw los ntawm lub neej ntawd. Lub NC yog COM pins txuas nrog, txhais tau hais tias qhov tam sim no ntws tshwj tsis yog tias koj xa lub teeb liab los ntawm ESP32 mus rau lub relay module qhib lub Circuit Court thiab nres tam sim no ntws.
  • TSIS MUAJ (Nquag Qhib): qhov ib txwm qhib kev teeb tsa ua haujlwm rau lwm txoj hauv kev: tsis muaj kev sib txuas ntawm NO thiab COM pins, yog li lub voj voog tawg tshwj tsis yog koj xa lub teeb liab los ntawm ESP32 kom kaw lub voj voog.

Tswj PinsLAFVIN ESP32 Basic Starter Kit - Tswj PinsThe low-voltage sab muaj ib txheej ntawm plaub tus pins thiab ib txheej ntawm peb tus pins. Thawj txheej muaj VCC thiab GND los txhawb lub module, thiab cov tswv yim 1 (IN1) thiab cov tswv yim 2 (IN2) los tswj cov hauv qab thiab sab saum toj relays, feem.
Yog tias koj lub relay module tsuas muaj ib qho channel, koj tsuas muaj ib tus PIN xwb. Yog tias koj muaj plaub channel, koj yuav muaj plaub IN pins, thiab lwm yam.
Lub teeb liab koj xa mus rau IN pins, txiav txim siab seb lub relay puas ua haujlwm lossis tsis ua. Lub relay yog tshwm sim thaum lub tswv yim mus rau hauv qab txog 2V. Qhov no txhais tau tias koj yuav muaj cov xwm txheej hauv qab no:

  • Nquag Kaw configuration (NC):
  • HIGH teeb liab - tam sim no ntws
  • LOW teeb liab - tam sim no tsis ntws
  • Nquag Qhib configuration (NO):
  • HIGH teeb liab - tam sim no tsis ntws
  • LOW teeb liab - tam sim no hauv ntws

Koj yuav tsum siv qhov kev teeb tsa ib txwm kaw thaum lub sijhawm tam sim no yuav tsum ntws feem ntau, thiab koj tsuas xav nres nws qee zaus.
Siv ib txwm qhib configuration thaum koj xav kom cov tam sim no ntws qee zaus (example, tig alamp qee zaus).
Kev xaiv fais fabLAFVIN ESP32 Basic Starter Kit - Fais fab mov xaivCov pins thib ob muaj GND, VCC, thiab JD-VCC pins.
JD-VCC tus pin powers lub electromagnet ntawm relay. Daim ntawv ceeb toom tias lub module muaj jumper cap txuas VCC thiab JD-VCC pins; qhov pom ntawm no yog daj, tab sis koj li yuav yog xim txawv.
Nrog lub jumper cap rau, VCC thiab JD-VCC pins txuas nrog. Qhov ntawd txhais tau hais tias tus relay electromagnet yog ncaj qha los ntawm ESP32 lub hwj chim tus pin, yog li cov relay module thiab ESP32 circuits tsis nyob ib leeg ntawm ib leeg.
Yog tsis muaj lub jumper cap, koj yuav tsum muab lub zog ywj pheej los txhawb lub zog ntawm relay electromagnet los ntawm JD-VCC tus pin. Qhov kev teeb tsa lub cev cais cov relays los ntawm ESP32 nrog lub module built-in optocoupler, uas tiv thaiv kev puas tsuaj rau ESP32 thaum muaj hluav taws xob spikes.
SchematicLAFVIN ESP32 Basic Starter Kit - SchematicCeeb toom: Kev siv high voltage cov khoom siv fais fab tuaj yeem ua rau raug mob hnyav.
Yog li ntawd, 5mm LEDs yog siv los hloov cov khoom siv siab voltage qhov muag teev hauv qhov kev sim. Yog koj tsis paub nrog mains voltage thov ib tug neeg uas yuav pab tau koj. Thaum lub programming ESP los yog xaim koj lub voj voog kom paub tseeb tias txhua yam raug txiav tawm ntawm lub mains voltage.LAFVIN ESP32 Basic Starter Kit - mains voltageTxhim kho lub tsev qiv ntawv rau ESP32
Yuav tsim qhov no web server, peb siv ESPAsyncWebServer library thiab AsyncTCP Library.
Txhim kho ESPAsyncWebServer qiv
Ua raws li cov kauj ruam tom ntej rau nruab lub ESPAsyncWebServer tsev qiv ntawv:

  1. Nyem qhov no mus download tau ESPAsyncWebServer qiv. Koj yuav tsum muaj
    ib lub .zip nplaub tshev hauv koj daim nplaub tshev Downloads
  2. Unzip lub .zip nplaub tshev thiab koj yuav tsum tau ESPAsyncWebServer-master folder
  3. Hloov npe koj daim nplaub tshev los ntawm ESPAsyncWebServer-master rau ESPAsyncWebServer
  4. Txav mus rau ESPAsyncWebServer folder rau koj Arduino IDE installation cov tsev qiv ntawv nplaub tshev

Xwb, hauv koj lub Arduino IDE, koj tuaj yeem mus rau Sketch> suav nrog
Lub tsev qiv ntawv> Ntxiv .ZIP tsev qiv ntawv… thiab xaiv lub tsev qiv ntawv uas koj nyuam qhuav rub tawm.
Txhim kho AsyncTCP Library rau ESP32
Cov ESPAsyncWebServer tsev qiv ntawv xav tau AsyncTCP tsev qiv ntawv ua haujlwm. Ua raws
cov kauj ruam tom ntej rau nruab lub tsev qiv ntawv:

  1. Nyem qhov no mus download tau lub tsev qiv ntawv AsyncTCP. Koj yuav tsum muaj .zip nplaub tshev hauv koj daim nplaub tshev Downloads
  2. Unzip lub .zip nplaub tshev thiab koj yuav tsum tau AsyncTCP-master nplaub tshev
    1. Rename koj lub nplaub tshev los ntawm AsyncTCP-master rau AsyncTCP
    3. Txav mus rau AsyncTCP nplaub tshev rau koj Arduino IDE installation cov tsev qiv ntawv nplaub tshev
    4. Thaum kawg, rov qhib koj lub Arduino IDE

Xwb, hauv koj lub Arduino IDE, koj tuaj yeem mus rau Sketch> suav nrog
Lub tsev qiv ntawv> Ntxiv .ZIP tsev qiv ntawv… thiab xaiv lub tsev qiv ntawv uas koj nyuam qhuav rub tawm.
Code
Peb mam li program ESP32 siv Arduino IDE, yog li xyuas kom koj muaj ESP32 add-on ntsia ua ntej ua haujlwm: (Yog tias koj tau ua tiav cov kauj ruam no, koj tuaj yeem hla mus rau kauj ruam tom ntej.)
Txhim kho ESP32 Add-on hauv Arduino IDE
Tom qab txhim kho cov tsev qiv ntawv xav tau, Qhib qhov chaws Project_7_ESP32_Relay_Web_Server.ino hauv arduino IDE.
Ua ntej uploading tus lej, tsis txhob hnov ​​​​qab ntxig koj cov ntaub ntawv pov thawj network kom ESP tuaj yeem txuas rau koj lub network hauv zos.LAFVIN ESP32 Basic Starter Kit - ocal networkUa qauv qhia
Tom qab ua qhov tsim nyog hloov pauv, xa cov lej rau koj ESP32.Upload code siv cov kauj ruam.
Qhib Serial Monitor ntawm tus nqi baud ntawm 115200 thiab nias lub pob ESP32 EN kom tau nws qhov chaw nyob IP.Tom qab ntawd, qhib qhov browser hauv koj lub network hauv zos thiab ntaus ESP32 IP chaw nyob kom nkag mus rau qhov chaw nyob. web server.
Qhib Serial Monitor ntawm tus nqi baud ntawm 115200 thiab nias lub pob ESP32 EN kom tau nws qhov chaw nyob IP.Tom qab ntawd, qhib qhov browser hauv koj lub network hauv zos thiab ntaus ESP32 IP chaw nyob kom nkag mus rau qhov chaw nyob. web server.LAFVIN ESP32 Basic Starter Kit - web serverNco tseg: Koj tus browser thiab ESP32 yuav tsum txuas nrog tib LAN.
Koj yuav tsum tau txais ib yam dab tsi raws li hauv qab no nrog rau ob lub nyees khawm raws li tus naj npawb ntawm relays koj tau teev tseg hauv koj cov cai.LAFVIN ESP32 Basic Starter Kit - smartphoneTam sim no, koj tuaj yeem siv cov nyees khawm los tswj koj cov relays siv koj lub smartphone.LAFVIN ESP32 Basic Starter Kit - smartphone 1

Project_8_Output_State_Synchronization_ Web_Server

Qhov project no qhia txog yuav ua li cas tswj ESP32 lossis ESP8266 cov zis siv a web server thiab lub cev khawm ib txhij. Lub xeev cov zis tau hloov kho rau ntawm web nplooj ntawv seb nws puas hloov ntawm lub cev khawm lossis web server.
Project Tshajview
Cia wb mus saib seb qhov project ua haujlwm li cas.LAFVIN ESP32 Basic Starter Kit - Project TshajviewESP32 lossis ESP8266 hosts a web server uas tso cai rau koj los tswj lub xeev ntawm cov zis;

  • Lub xeev tso zis tam sim no yog tso tawm rau ntawm web neeg rau zaub mov;
  • ESP kuj tseem txuas nrog lub khawm lub cev uas tswj tau tib qhov tso zis;
  • Yog tias koj hloov lub xeev tso zis siv lub cev puhsbutton, nws lub xeev tam sim no kuj tau hloov kho rau ntawm web server.

Hauv cov ntsiab lus, qhov project no tso cai rau koj los tswj cov khoom siv tib yam siv a web server thiab nias khawm ib txhij. Thaum twg cov zis lub xeev hloov, lub web server hloov tshiab.
Yam yuav tsum tau muaj
Nov yog cov npe ntawm cov khoom uas koj xav tau los tsim lub Circuit Court:

  • ESP32 DEVKIT V1 Board
  • 5 hli LED
  • 220 Ohm resistor
  • Pob Tsoob
  • 10k Ohm resistor
  • Khoom noj khoom haus
  • Jumper cov kab

SchematicLAFVIN ESP32 Basic Starter Kit - Schematic 1Txhim kho lub tsev qiv ntawv rau ESP32
Yuav tsim qhov no web server, peb siv ESPAsyncWebCov tsev qiv ntawv neeg rau zaub mov thiab AsyncTCP Library.(Yog tias koj tau ua tiav cov kauj ruam no, koj tuaj yeem hla mus rau kauj ruam tom ntej.)
Txhim kho ESPAsyncWebServer qiv
Ua raws li cov kauj ruam tom ntej rau nruab ESPAsyncWebServer Library:

  1. Nyem qhov no mus download tau ESPAsyncWebServer qiv. Koj yuav tsum muaj
    ib lub .zip nplaub tshev hauv koj daim nplaub tshev Downloads
  2. Unzip lub .zip nplaub tshev thiab koj yuav tsum tau ESPAsyncWebServer-master folder
  3. Hloov npe koj daim nplaub tshev los ntawm ESPAsyncWebServer-master rau ESPAsyncWebServer
  4. Txav mus rau ESPAsyncWebServer folder rau koj Arduino IDE installation cov tsev qiv ntawv nplaub tshev
    Xwb, hauv koj lub Arduino IDE, koj tuaj yeem mus rau Sketch> suav nrog
    Lub tsev qiv ntawv> Ntxiv .ZIP tsev qiv ntawv… thiab xaiv lub tsev qiv ntawv uas koj nyuam qhuav rub tawm.

Txhim kho AsyncTCP Library rau ESP32
ESPAsyncWebLub tsev qiv ntawv neeg rau zaub mov xav kom lub tsev qiv ntawv AsyncTCP ua haujlwm. Ua raws li cov kauj ruam tom ntej txhawm rau nruab lub tsev qiv ntawv:

  1. Nyem qhov no mus download tau lub tsev qiv ntawv AsyncTCP. Koj yuav tsum muaj .zip nplaub tshev hauv koj daim nplaub tshev Downloads
  2. Unzip lub .zip nplaub tshev thiab koj yuav tsum tau AsyncTCP-master nplaub tshev
  3. Hloov npe koj daim nplaub tshev los ntawm AsyncTCP-master rau AsyncTCP
  4. Txav mus rau AsyncTCP nplaub tshev rau koj Arduino IDE installation cov tsev qiv ntawv nplaub tshev
  5. Thaum kawg, rov qhib koj Arduino IDE
    Xwb, hauv koj lub Arduino IDE, koj tuaj yeem mus rau Sketch> suav nrog
    Lub tsev qiv ntawv> Ntxiv .ZIP tsev qiv ntawv… thiab xaiv lub tsev qiv ntawv uas koj nyuam qhuav rub tawm.

Code
Peb mam li program ESP32 siv Arduino IDE, yog li xyuas kom koj muaj ESP32 add-on ntsia ua ntej ua haujlwm: (Yog tias koj tau ua tiav cov kauj ruam no, koj tuaj yeem hla mus rau kauj ruam tom ntej.)
Txhim kho ESP32 Add-on hauv Arduino IDE
Tom qab txhim kho cov tsev qiv ntawv xav tau, Qhib cov cai
Project_8_Output_State_Synchronization_Web_Server.ino hauv arduino IDE.
Ua ntej uploading tus lej, tsis txhob hnov ​​​​qab ntxig koj cov ntaub ntawv pov thawj network kom ESP tuaj yeem txuas rau koj lub network hauv zos.LAFVIN ESP32 Basic Starter Kit - Code

Txoj Cai Ua Haujlwm li cas

Button State thiab Output State
Lub ledState kuj sib txawv tuav lub LED tso zis lub xeev. Rau lub neej ntawd, thaum lub web server pib, nws yog LOW.LAFVIN ESP32 Basic Starter Kit - Code Works

Lub buttonState thiab lastButtonState yog siv los xyuas seb lub laub khawm tau nias los yog tsis.LAFVIN ESP32 Basic Starter Kit - raug niasKhawm (web server)
Peb tsis suav nrog HTML los tsim lub pob ntawm qhov sib txawv index_html.
Tias yog vim li cas peb xav kom hloov tau nws nyob ntawm qhov tam sim no LED lub xeev uas tuaj yeem hloov nrog lub laub khawm.
Yog li, peb tau tsim qhov chaw rau lub pob %BUTTONPLACEHOLDER% uas yuav hloov nrog HTML ntawv los tsim lub pob tom qab ntawm cov cai (qhov no yog ua tiav hauv processor() muaj nuj nqi).LAFVIN ESP32 Basic Starter Kit - raug nias 1processor()
Lub processor() muaj nuj nqi hloov cov chaw tso rau ntawm HTML ntawv nrog cov nqi tiag. Ua ntej, nws xyuas seb cov ntawv HTML puas muaj ib qho twg
chaw tuav %BUTTONPLACEHOLDER%.LAFVIN ESP32 Basic Starter Kit - processorTom qab ntawd, hu rau theoutputState() muaj nuj nqi uas rov qab rau lub xeev cov zis tam sim no. Peb txuag nws nyob rau hauv outputStateValue sib txawv.LAFVIN ESP32 Basic Starter Kit - outputStateTom qab ntawd, siv tus nqi ntawd los tsim cov ntawv HTML los tso saib lub pob nrog lub xeev txoj cai:LAFVIN ESP32 Basic Starter Kit - code 4HTTP Tau Txais Kev Thov Hloov Lub Xeev (JavaScript)
Thaum koj nias lub pob, thetoggleCheckbox() muaj nuj nqi hu ua. Cov haujlwm no yuav ua rau qhov kev thov sib txawv URLs tig lub LED rau lossis tawm.LAFVIN ESP32 Basic Starter Kit - JavaScriptTxhawm rau qhib lub LED, nws ua rau kev thov ntawm /update?state=1 URL:LAFVIN ESP32 Basic Starter Kit - element.checkedTxwv tsis pub, nws ua rau kev thov ntawm /update?state=0 URL.
HTTP GET Thov kom Hloov Kho Lub Xeev (JavaScript)
Txhawm rau kom cov zis lub xeev hloov tshiab ntawm lub web server, peb hu rau cov haujlwm hauv qab no uas ua rau kev thov tshiab ntawm / xeev URL txhua thib ob.LAFVIN ESP32 Basic Starter Kit - Hloov Kho Lub XeevLAFVIN ESP32 Basic Starter Kit - Hloov Kho Lub Xeev 1Kov Thov
Tom qab ntawd, peb yuav tsum daws qhov tshwm sim thaum ESP32 lossis ESP8266 tau txais kev thov rau cov URLs.
Thaum qhov kev thov tau txais ntawm lub hauv paus /URL, peb xa cov nplooj ntawv HTML nrog rau cov processor.LAFVIN ESP32 Basic Starter Kit - Kov ThovLAFVIN ESP32 Basic Starter Kit - Kov Thov 1Cov kab hauv qab no xyuas seb koj puas tau txais kev thov ntawm /update?state=1 lossis /update?state=0 URL thiab hloov lub ledState raws li.LAFVIN ESP32 Basic Starter Kit - ledStateLAFVIN ESP32 Basic Starter Kit - inputParamThaum tau txais qhov kev thov ntawm / xeev URL, peb xa cov zis tam sim no:LAFVIN ESP32 Basic Starter Kit - tso zis lub xeevvoj()
Nyob rau hauv lub voj (), peb debounce lub laub khawm thiab tig lub LED rau los yog tawm nyob ntawm seb tus nqi ntawm lub ledState sib txawv.LAFVIN ESP32 Basic Starter Kit - voj 1Ua qauv qhia
Upload code rau koj lub rooj tsavxwm ESP32.Upload code siv cov kauj ruam.
Tom qab ntawd, qhib Serial Monitor ntawm tus nqi baud ntawm 115200. Nias lub khawm on-board EN/RST kom tau txais yog IP chaw nyob.LAFVIN ESP32 Basic Starter Kit - Ua qauv qhiaQhib lub browser ntawm koj lub network hauv zos, thiab ntaus ESP IP chaw nyob. Koj yuav tsum muaj kev nkag mus rau lub web server raws li qhia hauv qab no.
Nco tseg: Koj tus browser thiab ESP32 yuav tsum txuas nrog tib LAN.LAFVIN ESP32 Basic Starter Kit - browserKoj tuaj yeem toggle lub pob ntawm qhov web server kom tig lub LED rau.LAFVIN ESP32 Basic Starter Kit - web neeg rau zaub mov 1Koj tuaj yeem tswj tau tib lub LED nrog lub cev lub cev. Nws lub xeev yuav ib txwm muab kho tshiab rau ntawm lub web server.

Project 9 ESP32 DHT11 Web Server

Hauv qhov project no, koj yuav kawm yuav ua li cas los tsim ib qho asynchronous ESP32 web server nrog DHT11 uas qhia qhov kub thiab av noo siv Arduino IDE.
Yam yuavtsum tau kawm uantej
Cov web server peb mam li tsim kho tshiab cov kev nyeem ntawv tsis tas yuav rov ua dua tshiab web nplooj.
Nrog rau qhov project no koj yuav kawm:

  • Yuav ua li cas nyeem qhov kub thiab av noo los ntawm DHT sensors;
  • Tsim ib qho asynchronous web server siv lub ESPAsyncWebServer qiv;
  • Hloov kho lub sensor nyeem ntawv txiav tsis tas yuav rov ua dua tshiab web nplooj.

Asynchronous Web Server
Tsim lub web server peb yuav siv lub ESPAsyncWebServer qiv uas muab txoj hauv kev yooj yim los tsim ib qho asynchronous web server. Tsim ib qho asynchronous web server muaj ob peb advantages raws li tau hais hauv lub tsev qiv ntawv GitHub nplooj ntawv, xws li:

  • "Kov ntau dua ib qho kev sib txuas tib lub sijhawm";
  • "Thaum koj xa cov lus teb, koj tau npaj tam sim ntawd los daws lwm yam kev sib txuas thaum lub server tab tom saib xyuas xa cov lus teb hauv keeb kwm yav dhau";
  • "Yooj yim template ua cav los lis templates";

Yam yuav tsum tau muaj
Txhawm rau ua kom tiav qhov kev qhia no koj xav tau cov hauv qab no:

  • ESP32 kev txhim kho pawg thawj coj saib
  • DHT11 Module
  • Khoom noj khoom haus
  • Jumper cov kab

SchematicLAFVIN ESP32 Basic Starter Kit - Schematic 2Txhim kho Libraries
Koj yuav tsum nruab ob peb lub tsev qiv ntawv rau qhov project no:

  • Cov DHT thiab cov Adafruit Unified Sensor Cov tsev qiv ntawv tsav tsheb los nyeem los ntawm DHT sensor.
  • ESPAsyncWebServer thiab Async TCP cov tsev qiv ntawv los tsim cov asynchronous web server.
    Ua raws li cov lus qhia hauv qab no txhawm rau txhim kho cov tsev qiv ntawv:

Txhim kho DHT Sensor Library
Txhawm rau nyeem los ntawm DHT sensor siv Arduino IDE, koj yuav tsum tau nruab qhov DHT sensor tsev qiv ntawv. Ua raws li cov kauj ruam tom ntej rau nruab lub tsev qiv ntawv.

  1. Nyem qhov no mus download tau lub tsev qiv ntawv DHT Sensor. Koj yuav tsum muaj .zip nplaub tshev hauv koj daim nplaub tshev Downloads
  2. Unzip lub .zip nplaub tshev thiab koj yuav tsum tau DHT-sensor-library-master folder
  3. Hloov npe koj daim nplaub tshev los ntawm DHT-sensor-library-master rau DHT_sensor
  4. Txav mus rau DHT_sensor nplaub tshev rau koj Arduino IDE installation cov tsev qiv ntawv nplaub tshev
  5. Thaum kawg, rov qhib koj Arduino IDE

Txhim kho Adafruit Unified Sensor Tsav Tsheb
Koj tseem yuav tau nruab lub Adafruit Unified Sensor Driver Library ua haujlwm nrog DHT sensor. Ua raws li cov kauj ruam tom ntej rau nruab lub tsev qiv ntawv.

  1. Nyem qhov no mus download tau lub tsev qiv ntawv Adafruit Unified Sensor. Koj yuav tsum muaj .zip nplaub tshev hauv koj daim nplaub tshev Downloads
  2. Unzip lub .zip nplaub tshev thiab koj yuav tsum tau Adafruit_sensor-master nplaub tshev
  3. Hloov npe koj lub nplaub tshev los ntawm Adafruit_sensor-master rau Adafruit_sensor
  4. Txav mus rau Adafruit_sensor nplaub tshev rau koj Arduino IDE installation cov tsev qiv ntawv nplaub tshev
  5. Thaum kawg, rov qhib koj Arduino IDE

Txhim kho ESPAsyncWebServer qiv

Ua raws li cov kauj ruam tom ntej rau nruab lub ESPAsyncWebServer tsev qiv ntawv:

  1. Nyem qhov no mus download tau ESPAsyncWebServer qiv. Koj yuav tsum muaj
    ib lub .zip nplaub tshev hauv koj daim nplaub tshev Downloads
  2. Unzip lub .zip nplaub tshev thiab koj yuav tsum
    tau ESPAsyncWebServer-master folder
  3. Hloov npe koj daim nplaub tshev los ntawm ESPAsyncWebServer-master rau ESPAsyncWebServer
  4. Txav mus rau ESPAsyncWebServer folder rau koj Arduino IDE installation cov tsev qiv ntawv nplaub tshev

Txhim kho Async TCP Library rau ESP32
Cov ESPAsyncWebServer tsev qiv ntawv xav tau AsyncTCP tsev qiv ntawv ua haujlwm. Ua raws li cov kauj ruam tom ntej txhawm rau nruab lub tsev qiv ntawv:

  1. Nyem qhov no mus download tau lub tsev qiv ntawv AsyncTCP. Koj yuav tsum muaj .zip nplaub tshev hauv koj daim nplaub tshev Downloads
  2. Unzip lub .zip nplaub tshev thiab koj yuav tsum tau AsyncTCP-master nplaub tshev
  3. Hloov npe koj daim nplaub tshev los ntawm AsyncTCP-master rau AsyncTCP
  4. Txav mus rau AsyncTCP nplaub tshev rau koj Arduino IDE installation cov tsev qiv ntawv nplaub tshev
  5. Thaum kawg, rov qhib koj Arduino IDE

Code
Peb mam li program ESP32 siv Arduino IDE, yog li xyuas kom koj muaj ESP32 add-on ntsia ua ntej ua haujlwm: (Yog tias koj tau ua tiav cov kauj ruam no, koj tuaj yeem hla mus rau kauj ruam tom ntej.)
Txhim kho ESP32 Add-on hauv Arduino IDE
Tom qab txhim kho cov tsev qiv ntawv xav tau, Qhib cov cai
Project_9_ESP32_DHT11_Web_Server.ino hauv arduino IDE.
Ua ntej uploading tus lej, tsis txhob hnov ​​​​qab ntxig koj cov ntaub ntawv pov thawj network kom ESP tuaj yeem txuas rau koj lub network hauv zos.LAFVIN ESP32 Basic Starter Kit - CodeTxoj Cai Ua Haujlwm li cas
Hauv kab lus hauv qab no peb yuav piav qhia tias txoj cai ua haujlwm li cas. Mus nyeem ntawv yog tias koj xav kawm ntxiv lossis dhia mus rau ntu Kev Ua Si kom pom qhov kawg.
Ntshuam cov tsev qiv ntawv
Ua ntej, import cov tsev qiv ntawv xav tau. WiFi, ESPAsyncWebServer thiab ESPAsyncTCP yog xav tau los tsim cov web server. Adafruit_Sensor thiab DHT cov tsev qiv ntawv yuav tsum tau nyeem los ntawm DHT11 lossis DHT22 sensors.LAFVIN ESP32 Basic Starter Kit - Ntshuam cov tsev qiv ntawvLAFVIN ESP32 Basic Starter Kit - Yuav Ua Li Cas Code Ua HaujlwmVariables txhais
Txhais lub GPIO uas DHT cov ntaub ntawv tus pin txuas nrog. Hauv qhov no, nws txuas nrog GPIO 4.LAFVIN ESP32 Basic Starter Kit - Variables txhaisTom qab ntawd, xaiv hom DHT sensor koj siv. Hauv peb tus example, peb siv DHT22. Yog tias koj siv lwm hom, koj tsuas yog yuav tsum tsis tawm tswv yim koj lub sensor thiab tawm tswv yim tag nrho lwm tus.LAFVIN ESP32 Basic Starter Kit - Variables txhais 1

Instantiate ib yam khoom DHT nrog hom thiab tus pin peb tau txhais ua ntej.LAFVIN ESP32 Basic Starter Kit - Variables txhais 2Tsim ib qho AsyncWebServer object ntawm chaw nres nkoj 80.LAFVIN ESP32 Basic Starter Kit - Variables txhais 3Nyeem Cov Cuab Yeej Cuab Yeej thiab Humidity
Peb tau tsim ob txoj haujlwm: ib qho los nyeem qhov ntsuas kub Peb tau tsim ob txoj haujlwm: ib qho los nyeem qhov ntsuas kub (nyeemDHTTemperature()) thiab lwm qhov los nyeem cov av noo (nyeemDHTHumidity()).LAFVIN ESP32 Basic Starter Kit - nyeemDHTHumidityLAFVIN ESP32 Basic Starter Kit - sensor nyeem ntawvTau txais kev nyeem ntawv sensor yog qhov yooj yim li kev siv Tau txais kev nyeem ntawv sensor yog qhov yooj yim xws li siv readTemperature() thiab readHumidity() cov txheej txheem ntawm cov khoom dht.LAFVIN ESP32 Basic Starter Kit - khoomPeb kuj muaj ib qho xwm txheej uas rov qab ob zaug (–) yog tias lub sensor tsis tau txais cov ntawv nyeem.LAFVIN ESP32 Basic Starter Kit - nyeemCov ntawv nyeem tau xa rov qab raws li hom hlua. Txhawm rau hloov cov ntab mus rau ib txoj hlua, siv txoj hlua () ua haujlwmLAFVIN ESP32 Basic Starter Kit - Txoj hluaLos ntawm lub neej ntawd, peb nyeem qhov ntsuas kub hauv Celsius degrees. Txhawm rau kom tau txais qhov ntsuas kub hauv Fahrenheit degrees, hais qhov ntsuas kub hauv Celsius thiab tsis pom qhov ntsuas kub hauv Fahrenheit, kom koj muaj cov hauv qab no:LAFVIN ESP32 Basic Starter Kit - FahrenheitLAFVIN ESP32 Basic Starter Kit - Fahrenheit 1Upload lub Code
Tam sim no, upload tus lej rau koj ESP32. Nco ntsoov tias koj muaj lub rooj tsavxwm zoo thiab COM chaw nres nkoj xaiv.Upload code siv cov kauj ruam.
Tom qab uploading, qhib Serial Monitor ntawm tus nqi baud ntawm 115200. Nias lub pob pib dua ESP32. ESP32 IP chaw nyob yuav tsum tau luam tawm nyob rau hauv serial saib xyuas.LAFVIN ESP32 Basic Starter Kit - Upload the CodeUa qauv qhia
Qhib browser thiab ntaus ESP32 IP chaw nyob. Koj web neeg rau zaub mov yuav tsum tso saib qhov tseeb sensor nyeem ntawv.
Nco tseg: Koj tus browser thiab ESP32 yuav tsum txuas nrog tib LAN.
Daim ntawv ceeb toom tias qhov ntsuas kub thiab av noo tau hloov kho tsis tas yuav tsum tau ua kom rov ua dua tshiab web nplooj.LAFVIN ESP32 Basic Starter Kit - Ua qauv qhia 1

Project_10_ESP32_OLED_Display

Qhov project no qhia txog kev siv 0.96 nti SSD1306 OLED zaub nrog ESP32 siv Arduino IDE.
Qhia 0.96 nti OLED zaub
Cov OLED zaub uas peb yuav siv nyob rau hauv no nyeem yog SSD1306 qauv: ib tug monocolor, 0.96 nti zaub nrog 128 × 64 pixels raws li qhia nyob rau hauv daim duab hauv qab no.LAFVIN ESP32 Basic Starter Kit - OLEDDisplayOLED zaub tsis xav tau backlight, uas ua rau muaj qhov sib txawv zoo heev hauv qhov chaw tsaus. Tsis tas li ntawd, nws cov pixels siv lub zog tsuas yog thaum lawv nyob, yog li OLED zaub siv lub zog tsawg dua thaum piv rau lwm cov duab.
Vim tias OLED zaub siv I2C kev sib txuas lus raws tu qauv, kev xaim yog yooj yim heev. Koj tuaj yeem siv cov lus hauv qab no ua ib qho kev siv.

OLED Pin ESP32
Vin 3.3v XNUMX
GND GND
SCL PIB 22
SDA PIB 21

SchematicLAFVIN ESP32 Basic Starter Kit - SchematicTxhim kho SSD1306 OLED Library - ESP32
Muaj ntau lub tsev qiv ntawv muaj los tswj OLED zaub nrog ESP32.
Hauv no nyeem peb yuav siv ob lub tsev qiv ntawv Adafruit: Adafruit_SSD1306 tsev qiv ntawv thiab Tsev qiv ntawv Adafruit_GFX.
Ua raws cov kauj ruam tom ntej no txhawm rau txhim kho cov tsev qiv ntawv.

  1. Qhib koj lub Arduino IDE thiab mus rau Sketch> suav nrog Lub Tsev Qiv> Tswj Cov Tsev Qiv Ntawv. Lub Library Manager yuav tsum qhib.
  2. Ntaus "SSD1306" hauv lub thawv tshawb nrhiav thiab nruab SSD1306 tsev qiv ntawv los ntawm Adafruit.LAFVIN ESP32 Basic Starter Kit - OLEDLibrary–
  3. Tom qab txhim kho SSD1306 lub tsev qiv ntawv los ntawm Adafruit, ntaus "GFX" hauv lub thawv tshawb nrhiav thiab nruab lub tsev qiv ntawv.LAFVIN ESP32 Basic Starter Kit - tsev qiv ntawv
  4. Tom qab txhim kho cov tsev qiv ntawv, rov pib koj Arduino IDE.

Code
Tom qab txhim kho cov tsev qiv ntawv xav tau, Qhib qhov Project_10_ESP32_OLED_Display.ino hauv arduino IDE. code
Peb mam li program ESP32 siv Arduino IDE, yog li xyuas kom koj muaj ESP32 add-on ntsia ua ntej pib ua haujlwm: (Yog tias koj tau ua tiav cov kauj ruam no, koj tuaj yeem hla mus rau kauj ruam tom ntej.)
Txhim kho ESP32 Add-on hauv Arduino IDELAFVIN ESP32 Basic Starter Kit - Code 1LAFVIN ESP32 Basic Starter Kit - Code 2LAFVIN ESP32 Basic Starter Kit - Code 3Txoj Cai Ua Haujlwm li cas
Ntshuam cov tsev qiv ntawv
Ua ntej, koj yuav tsum tau import cov tsev qiv ntawv tsim nyog. Lub tsev qiv ntawv hlau siv I2C thiab Adafruit cov tsev qiv ntawv los sau rau cov zaub: Adafruit_GFX thiab Adafruit_SSD1306.LAFVIN ESP32 Basic Starter Kit - Code Works 1LAFVIN ESP32 Basic Starter Kit - Code Works 2Pib lub OLED zaub
Tom qab ntawd, koj txhais koj OLED qhov dav thiab qhov siab. Hauv no example, peb tab tom siv 128 × 64 OLED zaub. Yog tias koj siv lwm qhov ntau thiab tsawg, koj tuaj yeem hloov qhov ntawd hauv SCREEN_WIDTH, thiab SCREEN_HEIGHT hloov pauv.LAFVIN ESP32 Basic Starter Kit - OLED zaubTom qab ntawd, pib ib qho khoom siv nrog qhov dav thiab qhov siab uas tau teev tseg ua ntej nrog I2C kev sib txuas lus raws tu qauv (&Wire).LAFVIN ESP32 Basic Starter Kit - kev sib txuas lus raws tu qauvQhov (-1) parameter txhais tau hais tias koj lub OLED zaub tsis muaj RESET tus pin. Yog tias koj lub OLED zaub muaj tus pin RESET, nws yuav tsum txuas nrog GPIO. Nyob rau hauv tas li ntawd, koj yuav tsum xeem dhau GPIO tus naj npawb raws li ib tug parameter.
Hauv kev teeb tsa (), pib qhov Serial Monitor ntawm baud raute ntawm 115200 rau kev debugging lub hom phiaj.LAFVIN ESP32 Basic Starter Kit - Lub hom phiajPib lub OLED zaub nrog pib () txoj kev raws li hauv qab no:LAFVIN ESP32 Basic Starter Kit - display.beginLAFVIN ESP32 Basic Starter Kit - Serial.printlnCov snippet no tseem luam tawm cov lus ntawm Serial Monitor, yog tias peb tsis tuaj yeem txuas rau cov zaub.

LAFVIN ESP32 Basic Starter Kit - Serial.println 1Yog tias koj siv OLED zaub sib txawv, koj yuav tau hloov qhov chaw nyob OLED. Hauv peb qhov xwm txheej, qhov chaw nyob yog 0x3C.LAFVIN ESP32 Basic Starter Kit - chaw nyobTom qab pib lub vijtsam, ntxiv ob lub sijhawm ncua sijhawm, kom OLED muaj sijhawm txaus los pib ua ntej sau ntawv:LAFVIN ESP32 Basic Starter Kit - ncuaClear zaub, teem font loj, xim thiab sau ntawv
Tom qab pib cov zaub, tshem cov zaub tsis nrog clearDisplay() txoj kev:LAFVIN ESP32 Basic Starter Kit - zaub

Ua ntej sau ntawv, koj yuav tsum teeb tsa cov ntawv loj, xim thiab qhov twg cov ntawv yuav raug tso tawm hauv OLED.
Teem lub font loj siv txoj kev setTextSize():LAFVIN ESP32 Basic Starter Kit - zaub 1Teem xim font nrog setTextColor() txoj kev:
WHITE teev dawb font thiab dub keeb kwm yav dhau.
Txhais txoj haujlwm uas cov ntawv pib siv txoj kev setCursor(x,y). Hauv qhov no, peb tab tom teeb tsa cov ntawv pib ntawm (0,0) kev sib koom ua ke - nyob rau sab saum toj sab laug.LAFVIN ESP32 Basic Starter Kit - setTextColor 1Thaum kawg, koj tuaj yeem xa cov ntawv mus rau cov zaub siv cov txheej txheem println() raws li hauv qab noLAFVIN ESP32 Basic Starter Kit - code 5Tom qab ntawd, koj yuav tsum hu rau cov zaub () txoj kev los ua kom pom cov ntawv ntawm lub vijtsam.LAFVIN ESP32 Basic Starter Kit - zaub

Lub tsev qiv ntawv Adafruit OLED muab cov txheej txheem muaj txiaj ntsig kom yooj yim scroll cov ntawv.

  • startscrollright(0x00, 0x0F): scroll ntawv los ntawm sab laug mus rau sab xis
  • startscrollleft(0x00, 0x0F): scroll ntawv los ntawm sab xis mus rau sab laug
  • startscrolldiagright(0x00, 0x07): scroll ntawv los ntawm sab laug hauv qab ces kaum mus rau sab xis lub ces kaum startscrolldiagleft(0x00, 0x07): scroll ntawv los ntawm sab xis hauv qab ces kaum mus rau sab laug ces kaum

Upload lub Code
Tam sim no, upload tus lej rau koj ESP32.Upload code siv cov kauj ruam.
Tom qab uploading code, OLED yuav tso saib cov ntawv scrolling.LAFVIN ESP32 Basic Starter Kit - scrolling textLAFVIN logo

Cov ntaub ntawv / Cov ntaub ntawv

LAFVIN ESP32 Basic Starter Kit [ua pdf] Phau ntawv qhia
ESP32 Basic Starter Kit, ESP32, Cov khoom pib pib, Cov khoom pib pib

Cov ntaub ntawv

Cia ib saib

Koj email chaw nyob yuav tsis raug luam tawm. Cov teb uas yuav tsum tau muaj yog cim *