LAFVIN logoESP32 Dechreuwr Sylfaenol
Cit

Rhestr Pacio

Pecyn Cychwyn Sylfaenol LAFVIN ESP32 - PackingList

ESP32 Cyflwyniad

Newydd i ESP32? Dechreuwch yma! Mae'r ESP32 yn gyfres o ficroreolyddion System ar Sglodion (SoC) cost isel a phŵer isel a ddatblygwyd gan Espressif sy'n cynnwys galluoedd diwifr Wi-Fi a Bluetooth a phrosesydd craidd deuol. Os ydych chi'n gyfarwydd â'r ESP8266, yr ESP32 yw ei olynydd, wedi'i lwytho â llawer o nodweddion newydd.Pecyn Cychwyn Sylfaenol LAFVIN ESP32 - Cyflwyniad ESP32Manylebau ESP32
Os ydych chi am gael ychydig yn fwy technegol a phenodol, gallwch edrych ar y manylebau manwl canlynol o'r ESP32 (ffynhonnell: http://esp32.net/) - am fwy o fanylion, gwirio'r daflen ddata):

  • Cysylltedd diwifr WiFi: cyfradd data 150.0 Mbps gyda HT40
  • Bluetooth: BLE (Bluetooth Low Energy) a Bluetooth Classic
  • Prosesydd: Microbrosesydd LX32 Deuol-Craidd Tensilica Xtensa 6-did, yn rhedeg ar 160 neu 240 MHz
  • Cof:
  • ROM: 448 KB (ar gyfer swyddogaethau cychwyn a chraidd)
  • SRAM: 520 KB (ar gyfer data a chyfarwyddiadau)
  • RTC fas SRAM: 8 KB (ar gyfer storio data a'r prif CPU yn ystod RTC Boot o'r modd cysgu dwfn)
  • SRAM araf RTC: 8KB (ar gyfer mynediad cyd-brosesydd yn ystod modd cysgu dwfn) eFuse: 1 Kbit (y defnyddir 256 did ohonynt ar gyfer y system (cyfluniad cyfeiriad MAC a sglodion) a chedwir y 768 did sy'n weddill ar gyfer cymwysiadau cwsmeriaid, gan gynnwys Amgryptio Flash ac ID Sglodion)

Fflach wedi'i fewnosod: fflach wedi'i gysylltu'n fewnol trwy IO16, IO17, SD_CMD, SD_CLK, SD_DATA_0 a SD_DATA_1 ar ESP32-D2WD ac ESP32-PICO-D4.

  • 0 MiB (Sglodion ESP32-D0WDQ6, ESP32-D0WD, a ESP32-S0WD)
  • 2 MiB (sglodyn ESP32-D2WD)
  • 4 MiB (modiwl SiP ESP32-PICO-D4)

Pŵer Isel: yn sicrhau y gallwch barhau i ddefnyddio trawsnewidiadau ADC, ar gyfer cynample, yn ystod cwsg dwfn.
Mewnbwn/Allbwn Ymylol:

  • rhyngwyneb ymylol gyda DMA sy'n cynnwys cyffwrdd capacitive
  • ADCs (Trawsnewidydd Analog-i-Digidol)
  • DACs (Trawsnewidydd Digidol-i-Analog)
  • I²C (Cylched Rhyng-Integredig)
  • UART (Derbynnydd / Trosglwyddydd Asynchronaidd Cyffredinol)
  • SPI (Rhyngwyneb Ymylol Cyfresol)
  • I²S (Sain Interchip Integredig)
  • RMII (Rhyngwyneb Cyfryngau-Annibynnol Llai)
  • PWM (Modiwleiddio Lled Curiad)

Diogelwch: cyflymyddion caledwedd ar gyfer AES a SSL/TLS

ESP32 Byrddau Datblygu

Mae ESP32 yn cyfeirio at y sglodion ESP32 noeth. Fodd bynnag, defnyddir y term “ESP32” hefyd i gyfeirio at fyrddau datblygu ESP32. Nid yw defnyddio sglodion noeth ESP32 yn hawdd nac yn ymarferol, yn enwedig wrth ddysgu, profi a phrototeipio. Y rhan fwyaf o'r amser, byddwch chi eisiau defnyddio bwrdd datblygu ESP32.
Byddwn yn defnyddio bwrdd ESP32 DEVKIT V1 fel cyfeiriad. Mae'r llun isod yn dangos bwrdd ESP32 DEVKIT V1, fersiwn gyda 30 pin GPIO.Pecyn Cychwyn Sylfaenol LAFVIN ESP32 - Byrddau Datblygu ESP32Manylebau – ESP32 DEVKIT V1
Mae'r tabl canlynol yn dangos crynodeb o nodweddion a manylebau bwrdd ESP32 DEVKIT V1 DOIT:

Nifer y creiddiau 2 (craidd deuol)
Wi-Fi 2.4 GHz hyd at 150 Mbits yr eiliad
Bluetooth BLE (Bluetooth Low Energy) a Bluetooth etifeddiaeth
Pensaernïaeth 32 did
Amlder cloc Hyd at 240 MHz
HWRDD 512 KB
Pinnau 30 (yn dibynnu ar y model)
Perifferolion Cyffyrddiad capacitive, ADC (trawsnewidydd analog i ddigidol), DAC (trawsnewidydd digidol i analog), 12C (Cylched Rhyng-Integredig), UART (derbynnydd / trosglwyddydd asyncronig cyffredinol), CAN 2.0 (Ardal y Rheolwr Netwokr), SPI (Rhyngwyneb Ymylol Cyfresol) , 12S (Integrated Inter-IC
Sain), RMII (Rhyngwyneb Cyfryngau-Annibynnol Llai), PWM (modiwleiddio lled pwls), a mwy.
Botymau adeiledig AILOSOD a botymau BOOT
LEDs adeiledig LED glas adeiledig yn gysylltiedig â GPIO2; LED coch adeiledig sy'n dangos bod y bwrdd yn cael ei bweru
USB i UART
pont
CP2102

Pecyn Cychwyn Sylfaenol LAFVIN ESP32 - ESP32 DEVKITMae'n dod gyda rhyngwyneb microUSB y gallwch ei ddefnyddio i gysylltu'r bwrdd â'ch cyfrifiadur i uwchlwytho cod neu gymhwyso pŵer.
Mae'n defnyddio'r sglodyn CP2102 (USB i UART) i gyfathrebu â'ch cyfrifiadur trwy borthladd COM gan ddefnyddio rhyngwyneb cyfresol. Sglodyn poblogaidd arall yw'r CH340. Gwiriwch beth yw'r trawsnewidydd sglodion USB i UART ar eich bwrdd oherwydd bydd angen i chi osod y gyrwyr gofynnol fel y gall eich cyfrifiadur gyfathrebu â'r bwrdd (mwy o wybodaeth am hyn yn nes ymlaen yn y canllaw hwn).
Mae'r bwrdd hwn hefyd yn dod â botwm AILOSOD (efallai ei fod wedi'i labelu EN) i ailgychwyn y bwrdd a botwm BOOT i roi'r bwrdd yn y modd fflachio (ar gael i dderbyn cod). Sylwch efallai na fydd botwm BOOT ar rai byrddau.
Mae hefyd yn dod â LED glas adeiledig sydd wedi'i gysylltu'n fewnol â GPIO 2. Mae'r LED hwn yn ddefnyddiol ar gyfer dadfygio i roi rhyw fath o allbwn corfforol gweledol. Mae yna hefyd LED coch sy'n goleuo pan fyddwch chi'n darparu pŵer i'r bwrdd.LAFVIN ESP32 Pecyn Cychwyn Sylfaenol - bwrddESP32 Pinout
Mae perifferolion ESP32 yn cynnwys:

  • 18 o sianeli Trawsnewidydd Analog-i-Digidol (ADC).
  • 3 rhyngwyneb SPI
  • 3 rhyngwyneb UART
  • 2 rhyngwyneb I2C
  • 16 sianel allbwn PWM
  • 2 Trawsnewidydd Digidol-Analog (DAC)
  • 2 rhyngwyneb I2S
  • 10 GPIO synhwyro galluog

Mae'r nodweddion ADC (trawsnewidydd analog i ddigidol) a DAC (trawsnewidydd digidol i analog) yn cael eu neilltuo i binnau sefydlog penodol. Fodd bynnag, gallwch chi benderfynu pa binnau yw UART, I2C, SPI, PWM, ac ati - does ond angen i chi eu neilltuo yn y cod. Mae hyn yn bosibl oherwydd nodwedd amlblecsio sglodyn ESP32.
Er y gallwch chi ddiffinio priodweddau'r pinnau ar y feddalwedd, mae pinnau wedi'u neilltuo yn ddiofyn fel y dangosir yn y ffigur canlynolPecyn Cychwyn Sylfaenol LAFVIN ESP32 - Pinout ESP32Yn ogystal, mae pinnau â nodweddion penodol sy'n eu gwneud yn addas ai peidio ar gyfer prosiect penodol. Mae'r tabl canlynol yn dangos pa binnau sydd orau i'w defnyddio fel mewnbynnau, allbynnau a pha rai y mae angen i chi fod yn ofalus.
Mae'r pinnau wedi'u hamlygu mewn gwyrdd yn iawn i'w defnyddio. Mae'r rhai sydd wedi'u hamlygu mewn melyn yn iawn i'w defnyddio, ond mae angen i chi dalu sylw oherwydd efallai y bydd ganddynt ymddygiad annisgwyl yn bennaf wrth gychwyn. Ni argymhellir defnyddio'r pinnau sydd wedi'u hamlygu mewn coch fel mewnbynnau nac allbynnau.

GP IO Mewnbwn Allbwn Nodiadau
0 tynnu i fyny OK allbynnau signal PWM wrth gychwyn, rhaid bod yn ISEL i fynd i mewn i'r modd fflachio
1 Pin tx OK allbwn dadfygio wrth gychwyn
2 OK OK wedi'i gysylltu â LED ar y bwrdd, rhaid ei adael yn arnofio neu'n ISEL i fynd i mewn i'r modd fflachio
3 OK Pin RX UCHEL wrth gychwyn
4 OK OK
5 OK OK allbynnau signal PWM yn y gist, pin strapio
12 OK OK bŵt yn methu os caiff ei thynnu'n uchel, pin strapio
13 OK OK
14 OK OK allbynnau signal PWM wrth gychwyn
15 OK OK allbynnau signal PWM yn y gist, pin strapio
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 mewnbwn yn unig
35 OK mewnbwn yn unig
36 OK mewnbwn yn unig
39 OK mewnbwn yn unig

Parhewch i ddarllen i gael dadansoddiad mwy manwl a manwl o GPIOs ESP32 a'i swyddogaethau.
Pinnau mewnbwn yn unig
Mae GPIOs 34 i 39 yn GPIs – pinnau mewnbwn yn unig. Nid oes gan y pinnau hyn wrthyddion tynnu i fyny neu dynnu i lawr mewnol. Ni ellir eu defnyddio fel allbynnau, felly defnyddiwch y pinnau hyn fel mewnbynnau yn unig:

  • GPIO 34
  • GPIO 35
  • GPIO 36
  • GPIO 39

Fflach SPI integredig ar yr ESP-WROOM-32
Mae GPIO 6 i GPIO 11 yn cael eu hamlygu mewn rhai byrddau datblygu ESP32. Fodd bynnag, mae'r pinnau hyn wedi'u cysylltu â'r fflach SPI integredig ar y sglodion ESP-WROOM-32 ac ni chânt eu hargymell ar gyfer defnyddiau eraill. Felly, peidiwch â defnyddio'r pinnau hyn yn eich prosiectau:

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

GPIOs cyffwrdd capacitive
Mae gan yr ESP32 10 synhwyrydd cyffwrdd capacitive mewnol. Gall y rhain synhwyro amrywiadau mewn unrhyw beth sy'n dal gwefr drydanol, fel y croen dynol. Felly gallant ganfod amrywiadau a achosir wrth gyffwrdd â'r GPIOs â bys. Gellir integreiddio'r pinnau hyn yn hawdd i badiau capacitive a disodli botymau mecanyddol. Gellir defnyddio'r pinnau cyffwrdd capacitive hefyd i ddeffro'r ESP32 o gwsg dwfn. Mae'r synwyryddion cyffwrdd mewnol hynny wedi'u cysylltu â'r GPIOs hyn:

  • 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)

Trawsnewidydd Analog i Ddigidol (ADC)
Mae gan yr ESP32 sianeli mewnbwn ADC 18 x 12 did (er mai dim ond 8266x 1 did ADC sydd gan yr ESP10). Dyma'r GPIOs y gellir eu defnyddio fel ADC a'r sianeli priodol:

  • 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)

Nodyn: Ni ellir defnyddio pinnau ADC2 pan ddefnyddir Wi-Fi. Felly, os ydych chi'n defnyddio Wi-Fi ac rydych chi'n cael trafferth cael y gwerth o GPIO ADC2, efallai y byddwch chi'n ystyried defnyddio GPIO ADC1 yn lle hynny. Dylai hynny ddatrys eich problem.
Mae gan y sianeli mewnbwn ADC gydraniad 12-did. Mae hyn yn golygu y gallwch gael darlleniadau analog yn amrywio o 0 i 4095, lle mae 0 yn cyfateb i 0V a 4095 i 3.3V. Gallwch hefyd osod cydraniad eich sianeli ar y cod a'r ystod ADC.
Nid oes gan y pinnau ESP32 ADC ymddygiad llinol. Mae'n debyg na fyddwch yn gallu gwahaniaethu rhwng 0 a 0.1V, neu rhwng 3.2 a 3.3V. Mae angen i chi gadw hynny mewn cof wrth ddefnyddio'r pinnau ADC. Byddwch yn cael ymddygiad tebyg i'r un a ddangosir yn y ffigur canlynol.Pecyn Cychwyn Sylfaenol LAFVIN ESP32 - ymddygiadTrawsnewidydd Digidol i Analog (DAC)
Mae sianeli DAC 2 x 8 did ar yr ESP32 i drosi signalau digidol yn analog cyftage allbynnau signal. Dyma'r sianeli DAC:

  • DAC1 (GPIO25)
  • DAC2 (GPIO26)

GPIOs RTC
Mae cefnogaeth GPIO RTC ar yr ESP32. Gellir defnyddio'r GPIOs sy'n cael eu cyfeirio i is-system pŵer isel RTC pan fydd yr ESP32 mewn cwsg dwfn. Gellir defnyddio'r GPIOs RTC hyn i ddeffro'r ESP32 o gwsg dwfn pan fydd y Ultra Low
Mae cyd-brosesydd pŵer (ULP) yn rhedeg. Gellir defnyddio'r GPIOs canlynol fel ffynhonnell deffro allanol.

  • 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
Mae gan reolwr ESP32 LED PWM 16 sianel annibynnol y gellir eu ffurfweddu i gynhyrchu signalau PWM gyda gwahanol briodweddau. Gellir defnyddio pob pin sy'n gallu gweithredu fel allbynnau fel pinnau PWM (ni all GPIOs 34 i 39 gynhyrchu PWM).
I osod signal PWM, mae angen i chi ddiffinio'r paramedrau hyn yn y cod:

  • Amledd y signal;
  • Cylch dyletswydd;
  • sianel PWM;
  • GPIO lle rydych chi am allbynnu'r signal.

I2C
Mae gan yr ESP32 ddwy sianel I2C a gellir gosod unrhyw bin fel SDA neu SCL. Wrth ddefnyddio'r ESP32 gyda'r Arduino IDE, y pinnau I2C rhagosodedig yw:

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

Os ydych chi am ddefnyddio pinnau eraill wrth ddefnyddio'r llyfrgell wifrau, does ond angen i chi ffonio:
Wire.begin(SDA, SCL);
SPI
Yn ddiofyn, y mapio pin ar gyfer SPI yw:

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

Torri ar draws
Gellir ffurfweddu pob GPIO fel ymyriadau.
Pinnau strapio
Mae gan y sglodyn ESP32 y pinnau strapio canlynol:

  • GPIO 0 (rhaid bod yn ISEL i fynd i mewn i'r modd cychwyn)
  • GPIO 2 (rhaid iddo fod yn arnofio neu'n ISEL yn ystod y cist)
  • GPIO 4
  • GPIO 5 (rhaid bod yn UCHEL yn ystod y cist)
  • GPIO 12 (rhaid bod yn ISEL yn ystod y cychwyn)
  • GPIO 15 (rhaid bod yn UCHEL yn ystod y cist)

Defnyddir y rhain i roi'r ESP32 yn y modd cychwynnydd neu fflachio. Ar y rhan fwyaf o fyrddau datblygu gyda USB / Cyfresol adeiledig, nid oes angen i chi boeni am gyflwr y pinnau hyn. Mae'r bwrdd yn rhoi'r pinnau yn y cyflwr cywir ar gyfer fflachio neu fodd cychwyn. Mae rhagor o wybodaeth am Ddewis Modd Cychwyn ESP32 ar gael yma.
Fodd bynnag, os oes gennych perifferolion sy'n gysylltiedig â'r pinnau hynny, efallai y byddwch chi'n cael trafferth i geisio uwchlwytho cod newydd, fflachio'r ESP32 gyda firmware newydd, neu ailosod y bwrdd. Os oes gennych rai perifferolion wedi'u cysylltu â'r pinnau strapio a'ch bod yn cael trafferth llwytho cod i fyny neu fflachio'r ESP32, efallai mai'r rheswm am hyn yw bod y perifferolion hynny'n atal yr ESP32 rhag mynd i mewn i'r modd cywir. Darllenwch y ddogfennaeth Dewis Modd Boot i'ch arwain i'r cyfeiriad cywir. Ar ôl ailosod, fflachio, neu fotio, mae'r pinnau hynny'n gweithio yn ôl y disgwyl.
Pinnau UCHEL yn Boot
Mae rhai GPIOs yn newid eu cyflwr i signalau PWM UCHEL neu allbwn wrth gychwyn neu ailosod.
Mae hyn yn golygu os oes gennych allbynnau sy'n gysylltiedig â'r GPIOs hyn efallai y cewch ganlyniadau annisgwyl pan fydd yr ESP32 yn ailosod neu'n cychwyn.

  • GPIO 1
  • GPIO 3
  • GPIO 5
  • GPIO 6 i GPIO 11 (yn gysylltiedig â chof fflach SPI integredig ESP32 - ni argymhellir ei ddefnyddio).
  • GPIO 14
  • GPIO 15

Galluogi (EN)
Galluogi (EN) yw pin galluogi'r rheolydd 3.3V. Mae wedi'i dynnu i fyny, felly cysylltwch â'r ddaear i analluogi'r rheolydd 3.3V. Mae hyn yn golygu y gallwch chi ddefnyddio'r pin hwn wedi'i gysylltu â botwm gwthio i ailgychwyn eich ESP32, ar gyfer example.
GPIO cyfredol wedi'i dynnu
Y cerrynt mwyaf absoliwt a dynnir fesul GPIO yw 40mA yn ôl yr adran “Amodau Gweithredu a Argymhellir” yn y daflen ddata ESP32.
ESP32 Synhwyrydd Effaith Neuadd Adeiledig
Mae'r ESP32 hefyd yn cynnwys synhwyrydd effaith neuadd adeiledig sy'n canfod newidiadau yn y maes magnetig yn ei amgylchoedd
ESP32 IDE Arduino
Mae yna ychwanegiad ar gyfer yr Arduino IDE sy'n eich galluogi i raglennu'r ESP32 gan ddefnyddio'r Arduino IDE a'i iaith raglennu. Yn y tiwtorial hwn byddwn yn dangos i chi sut i osod y bwrdd ESP32 yn Arduino IDE p'un a ydych chi'n defnyddio Windows, Mac OS X neu Linux.
Rhagofynion: Arduino IDE Wedi'i Osod
Cyn dechrau'r weithdrefn osod hon, mae angen i chi gael Arduino IDE wedi'i osod ar eich cyfrifiadur. Mae dwy fersiwn o'r Arduino IDE y gallwch eu gosod: fersiwn 1 a fersiwn 2.
Gallwch chi lawrlwytho a gosod Arduino IDE trwy glicio ar y ddolen ganlynol: arduino.cc/cy/Prif/Meddalwedd
Pa fersiwn Arduino IDE ydyn ni'n ei hargymell? Ar hyn o bryd, mae rhai plugins ar gyfer yr ESP32 (fel y SPIFFS Filesystem Uploader Plugin) nad ydynt yn cael eu cefnogi eto ar Arduino 2. Felly, os ydych yn bwriadu defnyddio'r ategyn SPIFFS yn y dyfodol, rydym yn argymell gosod y fersiwn etifeddiaeth 1.8.X. Does ond angen sgrolio i lawr ar dudalen meddalwedd Arduino i ddod o hyd iddo.
Gosod Ychwanegyn ESP32 yn Arduino IDE
I osod y bwrdd ESP32 yn eich Arduino IDE, dilynwch y cyfarwyddiadau nesaf hyn:

  1. Yn eich IDE Arduino, ewch i File> DewisiadauPecyn Cychwyn Sylfaenol LAFVIN ESP32 - Dewisiadau
  2. Rhowch y canlynol yn y “Rheolwr Bwrdd Ychwanegol URLs” maes:

https://raw.githubusercontent.com/espressif/arduino-esp32/gh-pages/package_esp32_index.json
Yna, cliciwch ar y botwm "OK":Pecyn Cychwyn Sylfaenol LAFVIN ESP32 - botwm “Iawn”.Nodyn: os oes gennych y byrddau ESP8266 eisoes URL, gallwch wahanu'r URLs gyda choma fel a ganlyn:
https://raw.githubusercontent.com/espressif/arduino-esp32/gh-pages/package_esp32_index.json,
http://arduino.esp8266.com/stable/package_esp8266com_index.json
Agor Rheolwr y Bwrdd. Ewch i Offer > Bwrdd > Rheolwr Byrddau…Pecyn Cychwyn Sylfaenol LAFVIN ESP32 - EspressifChwiliwch am ESP32 and press install button for the “ESP32 by Espressif Systems“:Pecyn Cychwyn Sylfaenol LAFVIN ESP32 - EspressifDyna fe. Dylid ei osod ar ôl ychydig eiliadau.Pecyn Cychwyn Sylfaenol LAFVIN ESP32 - wedi'i osod

Llwythwch i fyny Cod Prawf

Plygiwch y bwrdd ESP32 i'ch cyfrifiadur. Gyda'ch Arduino IDE ar agor, dilynwch y camau hyn:

  1. Dewiswch eich Bwrdd yn Offer > dewislen Bwrdd (yn fy achos i, y Modiwl DEV ESP32 ydyw)Pecyn Cychwyn Sylfaenol LAFVIN ESP32 - Bwrdd Offer
  2. Dewiswch y Porthladd (os na welwch y Porthladd COM yn eich Arduino IDE, mae angen i chi osod y CP210x USB i Gyrwyr VCP Pont UART):Pecyn Cychwyn Sylfaenol LAFVIN ESP32 - Pont UART
  3. Agorwch y cynample dan File > Examples > WiFi
    (ESP32) > WiFiScanPecyn Cychwyn Sylfaenol LAFVIN ESP32 - WiFiScanPecyn Cychwyn Sylfaenol LAFVIN ESP32 - WiFiScan 1
  4. Mae braslun newydd yn agor yn eich Arduino IDE:Pecyn Cychwyn Sylfaenol LAFVIN ESP32 - Arduino IDE
  5. Pwyswch y botwm Llwytho i Fyny yn yr Arduino IDE. Arhoswch ychydig eiliadau tra bod y cod yn llunio ac yn llwytho i fyny i'ch bwrdd.Pecyn Cychwyn Sylfaenol LAFVIN ESP32 - bwrdd
  6. Pe bai popeth yn mynd yn ôl y disgwyl, dylech weld “Llwytho i fyny wedi'i wneud.” neges.Pecyn Cychwyn Sylfaenol LAFVIN ESP32 - Wedi gorffen llwytho i fyny
  7. Agorwch Fonitor Cyfresol Arduino IDE ar gyfradd baud o 115200:Pecyn Cychwyn Sylfaenol LAFVIN ESP32 - Monitor
  8. Pwyswch y botwm Galluogi ar y bwrdd ESP32 a dylech weld y rhwydweithiau sydd ar gael ger eich ESP32:Pecyn Cychwyn Sylfaenol LAFVIN ESP32 - Galluogi botwm

Datrys problemau

Os ceisiwch uwchlwytho braslun newydd i'ch ESP32 a'ch bod yn cael y neges gwall hon “Digwyddodd gwall angheuol: Methwyd cysylltu ag ESP32: Wedi dod i ben… Cysylltu…“. Mae'n golygu nad yw eich ESP32 yn y modd fflachio / llwytho i fyny.
Ar ôl dewis yr enw bwrdd cywir a COM por, dilynwch y camau hyn:
Daliwch y botwm “BOOT” i lawr yn eich bwrdd ESP32Pecyn Cychwyn Sylfaenol LAFVIN ESP32 - “BOOT”

  • Pwyswch y botwm “Lanlwytho” yn yr Arduino IDE i uwchlwytho'ch braslun:Pecyn Cychwyn Sylfaenol LAFVIN ESP32 - ICON 6
  • Ar ôl i chi weld y “Cysylltu….” neges yn eich Arduino IDE, rhyddhewch y bys o'r botwm “BOOT”:Pecyn Cychwyn Sylfaenol LAFVIN ESP32 - “Wedi gorffen yr uwchlwytho
  • Ar ôl hynny, dylech weld y neges "Done uploading".
    Dyna fe. Dylai eich ESP32 gael y braslun newydd yn rhedeg. Pwyswch y botwm “ENABLE” i ailgychwyn yr ESP32 a rhedeg y braslun newydd wedi'i uwchlwytho.
    Bydd yn rhaid i chi hefyd ailadrodd y dilyniant botwm hwnnw bob tro y byddwch am uwchlwytho braslun newydd.

Prosiect 1 ESP32 Mewnbynnau Allbynnau

Yn y canllaw cychwyn hwn byddwch yn dysgu sut i ddarllen mewnbynnau digidol fel switsh botwm a rheoli allbynnau digidol fel LED gan ddefnyddio'r ESP32 gydag Arduino IDE.
Rhagofynion
Byddwn yn rhaglennu'r ESP32 gan ddefnyddio Arduino IDE. Felly, gwnewch yn siŵr bod gennych yr ategyn byrddau ESP32 wedi'i osod cyn symud ymlaen:

  • Gosod Ychwanegyn ESP32 yn Arduino IDE

ESP32 Rheoli Allbynnau Digidol
Yn gyntaf, mae angen i chi osod y GPIO rydych chi am ei reoli fel ALLBWN. Defnyddiwch y swyddogaeth pinMode() fel a ganlyn:
pinMode(GPIO, ALLBWN);
I reoli allbwn digidol does ond angen i chi ddefnyddio'r swyddogaeth digitalWrite(), sy'n derbyn fel dadleuon, y GPIO (rhif int) rydych chi'n cyfeirio ato, a'r cyflwr, naill ai UCHEL neu ISEL.
digitalWrite(GPIO, STATE);
Gellir defnyddio pob GPIO fel allbynnau ac eithrio GPIOs 6 i 11 (yn gysylltiedig â'r fflach SPI integredig) a GPIOs 34, 35, 36 a 39 (GPIOs mewnbwn yn unig);
Dysgwch fwy am y GPIOs ESP32: Canllaw Cyfeirio GPIO ESP32
ESP32 Darllen Mewnbynnau Digidol
Yn gyntaf, gosodwch y GPIO rydych chi am ei ddarllen fel MEWNBWN, gan ddefnyddio'r swyddogaeth pinMode () fel a ganlyn:
pinMode(GPIO, MEWNBWN);
I ddarllen mewnbwn digidol, fel botwm, rydych chi'n defnyddio'r swyddogaeth digitalRead(), sy'n derbyn fel dadl, y GPIO (rhif int) rydych chi'n cyfeirio ato.
digitalRead(GPIO);
Gellir defnyddio pob GPIO ESP32 fel mewnbynnau, ac eithrio GPIOs 6 i 11 (yn gysylltiedig â'r fflach SPI integredig).
Dysgwch fwy am y GPIOs ESP32: Canllaw Cyfeirio GPIO ESP32
Prosiect Example
I ddangos i chi sut i ddefnyddio mewnbynnau digidol ac allbynnau digidol, byddwn yn adeiladu prosiect syml exampgyda botwm gwthio a LED. Byddwn yn darllen cyflwr y botwm gwthio ac yn goleuo'r LED yn unol â hynny fel y dangosir yn y ffigur canlynol.Pecyn Cychwyn Sylfaenol LAFVIN ESP32 - Prosiect Example

Rhannau Angenrheidiol
Dyma restr o'r rhannau sydd eu hangen arnoch i adeiladu'r gylched:

  • ESP32 DEVKIT V1
  • LED 5 mm
  • Gwrthydd 220 Ohm
  • botwm gwthio
  • Gwrthydd Ohm 10k
  • Bwrdd bara
  • Gwifrau siwmper

Diagram Sgematig
Cyn symud ymlaen, mae angen i chi gydosod cylched gyda LED a botwm gwthio.
Byddwn yn cysylltu'r LED â GPIO 5 a'r botwm gwthio i GPIO 4.Pecyn Cychwyn Sylfaenol LAFVIN ESP32 - Diagram SgematigCod
Agorwch y cod Project_1_ESP32_Inputs_Outputs.ino yn arduino IDEPecyn Cychwyn Sylfaenol LAFVIN ESP32 - CodPecyn Cychwyn Sylfaenol LAFVIN ESP32 - Cod 1Sut mae'r Cod yn Gweithio
Yn y ddwy linell ganlynol, rydych chi'n creu newidynnau i aseinio pinnau:

Pecyn Cychwyn Sylfaenol LAFVIN ESP32 - Cod yn GweithioMae'r botwm wedi'i gysylltu â GPIO 4 ac mae'r LED wedi'i gysylltu â GPIO 5. Wrth ddefnyddio'r Arduino IDE gyda'r ESP32, mae 4 yn cyfateb i GPIO 4 a 5 yn cyfateb i GPIO 5.
Nesaf, byddwch chi'n creu newidyn i ddal cyflwr y botwm. Yn ddiofyn, mae'n 0 (heb ei wasgu).
int buttonState = 0;
Yn y setup (), rydych chi'n cychwyn y botwm fel MEWNBWN, a'r LED fel ALLBWN.
Ar gyfer hynny, rydych chi'n defnyddio'r swyddogaeth pinMode () sy'n derbyn y pin rydych chi'n cyfeirio ato, a'r modd: MEWNBWN neu ALLBWN.
pinMode(botwmPin, MEWNBWN);
pinMode(ledPin, ALLBWN);
Yn y ddolen () mae lle rydych chi'n darllen cyflwr y botwm ac yn gosod y LED yn unol â hynny.
Yn y llinell nesaf, rydych chi'n darllen cyflwr y botwm a'i gadw yn y newidyn buttonState.
Fel y gwelsom o'r blaen, rydych chi'n defnyddio'r swyddogaeth digitalRead().
buttonState = digitalRead(buttonPin);
Mae'r canlynol os datganiad, yn gwirio a yw cyflwr y botwm yn UCHEL. Os ydyw, mae'n troi'r LED ymlaen gan ddefnyddio'r swyddogaeth digitalWrite() sy'n derbyn y ledPin fel dadl, a'r cyflwr UCHEL.
os (buttonState == UCHEL)Pecyn Cychwyn Sylfaenol LAFVIN ESP32 - Cod yn Gweithio 1Os nad yw cyflwr y botwm yn UCHEL, byddwch yn gosod y LED i ffwrdd. Gosodwch ISEL fel ail ddadl yn y ffwythiant digitalWrite().Pecyn Cychwyn Sylfaenol LAFVIN ESP32 - digitalWriteWrthi'n uwchlwytho'r Cod
Cyn clicio ar y botwm llwytho i fyny, ewch i Offer > Bwrdd, a dewiswch y bwrdd :DOIT ESP32 DEVKIT V1 bwrdd.
Ewch i Tools> Port a dewiswch y porthladd COM y mae'r ESP32 wedi'i gysylltu ag ef. Yna, pwyswch y botwm llwytho i fyny ac aros am y neges “Done uploading”.Pecyn Cychwyn Sylfaenol LAFVIN ESP32 - ICON 7Nodyn: Os ydych chi'n gweld llawer o ddotiau (yn cysylltu…__…__) ar y ffenestr dadfygio a'r neges “Methu cysylltu ag ESP32: Wedi dod i ben yn aros am bennawd pecyn”, mae hynny'n golygu bod angen i chi wasgu'r ESP32 ar fwrdd BOOT botwm ar ôl y dotiau
dechrau ymddangos.Troubleshooting

Arddangosiad

Ar ôl uwchlwytho'r cod, profwch eich cylched. Dylai eich LED oleuo pan fyddwch chi'n pwyso'r botwm gwthio:Pecyn Cychwyn Sylfaenol LAFVIN ESP32 - ArddangosiadA diffoddwch pan fyddwch chi'n ei ryddhau:Pecyn Cychwyn Sylfaenol LAFVIN ESP32 - troad

Prosiect 2 ESP32 Mewnbynnau Analog

Mae'r prosiect hwn yn dangos sut i ddarllen mewnbynnau analog gyda'r ESP32 gan ddefnyddio Arduino IDE.
Mae darllen analog yn ddefnyddiol i ddarllen gwerthoedd gwrthyddion newidiol fel potensiomedrau, neu synwyryddion analog.
Mewnbynnau Analog (ADC)
Mae darllen gwerth analog gyda'r ESP32 yn golygu y gallwch fesur cyfaint amrywioltage lefelau rhwng 0 V a 3.3 V.
Mae'r cyftagMae e a fesurir wedyn yn cael ei neilltuo i werth rhwng 0 a 4095, lle mae 0 V yn cyfateb i 0, a 3.3 V yn cyfateb i 4095. Unrhyw gyfainttage rhwng 0 V a 3.3 V bydd y gwerth cyfatebol yn y canol.Pecyn Cychwyn Sylfaenol LAFVIN ESP32 - Mewnbynnau AnalogMae ADC yn Aflinol
Yn ddelfrydol, byddech chi'n disgwyl ymddygiad llinol wrth ddefnyddio'r pinnau ESP32 ADC.
Fodd bynnag, nid yw hynny'n digwydd. Yr hyn a gewch yw ymddygiad fel y dangosir yn y siart canlynol:Pecyn Cychwyn Sylfaenol LAFVIN ESP32 - AflinolMae'r ymddygiad hwn yn golygu nad yw eich ESP32 yn gallu gwahaniaethu rhwng 3.3 V a 3.2 V.
Fe gewch yr un gwerth am y ddwy gyftage.e: 4095.
Mae'r un peth yn digwydd ar gyfer cyfaint isel iawntage gwerthoedd: ar gyfer 0 V a 0.1 V byddwch yn cael yr un gwerth: 0. Mae angen i chi gadw hyn mewn cof wrth ddefnyddio'r pinnau ESP32 ADC.
analogRead() Swyddogaeth
Mae darllen mewnbwn analog gyda'r ESP32 gan ddefnyddio'r Arduino IDE mor syml â defnyddio'r swyddogaeth analogRead(). Mae'n derbyn fel dadl, y GPIO rydych chi am ei ddarllen:
analogRead(GPIO);
Dim ond 15 sydd ar gael yn y bwrdd DEVKIT V1 (fersiwn gyda 30 GPIO).
Cydio yn eich pinout bwrdd ESP32 a dod o hyd i'r pinnau ADC. Amlygir y rhain gyda border coch yn y ffigwr isod.Pecyn Cychwyn Sylfaenol LAFVIN ESP32 - ffinMae gan y pinnau mewnbwn analog hyn gydraniad 12-did. Mae hyn yn golygu pan fyddwch chi'n darllen mewnbwn analog, gall ei ystod amrywio o 0 i 4095.
Nodyn: Ni ellir defnyddio pinnau ADC2 pan ddefnyddir Wi-Fi. Felly, os ydych chi'n defnyddio Wi-Fi a'ch bod chi'n cael trafferth cael y gwerth o GPIO ADC2, efallai y byddwch chi'n ystyried defnyddio GPIO ADC1 yn lle hynny, dylai hynny ddatrys eich problem.
I weld sut mae popeth yn cyd-fynd, byddwn yn gwneud ex symlample i ddarllen gwerth analog o potensiomedr.
Rhannau Angenrheidiol
Am y cynample, mae angen y rhannau canlynol arnoch chi:

  • Bwrdd ESP32 DEVKIT V1
  • Potensiomedr
  • Bwrdd bara
  • Gwifrau siwmper

Sgematig
Gwifrwch potentiometer i'ch ESP32. Dylai'r pin canol potentiometer gael ei gysylltu â GPIO 4. Gallwch ddefnyddio'r diagram sgematig canlynol fel cyfeiriad.Pecyn Cychwyn Sylfaenol LAFVIN ESP32 - SgematigCod
Byddwn yn rhaglennu'r ESP32 gan ddefnyddio Arduino IDE, felly gwnewch yn siŵr bod gennych yr ychwanegiad ESP32 wedi'i osod cyn symud ymlaen: (Os ydych chi eisoes wedi gwneud y cam hwn, gallwch chi fynd i'r cam nesaf.)
Gosod Ychwanegyn ESP32 yn Arduino IDE
Agorwch y cod Project_2_ESP32_Inputs_Outputs.ino yn arduino IDEPecyn Cychwyn Sylfaenol LAFVIN ESP32 - Cod 2Yn syml, mae'r cod hwn yn darllen y gwerthoedd o'r potensiomedr ac yn argraffu'r gwerthoedd hynny yn y Monitor Cyfresol.
Yn y cod, rydych chi'n dechrau trwy ddiffinio'r GPIO y mae'r potentiometer wedi'i gysylltu ag ef. Yn y cynample, GPIO 4.LAFVIN ESP32 Pecyn Cychwyn Sylfaenol - exampleYn y setup (), dechreuwch gyfathrebiad cyfresol ar gyfradd baud o 115200.LAFVIN ESP32 Pecyn Cychwyn Sylfaenol - example 1Yn y ddolen (), defnyddiwch y swyddogaeth analogRead() i ddarllen y mewnbwn analog o'r potPin.LAFVIN ESP32 Pecyn Cychwyn Sylfaenol - example 2Yn olaf, argraffwch y gwerthoedd a ddarllenwyd o'r potensiomedr yn y monitor cyfresol.LAFVIN ESP32 Pecyn Cychwyn Sylfaenol - example 3Llwythwch i fyny'r cod a ddarparwyd i'ch ESP32. Gwnewch yn siŵr bod y bwrdd cywir a'r porthladd COM wedi'u dewis yn y ddewislen Tools.
Profi yr Example
Ar ôl uwchlwytho'r cod a phwyso'r botwm ailosod ESP32, agorwch y Monitor Cyfresol ar gyfradd baud o 115200. Cylchdroi'r potentiometer a gweld y gwerthoedd yn newid.Y gwerth mwyaf a gewch yw 4095 a'r gwerth lleiaf yw 0.Pecyn Cychwyn Sylfaenol LAFVIN ESP32 - y gwerth mwyaf

Lapio

Yn yr erthygl hon rydych chi wedi dysgu sut i ddarllen mewnbynnau analog gan ddefnyddio'r ESP32 gyda'r Arduino IDE. Yn gryno:

  • Mae gan fwrdd ESP32 DEVKIT V1 DOIT (fersiwn gyda 30 pin) 15 pin ADC y gallwch eu defnyddio i ddarllen mewnbynnau analog.
  • Mae gan y pinnau hyn gydraniad o 12 did, sy'n golygu y gallwch chi gael gwerthoedd o 0 i 4095.
  • I ddarllen gwerth yn yr Arduino IDE, rydych chi'n defnyddio'r swyddogaeth analogRead().
  • Nid oes gan y pinnau ESP32 ADC ymddygiad llinol. Mae'n debyg na fyddwch yn gallu gwahaniaethu rhwng 0 a 0.1V, neu rhwng 3.2 a 3.3V. Mae angen i chi gadw hynny mewn cof wrth ddefnyddio'r pinnau ADC.

Prosiect 3 ESP32 PWM (Allbwn Analog)

Yn y tiwtorial hwn byddwn yn dangos i chi sut i gynhyrchu signalau PWM gyda'r ESP32 gan ddefnyddio Arduino IDE. Fel cynample byddwn yn adeiladu cylched syml sy'n pylu LED gan ddefnyddio rheolydd PWM LED yr ESP32.Pecyn Cychwyn Sylfaenol LAFVIN ESP32 - AnalogOutputRheolydd PWM LED ESP32
Mae gan yr ESP32 reolwr PWM LED gyda 16 sianel annibynnol y gellir eu ffurfweddu i gynhyrchu signalau PWM gyda gwahanol briodweddau.
Dyma'r camau y bydd yn rhaid i chi eu dilyn i bylu LED gyda PWM gan ddefnyddio'r Arduino IDE:

  1. Yn gyntaf, mae angen i chi ddewis sianel PWM. Mae yna 16 sianel o 0 i 15.
  2. Yna, mae angen i chi osod amledd signal PWM. Ar gyfer LED, mae amledd o 5000 Hz yn iawn i'w ddefnyddio.
  3. Mae angen i chi hefyd osod cydraniad cylch dyletswydd y signal: mae gennych gydraniad o 1 i 16 did. Byddwn yn defnyddio cydraniad 8-did, sy'n golygu y gallwch reoli'r disgleirdeb LED gan ddefnyddio gwerth o 0 i 255.
  4.  Nesaf, mae angen i chi nodi pa GPIO neu GPIOs y bydd y signal yn ymddangos arnynt. Ar gyfer hynny byddwch yn defnyddio'r swyddogaeth ganlynol:
    ledcAttachPin(GPIO, sianel)
    Mae'r swyddogaeth hon yn derbyn dwy ddadl. Y cyntaf yw'r GPIO a fydd yn allbwn y signal, a'r ail yw'r sianel a fydd yn cynhyrchu'r signal.
  5. Yn olaf, i reoli disgleirdeb LED gan ddefnyddio PWM, rydych chi'n defnyddio'r swyddogaeth ganlynol:

ledcWrite(sianel, cylch dyletswydd)
Mae'r swyddogaeth hon yn derbyn fel dadleuon y sianel sy'n cynhyrchu'r signal PWM, a'r cylch dyletswydd.
Rhannau Angenrheidiol
I ddilyn y tiwtorial hwn mae angen y rhannau hyn arnoch chi:

  • Bwrdd ESP32 DEVKIT V1
  • LED 5mm
  • Gwrthydd 220 Ohm
  •  Bwrdd bara
  • Gwifrau siwmper

Sgematig
Gwifrwch LED i'ch ESP32 fel yn y diagram sgematig canlynol. Dylai'r LED gael ei gysylltu â GPIO 4.Pecyn Cychwyn Sylfaenol LAFVIN ESP32 - SgematigNodyn: gallwch ddefnyddio unrhyw pin rydych chi ei eisiau, cyn belled ag y gall weithredu fel allbwn. Gellir defnyddio pob pin a all weithredu fel allbynnau fel pinnau PWM. I gael rhagor o wybodaeth am GPIOs ESP32, darllenwch: Cyfeirnod Pinout ESP32: Pa binnau GPIO y dylech eu defnyddio?
Cod
Byddwn yn rhaglennu'r ESP32 gan ddefnyddio Arduino IDE, felly gwnewch yn siŵr bod gennych yr ychwanegiad ESP32 wedi'i osod cyn symud ymlaen: (Os ydych chi eisoes wedi gwneud y cam hwn, gallwch chi fynd i'r cam nesaf.)
Gosod Ychwanegyn ESP32 yn Arduino IDE
Agorwch y cod Project_3_ESP32_PWM.ino yn arduino IDEPecyn Cychwyn Sylfaenol LAFVIN ESP32 - Cod 3Pecyn Cychwyn Sylfaenol LAFVIN ESP32 - Cod 4Rydych chi'n dechrau trwy ddiffinio'r pin y mae'r LED ynghlwm wrtho. Yn yr achos hwn mae'r LED ynghlwm wrth GPIO 4.Pecyn Cychwyn Sylfaenol LAFVIN ESP32 - Cod 5Yna, rydych chi'n gosod priodweddau'r signal PWM. Rydych chi'n diffinio amledd o 5000 Hz, yn dewis sianel 0 i gynhyrchu'r signal, ac yn gosod cydraniad o 8 did. Gallwch ddewis priodweddau eraill, gwahanol i'r rhain, i gynhyrchu gwahanol signalau PWM.Pecyn Cychwyn Sylfaenol LAFVIN ESP32 - Cod 6Yn y setup (), mae angen i chi ffurfweddu PWM LED gyda'r priodweddau rydych chi wedi'u diffinio'n gynharach trwy ddefnyddio'r swyddogaeth ledcSetup () sy'n derbyn fel dadleuon, y ledChannel, yr amlder, a'r datrysiad, fel a ganlyn:Pecyn Cychwyn Sylfaenol LAFVIN ESP32 - Cod 8Nesaf, mae angen i chi ddewis y GPIO y byddwch chi'n cael y signal ohono. Ar gyfer hynny defnyddiwch y swyddogaeth ledcAttachPin() sy'n derbyn fel dadleuon y GPIO lle rydych chi am gael y signal, a'r sianel sy'n cynhyrchu'r signal. Yn y cynampLe, byddwn yn cael y signal yn y GPIO ledPin, sy'n cyfateb i GPIO 4. Y sianel sy'n cynhyrchu'r signal yw'r ledChannel, sy'n cyfateb i sianel 0.Pecyn Cychwyn Sylfaenol LAFVIN ESP32 - Cod 9Yn y ddolen, byddwch yn amrywio'r cylch dyletswydd rhwng 0 a 255 i gynyddu disgleirdeb LED.Pecyn Cychwyn Sylfaenol LAFVIN ESP32 - disgleirdebAc yna, rhwng 255 a 0 i leihau'r disgleirdeb.Pecyn Cychwyn Sylfaenol LAFVIN ESP32 - disgleirdeb 1I osod disgleirdeb y LED, does ond angen i chi ddefnyddio'r swyddogaeth ledcWrite() sy'n derbyn fel dadleuon y sianel sy'n cynhyrchu'r signal, a'r cylch dyletswydd.Pecyn Cychwyn Sylfaenol LAFVIN ESP32 - disgleirdeb 2Gan ein bod yn defnyddio cydraniad 8-did, bydd y cylch dyletswydd yn cael ei reoli gan ddefnyddio gwerth o 0 i 255. Sylwch mai yn y swyddogaeth ledcWrite() rydym yn defnyddio'r sianel sy'n cynhyrchu'r signal, ac nid y GPIO.

Profi yr Example

Llwythwch y cod i fyny i'ch ESP32. Gwnewch yn siŵr bod y bwrdd cywir a'r porthladd COM wedi'u dewis. Edrychwch ar eich cylched. Dylech gael LED pylu sy'n cynyddu ac yn lleihau disgleirdeb.Pecyn Cychwyn Sylfaenol LAFVIN ESP32 - Profi'r Example

Prosiect 4 Synhwyrydd Cynnig PIR ESP32

Mae'r prosiect hwn yn dangos sut i ganfod mudiant gyda'r ESP32 gan ddefnyddio synhwyrydd mudiant PIR. Bydd y swnyn yn canu larwm pan fydd symudiad yn cael ei ganfod, ac yn stopio'r larwm pan na chanfyddir mudiant am amser rhagosodedig (fel 4 eiliad).
Sut mae Synhwyrydd Cynnig HC-SR501 yn Gweithio
.Pecyn Cychwyn Sylfaenol LAFVIN ESP32 - Synhwyrydd Symudiad yn GweithioMae egwyddor weithredol synhwyrydd HC-SR501 yn seiliedig ar newid yr ymbelydredd isgoch ar y gwrthrych symudol. Er mwyn cael ei ganfod gan y synhwyrydd HC-SR501, rhaid i'r gwrthrych fodloni dau ofyniad:

  • Mae'r gwrthrych yn allyrru'r ffordd isgoch.
  • Mae'r gwrthrych yn symud neu'n ysgwyd

Felly:
Os yw gwrthrych yn allyrru'r pelydr isgoch ond ddim yn symud (ee, person yn sefyll yn llonydd heb symud), NID yw'n cael ei ganfod gan y synhwyrydd.
Os yw gwrthrych yn symud ond NAD YW'N allyrru'r pelydr isgoch (ee, robot neu gerbyd), NID yw'n cael ei ganfod gan y synhwyrydd.
Cyflwyno Amseryddion
Yn y cynampLe byddwn hefyd yn cyflwyno amseryddion. Rydym am i'r LED aros ymlaen am nifer rhagnodedig o eiliadau ar ôl canfod mudiant. Yn lle defnyddio swyddogaeth oedi () sy'n blocio'ch cod ac nad yw'n caniatáu ichi wneud unrhyw beth arall am nifer penodol o eiliadau, dylem ddefnyddio amserydd.Pecyn Cychwyn Sylfaenol LAFVIN ESP32 - Cyflwyno AmseryddionSwyddogaeth oedi ().
Dylech fod yn gyfarwydd â'r swyddogaeth oedi () gan ei fod yn cael ei ddefnyddio'n eang. Mae'r swyddogaeth hon yn eithaf syml i'w defnyddio. Mae'n derbyn un rhif int fel dadl.
Mae'r rhif hwn yn cynrychioli'r amser mewn milieiliadau y mae'n rhaid i'r rhaglen aros nes symud ymlaen i linell nesaf y cod.Pecyn Cychwyn Sylfaenol LAFVIN ESP32 - codPan fyddwch yn oedi (1000) bydd eich rhaglen yn stopio ar y llinell honno am 1 eiliad.
Mae oedi () yn swyddogaeth rwystro. Mae swyddogaethau blocio yn atal rhaglen rhag gwneud unrhyw beth arall nes bod y dasg benodol honno wedi'i chwblhau. Os oes angen tasgau lluosog arnoch i ddigwydd ar yr un pryd, ni allwch ddefnyddio oedi ().
Ar gyfer y rhan fwyaf o brosiectau dylech osgoi defnyddio oedi a defnyddio amseryddion yn lle hynny.
Swyddogaeth millis().
Gan ddefnyddio ffwythiant o'r enw millis() gallwch ddychwelyd nifer y milieiliadau sydd wedi mynd heibio ers i'r rhaglen gychwyn gyntaf.Pecyn Cychwyn Sylfaenol LAFVIN ESP32 - cychwynnodd y rhaglen gyntafPam fod y swyddogaeth honno'n ddefnyddiol? Oherwydd trwy ddefnyddio rhywfaint o fathemateg, gallwch chi wirio'n hawdd faint o amser sydd wedi mynd heibio heb rwystro'ch cod.
Rhannau Angenrheidiol
I ddilyn y tiwtorial hwn mae angen y rhannau canlynol arnoch

  • Bwrdd ESP32 DEVKIT V1
  • Synhwyrydd mudiant PIR (HC-SR501)
  • Buzzer Gweithredol
  • Gwifrau siwmper
  • Bwrdd bara

SgematigPecyn Cychwyn Sylfaenol LAFVIN ESP32 - Sgematig 1Nodyn: Y cyftage o HC-SR501 yw 5V. Defnyddiwch y pin Vin i'w bweru.
Cod
Cyn bwrw ymlaen â'r tiwtorial hwn, dylech gael yr ychwanegyn ESP32 wedi'i osod yn eich Arduino IDE. Dilynwch un o'r tiwtorialau canlynol i osod yr ESP32 ar yr Arduino IDE, os nad ydych chi wedi gwneud hynny eisoes. (Os ydych chi eisoes wedi gwneud y cam hwn, gallwch chi fynd i'r cam nesaf.)
Gosod Ychwanegyn ESP32 yn Arduino IDE
Agorwch y cod Project_4_ESP32_PIR_Motion_Sensor.ino yn arduino IDE.
Arddangosiad
Llwythwch y cod i fyny i'ch bwrdd ESP32. Gwnewch yn siŵr bod gennych y bwrdd cywir a phorthladd COM selected.Upload camau cyfeirnod cod.
Agorwch y Monitor Cyfresol ar gyfradd baud o 115200.Pecyn Cychwyn Sylfaenol LAFVIN ESP32 - Arddangosiad 1Symudwch eich llaw o flaen y synhwyrydd PIR. Dylai'r swnyn droi ymlaen, ac mae'r neges wedi'i hargraffu yn y Monitor Cyfresol yn dweud “Motion detected!Buzzer alarm”.
Ar ôl 4 eiliad dylai'r swnyn ddiffodd.Pecyn Cychwyn Sylfaenol LAFVIN ESP32 - swnyn

Prosiect 5 ESP32 Switch Web Gweinydd

Yn y prosiect hwn byddwch yn creu arunig web gweinydd gydag ESP32 sy'n rheoli allbynnau (dau LED) gan ddefnyddio amgylchedd rhaglennu Arduino IDE. Mae'r web gweinydd sy'n ymatebol i ffonau symudol a gellir ei gyrchu gydag unrhyw ddyfais sydd fel porwr ar y rhwydwaith lleol. Byddwn yn dangos i chi sut i greu'r web gweinydd a sut mae'r cod yn gweithio gam wrth gam.
Prosiect Drosview
Cyn mynd yn syth at y prosiect, mae'n bwysig amlinellu beth yw ein web bydd gweinydd yn ei wneud, fel ei bod yn haws dilyn y camau yn nes ymlaen.

  • Mae'r web gweinydd byddwch chi'n adeiladu rheolyddion dau LED sy'n gysylltiedig â'r ESP32 GPIO 26 a GPIO 27;
  • Gallwch gael mynediad i'r ESP32 web gweinydd trwy deipio cyfeiriad IP ESP32 ar borwr yn y rhwydwaith lleol;
  • Drwy glicio ar y botymau ar eich web gweinydd gallwch yn syth newid cyflwr pob LED.

Rhannau Angenrheidiol
Ar gyfer y tiwtorial hwn bydd angen y rhannau canlynol arnoch:

  • Bwrdd ESP32 DEVKIT V1
  • LED 2x 5mm
  • Gwrthydd 2x 200 Ohm
  • Bwrdd bara
  • Gwifrau siwmper

Sgematig
Dechreuwch trwy adeiladu'r gylched. Cysylltwch ddau LED â'r ESP32 fel y dangosir yn y diagram sgematig canlynol - un LED wedi'i gysylltu â GPIO 26, a'r llall â GPIO 27.
Nodyn: Rydym yn defnyddio bwrdd ESP32 DEVKIT DOIT gyda 36 pin. Cyn cydosod y gylched, gwnewch yn siŵr eich bod yn gwirio'r pinout ar gyfer y bwrdd rydych chi'n ei ddefnyddio.Pecyn Cychwyn Sylfaenol LAFVIN ESP32 - SgematigCod
Yma rydyn ni'n darparu'r cod sy'n creu'r ESP32 web gweinydd. Agorwch y cod Project_5_ESP32_Switch _Web_Server.ino yn arduino IDE, ond peidiwch â'i uwchlwytho eto. Mae angen i chi wneud rhai newidiadau i wneud iddo weithio i chi.
Byddwn yn rhaglennu'r ESP32 gan ddefnyddio Arduino IDE, felly gwnewch yn siŵr bod gennych yr ychwanegiad ESP32 wedi'i osod cyn symud ymlaen: (Os ydych chi eisoes wedi gwneud y cam hwn, gallwch chi fynd i'r cam nesaf.)
Gosod Ychwanegyn ESP32 yn Arduino IDE
Gosod Eich Manylion Rhwydwaith
Mae angen i chi addasu'r llinellau canlynol gyda'ch manylion rhwydwaith: SSID a chyfrinair. Mae llawer o sylwadau ar y cod ar ble y dylech wneud y newidiadau.Pecyn Cychwyn Sylfaenol LAFVIN ESP32 - Manylion RhwydwaithWrthi'n uwchlwytho'r Cod
Nawr, gallwch chi uwchlwytho'r cod a'r web Bydd y gweinydd yn gweithio ar unwaith.
Dilynwch y camau nesaf i uwchlwytho cod i'r ESP32:

  1. Plygiwch eich bwrdd ESP32 yn eich cyfrifiadur;
  2. Yn yr Arduino IDE dewiswch eich bwrdd yn Tools> Board (yn ein hachos ni rydym yn defnyddio bwrdd ESP32 DEVKIT DOIT);Pecyn Cychwyn Sylfaenol LAFVIN ESP32 - Lanlwytho'r Cod
  3. Dewiswch y porthladd COM yn Tools> Port.Pecyn Cychwyn Sylfaenol LAFVIN ESP32 - Porthladd Offer
  4. Pwyswch y botwm Llwytho i Fyny yn yr Arduino IDE ac arhoswch ychydig eiliadau tra bod y cod yn llunio ac yn uwchlwytho i'ch bwrdd.Pecyn Cychwyn Sylfaenol LAFVIN ESP32 - ICON 7
  5. Arhoswch am y neges “Done uploading”.Pecyn Cychwyn Sylfaenol LAFVIN ESP32 - Wedi gorffen uwchlwytho 1

Dod o hyd i'r Cyfeiriad IP ESP
Ar ôl uwchlwytho'r cod, agorwch y Monitor Cyfresol ar gyfradd baud o 115200.Pecyn Cychwyn Sylfaenol LAFVIN ESP32 - Cyfeiriad IP ESPPwyswch y botwm ESP32 EN (ailosod). Mae'r ESP32 yn cysylltu â Wi-Fi, ac yn allbynnu cyfeiriad IP ESP ar y Monitor Cyfresol. Copïwch y cyfeiriad IP hwnnw, oherwydd mae ei angen arnoch i gael mynediad i'r ESP32 web gweinydd.Pecyn Cychwyn Sylfaenol LAFVIN ESP32 - web gweinyddWrth gael mynediad i'r Web Gweinydd
I gael mynediad i'r web gweinydd, agorwch eich porwr, gludwch y cyfeiriad IP ESP32, a byddwch yn gweld y dudalen ganlynol.
Nodyn: Dylai eich porwr ac ESP32 gael eu cysylltu â'r un LAN.LAFVIN ESP32 Pecyn Cychwyn Sylfaenol - Cyrchu'r Web GweinyddOs edrychwch ar y Monitor Cyfresol, gallwch weld beth sy'n digwydd ar y cefndir. Mae'r ESP yn derbyn cais HTTP gan gleient newydd (yn yr achos hwn, eich porwr).Pecyn Cychwyn Sylfaenol LAFVIN ESP32 - cais HTTPGallwch hefyd weld gwybodaeth arall am y cais HTTP.
Arddangosiad
Nawr gallwch chi brofi a yw eich web gweinydd yn gweithio'n iawn. Cliciwch y botymau i reoli'r LEDs.Pecyn Cychwyn Sylfaenol LAFVIN ESP32 - cefndirAr yr un pryd, gallwch edrych ar y Monitor Cyfresol i weld beth sy'n digwydd yn y cefndir. Am gynample, pan gliciwch y botwm i droi GPIO 26 YMLAEN, mae ESP32 yn derbyn cais ar y /26/on URL.Pecyn Cychwyn Sylfaenol LAFVIN ESP32 - URLPan fydd yr ESP32 yn derbyn y cais hwnnw, mae'n troi'r LED sydd ynghlwm wrth GPIO 26 ON ac yn diweddaru ei gyflwr ar y web tudalen.Pecyn Cychwyn Sylfaenol LAFVIN ESP32 - web tudalenMae'r botwm ar gyfer GPIO 27 yn gweithio mewn ffordd debyg. Profwch ei fod yn gweithio'n iawn.Pecyn Cychwyn Sylfaenol LAFVIN ESP32 - gweithio'n iawn

Sut mae'r Cod yn Gweithio

Bydd yr adran hon yn edrych yn agosach ar y cod i weld sut mae'n gweithio.
Y peth cyntaf sydd angen i chi ei wneud yw cynnwys y llyfrgell WiFi.Pecyn Cychwyn Sylfaenol LAFVIN ESP32 - llyfrgell WiFiFel y soniwyd yn flaenorol, mae angen i chi fewnosod eich ssid a'ch cyfrinair yn y llinellau canlynol y tu mewn i'r dyfynbrisiau dwbl.Pecyn Cychwyn Sylfaenol LAFVIN ESP32 - dyfynbrisiau dwblYna, byddwch yn gosod eich web gweinydd i borth 80.Pecyn Cychwyn Sylfaenol LAFVIN ESP32 - web gweinyddMae'r llinell ganlynol yn creu newidyn i storio pennawd y cais HTTP:Pecyn Cychwyn Sylfaenol LAFVIN ESP32 - Cais HTTPNesaf, byddwch yn creu newidynnau ategol i storio cyflwr presennol eich allbynnau. Os ydych chi am ychwanegu mwy o allbynnau ac arbed ei gyflwr, mae angen i chi greu mwy o newidynnau.Pecyn Cychwyn Sylfaenol LAFVIN ESP32 - newidynnauMae angen i chi hefyd aseinio GPIO i bob un o'ch allbynnau. Yma rydym yn defnyddio GPIO 26 a GPIO 27. Gallwch ddefnyddio unrhyw GPIOs addas eraill.Pecyn Cychwyn Sylfaenol LAFVIN ESP32 - addas arallgosod ()
Nawr, gadewch i ni fynd i mewn i'r setup (). Yn gyntaf, rydym yn dechrau cyfathrebiad cyfresol ar gyfradd baud o 115200 at ddibenion dadfygio.Pecyn Cychwyn Sylfaenol LAFVIN ESP32 - dibenionRydych hefyd yn diffinio eich GPIOs fel ALLBYNNAU ac yn eu gosod i ISEL.Pecyn Cychwyn Sylfaenol LAFVIN ESP32 - GPIOs fel ALLBYNNAUMae'r llinellau canlynol yn cychwyn y cysylltiad Wi-Fi â WiFi.begin(ssid, cyfrinair), aros am gysylltiad llwyddiannus ac argraffu cyfeiriad IP ESP yn y Monitor Cyfresol.Pecyn Cychwyn Sylfaenol LAFVIN ESP32 - CyfresolPecyn Cychwyn Sylfaenol LAFVIN ESP32 - Cyfres 1dolen ()
Yn y ddolen () rydym yn rhaglennu beth sy'n digwydd pan fydd cleient newydd yn sefydlu cysylltiad â'r web gweinydd.
Mae'r ESP32 bob amser yn gwrando ar gleientiaid sy'n dod i mewn gyda'r llinell ganlynol:Pecyn Cychwyn Sylfaenol LAFVIN ESP32 - dolenPan dderbynnir cais gan gleient, byddwn yn cadw'r data sy'n dod i mewn. Bydd y ddolen tra sy'n dilyn yn rhedeg cyhyd â bod y cleient yn aros yn gysylltiedig. Nid ydym yn argymell newid y rhan ganlynol o'r cod oni bai eich bod yn gwybod yn union beth rydych yn ei wneud.Pecyn Cychwyn Sylfaenol LAFVIN ESP32 - yn unionPecyn Cychwyn Sylfaenol LAFVIN ESP32 - union 1Pecyn Cychwyn Sylfaenol LAFVIN ESP32 - union 2Mae adran nesaf datganiadau os ac arall yn gwirio pa fotwm gafodd ei wasgu yn eich web tudalen, ac yn rheoli'r allbynnau yn unol â hynny. Fel y gwelsom o'r blaen, rydym yn gwneud cais ar wahanol URLs yn dibynnu ar y botwm pwyso.Pecyn Cychwyn Sylfaenol LAFVIN ESP32 - botwm wedi'i wasguPecyn Cychwyn Sylfaenol LAFVIN ESP32 - botwm 1 wedi'i wasguAm gynample, os ydych chi wedi pwyso'r botwm GPIO 26 ON, mae'r ESP32 yn derbyn cais ar y /26/ON URL (gallwn weld bod y wybodaeth honno ar y pennawd HTTP ar y Monitor Cyfresol). Felly, gallwn wirio a yw'r pennawd yn cynnwys yr ymadrodd GET /26/on. Os yw'n cynnwys, rydym yn newid y newidyn allbwn26state i ON, ac mae'r ESP32 yn troi'r LED ymlaen.
Mae hyn yn gweithio'n debyg ar gyfer y botymau eraill. Felly, os ydych chi am ychwanegu mwy o allbynnau, dylech addasu'r rhan hon o'r cod i'w cynnwys.
Yn dangos yr HTML web tudalen
Y peth nesaf sydd angen i chi ei wneud yw creu'r web tudalen. Bydd yr ESP32 yn anfon ymateb i'ch porwr gyda rhywfaint o god HTML i adeiladu'r web tudalen.
Mae'r web tudalen yn cael ei hanfon at y cleient gan ddefnyddio'r cleient mynegi hwn.println(). Dylech nodi'r hyn rydych am ei anfon at y cleient fel dadl.
Y peth cyntaf y dylem ei anfon bob amser yw'r llinell ganlynol, sy'n nodi ein bod yn anfon HTML.Pecyn Cychwyn Sylfaenol LAFVIN ESP32 - anfon HTMLYna, mae'r llinell ganlynol yn gwneud y web tudalen ymatebol mewn unrhyw web porwr.Pecyn Cychwyn Sylfaenol LAFVIN ESP32 - web porwrA defnyddir y canlynol i atal ceisiadau ar y favicon. - Nid oes angen i chi boeni am y llinell hon.Pecyn Cychwyn Sylfaenol LAFVIN ESP32 - client.println

Steilio'r Web Tudalen

Nesaf, mae gennym rywfaint o destun CSS i steilio'r botymau a'r web ymddangosiad tudalen.
Rydyn ni'n dewis y ffont Helvetica, yn diffinio'r cynnwys i'w arddangos fel bloc a'i alinio yn y canol.LAFVIN ESP32 Pecyn Cychwyn Sylfaenol - Steilio'r Web TudalenRydyn ni'n steilio ein botymau gyda'r lliw # 4CAF50, heb ffin, testun mewn lliw gwyn, a gyda'r padin hwn: 16px 40px. Rydym hefyd yn gosod y testun-addurn i ddim, diffinio maint y ffont, yr ymyl, a'r cyrchwr i bwyntydd.Pecyn Cychwyn Sylfaenol LAFVIN ESP32 - pwyntyddRydyn ni hefyd yn diffinio'r arddull ar gyfer ail botwm, gyda holl briodweddau'r botwm rydyn ni wedi'i ddiffinio'n gynharach, ond gyda lliw gwahanol. Dyma fydd yr arddull ar gyfer y botwm i ffwrdd.Pecyn Cychwyn Sylfaenol LAFVIN ESP32 - client.println 1

Gosod y Web Tudalen Pennawd Cyntaf
Yn y llinell nesaf gallwch osod y pennawd cyntaf eich web tudalen. Yma mae gennym “ESP32 Web Gweinydd”, ond gallwch chi newid y testun hwn i beth bynnag y dymunwch.Pecyn Cychwyn Sylfaenol LAFVIN ESP32 - Web Pennawd TudalenArddangos y Botymau a Chyflwr Cyfatebol
Yna, rydych chi'n ysgrifennu paragraff i arddangos cyflwr cyfredol GPIO 26. Fel y gallwch weld, rydym yn defnyddio'r newidyn allbwn26State, fel bod y cyflwr yn diweddaru'n syth pan fydd y newidyn hwn yn newid.Pecyn Cychwyn Sylfaenol LAFVIN ESP32 - newidiadau amrywiolYna, rydym yn arddangos y botwm ymlaen neu i ffwrdd, yn dibynnu ar gyflwr presennol y GPIO. Os yw cyflwr presennol y GPIO i ffwrdd, rydym yn dangos y botwm ON, os na, rydym yn arddangos y botwm OFF.Pecyn Cychwyn Sylfaenol LAFVIN ESP32 - dangoswch y botwm OFFRydym yn defnyddio'r un weithdrefn ar gyfer GPIO 27.
Cau'r Cysylltiad
Yn olaf, pan ddaw'r ymateb i ben, rydym yn clirio'r newidyn pennawd, ac yn atal y cysylltiad â'r cleient â client.stop().Pecyn Cychwyn Sylfaenol LAFVIN ESP32 - Cau'r Cysylltiad

Lapio

Yn y tiwtorial hwn rydym wedi dangos i chi sut i adeiladu a web gweinydd gyda'r ESP32. Rydyn ni wedi dangos enghraifft syml i chiampMae hynny'n rheoli dau LED, ond y syniad yw disodli'r LEDau hynny â chyfnewid, neu unrhyw allbwn arall yr ydych am ei reoli.

Prosiect 6 RGB LED Web Gweinydd

Yn y prosiect hwn byddwn yn dangos i chi sut i reoli RGB LED o bell gyda bwrdd ESP32 gan ddefnyddio a web gweinydd gyda dewiswr lliw.
Prosiect Drosview
Cyn dechrau arni, gadewch i ni weld sut mae'r prosiect hwn yn gweithio:Pecyn Cychwyn Sylfaenol LAFVIN ESP32 - Prosiect drosoddview

  • Yr ESP32 web gweinydd yn arddangos codwr lliw.
  • Pan ddewisoch chi liw, mae eich porwr yn gwneud cais ar a URL sy'n cynnwys paramedrau R, G, a B y lliw a ddewiswyd.
  • Mae eich ESP32 yn derbyn y cais ac yn rhannu'r gwerth ar gyfer pob paramedr lliw.
  • Yna, mae'n anfon signal PWM gyda'r gwerth cyfatebol i'r GPIOs sy'n rheoli'r RGB LED.

Sut mae LEDs RGB yn gweithio?
Mewn catod cyffredin RGB LED, mae pob un o'r tri LED yn rhannu cysylltiad negyddol (catod). Mae pob un sydd wedi'i gynnwys yn y pecyn yn RGB catod cyffredin.Pecyn Cychwyn Sylfaenol LAFVIN ESP32 - mae LEDs RGB yn gweithioSut i greu lliwiau gwahanol?
Gyda LED RGB gallwch, wrth gwrs, gynhyrchu golau coch, gwyrdd a glas, a thrwy ffurfweddu dwyster pob LED, gallwch chi gynhyrchu lliwiau eraill hefyd.
Am gynampLe, i gynhyrchu golau glas pur, byddech chi'n gosod y LED glas i'r dwyster uchaf a'r LEDau gwyrdd a choch i'r dwyster isaf. Ar gyfer golau gwyn, byddech chi'n gosod y tri LED i'r dwyster uchaf.
Cymysgu lliwiau
I gynhyrchu lliwiau eraill, gallwch gyfuno'r tri lliw mewn gwahanol ddwysedd. I addasu dwyster pob LED gallwch ddefnyddio signal PWM.
Oherwydd bod y LEDs yn agos iawn at ei gilydd, mae ein llygaid yn gweld canlyniad y cyfuniad o liwiau, yn hytrach na'r tri lliw yn unigol.
I gael syniad ar sut i gyfuno'r lliwiau, edrychwch ar y siart canlynol.
Dyma'r siart cymysgu lliwiau symlaf, ond mae'n rhoi syniad i chi sut mae'n gweithio a sut i gynhyrchu gwahanol liwiau.Pecyn Cychwyn Sylfaenol LAFVIN ESP32 - lliwiau gwahanolRhannau Angenrheidiol
Ar gyfer y prosiect hwn mae angen y rhannau canlynol arnoch:

  • Bwrdd ESP32 DEVKIT V1
  • RGB LED
  • Gwrthyddion 3x 220 ohm
  • Gwifrau siwmper
  • Bwrdd bara

SgematigPecyn Cychwyn Sylfaenol LAFVIN ESP32 - SgematigCod
Byddwn yn rhaglennu'r ESP32 gan ddefnyddio Arduino IDE, felly gwnewch yn siŵr bod gennych yr ychwanegiad ESP32 wedi'i osod cyn symud ymlaen: (Os ydych chi eisoes wedi gwneud y cam hwn, gallwch chi fynd i'r cam nesaf.)

  • Gosod Ychwanegyn ESP32 yn Arduino IDE

Ar ôl cydosod y gylched, Agorwch y cod
Prosiect_6_RGB_LED_Web_Server.ino yn arduino IDE.
Cyn uwchlwytho'r cod, peidiwch ag anghofio mewnosod eich tystlythyrau rhwydwaith fel y gall yr ESP gysylltu â'ch rhwydwaith lleol.Pecyn Cychwyn Sylfaenol LAFVIN ESP32 - rhwydwaith lleolSut mae'r cod yn gweithio
Mae braslun ESP32 yn defnyddio'r llyfrgell WiFi.h.Pecyn Cychwyn Sylfaenol LAFVIN ESP32 - llyfrgell WiFi.hMae'r llinellau canlynol yn diffinio newidynnau llinynnol i ddal y paramedrau R, G, a B o'r cais.LAFVIN ESP32 Pecyn Cychwyn Sylfaenol - Llinynnol redStringDefnyddir y pedwar newidyn nesaf i ddadgodio'r cais HTTP yn nes ymlaen.Pecyn Cychwyn Sylfaenol LAFVIN ESP32 - cais HTTPCreu tri newidyn ar gyfer y GPIOs a fydd yn rheoli paramedrau stribedi R, G, a B. Yn yr achos hwn rydym yn defnyddio GPIO 13, GPIO 12, a GPIO 14.Pecyn Cychwyn Sylfaenol LAFVIN ESP32 - angen GPIOsMae angen i'r GPIOs hyn allbynnu signalau PWM, felly mae angen i ni ffurfweddu'r eiddo PWM yn gyntaf. Gosodwch amledd y signal PWM i 5000 Hz. Yna, cysylltwch sianel PWM ar gyfer pob lliwPecyn Cychwyn Sylfaenol LAFVIN ESP32 - pob lliwAc yn olaf, gosodwch benderfyniad y sianeli PWM i 8-didPecyn Cychwyn Sylfaenol LAFVIN ESP32 - sianeli PWMYn y setup (), aseinio'r priodweddau PWM i'r sianeli PWMPecyn Cychwyn Sylfaenol LAFVIN ESP32 - sianeli PWMAtodwch y sianeli PWM i'r GPIOs cyfatebolPecyn Cychwyn Sylfaenol LAFVIN ESP32 - GPIOs cyfatebolMae'r adran cod ganlynol yn dangos y codwr lliw yn eich web tudalen ac yn gwneud cais yn seiliedig ar y lliw rydych chi wedi'i ddewis.Pecyn Cychwyn Sylfaenol LAFVIN ESP32 - wedi'i ddewisPecyn Cychwyn Sylfaenol LAFVIN ESP32 - client.printlnPecyn Cychwyn Sylfaenol LAFVIN ESP32 - client.println 1Pan fyddwch chi'n dewis lliw, rydych chi'n derbyn cais gyda'r fformat canlynol.Pecyn Cychwyn Sylfaenol LAFVIN ESP32 - y fformat canlynol

Felly, mae angen i ni rannu'r llinyn hwn i gael y paramedrau R, G, a B. Mae'r paramedrau'n cael eu cadw mewn newidynnau redString, greenString, a blueString a gallant fod â gwerthoedd rhwng 0 a 255.Pecyn Cychwyn Sylfaenol LAFVIN ESP32 - pennawdPecyn Cychwyn Sylfaenol LAFVIN ESP32 - pennawd 1I reoli'r stribed gyda'r ESP32, defnyddiwch y swyddogaeth ledcWrite() i gynhyrchu signalau PWM gyda'r gwerthoedd wedi'u datgodio o'r HTTP cais.Pecyn Cychwyn Sylfaenol LAFVIN ESP32 - cais HTTP 1Nodyn: dysgu mwy am PWM gydag ESP32: Prosiect 3 ESP32 PWM (Allbwn Analog)
Er mwyn rheoli'r stribed gyda'r ESP8266, does ond angen i ni ei ddefnyddio
y swyddogaeth analogWrite() i gynhyrchu signalau PWM gyda'r gwerthoedd wedi'u datgodio o'r cais HTPP.
analogWrite(redPin, redString.toInt());
analogWrite(greenPin, greenString.toInt());
analogWrite(bluePin, blueString.toInt())
Oherwydd ein bod yn cael y gwerthoedd mewn newidyn llinyn, mae angen i ni eu trosi'n gyfanrifau gan ddefnyddio'r dull toInt().
Arddangosiad
Ar ôl mewnosod eich tystlythyrau rhwydwaith, dewiswch y bwrdd cywir a phorthladd COM a lanlwythwch y cod i'ch camau cyfeirnod cod ESP32.Upload.
Ar ôl uwchlwytho, agorwch y Monitor Cyfresol ar gyfradd baud o 115200 a gwasgwch y botwm Galluogi/Ailosod ESP. Dylech gael cyfeiriad IP y bwrdd.Pecyn Cychwyn Sylfaenol LAFVIN ESP32 - yr un LANAgorwch eich porwr a rhowch y cyfeiriad IP ESP. Nawr, defnyddiwch y codwr lliw i ddewis lliw ar gyfer yr RGB LED.
Yna, mae angen i chi wasgu'r botwm "Newid Lliw" er mwyn i'r lliw ddod i rym.Pecyn Cychwyn Sylfaenol LAFVIN ESP32 - RGB LEDI ddiffodd y LED RGB , dewiswch y lliw du.
Y lliwiau cryfaf (ar frig y codwr lliw), yw'r rhai a fydd yn cynhyrchu canlyniadau gwell.Pecyn Cychwyn Sylfaenol LAFVIN ESP32 - canlyniadau gwell

Prosiect 7 ESP32 Relay Web Gweinydd

Mae defnyddio ras gyfnewid gyda'r ESP32 yn ffordd wych o reoli offer cartref AC o bell. Mae'r tiwtorial hwn yn esbonio sut i reoli modiwl ras gyfnewid gyda'r ESP32.
Byddwn yn edrych ar sut mae modiwl ras gyfnewid yn gweithio, sut i gysylltu'r ras gyfnewid â'r ESP32 ac adeiladu web gweinydd i reoli ras gyfnewid o bell.
Cyflwyno Teithiau Cyfnewid
Switsh a weithredir yn drydanol yw ras gyfnewid ac fel unrhyw switsh arall, gellir ei droi ymlaen neu i ffwrdd, gan adael i'r cerrynt fynd drwodd ai peidio. Gellir ei reoli gyda chyfrol iseltages, fel y 3.3V a ddarperir gan y GPIOs ESP32 ac yn ein galluogi i reoli cyfaint ucheltages fel 12V, 24V neu brif gyflenwad cyftage (230V yn Ewrop a 120V yn yr Unol Daleithiau).Pecyn Cychwyn Sylfaenol LAFVIN ESP32 - Cyflwyno ReleiauAr yr ochr chwith, mae dwy set o dri soced i gysylltu cyfaint ucheltages, a'r pinnau ar yr ochr dde (isel-cyftage) cysylltu â GPIOs ESP32.
Prif gyflenwad Voltage CysylltiadauLAFVIN ESP32 Pecyn Cychwyn Sylfaenol - Prif Gyfroltage CysylltiadauMae gan y modiwl ras gyfnewid a ddangosir yn y llun blaenorol ddau gysylltydd, pob un â thri soced: cyffredin (COM), Ar Gau Fel arfer (NC), ac Ar Agor Fel arfer (NO).

  • COM: cysylltwch y cerrynt yr ydych am ei reoli (prif gyflenwad cyftaga).
  • NC (Ar Gau Fel arfer): defnyddir y ffurfwedd sydd wedi'i chau fel arfer pan fyddwch am i'r ras gyfnewid gael ei chau yn ddiofyn. Mae'r NC yn pinnau COM wedi'u cysylltu, sy'n golygu bod y cerrynt yn llifo oni bai eich bod yn anfon signal o'r ESP32 i'r modiwl ras gyfnewid i agor y gylched ac atal y llif cerrynt.
  • NA (Agored Fel arfer): mae'r cyfluniad sydd fel arfer yn agored yn gweithio'r ffordd arall: nid oes cysylltiad rhwng y pinnau NO a COM, felly mae'r gylched wedi'i thorri oni bai eich bod yn anfon signal o'r ESP32 i gau'r gylched.

Pinnau RheoliPecyn Cychwyn Sylfaenol LAFVIN ESP32 - Pinnau RheoliMae'r isel-cyftagMae gan yr ochr set o bedwar pin a set o dri phin. Mae'r set gyntaf yn cynnwys VCC a GND i bweru'r modiwl, a mewnbwn 1 (IN1) a mewnbwn 2 (IN2) i reoli'r ras gyfnewid gwaelod a brig, yn y drefn honno.
Os mai dim ond un sianel sydd gan eich modiwl ras gyfnewid, dim ond un pin IN fydd gennych. Os oes gennych bedair sianel, bydd gennych bedwar pin IN, ac ati.
Mae'r signal a anfonwch at y pinnau IN, yn pennu a yw'r ras gyfnewid yn weithredol ai peidio. Mae'r ras gyfnewid yn cael ei sbarduno pan fydd y mewnbwn yn mynd o dan tua 2V. Mae hyn yn golygu y bydd gennych y senarios canlynol:

  • Cyfluniad Ar gau fel arfer (NC):
  • Signal UCHEL – mae cerrynt yn llifo
  • Signal ISEL – nid yw'r cerrynt yn llifo
  • Ffurfwedd agored fel arfer (NA):
  • Signal UCHEL – nid yw'r cerrynt yn llifo
  • Signal ISEL – cerrynt yn llifo

Dylech ddefnyddio cyfluniad sydd wedi'i gau fel arfer pan ddylai'r cerrynt fod yn llifo'r rhan fwyaf o'r amseroedd, a dim ond yn achlysurol y byddwch am ei atal.
Defnyddiwch ffurfwedd agored fel arfer pan fyddwch am i'r cerrynt lifo'n achlysurol (ar gyfer example, tro ar alamp yn achlysurol).
Detholiad Cyflenwad PŵerPecyn Cychwyn Sylfaenol LAFVIN ESP32 - Dewis Cyflenwad PŵerMae'r ail set o binnau yn cynnwys pinnau GND, VCC, a JD-VCC.
Mae'r pin JD-VCC yn pweru electromagnet y ras gyfnewid. Sylwch fod gan y modiwl gap siwmper sy'n cysylltu'r pinnau VCC a JD-VCC; mae'r un a ddangosir yma yn felyn, ond efallai fod eich lliw chi yn lliw gwahanol.
Gyda'r cap siwmper ymlaen, mae'r pinnau VCC a JD-VCC wedi'u cysylltu. Mae hynny'n golygu bod yr electromagnet cyfnewid yn cael ei bweru'n uniongyrchol o'r pin pŵer ESP32, felly nid yw'r modiwl ras gyfnewid a'r cylchedau ESP32 wedi'u hynysu'n gorfforol oddi wrth ei gilydd.
Heb y cap siwmper, mae angen i chi ddarparu ffynhonnell pŵer annibynnol i bweru electromagnet y ras gyfnewid trwy'r pin JD-VCC. Mae'r cyfluniad hwnnw'n ynysu'r rasys cyfnewid yn gorfforol o'r ESP32 gydag optocoupler adeiledig y modiwl, sy'n atal difrod i'r ESP32 rhag ofn y bydd pigau trydanol.
SgematigPecyn Cychwyn Sylfaenol LAFVIN ESP32 - SgematigRhybudd: Defnydd o gyfaint ucheltage gall cyflenwadau pŵer achosi anaf difrifol.
Felly, defnyddir LEDs 5mm yn lle cyflenwad uchel cyftage bylbiau yn yr arbrawf. Os nad ydych yn gyfarwydd â phrif gyflenwad cyftage gofynnwch i rywun sydd i'ch helpu chi. Wrth raglennu'r ESP neu weirio'ch cylched gwnewch yn siŵr bod popeth wedi'i ddatgysylltu o'r prif gyflenwad cyftage.LAFVIN ESP32 Pecyn Cychwyn Sylfaenol - prif gyflenwad cyftageGosod y Llyfrgell ar gyfer ESP32
I adeiladu hyn web gweinydd, rydym yn defnyddio'r ESPAsyncWebLlyfrgell gweinydd a Llyfrgell AsyncTCP.
Gosod yr ESPAsyncWebLlyfrgell gweinydd
Dilynwch y camau nesaf i osod y ESPAsyncWebGweinydd llyfrgell:

  1. Cliciwch yma i lawrlwytho'r ESPAsyncWebLlyfrgell gweinydd. Dylech gael
    ffolder .zip yn eich ffolder Lawrlwythiadau
  2. Dadsipio'r ffolder .zip a dylech gael ESPAsyncWebFfolder gweinydd-feistr
  3. Ail-enwi eich ffolder o ESPAsyncWebGweinydd-feistr i ESPAsyncWebGweinydd
  4. Symudwch yr ESPAsyncWebFfolder gweinydd i'ch ffolder llyfrgelloedd gosod Arduino IDE

Fel arall, yn eich IDE Arduino, gallwch fynd i Braslun> Cynnwys
Llyfrgell > Ychwanegu llyfrgell .ZIP... a dewiswch y llyfrgell rydych newydd ei lawrlwytho.
Gosod y Llyfrgell AsyncTCP ar gyfer ESP32
Mae'r ESPAsyncWebGweinydd llyfrgell yn gofyn am y AsyncTCP llyfrgell i weithio. Dilyn
y camau nesaf i osod y llyfrgell honno:

  1. Cliciwch yma i lawrlwytho'r llyfrgell AsyncTCP. Dylai fod gennych ffolder .zip yn eich ffolder Lawrlwythiadau
  2. Dadsipio'r ffolder .zip a dylech gael ffolder AsyncTCP-master
    1. Ail-enwi eich ffolder o AsyncTCP-meistr i AsyncTCP
    3. Symudwch y ffolder AsyncTCP i'ch ffolder llyfrgelloedd gosod Arduino IDE
    4. Yn olaf, ail-agor eich Arduino IDE

Fel arall, yn eich IDE Arduino, gallwch fynd i Braslun> Cynnwys
Llyfrgell > Ychwanegu llyfrgell .ZIP... a dewiswch y llyfrgell rydych newydd ei lawrlwytho.
Cod
Byddwn yn rhaglennu'r ESP32 gan ddefnyddio Arduino IDE, felly gwnewch yn siŵr bod gennych yr ychwanegiad ESP32 wedi'i osod cyn symud ymlaen: (Os ydych chi eisoes wedi gwneud y cam hwn, gallwch chi fynd i'r cam nesaf.)
Gosod Ychwanegyn ESP32 yn Arduino IDE
Ar ôl gosod y llyfrgelloedd gofynnol, Agorwch y cod Project_7_ESP32_Relay_Web_Server.ino yn arduino IDE.
Cyn uwchlwytho'r cod, peidiwch ag anghofio mewnosod eich tystlythyrau rhwydwaith fel y gall yr ESP gysylltu â'ch rhwydwaith lleol.Pecyn Cychwyn Sylfaenol LAFVIN ESP32 - rhwydwaith ocalArddangosiad
Ar ôl gwneud y newidiadau angenrheidiol, lanlwythwch y cod i'ch camau cyfeirnod cod ESP32.Upload.
Agorwch y Monitor Cyfresol ar gyfradd baud o 115200 a gwasgwch y botwm ESP32 EN i gael ei gyfeiriad IP. Yna, agorwch borwr yn eich rhwydwaith lleol a theipiwch y cyfeiriad IP ESP32 i gael mynediad i'r web gweinydd.
Agorwch y Monitor Cyfresol ar gyfradd baud o 115200 a gwasgwch y botwm ESP32 EN i gael ei gyfeiriad IP. Yna, agorwch borwr yn eich rhwydwaith lleol a theipiwch y cyfeiriad IP ESP32 i gael mynediad i'r web gweinydd.Pecyn Cychwyn Sylfaenol LAFVIN ESP32 - web gweinyddNodyn: Dylai eich porwr ac ESP32 gael eu cysylltu â'r un LAN.
Dylech gael rhywbeth fel a ganlyn gyda dau fotwm â nifer y trosglwyddiadau cyfnewid rydych chi wedi'u diffinio yn eich cod.Pecyn Cychwyn Sylfaenol LAFVIN ESP32 - ffôn clyfarNawr, gallwch chi ddefnyddio'r botymau i reoli'ch rasys cyfnewid gan ddefnyddio'ch ffôn clyfar.Pecyn Cychwyn Sylfaenol LAFVIN ESP32 - ffôn clyfar 1

Prosiect_8_Allbwn_Cyflwr_Cydamseru_ Web_Gweinydd

Mae'r Prosiect hwn yn dangos sut i reoli allbynnau ESP32 neu ESP8266 gan ddefnyddio a web gweinydd a botwm corfforol ar yr un pryd. Mae cyflwr allbwn yn cael ei ddiweddaru ar y web tudalen p'un a yw'n cael ei newid trwy'r botwm corfforol neu web gweinydd.
Prosiect Drosview
Gadewch i ni edrych yn gyflym ar sut mae'r prosiect yn gweithio.Pecyn Cychwyn Sylfaenol LAFVIN ESP32 - Prosiect drosoddviewMae'r ESP32 neu ESP8266 yn cynnal a web gweinydd sy'n eich galluogi i reoli cyflwr allbwn;

  • Mae cyflwr allbwn cyfredol yn cael ei arddangos ar y web gweinydd;
  • Mae'r ESP hefyd wedi'i gysylltu â botwm gwthio corfforol sy'n rheoli'r un allbwn;
  • Os byddwch chi'n newid y cyflwr allbwn gan ddefnyddio'r botwm puhs ffisegol, mae ei gyflwr presennol hefyd yn cael ei ddiweddaru ar y web gweinydd.

I grynhoi, mae'r prosiect hwn yn eich galluogi i reoli'r un allbwn gan ddefnyddio a web gweinydd a botwm gwthio ar yr un pryd. Pryd bynnag y bydd y cyflwr allbwn yn newid, bydd y web gweinydd yn cael ei ddiweddaru.
Rhannau Angenrheidiol
Dyma restr o'r rhannau sydd eu hangen arnoch i adeiladu'r gylched:

  • Bwrdd ESP32 DEVKIT V1
  • LED 5 mm
  • Gwrthydd 220 Ohm
  • botwm gwthio
  • Gwrthydd Ohm 10k
  • Bwrdd bara
  • Gwifrau siwmper

SgematigPecyn Cychwyn Sylfaenol LAFVIN ESP32 - Sgematig 1Gosod y Llyfrgell ar gyfer ESP32
I adeiladu hyn web gweinydd, rydym yn defnyddio'r ESPAsyncWebLlyfrgell gweinydd a Llyfrgell AsyncTCP. (Os ydych chi eisoes wedi gwneud y cam hwn, gallwch neidio i'r cam nesaf.)
Gosod yr ESPAsyncWebLlyfrgell gweinydd
Dilynwch y camau nesaf i osod yr ESPAsyncWebLlyfrgell gweinydd:

  1. Cliciwch yma i lawrlwytho'r ESPAsyncWebLlyfrgell gweinydd. Dylech gael
    ffolder .zip yn eich ffolder Lawrlwythiadau
  2. Dadsipio'r ffolder .zip a dylech gael ESPAsyncWebFfolder gweinydd-feistr
  3. Ail-enwi eich ffolder o ESPAsyncWebGweinydd-feistr i ESPAsyncWebGweinydd
  4. Symudwch yr ESPAsyncWebFfolder gweinydd i'ch ffolder llyfrgelloedd gosod Arduino IDE
    Fel arall, yn eich IDE Arduino, gallwch fynd i Braslun> Cynnwys
    Llyfrgell > Ychwanegu llyfrgell .ZIP... a dewiswch y llyfrgell rydych newydd ei lawrlwytho.

Gosod y Llyfrgell AsyncTCP ar gyfer ESP32
Yr ESPAsyncWebMae llyfrgell gweinydd angen y llyfrgell AsyncTCP i weithio. Dilynwch y camau nesaf i osod y llyfrgell honno:

  1. Cliciwch yma i lawrlwytho'r llyfrgell AsyncTCP. Dylai fod gennych ffolder .zip yn eich ffolder Lawrlwythiadau
  2. Dadsipio'r ffolder .zip a dylech gael ffolder AsyncTCP-master
  3. Ail-enwi eich ffolder o AsyncTCP-master i AsyncTCP
  4. Symudwch y ffolder AsyncTCP i'ch ffolder llyfrgelloedd gosod Arduino IDE
  5. Yn olaf, ail-agor eich Arduino IDE
    Fel arall, yn eich IDE Arduino, gallwch fynd i Braslun> Cynnwys
    Llyfrgell > Ychwanegu llyfrgell .ZIP... a dewiswch y llyfrgell rydych newydd ei lawrlwytho.

Cod
Byddwn yn rhaglennu'r ESP32 gan ddefnyddio Arduino IDE, felly gwnewch yn siŵr bod gennych yr ychwanegiad ESP32 wedi'i osod cyn symud ymlaen: (Os ydych chi eisoes wedi gwneud y cam hwn, gallwch chi fynd i'r cam nesaf.)
Gosod Ychwanegyn ESP32 yn Arduino IDE
Ar ôl gosod y llyfrgelloedd gofynnol, Agorwch y cod
Prosiect_8_Allbwn_Cyflwr_Cydamseru_Web_Server.ino yn arduino IDE.
Cyn uwchlwytho'r cod, peidiwch ag anghofio mewnosod eich tystlythyrau rhwydwaith fel y gall yr ESP gysylltu â'ch rhwydwaith lleol.Pecyn Cychwyn Sylfaenol LAFVIN ESP32 - Cod

Sut mae'r Cod yn Gweithio

Cyflwr Botwm a Chyflwr Allbwn
Mae'r newidyn ledState yn dal cyflwr allbwn LED. For default, pan y web gweinydd yn dechrau, mae'n ISEL.Pecyn Cychwyn Sylfaenol LAFVIN ESP32 - Cod yn Gweithio

Defnyddir y buttonState a lastButtonState i ganfod a gafodd y botwm gwthio ei wasgu ai peidio.Pecyn Cychwyn Sylfaenol LAFVIN ESP32 - wedi'i wasgubotwm (web gweinydd)
Wnaethon ni ddim cynnwys yr HTML i greu'r botwm ar y newidyn index_html.
Mae hynny oherwydd ein bod am allu ei newid yn dibynnu ar y cyflwr LED presennol y gellir ei newid hefyd gyda'r botwm gwthio.
Felly, rydym wedi creu dalfan ar gyfer y botwm % BUTTONPLACEHOLDER% a fydd yn cael ei ddisodli â thestun HTML i greu'r botwm yn ddiweddarach ar y cod (gwneir hyn yn swyddogaeth y prosesydd()).Pecyn Cychwyn Sylfaenol LAFVIN ESP32 - cafodd ei wasgu 1prosesydd ()
Mae'r swyddogaeth prosesydd () yn disodli unrhyw ddalfannau ar y testun HTML gyda gwerthoedd gwirioneddol. Yn gyntaf, mae'n gwirio a yw'r testunau HTML yn cynnwys unrhyw rai
dalfannau %BUTTONPLACEHOLDholder%.Pecyn Cychwyn Sylfaenol LAFVIN ESP32 - prosesyddYna, ffoniwch y swyddogaeth OutputState() sy'n dychwelyd y cyflwr allbwn cyfredol. Rydym yn ei gadw yn y newidyn outputStateValue.Pecyn Cychwyn Sylfaenol LAFVIN ESP32 - outputStateAr ôl hynny, defnyddiwch y gwerth hwnnw i greu'r testun HTML i arddangos y botwm gyda'r cyflwr cywir:Pecyn Cychwyn Sylfaenol LAFVIN ESP32 - cod 4HTTP GET Cais i Newid Cyflwr Allbwn (JavaScript)
Pan fyddwch yn pwyso'r botwm, gelwir swyddogaeth thetoggleCheckbox(). Bydd y swyddogaeth hon yn gwneud cais ar wahanol URLs i droi'r LED ymlaen neu i ffwrdd.Pecyn Cychwyn Sylfaenol LAFVIN ESP32 - JavaScriptI droi'r LED ymlaen, mae'n gwneud cais ar y /update?state=1 URL:Pecyn Cychwyn Sylfaenol LAFVIN ESP32 - element.checkedFel arall, mae'n gwneud cais ar y /update?state=0 URL.
HTTP GET Cais i Ddiweddaru Cyflwr (JavaScript)
Er mwyn diweddaru'r cyflwr allbwn ar y web gweinydd, rydym yn galw'r swyddogaeth ganlynol sy'n gwneud cais newydd ar y / cyflwr URL bob eiliad.Pecyn Cychwyn Sylfaenol LAFVIN ESP32 - Cyflwr DiweddaruPecyn Cychwyn Sylfaenol LAFVIN ESP32 - Diweddariad Cyflwr 1Ymdrin â Cheisiadau
Yna, mae angen inni ymdrin â'r hyn sy'n digwydd pan fydd yr ESP32 neu ESP8266 yn derbyn ceisiadau ar y rheini URLs.
Pan dderbynnir cais ar y gwraidd /URL, rydym yn anfon y dudalen HTML yn ogystal â'r prosesydd.Pecyn Cychwyn Sylfaenol LAFVIN ESP32 - Trin CeisiadauPecyn Cychwyn Sylfaenol LAFVIN ESP32 - Delio â Cheisiadau 1Mae'r llinellau canlynol yn gwirio a gawsoch gais ar y /update?state=1 neu /update?state=0 URL ac yn newid y Wladwriaeth arweiniol yn unol â hynny.Pecyn Cychwyn Sylfaenol LAFVIN ESP32 - ledStatePecyn Cychwyn Sylfaenol LAFVIN ESP32 - mewnbwnParamPan dderbynnir cais ar y /cyflwr URL, rydym yn anfon y cyflwr allbwn cyfredol:Pecyn Cychwyn Sylfaenol LAFVIN ESP32 - cyflwr allbwndolen ()
Yn y ddolen (), rydyn ni'n dadfygio'r botwm gwthio ac yn troi'r LED ymlaen neu i ffwrdd yn dibynnu ar werth y ledState newidyn.Pecyn Cychwyn Sylfaenol LAFVIN ESP32 - dolen 1Arddangosiad
Llwythwch y cod i fyny i'ch camau cyfeirio cod ESP32 board.Upload.
Yna, agorwch y Monitor Cyfresol ar gyfradd baud o 115200. Pwyswch y botwm EN/RST ar y bwrdd i gael y cyfeiriad IP.Pecyn Cychwyn Sylfaenol LAFVIN ESP32 - ArddangosiadAgorwch borwr ar eich rhwydwaith lleol, a theipiwch y cyfeiriad IP ESP. Dylech gael mynediad i'r web gweinydd fel y dangosir isod.
Nodyn: Dylai eich porwr ac ESP32 gael eu cysylltu â'r un LAN.Pecyn Cychwyn Sylfaenol LAFVIN ESP32 - porwrGallwch toglo'r botwm ar y web gweinydd i droi'r LED ymlaen.Pecyn Cychwyn Sylfaenol LAFVIN ESP32 - web gweinydd 1Gallwch hefyd reoli'r un LED gyda'r botwm gwthio corfforol. Bydd ei gyflwr bob amser yn cael ei ddiweddaru'n awtomatig ar y web gweinydd.

Prosiect 9 ESP32 DHT11 Web Gweinydd

Yn y prosiect hwn, byddwch yn dysgu sut i adeiladu ESP32 asyncronaidd web gweinydd gyda'r DHT11 sy'n dangos tymheredd a lleithder gan ddefnyddio Arduino IDE.
Rhagofynion
Mae'r web gweinydd byddwn yn adeiladu diweddariadau y darlleniadau yn awtomatig heb fod angen adnewyddu'r web tudalen.
Gyda'r prosiect hwn byddwch yn dysgu:

  • Sut i ddarllen tymheredd a lleithder o synwyryddion DHT;
  • Adeiladu asyncronig web gweinydd gan ddefnyddio'r ESPAsyncWebLlyfrgell gweinydd;
  • Diweddaru'r darlleniadau synhwyrydd yn awtomatig heb fod angen adnewyddu'r web tudalen.

Asynchronous Web Gweinydd
I adeiladu'r web gweinydd byddwn yn defnyddio'r ESPAsyncWebLlyfrgell gweinydd sy'n darparu ffordd hawdd i adeiladu asyncronig web gweinydd. Adeiladu asyncronig web gweinydd wedi sawl advantagau fel y crybwyllwyd ar dudalen GitHub y llyfrgell, megis:

  • “Trin mwy nag un cysylltiad ar yr un pryd”;
  • “Pan fyddwch chi'n anfon yr ymateb, rydych chi'n barod ar unwaith i drin cysylltiadau eraill tra bod y gweinydd yn gofalu am anfon yr ymateb yn y cefndir”;
  • “Peiriant prosesu templed syml i drin templedi”;

Rhannau Angenrheidiol
I gwblhau'r tiwtorial hwn mae angen y rhannau canlynol arnoch:

  • Bwrdd datblygu ESP32
  • Modiwl DHT11
  • Bwrdd bara
  • Gwifrau siwmper

SgematigPecyn Cychwyn Sylfaenol LAFVIN ESP32 - Sgematig 2Gosod Llyfrgelloedd
Mae angen i chi osod cwpl o lyfrgelloedd ar gyfer y prosiect hwn:

Gosod y Llyfrgell Synhwyrydd DHT
I ddarllen o'r synhwyrydd DHT gan ddefnyddio Arduino IDE, mae angen i chi osod y Llyfrgell synhwyrydd DHT. Dilynwch y camau nesaf i osod y llyfrgell.

  1. Cliciwch yma i lawrlwytho'r llyfrgell DHT Sensor. Dylai fod gennych ffolder .zip yn eich ffolder Lawrlwythiadau
  2. Dadsipio'r ffolder .zip a dylech gael ffolder DHT-sensor-library-master
  3. Ail-enwi eich ffolder o DHT-sensor-library-master i DHT_sensor
  4. Symudwch y ffolder DHT_sensor i'ch ffolder llyfrgelloedd gosod Arduino IDE
  5. Yn olaf, ail-agor eich Arduino IDE

Gosod Gyrrwr Synhwyrydd Unedig Adafruit
Mae angen i chi hefyd osod y Llyfrgell Gyrwyr Synhwyrydd Unedig Adafruit i weithio gyda'r synhwyrydd DHT. Dilynwch y camau nesaf i osod y llyfrgell.

  1. Cliciwch yma i lawrlwytho llyfrgell Synhwyrydd Unedig Adafruit. Dylai fod gennych ffolder .zip yn eich ffolder Lawrlwythiadau
  2. Dadsipio'r ffolder .zip a dylech gael ffolder Adafruit_sensor-master
  3. Ail-enwi eich ffolder o Adafruit_sensor-master i Adafruit_sensor
  4. Symudwch y ffolder Adafruit_sensor i'ch ffolder llyfrgelloedd gosod Arduino IDE
  5. Yn olaf, ail-agor eich Arduino IDE

Gosod yr ESPAsyncWebLlyfrgell gweinydd

Dilynwch y camau nesaf i osod y ESPAsyncWebGweinydd llyfrgell:

  1. Cliciwch yma i lawrlwytho'r ESPAsyncWebLlyfrgell gweinydd. Dylech gael
    ffolder .zip yn eich ffolder Lawrlwythiadau
  2. Dadsipio'r ffolder .zip a dylech
    cael ESPAsyncWebFfolder gweinydd-feistr
  3. Ail-enwi eich ffolder o ESPAsyncWebGweinydd-feistr i ESPAsyncWebGweinydd
  4. Symudwch yr ESPAsyncWebFfolder gweinydd i'ch ffolder llyfrgelloedd gosod Arduino IDE

Gosod Llyfrgell TCP Async ar gyfer ESP32
Mae'r ESPAsyncWebGweinydd llyfrgell yn gofyn am y AsyncTCP llyfrgell i weithio. Dilynwch y camau nesaf i osod y llyfrgell honno:

  1. Cliciwch yma i lawrlwytho'r llyfrgell AsyncTCP. Dylai fod gennych ffolder .zip yn eich ffolder Lawrlwythiadau
  2. Dadsipio'r ffolder .zip a dylech gael ffolder AsyncTCP-master
  3. Ail-enwi eich ffolder o AsyncTCP-master i AsyncTCP
  4. Symudwch y ffolder AsyncTCP i'ch ffolder llyfrgelloedd gosod Arduino IDE
  5. Yn olaf, ail-agor eich Arduino IDE

Cod
Byddwn yn rhaglennu'r ESP32 gan ddefnyddio Arduino IDE, felly gwnewch yn siŵr bod gennych yr ychwanegiad ESP32 wedi'i osod cyn symud ymlaen: (Os ydych chi eisoes wedi gwneud y cam hwn, gallwch chi fynd i'r cam nesaf.)
Gosod Ychwanegyn ESP32 yn Arduino IDE
Ar ôl gosod y llyfrgelloedd gofynnol, Agorwch y cod
Prosiect_9_ESP32_DHT11_Web_Server.ino yn arduino IDE.
Cyn uwchlwytho'r cod, peidiwch ag anghofio mewnosod eich tystlythyrau rhwydwaith fel y gall yr ESP gysylltu â'ch rhwydwaith lleol.Pecyn Cychwyn Sylfaenol LAFVIN ESP32 - CodSut mae'r Cod yn Gweithio
Yn y paragraffau canlynol byddwn yn esbonio sut mae'r cod yn gweithio. Daliwch ati i ddarllen os ydych chi eisiau dysgu mwy neu neidio i'r adran Arddangos i weld y canlyniad terfynol.
Mewnforio llyfrgelloedd
Yn gyntaf, mewnforiwch y llyfrgelloedd gofynnol. Y WiFi, ESPAsyncWebMae angen gweinydd a'r ESPAsyncTCP i adeiladu'r web gweinydd. Mae angen yr Adafruit_Sensor a'r llyfrgelloedd DHT i ddarllen o'r synwyryddion DHT11 neu DHT22.Pecyn Cychwyn Sylfaenol LAFVIN ESP32 - Mewnforio llyfrgelloeddPecyn Cychwyn Sylfaenol LAFVIN ESP32 - Sut mae'r Cod yn GweithioDiffiniad o newidynnau
Diffiniwch y GPIO y mae'r pin data DHT wedi'i gysylltu ag ef. Yn yr achos hwn, mae'n gysylltiedig â GPIO 4.Pecyn Cychwyn Sylfaenol LAFVIN ESP32 - Diffiniad o newidynnauYna, dewiswch y math synhwyrydd DHT rydych chi'n ei ddefnyddio. Yn ein cynampLe, rydym yn defnyddio'r DHT22. Os ydych chi'n defnyddio math arall, does ond angen i chi ddadwneud eich synhwyrydd a rhoi sylwadau ar y lleill i gyd.Pecyn Cychwyn Sylfaenol LAFVIN ESP32 - Diffiniad o newidynnau 1

Cychwynnwch wrthrych DHT gyda'r math a'r pin rydyn ni wedi'u diffinio'n gynharach.Pecyn Cychwyn Sylfaenol LAFVIN ESP32 - Diffiniad o newidynnau 2Creu AsyncWebGwrthrych gweinydd ar borth 80.Pecyn Cychwyn Sylfaenol LAFVIN ESP32 - Diffiniad o newidynnau 3Darllenwch Swyddogaethau Tymheredd a Lleithder
Rydyn ni wedi creu dwy swyddogaeth: un i ddarllen y tymheredd Rydyn ni wedi creu dwy swyddogaeth: un i ddarllen y tymheredd (readDHTTemperature()) a'r llall i ddarllen lleithder (readDHTHumidity()).Pecyn Cychwyn Sylfaenol LAFVIN ESP32 - darllenDHTHumidityPecyn Cychwyn Sylfaenol LAFVIN ESP32 - darlleniadau synhwyryddMae cael darlleniadau synhwyrydd mor syml â defnyddio Mae cael darlleniadau synhwyrydd mor syml â defnyddio'r dulliau darllenTymheredd() a DarllenHumidity() ar y gwrthrych dht.Pecyn Cychwyn Sylfaenol LAFVIN ESP32 - gwrthrychMae gennym hefyd gyflwr sy'n dychwelyd dau doriad (–) rhag ofn i'r synhwyrydd fethu â chael y darlleniadau.Pecyn Cychwyn Sylfaenol LAFVIN ESP32 - darlleniadauDychwelir y darlleniadau fel math llinyn. I drosi fflôt yn llinyn, defnyddiwch y ffwythiant Llinyn().Pecyn Cychwyn Sylfaenol LAFVIN ESP32 - LlinynnolYn ddiofyn, rydyn ni'n darllen y tymheredd mewn graddau Celsius. I gael y tymheredd mewn graddau Fahrenheit, rhowch sylwadau ar y tymheredd yn Celsius a dadwneud y tymheredd yn Fahrenheit, fel bod gennych y canlynol:Pecyn Cychwyn Sylfaenol LAFVIN ESP32 - FahrenheitPecyn Cychwyn Sylfaenol LAFVIN ESP32 - Fahrenheit 1Llwythwch y Cod i fyny
Nawr, uwchlwythwch y cod i'ch ESP32. Gwnewch yn siŵr bod gennych y bwrdd cywir a phorthladd COM selected.Upload camau cyfeirnod cod.
Ar ôl llwytho i fyny, agorwch y Monitor Cyfresol ar gyfradd baud o 115200. Pwyswch y botwm ailosod ESP32. Dylid argraffu cyfeiriad IP ESP32 yn y gyfres monitor.Pecyn Cychwyn Sylfaenol LAFVIN ESP32 - Llwythwch y Cod i fynyArddangosiad
Agorwch borwr a theipiwch y cyfeiriad IP ESP32. Eich web dylai gweinydd arddangos y darlleniadau synhwyrydd diweddaraf.
Nodyn: Dylai eich porwr ac ESP32 gael eu cysylltu â'r un LAN.
Sylwch fod y darlleniadau tymheredd a lleithder yn cael eu diweddaru'n awtomatig heb fod angen adnewyddu'r web tudalen.Pecyn Cychwyn Sylfaenol LAFVIN ESP32 - Arddangosiad 1

Prosiect_10_ESP32_OLED_Arddangos

Mae'r prosiect hwn yn dangos sut i ddefnyddio'r arddangosfa OLED SSD0.96 1306 modfedd gydag ESP32 gan ddefnyddio Arduino IDE.
Cyflwyno Arddangosfa OLED 0.96 modfedd
Mae'r Arddangosfa OLED y byddwn yn ei ddefnyddio yn y tiwtorial hwn yw'r model SSD1306: arddangosfa monolliw, 0.96 modfedd gyda 128 × 64 picsel fel y dangosir yn y ffigur canlynol.Pecyn Cychwyn Sylfaenol LAFVIN ESP32 - Arddangosfa OLEDDNid oes angen backlight ar yr arddangosfa OLED, sy'n arwain at gyferbyniad braf iawn mewn amgylcheddau tywyll. Yn ogystal, dim ond pan fyddant ymlaen y mae ei bicseli yn defnyddio ynni, felly mae'r arddangosfa OLED yn defnyddio llai o bŵer o'i gymharu ag arddangosfeydd eraill.
Oherwydd bod yr arddangosfa OLED yn defnyddio protocol cyfathrebu I2C, mae gwifrau'n syml iawn. Gallwch ddefnyddio'r tabl canlynol fel cyfeiriad.

Pin OLED ESP32
Vin 3.3V
GND GND
SCL GPIO 22
SDA GPIO 21

SgematigPecyn Cychwyn Sylfaenol LAFVIN ESP32 - SgematigGosod Llyfrgell OLED SSD1306 - ESP32
Mae yna nifer o lyfrgelloedd ar gael i reoli'r arddangosfa OLED gyda'r ESP32.
Yn y tiwtorial hwn byddwn yn defnyddio dwy lyfrgell Adafruit: Llyfrgell Adafruit_SSD1306 a llyfrgell Adafruit_GFX.
Dilynwch y camau nesaf i osod y llyfrgelloedd hynny.

  1. Agorwch eich IDE Arduino ac ewch i Braslun> Cynnwys Llyfrgell> Rheoli Llyfrgelloedd. Dylai Rheolwr y Llyfrgell agor.
  2. Teipiwch “SSD1306” yn y blwch chwilio a gosodwch lyfrgell SSD1306 o Adafruit.Pecyn Cychwyn Sylfaenol LAFVIN ESP32 - Llyfrgell OLED-
  3. Ar ôl gosod y llyfrgell SSD1306 o Adafruit, teipiwch “GFX” yn y blwch chwilio a gosodwch y llyfrgell.Pecyn Cychwyn Sylfaenol LAFVIN ESP32 - llyfrgell
  4. Ar ôl gosod y llyfrgelloedd, ailgychwynwch eich Arduino IDE.

Cod
Ar ôl gosod y llyfrgelloedd gofynnol, Agorwch y Project_10_ESP32_OLED_Display.ino yn arduino IDE. cod
Byddwn yn rhaglennu'r ESP32 gan ddefnyddio Arduino IDE, felly gwnewch yn siŵr bod gennych yr ychwanegiad ESP32 wedi'i osod cyn symud ymlaen: (Os ydych chi eisoes wedi gwneud y cam hwn, gallwch chi fynd i'r cam nesaf.)
Gosod Ychwanegyn ESP32 yn Arduino IDEPecyn Cychwyn Sylfaenol LAFVIN ESP32 - Cod 1Pecyn Cychwyn Sylfaenol LAFVIN ESP32 - Cod 2Pecyn Cychwyn Sylfaenol LAFVIN ESP32 - Cod 3Sut mae'r Cod yn Gweithio
Mewnforio llyfrgelloedd
Yn gyntaf, mae angen i chi fewnforio'r llyfrgelloedd angenrheidiol. Y llyfrgell Wire i ddefnyddio I2C a llyfrgelloedd Adafruit i ysgrifennu i'r arddangosfa: Adafruit_GFX ac Adafruit_SSD1306.Pecyn Cychwyn Sylfaenol LAFVIN ESP32 - Cod yn Gweithio 1Pecyn Cychwyn Sylfaenol LAFVIN ESP32 - Cod yn Gweithio 2Cychwyn yr arddangosfa OLED
Yna, rydych chi'n diffinio'ch lled a'ch uchder OLED. Yn y cynampLe, rydym yn defnyddio arddangosfa OLED 128 × 64. Os ydych yn defnyddio meintiau eraill, gallwch newid hynny yn y newidynnau SCREEN_WIDTH, a SCREEN_HEIGHT.Pecyn Cychwyn Sylfaenol LAFVIN ESP32 - arddangosfa OLEDYna, dechreuwch wrthrych arddangos gyda'r lled a'r uchder a ddiffinnir yn gynharach gyda phrotocol cyfathrebu I2C (&Wire).Pecyn Cychwyn Sylfaenol LAFVIN ESP32 - protocol cyfathrebuMae'r paramedr (-1) yn golygu nad oes gan eich arddangosfa OLED pin AILOSOD. Os oes gan eich arddangosfa OLED bin AILOSOD, dylid ei gysylltu â GPIO. Yn yr achos hwnnw, dylech basio'r rhif GPIO fel paramedr.
Yn y setup (), dechreuwch y Monitor Cyfresol ar baud raute o 115200 at ddibenion dadfygio.Pecyn Cychwyn Sylfaenol LAFVIN ESP32 - dibenionCychwynnwch yr arddangosfa OLED gyda'r dull start () fel a ganlyn:Pecyn Cychwyn Sylfaenol LAFVIN ESP32 - display.beginPecyn Cychwyn Sylfaenol LAFVIN ESP32 - Serial.printlnMae'r pyt hwn hefyd yn argraffu neges ar y Monitor Cyfresol, rhag ofn na allwn gysylltu â'r arddangosfa.

Pecyn Cychwyn Sylfaenol LAFVIN ESP32 - Serial.println 1Rhag ofn eich bod yn defnyddio arddangosfa OLED wahanol, efallai y bydd angen i chi newid y cyfeiriad OLED. Yn ein hachos ni, y cyfeiriad yw 0x3C.Pecyn Cychwyn Sylfaenol LAFVIN ESP32 - cyfeiriadAr ôl cychwyn yr arddangosfa, ychwanegwch oedi o ddwy eiliad, fel bod gan yr OLED ddigon o amser i gychwyn cyn ysgrifennu testun:Pecyn Cychwyn Sylfaenol LAFVIN ESP32 - oediArddangosiad clir, gosod maint y ffont, lliwio ac ysgrifennu testun
Ar ôl cychwyn yr arddangosfa, cliriwch y byffer arddangos gyda'r dull ClearDisplay():Pecyn Cychwyn Sylfaenol LAFVIN ESP32 - arddangosfa

Cyn ysgrifennu testun, mae angen i chi osod maint y testun, lliw a lle bydd y testun yn cael ei arddangos yn yr OLED.
Gosodwch faint y ffont gan ddefnyddio'r dull setTextSize():Pecyn Cychwyn Sylfaenol LAFVIN ESP32 - arddangosfa 1Gosodwch liw'r ffont gyda'r dull setTextColor():
Mae WHITE yn gosod ffont gwyn a chefndir du.
Diffiniwch y safle lle mae'r testun yn dechrau gan ddefnyddio'r dull setCursor(x,y). Yn yr achos hwn, rydyn ni'n gosod y testun i ddechrau yn y cyfesurynnau (0,0) - ar y gornel chwith uchaf.Pecyn Cychwyn Sylfaenol LAFVIN ESP32 - setTextColor 1Yn olaf, gallwch anfon y testun i'r arddangosfa gan ddefnyddio'r dull println(), fel a ganlynPecyn Cychwyn Sylfaenol LAFVIN ESP32 - cod 5Yna, mae angen i chi ffonio'r dull arddangos () i arddangos y testun ar y sgrin mewn gwirionedd.Pecyn Cychwyn Sylfaenol LAFVIN ESP32 - arddangosfa

Mae llyfrgell Adafruit OLED yn darparu dulliau defnyddiol i sgrolio testun yn hawdd.

  • startscrollright(0x00, 0x0F): sgrolio testun o'r chwith i'r dde
  • startscrollleft(0x00, 0x0F): sgroliwch y testun o'r dde i'r chwith
  • startscrolldiagleft(0x00, 0x07): sgrolio testun o'r gornel chwith ar y gwaelod i'r gornel uchaf dde startscrolldiagleft(0x00, 0x07): sgrolio testun o'r gornel dde ar y gwaelod i'r gornel chwith uchaf

Llwythwch y Cod i fyny
Nawr, lanlwythwch y cod i'ch camau cyfeirnod cod ESP32.Upload.
Ar ôl uwchlwytho'r cod, bydd yr OLED yn arddangos testun sgrolio.Pecyn Cychwyn Sylfaenol LAFVIN ESP32 - sgrolio testunLAFVIN logo

Dogfennau / Adnoddau

Pecyn Cychwyn Sylfaenol LAFVIN ESP32 [pdfLlawlyfr Cyfarwyddiadau
Pecyn Cychwyn Sylfaenol ESP32, ESP32, Pecyn Cychwyn Sylfaenol, Pecyn Cychwyn

Cyfeiriadau

Gadael sylw

Ni fydd eich cyfeiriad e-bost yn cael ei gyhoeddi. Mae meysydd gofynnol wedi'u marcio *