Nembo ya LAFVINESP32 Kianzisha Msingi
Kiti

Orodha ya Ufungashaji

LAFVIN ESP32 Basic Starter Kit - PackingList

Utangulizi wa ESP32

Mpya kwa ESP32? Anzia hapa! ESP32 ni mfululizo wa vidhibiti vidogo vya Mfumo wa gharama ya chini na wa chini kwenye Chip (SoC) vilivyotengenezwa na Espressif ambavyo vinajumuisha uwezo wa wireless wa Wi-Fi na Bluetooth na kichakataji cha msingi-mbili. Ikiwa unaifahamu ESP8266, ESP32 ndiyo mrithi wake, iliyosheheni vipengele vingi vipya.LAFVIN ESP32 Basic Starter Kit - ESP32 UtanguliziMaelezo ya ESP32
Ikiwa unataka kupata kiufundi zaidi na maalum, unaweza kuangalia maelezo yafuatayo ya ESP32 (chanzo: http://esp32.net/) - kwa maelezo zaidi, angalia hifadhidata):

  • Muunganisho wa wireless wa WiFi: Kiwango cha data cha 150.0 Mbps na HT40
  • Bluetooth: BLE (Bluetooth Low Energy) na Bluetooth Classic
  • Kichakataji: Tensilica Xtensa Dual-Core 32-bit LX6 microprocessor, inayotumia 160 au 240 MHz
  • Kumbukumbu:
  • ROM: 448 KB (kwa uanzishaji na kazi za msingi)
  • SRAM: 520 KB (kwa data na maagizo)
  • RTC fas SRAM: 8 KB (kwa hifadhi ya data na CPU kuu wakati wa RTC Boot kutoka kwa hali ya usingizi mzito)
  • SRAM ya polepole ya RTC: 8KB (kwa kichakataji mwenza wakati wa hali ya usingizi mzito) eFuse: 1 Kbit (ambayo biti 256 hutumika kwa mfumo (anwani ya MAC na usanidi wa chipu) na biti 768 zilizosalia zimehifadhiwa kwa ajili ya programu za mteja, ikiwa ni pamoja na. Usimbaji fiche wa Flash na Chip-ID)

Mweko uliopachikwa: mweko uliounganishwa ndani kupitia IO16, IO17, SD_CMD, SD_CLK, SD_DATA_0 na SD_DATA_1 kwenye ESP32-D2WD na ESP32-PICO-D4.

  • 0 MiB (ESP32-D0WDQ6, ESP32-D0WD, na chipsi za ESP32-S0WD)
  • 2 MiB (Chip ESP32-D2WD)
  • 4 MiB (Moduli ya ESP32-PICO-D4 SiP)

Nguvu ya Chini: inahakikisha kuwa bado unaweza kutumia viongofu vya ADC, kwa mfanoample, wakati wa usingizi mzito.
Ingizo/Pato la Pembeni:

  • kiolesura cha pembeni na DMA ambacho kinajumuisha mguso wa uwezo
  • ADCs (Kigeuzi cha Analogi hadi Dijiti)
  • DAC (Kigeuzi Dijiti-hadi-Analogi)
  • I²C (Mzunguko Uliounganishwa)
  • UART (Kipokezi/Kisambazaji cha Universal Asynchronous)
  • SPI (Serial Pembeni Interface)
  • I²S (Sauti Iliyounganishwa ya Chipu)
  • RMII (Kiolesura Kilichopunguzwa cha Media-Independent)
  • PWM (Urekebishaji wa upana wa Pulse)

Usalama: vichapuzi vya vifaa vya AES na SSL/TLS

Bodi za Maendeleo za ESP32

ESP32 inarejelea chip tupu cha ESP32. Hata hivyo, neno la "ESP32" pia linatumika kurejelea bodi za ukuzaji za ESP32. Kutumia chip tupu za ESP32 si rahisi au vitendo, haswa wakati wa kujifunza, kujaribu, na kutoa picha. Mara nyingi, utataka kutumia bodi ya ukuzaji ya ESP32.
Tutakuwa tukitumia ubao wa ESP32 DEVKIT V1 kama marejeleo. Picha iliyo hapa chini inaonyesha ubao wa ESP32 DEVKIT V1, toleo lenye pini 30 za GPIO.LAFVIN ESP32 Basic Starter Kit - Bodi za Maendeleo za ESP32Maelezo - ESP32 DEVKIT V1
Jedwali lifuatalo linaonyesha muhtasari wa vipengele na vipimo vya bodi ya ESP32 DEVKIT V1 DOIT:

Idadi ya cores 2 (msingi mbili)
Wi-Fi 2.4 GHz hadi 150 Mbits/s
Bluetooth BLE (Bluetooth Low Energy) na Bluetooth iliyopitwa na wakati
Usanifu 32 bits
Mzunguko wa saa Hadi 240 MHz
RAM 512 KB
Pini 30 (kulingana na mfano)
Vifaa vya pembeni Capacitive touch, ADC (kigeuzi cha analogi hadi dijitali), DAC (kigeuzi cha dijitali hadi cha analogi), 12C (Mzunguko Uliounganishwa-Inter-Integrated), UART (kipokezi/kisambazaji cha ulimwengu wote), CAN 2.0 (Netwokr ya Eneo la Mdhibiti), SPI (Msururu wa Kiolesura cha Pembeni) , 12S (Integrated Inter-IC
Sauti), RMII (Kiolesura Kilichopunguzwa cha Media-Independent), PWM (urekebishaji wa upana wa mapigo), na zaidi.
Vifungo vilivyojengwa WEKA UPYA na vifungo vya BOOT
LED zilizojengwa LED ya bluu iliyojengwa iliyounganishwa na GPIO2; LED nyekundu iliyojengewa ndani inayoonyesha ubao unawashwa
USB kwa UART
daraja
CP2102

LAFVIN ESP32 Basic Starter Kit - ESP32 DEVKITInakuja na kiolesura cha microUSB ambacho unaweza kutumia kuunganisha ubao kwenye kompyuta yako ili kupakia msimbo au kutumia nguvu.
Inatumia chip CP2102 (USB hadi UART) kuwasiliana na kompyuta yako kupitia lango la COM kwa kutumia kiolesura cha mfululizo. Chip nyingine maarufu ni CH340. Angalia ni kigeuzi kipi cha USB hadi UART kwenye ubao wako kwa sababu utahitaji kusakinisha viendeshi vinavyohitajika ili kompyuta yako iweze kuwasiliana na ubao (maelezo zaidi kuhusu hili baadaye katika mwongozo huu).
Ubao huu pia unakuja na kitufe cha RESET (kinaweza kuandikwa EN) ili kuanzisha upya ubao na kitufe cha BOOT ili kuweka ubao katika hali ya kuangaza (inapatikana kupokea msimbo). Kumbuka kwamba baadhi ya bodi inaweza kuwa na kifungo BOOT.
Pia inakuja na LED ya bluu iliyojengewa ndani ambayo imeunganishwa ndani kwa GPIO 2. LED hii ni muhimu kwa utatuzi ili kutoa aina fulani ya pato la kimwili. Pia kuna LED nyekundu inayowaka unapotoa nguvu kwenye ubao.LAFVIN ESP32 Basic Starter Kit -bodiPinout ya ESP32
Vifaa vya pembeni vya ESP32 ni pamoja na:

  • Njia 18 za Kubadilisha Analogi hadi Dijiti (ADC).
  • 3 violesura vya SPI
  • miingiliano 3 ya UART
  • 2 violesura vya I2C
  • Njia 16 za pato za PWM
  • Vigeuzi 2 vya Dijitali hadi Analogi (DAC)
  • 2 violesura vya I2S
  • GPIO 10 za uwezo wa kuhisi

Vipengele vya ADC (kigeuzi cha analogi hadi dijitali) na DAC (kigeuzi cha dijitali hadi cha analogi) vimepewa pini maalum tuli. Hata hivyo, unaweza kuamua ni pini zipi ni UART, I2C, SPI, PWM, nk - unahitaji tu kuziweka kwenye msimbo. Hili linawezekana kutokana na kipengele cha kuzidisha cha chipu cha ESP32.
Ingawa unaweza kufafanua sifa za pini kwenye programu, kuna pini zilizopewa chaguo-msingi kama inavyoonyeshwa kwenye takwimu ifuatayo.LAFVIN ESP32 Basic Starter Kit - ESP32 PinoutZaidi ya hayo, kuna pini zilizo na vipengele maalum vinavyowafanya kuwa wanafaa au sio kwa mradi fulani. Jedwali lifuatalo linaonyesha ni pini zipi zinafaa zaidi kutumia kama pembejeo, matokeo na zipi unahitaji kuwa waangalifu.
Pini zilizoangaziwa kwa kijani kibichi ni sawa kutumia. Zilizoangaziwa kwa manjano ni sawa kuzitumia, lakini unahitaji kuzingatia kwa sababu zinaweza kuwa na tabia isiyotarajiwa hasa kwenye buti. Pini zilizoangaziwa kwa rangi nyekundu hazipendekezwi kutumika kama pembejeo au matokeo.

GP IO Ingizo Pato Vidokezo
0 vunjwa juu OK matokeo mawimbi ya PWM kwenye kuwasha, lazima iwe LOW ili kuingia katika hali ya kuwaka
1 Pini ya TX OK pato la kurekebisha kwenye buti
2 OK OK imeunganishwa kwenye ubao wa LED, lazima iachwe ikielea au CHINI ili kuingia katika hali ya kuwaka
3 OK Pini ya RX HIGH kwenye buti
4 OK OK
5 OK OK hutoa ishara ya PWM kwenye buti, pini ya kufunga
12 OK OK buti hushindwa ikivutwa juu, pini ya kufunga
13 OK OK
14 OK OK hutoa ishara ya PWM kwenye buti
15 OK OK hutoa ishara ya PWM kwenye buti, pini ya kufunga
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 pembejeo pekee
35 OK pembejeo pekee
36 OK pembejeo pekee
39 OK pembejeo pekee

Endelea kusoma kwa undani zaidi na uchambuzi wa kina wa ESP32 GPIOs na kazi zake.
Ingiza pini pekee
GPIO 34 hadi 39 ni GPIs - ingiza pini pekee. Pini hizi hazina viunzi vya ndani vya kuvuta juu au kuteremsha. Haziwezi kutumika kama matokeo, kwa hivyo tumia pini hizi kama pembejeo tu:

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

SPI flash imeunganishwa kwenye ESP-WROOM-32
GPIO 6 hadi GPIO 11 zimefichuliwa katika baadhi ya mbao za ukuzaji za ESP32. Hata hivyo, pini hizi zimeunganishwa kwenye mwako jumuishi wa SPI kwenye chip ya ESP-WROOM-32 na hazipendekezwi kwa matumizi mengine. Kwa hivyo, usitumie pini hizi kwenye miradi yako:

  • 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 touch GPIOs
ESP32 ina vihisi 10 vya ndani vya kugusa capacitive. Hizi zinaweza kuhisi tofauti katika kitu chochote kinachoshikilia chaji ya umeme, kama ngozi ya binadamu. Kwa hivyo wanaweza kugundua tofauti zinazosababishwa wakati wa kugusa GPIO kwa kidole. Pini hizi zinaweza kuunganishwa kwa urahisi kwenye usafi wa capacitive na kuchukua nafasi ya vifungo vya mitambo. Pini za kugusa zenye uwezo pia zinaweza kutumika kuamsha ESP32 kutoka kwa usingizi mzito. Sensorer hizo za mguso wa ndani zimeunganishwa kwa GPIO hizi:

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

Kigeuzi cha Analogi hadi Dijitali (ADC)
ESP32 ina biti 18 x 12 njia za uingizaji za ADC (wakati ESP8266 ina biti 1x 10 ADC pekee). Hizi ndizo GPIO zinazoweza kutumika kama ADC na chaneli husika:

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

Kumbuka: Pini za ADC2 haziwezi kutumika wakati Wi-Fi inatumika. Kwa hivyo, ikiwa unatumia Wi-Fi na unatatizika kupata thamani kutoka kwa ADC2 GPIO, unaweza kufikiria kutumia ADC1 GPIO badala yake. Hiyo inapaswa kutatua shida yako.
Njia za uingizaji za ADC zina azimio la 12-bit. Hii ina maana kwamba unaweza kupata usomaji wa analog kuanzia 0 hadi 4095, ambayo 0 inalingana na 0V na 4095 hadi 3.3V. Unaweza pia kuweka ubora wa vituo vyako kwenye msimbo na safu ya ADC.
Pini za ESP32 ADC hazina tabia ya mstari. Labda hutaweza kutofautisha kati ya 0 na 0.1V, au kati ya 3.2 na 3.3V. Unahitaji kukumbuka hilo unapotumia pini za ADC. Utapata tabia inayofanana na ile iliyoonyeshwa kwenye takwimu ifuatayo.LAFVIN ESP32 Basic Starter Kit - tabiaKigeuzi cha Dijitali hadi Analogi (DAC)
Kuna biti 2 x 8 chaneli za DAC kwenye ESP32 za kubadilisha mawimbi ya dijitali kuwa sauti ya analogi.tage matokeo ya ishara. Hizi ndizo njia za DAC:

  • DAC1 (GPIO25)
  • DAC2 (GPIO26)

RTC GPIOs
Kuna msaada wa RTC GPIO kwenye ESP32. GPIO zinazoelekezwa kwa mfumo mdogo wa RTC wa nishati ya chini zinaweza kutumika wakati ESP32 iko katika usingizi mzito. RTC GPIO hizi zinaweza kutumika kuamsha ESP32 kutoka kwa usingizi mzito wakati Kiwango cha Chini Zaidi
Kichakataji-shirikishi cha Power (ULP) kinafanya kazi. GPIO zifuatazo zinaweza kutumika kama chanzo cha nje cha kuamka.

  • 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
Kidhibiti cha PWM cha LED cha ESP32 kina chaneli 16 zinazojitegemea ambazo zinaweza kusanidiwa ili kutoa mawimbi ya PWM yenye sifa tofauti. Pini zote zinazoweza kufanya kazi kama matokeo zinaweza kutumika kama pini za PWM (GPIOs 34 hadi 39 haziwezi kutoa PWM).
Ili kuweka ishara ya PWM, unahitaji kufafanua vigezo hivi katika msimbo:

  • Mzunguko wa ishara;
  • Mzunguko wa wajibu;
  • chaneli ya PWM;
  • GPIO ambapo unataka kutoa ishara.

I2C
ESP32 ina chaneli mbili za I2C na pini yoyote inaweza kuwekwa kama SDA au SCL. Unapotumia ESP32 na Arduino IDE, pini chaguo-msingi za I2C ni:

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

Ikiwa unataka kutumia pini zingine unapotumia maktaba ya waya, unahitaji tu kupiga simu:
Wire.begin(SDA, SCL);
SPI
Kwa chaguo-msingi, ramani ya siri ya SPI ni:

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

Usumbufu
GPIO zote zinaweza kusanidiwa kama kukatizwa.
Pini za Kufunga
Chip ya ESP32 ina pini zifuatazo za kamba:

  • GPIO 0 (lazima iwe LOW ili kuingiza hali ya kuwasha)
  • GPIO 2 (lazima iwe inaelea au CHINI wakati wa kuwasha)
  • GPIO 4
  • GPIO 5 (lazima iwe JUU wakati wa kuwasha)
  • GPIO 12 (lazima iwe LOW wakati wa kuwasha)
  • GPIO 15 (lazima iwe JUU wakati wa kuwasha)

Hizi hutumika kuweka ESP32 kwenye bootloader au modi ya kuwaka. Kwenye bodi nyingi za usanidi zilizo na USB/Seri iliyojengewa ndani, huhitaji kuwa na wasiwasi kuhusu hali ya pini hizi. Ubao huweka pini katika hali sahihi kwa kuangaza au mode ya boot. Habari zaidi juu ya Uteuzi wa Njia ya Boot ya ESP32 inaweza kupatikana hapa.
Hata hivyo, ikiwa una vifaa vya pembeni vilivyounganishwa kwenye pini hizo, unaweza kuwa na shida kujaribu kupakia msimbo mpya, kuwasha ESP32 na programu dhibiti mpya, au kuweka upya ubao. Ikiwa una vifaa vya pembeni vilivyounganishwa kwenye pini za kufunga na unapata shida kupakia msimbo au kuwasha ESP32, inaweza kuwa kwa sababu vifaa hivyo vinazuia ESP32 kuingia katika hali sahihi. Soma nyaraka za Uteuzi wa Hali ya Boot ili kukuongoza katika mwelekeo sahihi. Baada ya kuweka upya, kuwaka, au kuwasha, pini hizo hufanya kazi inavyotarajiwa.
Pini HIGH kwenye Boot
Baadhi ya GPIO hubadilisha hali yao kuwa HIGH au mawimbi ya PWM ya kutoa kwenye kuwasha au kuweka upya.
Hii ina maana kwamba ikiwa una matokeo yaliyounganishwa kwa GPIO hizi unaweza kupata matokeo yasiyotarajiwa wakati ESP32 itaweka upya au kuwasha.

  • GPIO 1
  • GPIO 3
  • GPIO 5
  • GPIO 6 hadi GPIO 11 (imeunganishwa kwenye kumbukumbu ya ESP32 iliyounganishwa ya SPI - haipendekezwi kutumia).
  • GPIO 14
  • GPIO 15

Washa (EN)
Wezesha (EN) ni pini ya kuwasha ya kidhibiti 3.3V. Imevutwa juu, kwa hivyo unganisha chini ili kuzima kidhibiti cha 3.3V. Hii ina maana kwamba unaweza kutumia kipini hiki kilichounganishwa kwenye kitufe ili kuanzisha upya ESP32 yako, kwa mfanoample.
GPIO ya sasa imechorwa
Kiwango cha juu kabisa cha sasa kinachochorwa kwa kila GPIO ni 40mA kulingana na sehemu ya "Masharti ya Uendeshaji Yanayopendekezwa" katika hifadhidata ya ESP32.
Kihisi cha Madoido ya Ukumbi kilichojengwa ndani ya ESP32
ESP32 pia ina kihisi cha athari ya ukumbi kilichojengewa ndani ambacho hutambua mabadiliko katika uga wa sumaku katika mazingira yake
Kitambulisho cha ESP32 Arduino
Kuna programu jalizi ya IDE ya Arduino ambayo hukuruhusu kupanga ESP32 kwa kutumia Arduino IDE na lugha yake ya programu. Katika somo hili tutakuonyesha jinsi ya kusakinisha ubao wa ESP32 katika Arduino IDE iwe unatumia Windows, Mac OS X au Linux.
Masharti: IDE ya Arduino Imewekwa
Kabla ya kuanza utaratibu huu wa usakinishaji, unahitaji kuwa na Arduino IDE iliyosakinishwa kwenye kompyuta yako. Kuna matoleo mawili ya IDE ya Arduino unaweza kusakinisha: toleo la 1 na toleo la 2.
Unaweza kupakua na kusakinisha Arduino IDE kwa kubofya kiungo kifuatacho: arduino.cc/en/Main/Software
Je, ni toleo gani la Arduino IDE tunapendekeza? Kwa sasa, kuna baadhi plugins kwa ESP32 (kama SPIFFS FileSystem Uploader Plugin) ambazo bado hazitumiki kwenye Arduino 2. Kwa hivyo, ikiwa unakusudia kutumia programu-jalizi ya SPIFFS siku zijazo, tunapendekeza usakinishe toleo la zamani la 1.8.X. Unahitaji tu kusogeza chini kwenye ukurasa wa programu ya Arduino ili kuipata.
Inasakinisha programu jalizi ya ESP32 katika Arduino IDE
Ili kusakinisha ubao wa ESP32 kwenye Arduino IDE yako, fuata maagizo yafuatayo:

  1. Katika Arduino IDE yako, nenda kwa File> MapendeleoLAFVIN ESP32 Basic Starter Kit - Mapendeleo
  2. Ingiza yafuatayo kwenye "Meneja wa Bodi ya Ziada URLs” uwanja:

https://raw.githubusercontent.com/espressif/arduino-esp32/gh-pages/package_esp32_index.json
Kisha, bofya kitufe cha "Sawa":LAFVIN ESP32 Basic Starter Kit - kitufe cha "Sawa".Kumbuka: ikiwa tayari una bodi za ESP8266 URL, unaweza kutenganisha URLs na koma kama ifuatavyo:
https://raw.githubusercontent.com/espressif/arduino-esp32/gh-pages/package_esp32_index.json,
http://arduino.esp8266.com/stable/package_esp8266com_index.json
Fungua Meneja wa Bodi. Nenda kwa Zana > Bodi > Kidhibiti cha Bodi...LAFVIN ESP32 Basic Starter Kit - EspressifTafuta ESP32 and press install button for the “ESP32 by Espressif Systems“:LAFVIN ESP32 Basic Starter Kit - EspressifNi hayo tu. Inapaswa kusanikishwa baada ya sekunde chache.LAFVIN ESP32 Basic Starter Kit - imewekwa

Pakia Msimbo wa Jaribio

Chomeka ubao wa ESP32 kwenye kompyuta yako. Na Arduino IDE yako wazi, fuata hatua hizi:

  1. Chagua Bodi yako katika Zana > Menyu ya Bodi (kwa upande wangu ni Moduli ya ESP32 DEV)LAFVIN ESP32 Basic Starter Kit - Bodi ya Zana
  2. Chagua Mlango (ikiwa huoni Bandari ya COM kwenye Kitambulisho chako cha Arduino, unahitaji kusakinisha CP210x USB hadi UART Bridge VCP Drivers):LAFVIN ESP32 Basic Starter Kit - UART Bridge
  3. Fungua ex ifuatayoampchini ya File > Mfamples > WiFi
    (ESP32) > WiFiScanLAFVIN ESP32 Basic Starter Kit - WiFiScanLAFVIN ESP32 Basic Starter Kit - WiFiScan 1
  4. Mchoro mpya unafunguka kwenye IDE yako ya Arduino:LAFVIN ESP32 Basic Starter Kit - Arduino IDE
  5. Bonyeza kitufe cha Kupakia kwenye IDE ya Arduino. Subiri sekunde chache wakati msimbo unakusanya na kupakiwa kwenye ubao wako.LAFVIN ESP32 Basic Starter Kit - bodi
  6. Ikiwa kila kitu kilikwenda kama ilivyotarajiwa, unapaswa kuona "Nimemaliza kupakia." ujumbe.LAFVIN ESP32 Basic Starter Kit - Imemaliza kupakia
  7. Fungua Arduino IDE Serial Monitor kwa kiwango cha baud cha 115200:LAFVIN ESP32 Basic Starter Kit - Monitor
  8. Bonyeza kitufe cha Washa kwenye ubao cha ESP32 na unapaswa kuona mitandao inayopatikana karibu na ESP32 yako:LAFVIN ESP32 Basic Starter Kit - Washa kitufe

Kutatua matatizo

Ukijaribu kupakia mchoro mpya kwa ESP32 yako na ukapata ujumbe huu wa hitilafu "Hitilafu mbaya imetokea: Imeshindwa kuunganisha kwa ESP32: Muda umekwisha... Inaunganisha...". Inamaanisha kuwa ESP32 yako haiko katika hali ya kuwaka/kupakia.
Kuwa na jina sahihi la bodi na COM iliyochaguliwa, fuata hatua hizi:
Shikilia kitufe cha "BOOT" kwenye ubao wako wa ESP32LAFVIN ESP32 Basic Starter Kit - "BOOT"

  • Bonyeza kitufe cha "Pakia" kwenye Arduino IDE ili kupakia mchoro wako:LAFVIN ESP32 Basic Starter Kit - ICON 6
  • Baada ya kuona "Kuunganisha ...." ujumbe katika Arduino IDE yako, toa kidole kutoka kwa kitufe cha "BOOT":LAFVIN ESP32 Basic Starter Kit - "Imemaliza kupakia
  • Baada ya hapo, unapaswa kuona ujumbe "Umemaliza kupakia".
    Ni hayo tu. ESP32 yako inapaswa kuwa na mchoro mpya unaoendeshwa. Bonyeza kitufe cha "WEZESHA" ili kuanzisha upya ESP32 na kuendesha mchoro mpya uliopakiwa.
    Pia itabidi kurudia mfuatano huo wa vitufe kila wakati unapotaka kupakia mchoro mpya.

Pato la Mradi wa 1 wa ESP32

Katika mwongozo huu wa jinsi ya kuanza utajifunza jinsi ya kusoma pembejeo za kidijitali kama vile kubadili vitufe na kudhibiti matokeo ya dijitali kama vile LED kwa kutumia ESP32 iliyo na Arduino IDE.
Masharti
Tutapanga ESP32 kwa kutumia Arduino IDE. Kwa hivyo, hakikisha kuwa umesakinisha programu jalizi ya bodi za ESP32 kabla ya kuendelea:

  • Inasakinisha programu jalizi ya ESP32 katika Arduino IDE

ESP32 Dhibiti Matokeo ya Dijitali
Kwanza, unahitaji kuweka GPIO unayotaka kudhibiti kama OUTPUT. Tumia pinMode() kazi kama ifuatavyo:
pinMode(GPIO, OUTPUT);
Ili kudhibiti pato la dijiti unahitaji tu kutumia kitendakazi cha digitalWrite() , ambacho kinakubali kama hoja, GPIO (idadi ya int) unayorejelea, na hali, ama HIGH au LOW.
digitalWrite(GPIO, STATE);
GPIO zote zinaweza kutumika kama matokeo isipokuwa GPIO 6 hadi 11 (zilizounganishwa kwa mwako jumuishi wa SPI) na GPIO 34, 35, 36 na 39 (zinazoingiza GPIO pekee);
Jifunze zaidi kuhusu ESP32 GPIOs: Mwongozo wa Marejeleo wa ESP32 GPIO
ESP32 Soma Ingizo za Dijitali
Kwanza, weka GPIO unayotaka kusoma kama INPUT, ukitumia pinMode() kazi kama ifuatavyo:
pinMode(GPIO, INPUT);
Ili kusoma ingizo la dijiti, kama vile kitufe, unatumia chaguo za kukokotoa digitalRead(), ambayo inakubali kama hoja, GPIO (int number) unayorejelea.
digitalRead(GPIO);
ESP32 GPIO zote zinaweza kutumika kama pembejeo, isipokuwa GPIO 6 hadi 11 (zilizounganishwa kwenye mwako jumuishi wa SPI).
Jifunze zaidi kuhusu ESP32 GPIOs: Mwongozo wa Marejeleo wa ESP32 GPIO
Mradi Example
Ili kukuonyesha jinsi ya kutumia pembejeo za kidijitali na matokeo ya dijitali, tutaunda mradi rahisi wa zamaniample na kitufe cha kushinikiza na LED. Tutasoma hali ya kitufe cha kushinikiza na kuwasha taa ipasavyo kama inavyoonyeshwa kwenye takwimu ifuatayo.LAFVIN ESP32 Basic Starter Kit - Mradi Example

Sehemu Inahitajika
Hapa kuna orodha ya sehemu ambazo unahitaji kuunda mzunguko:

  • ESP32 DEVKIT V1
  • 5 mm LED
  • 220 Ohm kupinga
  • Kitufe cha kushinikiza
  • Kipinga cha 10k Ohm
  • Ubao wa mkate
  • Waya za kuruka

Mchoro wa Mpangilio
Kabla ya kuendelea, unahitaji kukusanyika mzunguko na LED na pushbutton.
Tutaunganisha LED kwa GPIO 5 na kitufe cha kushinikiza kwa GPIO 4.LAFVIN ESP32 Basic Starter Kit - Mchoro wa SchematicKanuni
Fungua msimbo Project_1_ESP32_Inputs_Outputs.ino katika arduino IDELAFVIN ESP32 Basic Starter Kit - KanuniLAFVIN ESP32 Basic Starter Kit - Msimbo wa 1Jinsi Kanuni Hufanya Kazi
Katika mistari miwili ifuatayo, unaunda vijiti vya kugawa pini:

LAFVIN ESP32 Basic Starter Kit - Code WorksKitufe kimeunganishwa na GPIO 4 na LED imeunganishwa na GPIO 5. Unapotumia Arduino IDE na ESP32, 4 inalingana na GPIO 4 na 5 inalingana na GPIO 5.
Ifuatayo, unaunda kibadilishaji ili kushikilia hali ya kitufe. Kwa chaguo-msingi, ni 0 (haijashinikizwa).
int buttonState = 0;
Katika usanidi(), unaanzisha kitufe kama PEMBEJEO, na LED kama OUTPUT.
Kwa hilo, unatumia kitendakazi cha pinMode() ambacho kinakubali pini unayorejelea, na modi: INPUT au OUTPUT.
pinMode(buttonPin, INPUT);
pinMode(ledPin, OUTPUT);
Kwenye kitanzi() ndipo unaposoma hali ya kitufe na kuweka LED ipasavyo.
Katika mstari unaofuata, unasoma hali ya kifungo na uihifadhi katika variable ya kifungoState.
Kama tulivyoona hapo awali, unatumia kitendakazi cha digitalRead().
buttonState = digitalRead(buttonPin);
Ifuatayo ikiwa taarifa, huangalia kama hali ya kitufe ni JUU. Ikiwa ni hivyo, huwasha taa kwa kutumia kitendakazi cha digitalWrite() ambacho kinakubali ledPin kama hoja, na hali ya HIGH.
ikiwa (buttonState == JUU)LAFVIN ESP32 Basic Starter Kit - Code Works 1Ikiwa hali ya kifungo sio JUU, unaweka LED. Weka tu LOW kama hoja ya pili kwenye kitendakazi cha digitalWrite().LAFVIN ESP32 Basic Starter Kit - digitalWriteInapakia Kanuni
Kabla ya kubofya kitufe cha kupakia, nenda kwenye Zana > Ubao, na uchague ubao :DOIT ESP32 DEVKIT V1 ubao.
Nenda kwa Zana > Bandari na uchague bandari ya COM ambayo ESP32 imeunganishwa. Kisha, bonyeza kitufe cha kupakia na usubiri ujumbe wa "Umemaliza kupakia".LAFVIN ESP32 Basic Starter Kit - ICON 7Kumbuka: Ukiona nukta nyingi (zinazounganisha…__…__) kwenye dirisha la utatuzi na ujumbe wa "Imeshindwa kuunganisha kwa ESP32: Muda umeisha kusubiri kichwa cha pakiti", hiyo inamaanisha unahitaji kubonyeza ESP32 kwenye ubao BOOT. kifungo baada ya dots
kuanza kuonekana.Utatuzi wa matatizo

Maonyesho

Baada ya kupakia msimbo, jaribu mzunguko wako. LED yako inapaswa kuwaka unapobonyeza kitufe cha kushinikiza:LAFVIN ESP32 Basic Starter Kit - MaonyeshoNa uzime unapoifungua:LAFVIN ESP32 Basic Starter Kit - zamu ya

Mradi wa 2 wa Pembejeo za Analogi za ESP32

Mradi huu unaonyesha jinsi ya kusoma pembejeo za analogi na ESP32 kwa kutumia Arduino IDE.
Usomaji wa analogi ni muhimu kusoma thamani kutoka kwa vipingamizi tofauti kama vile potentiometers, au vitambuzi vya analogi.
Ingizo za Analogi (ADC)
Kusoma thamani ya analogi na ESP32 inamaanisha unaweza kupima sauti inayotofautianatagviwango vya e kati ya 0 V na 3.3 V.
Juzuutage kipimo basi huwekwa kwa thamani kati ya 0 na 4095, ambapo 0 V inalingana na 0, na 3.3 V inalingana na 4095. Voltage yoyote.tage kati ya 0 V na 3.3 V itapewa thamani inayolingana kati yao.LAFVIN ESP32 Basic Starter Kit - Ingizo za AnalogiADC haina mstari
Kwa kweli, ungetarajia tabia ya mstari wakati wa kutumia pini za ESP32 ADC.
Hata hivyo, hilo halifanyiki. Utakachopata ni tabia kama inavyoonyeshwa kwenye chati ifuatayo:LAFVIN ESP32 Basic Starter Kit - Isiyo ya mstariTabia hii inamaanisha kuwa ESP32 yako haiwezi kutofautisha 3.3 V na 3.2 V.
Utapata thamani sawa kwa voltagnambari: 4095.
Vile vile hufanyika kwa ujazo wa chini sanatagmaadili ya e: kwa 0 V na 0.1 V utapata thamani sawa: 0. Unahitaji kukumbuka hili unapotumia pini za ESP32 ADC.
analogRead() Kazi
Kusoma ingizo la analogi na ESP32 kwa kutumia Arduino IDE ni rahisi kama kutumia kitendakazi cha analogRead(). Inakubali kama hoja, GPIO unayotaka kusoma:
analogRead(GPIO);
15 pekee zinapatikana katika DEVKIT V1board (toleo lenye GPIO 30).
Kunyakua pinout yako ya ubao wa ESP32 na utafute pini za ADC. Hizi zimeangaziwa na mpaka mwekundu kwenye takwimu hapa chini.LAFVIN ESP32 Basic Starter Kit - mpakaPini hizi za pembejeo za analogi zina azimio la biti 12. Hii inamaanisha kuwa unaposoma ingizo la analogi, safu yake inaweza kutofautiana kutoka 0 hadi 4095.
Kumbuka: Pini za ADC2 haziwezi kutumika wakati Wi-Fi inatumika. Kwa hivyo, ikiwa unatumia Wi-Fi na unatatizika kupata thamani kutoka kwa ADC2 GPIO, unaweza kufikiria kutumia ADC1 GPIO badala yake, hiyo inapaswa kutatua tatizo lako.
Ili kuona jinsi kila kitu kinavyounganishwa, tutafanya mfano rahisiample kusoma thamani ya analogi kutoka kwa potentiometer.
Sehemu Inahitajika
Kwa huyu example, unahitaji sehemu zifuatazo:

  • Bodi ya ESP32 DEVKIT V1
  • Potentiometer
  • Ubao wa mkate
  • Waya za kuruka

Kimpango
Waya kipima nguvu kwa ESP32 yako. Pini ya kati ya potentiometer inapaswa kuunganishwa kwa GPIO 4. Unaweza kutumia mchoro wa kimkakati ufuatao kama rejeleo.LAFVIN ESP32 Basic Starter Kit - SchematicKanuni
Tutapanga ESP32 kwa kutumia Arduino IDE, kwa hivyo hakikisha kuwa umesakinisha programu jalizi ya ESP32 kabla ya kuendelea:(Ikiwa tayari umefanya hatua hii, unaweza kuruka hadi hatua inayofuata.)
Inasakinisha programu jalizi ya ESP32 katika Arduino IDE
Fungua msimbo Project_2_ESP32_Inputs_Outputs.ino katika arduino IDELAFVIN ESP32 Basic Starter Kit - Msimbo wa 2Nambari hii inasoma tu maadili kutoka kwa potentiometer na kuchapisha maadili hayo kwenye Kifuatiliaji cha Ufuatiliaji.
Katika msimbo, unaanza kwa kufafanua GPIO potentiometer imeunganishwa. Katika hii example, GPIO 4.LAFVIN ESP32 Basic Starter Kit - exampleKatika usanidi(), anzisha mawasiliano ya mfululizo kwa kiwango cha baud cha 115200.LAFVIN ESP32 Basic Starter Kit - example 1Katika kitanzi(), tumia kitendakazi cha analogRead() kusoma ingizo la analogi kutoka kwa potPin.LAFVIN ESP32 Basic Starter Kit - example 2Hatimaye, chapisha maadili yaliyosomwa kutoka kwa potentiometer kwenye ufuatiliaji wa serial.LAFVIN ESP32 Basic Starter Kit - example 3Pakia msimbo uliotolewa kwa ESP32 yako. Hakikisha kuwa umechagua ubao sahihi na mlango wa COM kwenye menyu ya Zana.
Kupima Example
Baada ya kupakia msimbo na kubonyeza kitufe cha kuweka upya ESP32, fungua Ufuatiliaji wa Serial kwa kiwango cha baud cha 115200. Zungusha potentiometer na uone maadili yanayobadilika.Thamani ya juu utakayopata ni 4095 na thamani ya chini ni 0.LAFVIN ESP32 Basic Starter Kit -thamani ya juu zaidi

Kuhitimisha

Katika nakala hii umejifunza jinsi ya kusoma pembejeo za analogi kwa kutumia ESP32 na Arduino IDE. Kwa muhtasari:

  • Ubao wa ESP32 DEVKIT V1 DOIT (toleo lenye pini 30) una pini 15 za ADC unazoweza kutumia kusoma pembejeo za analogi.
  • Pini hizi zina azimio la biti 12, ambayo inamaanisha unaweza kupata maadili kutoka 0 hadi 4095.
  • Ili kusoma thamani katika IDE ya Arduino, unatumia tu kazi ya analogRead().
  • Pini za ESP32 ADC hazina tabia ya mstari. Labda hutaweza kutofautisha kati ya 0 na 0.1V, au kati ya 3.2 na 3.3V. Unahitaji kukumbuka hilo unapotumia pini za ADC.

Mradi wa 3 ESP32 PWM (Pato la Analogi)

Katika somo hili tutakuonyesha jinsi ya kutengeneza mawimbi ya PWM kwa kutumia ESP32 kwa kutumia Arduino IDE. Kama exampna tutaunda sakiti rahisi ambayo hupunguza taa ya LED kwa kutumia kidhibiti cha LED cha PWM cha ESP32.LAFVIN ESP32 Basic Starter Kit - AnalogOutputKidhibiti cha PWM cha LED cha ESP32
ESP32 ina kidhibiti cha LED PWM chenye chaneli 16 zinazojitegemea ambazo zinaweza kusanidiwa kutoa mawimbi ya PWM yenye sifa tofauti.
Hapa kuna hatua utalazimika kufuata ili kupunguza taa ya LED na PWM kwa kutumia Arduino IDE:

  1. Kwanza, unahitaji kuchagua kituo cha PWM. Kuna chaneli 16 kutoka 0 hadi 15.
  2. Kisha, unahitaji kuweka mzunguko wa ishara ya PWM. Kwa LED, mzunguko wa 5000 Hz ni sawa kutumia.
  3. Pia unahitaji kuweka azimio la mzunguko wa wajibu wa ishara: una maazimio kutoka biti 1 hadi 16. Tutatumia mwonekano wa 8-bit, kumaanisha kuwa unaweza kudhibiti mwangaza wa LED kwa kutumia thamani kutoka 0 hadi 255.
  4.  Ifuatayo, unahitaji kutaja ni GPIO au GPIO gani ambayo ishara itaonekana. Kwa hiyo utatumia kazi ifuatayo:
    ledcAttachPin(GPIO, chaneli)
    Chaguo hili la kukokotoa linakubali hoja mbili. Ya kwanza ni GPIO ambayo itatoa ishara, na ya pili ni kituo ambacho kitatoa ishara.
  5. Hatimaye, ili kudhibiti mwangaza wa LED kwa kutumia PWM, unatumia kazi ifuatayo:

LEDcWrite(channel, dutycycle)
Chaguo hili la kukokotoa linakubali kama hoja chaneli inayozalisha mawimbi ya PWM, na mzunguko wa wajibu.
Sehemu Inahitajika
Ili kufuata mafunzo haya unahitaji sehemu hizi:

  • Bodi ya ESP32 DEVKIT V1
  • 5 mm LED
  • 220 Ohm kupinga
  •  Ubao wa mkate
  • Waya za kuruka

Kimpango
Waya LED kwenye ESP32 yako kama ilivyo kwenye mchoro wa kimkakati ufuatao. LED inapaswa kushikamana na GPIO 4.LAFVIN ESP32 Basic Starter Kit - SchematicKumbuka: unaweza kutumia pini yoyote unayotaka, mradi tu inaweza kufanya kazi kama matokeo. Pini zote ambazo zinaweza kufanya kama matokeo zinaweza kutumika kama pini za PWM. Kwa habari zaidi kuhusu ESP32 GPIOs, soma: Rejea ya Pinout ya ESP32: Ni pini zipi za GPIO unapaswa kutumia?
Kanuni
Tutapanga ESP32 kwa kutumia Arduino IDE, kwa hivyo hakikisha kuwa umesakinisha programu jalizi ya ESP32 kabla ya kuendelea:(Ikiwa tayari umefanya hatua hii, unaweza kuruka hadi hatua inayofuata.)
Inasakinisha programu jalizi ya ESP32 katika Arduino IDE
Fungua msimbo Project_3_ESP32_PWM.ino katika arduino IDELAFVIN ESP32 Basic Starter Kit - Msimbo wa 3LAFVIN ESP32 Basic Starter Kit - Msimbo wa 4Unaanza kwa kufafanua pini ambayo LED imeunganishwa. Katika kesi hii LED imeunganishwa kwa GPIO 4.LAFVIN ESP32 Basic Starter Kit - Msimbo wa 5Kisha, unaweka sifa za ishara za PWM. Unafafanua mzunguko wa 5000 Hz, chagua chaneli 0 ili kutoa mawimbi, na kuweka azimio la biti 8. Unaweza kuchagua sifa nyingine, tofauti na hizi, ili kutoa ishara tofauti za PWM.LAFVIN ESP32 Basic Starter Kit - Msimbo wa 6Katika usanidi(), unahitaji kusanidi LED PWM na mali ulizofafanua hapo awali kwa kutumia kitendakazi cha ledcSetup() ambacho kinakubali kama hoja, ledChannel, frequency, na azimio, kama ifuatavyo:LAFVIN ESP32 Basic Starter Kit - Msimbo wa 8Ifuatayo, unahitaji kuchagua GPIO utapata ishara kutoka. Kwa hilo tumia kitendakazi cha ledcAttachPin() ambacho kinakubali kama hoja GPIO ambapo unataka kupata mawimbi, na chaneli inayozalisha mawimbi. Katika hii example, tutapata mawimbi katika ledPin GPIO, ambayo inalingana na GPIO 4. Chaneli inayotoa mawimbi ni ledChannel, inayolingana na chaneli 0.LAFVIN ESP32 Basic Starter Kit - Msimbo wa 9Katika kitanzi, utabadilisha mzunguko wa wajibu kati ya 0 na 255 ili kuongeza mwangaza wa LED.LAFVIN ESP32 Basic Starter Kit - mwangazaNa kisha, kati ya 255 na 0 ili kupunguza mwangaza.LAFVIN ESP32 Basic Starter Kit - mwangaza 1Ili kuweka mwangaza wa LED, unahitaji tu kutumia kitendakazi cha ledcWrite() ambacho kinakubali kama hoja kituo kinachozalisha mawimbi, na mzunguko wa wajibu.LAFVIN ESP32 Basic Starter Kit - mwangaza 2Tunapotumia azimio la biti 8, mzunguko wa wajibu utadhibitiwa kwa kutumia thamani kutoka 0 hadi 255. Kumbuka kuwa katika chaguo la kukokotoa ledcWrite() tunatumia chaneli inayozalisha mawimbi, na si GPIO.

Kupima Example

Pakia msimbo kwenye ESP32 yako. Hakikisha umechagua ubao sahihi na bandari ya COM. Angalia mzunguko wako. Unapaswa kuwa na LED hafifu ambayo huongeza na kupunguza mwangaza.LAFVIN ESP32 Basic Starter Kit - Kujaribu Example

Mradi wa 4 ESP32 PIR Motion Sensorer

Mradi huu unaonyesha jinsi ya kutambua mwendo kwa kutumia ESP32 kwa kutumia kihisishi cha mwendo cha PIR. Buzzer italia kengele mwendo unapotambuliwa, na itasimamisha kengele wakati hakuna mwendo unaotambuliwa kwa muda uliowekwa mapema (kama vile sekunde 4)
Jinsi HC-SR501 Motion Sensorer Hufanya Kazi
.LAFVIN ESP32 Basic Starter Kit - Motion Sensore WorksKanuni ya kazi ya sensor ya HC-SR501 inategemea mabadiliko ya mionzi ya infrared kwenye kitu kinachosonga. Ili kutambuliwa na sensor ya HC-SR501, kitu lazima kikidhi mahitaji mawili:

  • Kitu kinatoa njia ya infrared.
  • Kitu kinasonga au kinatikisika

Kwa hivyo:
Ikiwa kitu kinatoa miale ya infrared lakini haisogei (kwa mfano, mtu husimama tuli bila kusonga), haigunduliwi na kihisi.
Ikiwa kitu kinasonga lakini HAITOI miale ya infrared (km, roboti au gari), HAITAGUNDULI na kihisi.
Tunakuletea Vipima Muda
Katika hii exampna pia tutawaletea vipima muda. Tunataka LED ibaki imewashwa kwa idadi iliyobainishwa mapema ya sekunde baada ya mwendo kutambuliwa. Badala ya kutumia kitendakazi cha delay() ambacho huzuia msimbo wako na haikuruhusu kufanya kitu kingine chochote kwa idadi iliyobainishwa ya sekunde, tunapaswa kutumia kipima muda.LAFVIN ESP32 Basic Starter Kit - Tunawaletea Vipima MudaKitendaji cha kuchelewesha ()
Unapaswa kufahamu kazi ya delay() kwani inatumika sana. Kitendaji hiki ni rahisi kutumia. Inakubali nambari moja ya int kama hoja.
Nambari hii inawakilisha muda katika milisekunde ambayo programu inabidi ingojee hadi iendelee kwenye safu inayofuata ya msimbo.LAFVIN ESP32 Basic Starter Kit - msimboUnapochelewesha (1000) programu yako inasimama kwenye laini hiyo kwa sekunde 1.
delay() ni kazi ya kuzuia. Kuzuia vitendaji huzuia programu kufanya kitu kingine chochote hadi kazi hiyo maalum ikamilike. Ikiwa unahitaji kazi nyingi kutokea kwa wakati mmoja, huwezi kutumia delay().
Kwa miradi mingi unapaswa kuepuka kutumia ucheleweshaji na badala yake utumie vipima muda.
Chaguo za millis()
Kwa kutumia kitendakazi kinachoitwa millis() unaweza kurudisha idadi ya milisekunde ambayo imepita tangu programu ilipoanza.LAFVIN ESP32 Basic Starter Kit - programu ilianza kwanzaKwa nini kipengele hicho kinafaa? Kwa sababu kwa kutumia hesabu fulani, unaweza kuthibitisha kwa urahisi ni muda gani umepita bila kuzuia msimbo wako.
Sehemu Inahitajika
Ili kufuata somo hili unahitaji sehemu zifuatazo

  • Bodi ya ESP32 DEVKIT V1
  • Kihisi cha mwendo cha PIR (HC-SR501)
  • Buzzer inayotumika
  • Waya za kuruka
  • Ubao wa mkate

KimpangoLAFVIN ESP32 Basic Starter Kit - Schematic 1Kumbuka: Voltage ya HC-SR501 ni 5V. Tumia pini ya Vin ili kuiwasha.
Kanuni
Kabla ya kuendelea na mafunzo haya unapaswa kusakinisha programu jalizi ya ESP32 kwenye Kitambulisho chako cha Arduino. Fuata mojawapo ya mafunzo yafuatayo ili kusakinisha ESP32 kwenye Arduino IDE, ikiwa bado hujafanya.(Ikiwa tayari umefanya hatua hii, unaweza kuruka hadi hatua inayofuata.)
Inasakinisha programu jalizi ya ESP32 katika Arduino IDE
Fungua msimbo Project_4_ESP32_PIR_Motion_Sensor.ino katika arduino IDE.
Maonyesho
Pakia msimbo kwenye ubao wako wa ESP32. Hakikisha umechagua ubao sahihi na mlango wa COM. Pakia hatua za marejeleo ya msimbo.
Fungua Kifuatiliaji cha Siri kwa kiwango cha baud cha 115200.LAFVIN ESP32 Basic Starter Kit - Maonyesho 1Sogeza mkono wako mbele ya kihisi cha PIR. Buzzer inapaswa kuwasha, na ujumbe utachapishwa katika Kifuatiliaji cha Ufuatiliaji ukisema "Mwendo umetambuliwa! Kengele ya Buzzer".
Baada ya sekunde 4 buzzer inapaswa kuzima.LAFVIN ESP32 Basic Starter Kit - buzzer

Mradi wa 5 ESP32 Swichi Web Seva

Katika mradi huu utaunda ilio web seva iliyo na ESP32 inayodhibiti matokeo (LED mbili) kwa kutumia mazingira ya programu ya Arduino IDE. The web seva inajibu kwa rununu na inaweza kufikiwa na kifaa chochote ambacho kama kivinjari kwenye mtandao wa ndani. Tutakuonyesha jinsi ya kuunda web seva na jinsi msimbo unavyofanya kazi hatua kwa hatua.
Mradi umekamilikaview
Kabla ya kwenda moja kwa moja kwenye mradi, ni muhimu kuelezea kile chetu web seva itafanya, ili iwe rahisi kufuata hatua baadaye.

  • The web seva utaunda vidhibiti LED mbili zilizounganishwa kwa ESP32 GPIO 26 na GPIO 27;
  • Unaweza kufikia ESP32 web seva kwa kuandika anwani ya IP ya ESP32 kwenye kivinjari kwenye mtandao wa ndani;
  • Kwa kubofya vitufe vyako web seva unaweza kubadilisha mara moja hali ya kila LED.

Sehemu Inahitajika
Kwa somo hili utahitaji sehemu zifuatazo:

  • Bodi ya ESP32 DEVKIT V1
  • LED ya 2x5mm
  • 2x 200 Ohm resistor
  • Ubao wa mkate
  • Waya za kuruka

Kimpango
Anza kwa kujenga mzunguko. Unganisha LED mbili kwenye ESP32 kama inavyoonyeshwa kwenye mchoro ufuatao wa mpangilio - LED moja iliyounganishwa kwa GPIO 26, na nyingine kwa GPIO 27.
Kumbuka: Tunatumia ubao wa ESP32 DEVKIT DOIT wenye pini 36. Kabla ya kuunganisha mzunguko, hakikisha kuwa umeangalia pinout kwa ubao unaotumia.LAFVIN ESP32 Basic Starter Kit - SchematicKanuni
Hapa tunatoa msimbo unaounda ESP32 web seva. Fungua msimbo Project_5_ESP32_Switch _Web_Server.ino katika arduino IDE, lakini usiipake bado. Unahitaji kufanya mabadiliko kadhaa ili kuifanya ikufae.
Tutapanga ESP32 kwa kutumia Arduino IDE, kwa hivyo hakikisha kuwa umesakinisha programu jalizi ya ESP32 kabla ya kuendelea:(Ikiwa tayari umefanya hatua hii, unaweza kuruka hadi hatua inayofuata.)
Inasakinisha programu jalizi ya ESP32 katika Arduino IDE
Kuweka Kitambulisho chako cha Mtandao
Unahitaji kurekebisha mistari ifuatayo na vitambulisho vya mtandao wako: SSID na nenosiri. Nambari imetolewa maoni vizuri juu ya wapi unapaswa kufanya mabadiliko.LAFVIN ESP32 Basic Starter Kit - Kitambulisho cha MtandaoInapakia Kanuni
Sasa, unaweza kupakia msimbo na na web seva itafanya kazi mara moja.
Fuata hatua zinazofuata ili kupakia msimbo kwenye ESP32:

  1. Chomeka ubao wako wa ESP32 kwenye kompyuta yako;
  2. Katika Arduino IDE chagua ubao wako katika Zana > Bodi (kwa upande wetu tunatumia ubao wa ESP32 DEVKIT DOIT);LAFVIN ESP32 Basic Starter Kit - Kupakia Kanuni
  3. Chagua mlango wa COM katika Zana > Mlango.LAFVIN ESP32 Basic Starter Kit - Bandari ya Zana
  4. Bonyeza kitufe cha Pakia kwenye Kitambulisho cha Arduino na usubiri sekunde chache wakati msimbo unakusanya na kupakiwa kwenye ubao wako.LAFVIN ESP32 Basic Starter Kit - ICON 7
  5. Subiri ujumbe wa "Nimemaliza kupakia".LAFVIN ESP32 Basic Starter Kit - Imemaliza kupakia 1

Kupata Anwani ya IP ya ESP
Baada ya kupakia msimbo, fungua Monitor ya Serial kwa kiwango cha baud cha 115200.LAFVIN ESP32 Basic Starter Kit - Anwani ya IP ya ESPBonyeza kitufe cha ESP32 EN (weka upya). ESP32 inaunganishwa na Wi-Fi, na kutoa anwani ya IP ya ESP kwenye Kifuatiliaji cha Ufuatiliaji. Nakili anwani hiyo ya IP, kwa sababu unaihitaji ili kufikia ESP32 web seva.LAFVIN ESP32 Basic Starter Kit - web sevaKufikia Web Seva
Ili kufikia web seva, fungua kivinjari chako, bandika anwani ya IP ya ESP32, na utaona ukurasa unaofuata.
Kumbuka: Kivinjari chako na ESP32 zinapaswa kuunganishwa kwenye LAN sawa.LAFVIN ESP32 Basic Starter Kit - Kufikia Web SevaUkiangalia Kifuatiliaji cha Ufuatiliaji, unaweza kuona kinachotokea chinichini. ESP inapokea ombi la HTTP kutoka kwa mteja mpya (katika kesi hii, kivinjari chako).LAFVIN ESP32 Basic Starter Kit - Ombi la HTTPUnaweza pia kuona maelezo mengine kuhusu ombi la HTTP.
Maonyesho
Sasa unaweza kujaribu ikiwa yako web seva inafanya kazi vizuri. Bofya vitufe ili kudhibiti LEDs.LAFVIN ESP32 Basic Starter Kit - mandharinyumaWakati huo huo, unaweza kuangalia Kifuatiliaji cha Ufuatiliaji ili kuona kinachoendelea chinichini. Kwa mfanoampna, unapobofya kitufe ili kuwasha GPIO 26, ESP32 inapokea ombi kwenye /26/on URL.LAFVIN ESP32 Basic Starter Kit - URLESP32 inapopokea ombi hilo, huwasha LED iliyoambatishwa kwa GPIO 26 ON na kusasisha hali yake kwenye web ukurasa.LAFVIN ESP32 Basic Starter Kit - web ukurasaKitufe cha GPIO 27 hufanya kazi kwa njia sawa. Jaribu kuwa inafanya kazi ipasavyo.LAFVIN ESP32 Basic Starter Kit - inafanya kazi vizuri

Jinsi Kanuni Hufanya Kazi

Katika sehemu hii itaangalia kwa karibu msimbo ili kuona jinsi inavyofanya kazi.
Jambo la kwanza unahitaji kufanya ni kujumuisha maktaba ya WiFi.LAFVIN ESP32 Basic Starter Kit - maktaba ya WiFiKama ilivyoelezwa hapo awali, unahitaji kuingiza ssid yako na nenosiri katika mistari ifuatayo ndani ya nukuu mbili.LAFVIN ESP32 Basic Starter Kit - nukuu mbiliKisha, unaweka yako web seva kwa bandari 80.LAFVIN ESP32 Basic Starter Kit - web sevaMstari ufuatao huunda kigezo cha kuhifadhi kichwa cha ombi la HTTP:LAFVIN ESP32 Basic Starter Kit - Ombi la HTTPIfuatayo, unaunda vigeu kisaidizi ili kuhifadhi hali ya sasa ya matokeo yako. Ikiwa unataka kuongeza matokeo zaidi na kuokoa hali yake, unahitaji kuunda vigezo zaidi.LAFVIN ESP32 Basic Starter Kit - vigezoUnahitaji pia kugawa GPIO kwa kila matokeo yako. Hapa tunatumia GPIO 26 na GPIO 27. Unaweza kutumia GPIO zingine zozote zinazofaa.LAFVIN ESP32 Basic Starter Kit - nyingine inayofaakuweka ()
Sasa, wacha tuende kwenye usanidi (). Kwanza, tunaanza mawasiliano ya serial kwa kiwango cha baud cha 115200 kwa madhumuni ya utatuzi.LAFVIN ESP32 Basic Starter Kit - madhumuniPia unafafanua GPIO zako kama OUTPUT na kuziweka kwa CHINI.LAFVIN ESP32 Basic Starter Kit - GPIOs kama ZAOMistari ifuatayo huanza muunganisho wa Wi-Fi na WiFi.begin(ssid, password), subiri muunganisho uliofaulu na uchapishe anwani ya IP ya ESP kwenye Mfuatiliaji wa Serial.LAFVIN ESP32 Basic Starter Kit - SerialLAFVIN ESP32 Basic Starter Kit - Serial 1kitanzi ()
Katika kitanzi () tunapanga kile kinachotokea wakati mteja mpya anaanzisha muunganisho na web seva.
ESP32 huwa inasikiliza wateja wanaoingia kwa kutumia laini ifuatayo:LAFVIN ESP32 Basic Starter Kit - kitanziOmbi linapopokelewa kutoka kwa mteja, tutahifadhi data inayoingia. Kitanzi cha wakati kinachofuata kitaendelea kutumika mradi tu mteja aendelee kushikamana. Hatupendekezi kubadilisha sehemu ifuatayo ya msimbo isipokuwa kama unajua unachofanya.LAFVIN ESP32 Basic Starter Kit - haswaLAFVIN ESP32 Basic Starter Kit - haswa 1LAFVIN ESP32 Basic Starter Kit - haswa 2Sehemu inayofuata ya taarifa za if na vinginevyo huangalia ni kitufe gani kilibonyezwa katika yako web page, na kudhibiti matokeo ipasavyo. Kama tulivyoona hapo awali, tunatoa ombi tofauti URLs kulingana na kitufe kilichobonyezwa.LAFVIN ESP32 Basic Starter Kit - kitufe kimebonyezwaLAFVIN ESP32 Basic Starter Kit - kitufe kimebonyezwa 1Kwa mfanoampna, ikiwa umebonyeza kitufe cha GPIO 26 ON, ESP32 inapokea ombi kwenye /26/ON. URL (tunaweza kuona kwamba habari hiyo kwenye kichwa cha HTTP kwenye Monitor ya Serial). Kwa hivyo, tunaweza kuangalia ikiwa kichwa kina usemi GET /26/on. Ikiwa ina, tunabadilisha variable26state kuwa ON, na ESP32 huwasha LED.
Hii inafanya kazi vivyo hivyo kwa vifungo vingine. Kwa hivyo, ikiwa unataka kuongeza matokeo zaidi, unapaswa kurekebisha sehemu hii ya msimbo ili kujumuisha.
Inaonyesha HTML web ukurasa
Jambo la pili unahitaji kufanya, ni kuunda web ukurasa. ESP32 itatuma jibu kwa kivinjari chako na msimbo fulani wa HTML ili kuunda web ukurasa.
The web ukurasa hutumwa kwa mteja kwa kutumia kielelezo hiki cha client.println(). Unapaswa kuingiza unachotaka kutuma kwa mteja kama hoja.
Jambo la kwanza tunapaswa kutuma kila wakati ni laini ifuatayo, ambayo inaonyesha kuwa tunatuma HTML.LAFVIN ESP32 Basic Starter Kit - kutuma HTMLKisha, mstari ufuatao hufanya web ukurasa msikivu katika yoyote web kivinjari.LAFVIN ESP32 Basic Starter Kit - web kivinjariNa ifuatayo inatumika kuzuia maombi kwenye favicon. - Huna haja ya kuwa na wasiwasi kuhusu mstari huu.LAFVIN ESP32 Basic Starter Kit - client.println

Mtindo wa Web Ukurasa

Ifuatayo, tunayo maandishi ya CSS ya kuunda vitufe na web muonekano wa ukurasa.
Tunachagua fonti ya Helvetica, kufafanua maudhui yatakayoonyeshwa kama kizuizi na kupangiliwa katikati.LAFVIN ESP32 Basic Starter Kit - Styling the Web UkurasaTunatengeneza vitufe vyetu kwa rangi ya #4CAF50, bila mpaka, maandishi katika rangi nyeupe, na kwa pedi hii: 16px 40px. Pia tunaweka mapambo ya maandishi kwa hakuna, fafanua saizi ya fonti, ukingo, na mshale kwa pointer.LAFVIN ESP32 Basic Starter Kit - pointerPia tunafafanua mtindo kwa kifungo cha pili, na sifa zote za kifungo ambacho tumefafanua hapo awali, lakini kwa rangi tofauti. Huu utakuwa mtindo wa kitufe cha kuzima.LAFVIN ESP32 Basic Starter Kit - client.println 1

Kuweka Web Ukurasa wa Kwanza wa Kichwa
Katika mstari unaofuata unaweza kuweka kichwa chako cha kwanza web ukurasa. Hapa tunayo "ESP32 Web Seva", lakini unaweza kubadilisha maandishi haya kuwa chochote unachopenda.LAFVIN ESP32 Basic Starter Kit - Web Kichwa cha UkurasaInaonyesha Vifungo na Hali Sambamba
Kisha, unaandika aya ili kuonyesha hali ya sasa ya GPIO 26. Kama unavyoona tunatumia utofauti wa output26State, ili hali isasishwe mara moja utofauti huu unapobadilika.LAFVIN ESP32 Basic Starter Kit - mabadiliko ya kutofautianaKisha, tunaonyesha kitufe cha kuwasha au kuzima, kulingana na hali ya sasa ya GPIO. Ikiwa hali ya sasa ya GPIO imezimwa, tunaonyesha kifungo cha ON, ikiwa sio, tunaonyesha kifungo cha OFF.LAFVIN ESP32 Basic Starter Kit - onyesha kitufe cha ZIMATunatumia utaratibu sawa kwa GPIO 27.
Kufunga Muunganisho
Hatimaye, jibu linapoisha, tunafuta utofauti wa kichwa, na kusimamisha muunganisho na mteja kwa client.stop().LAFVIN ESP32 Basic Starter Kit - Kufunga Muunganisho

Kuhitimisha

Katika somo hili tumekuonyesha jinsi ya kuunda a web seva na ESP32. Tumekuonyesha ex rahisiample inayodhibiti taa mbili za LED, lakini wazo ni kubadilisha taa hizo na upeanaji tena, au matokeo mengine yoyote unayotaka kudhibiti.

Mradi wa 6 RGB LED Web Seva

Katika mradi huu tutakuonyesha jinsi ya kudhibiti kwa mbali RGB LED na ubao wa ESP32 kwa kutumia a web seva iliyo na kichagua rangi.
Mradi umekamilikaview
Kabla ya kuanza, hebu tuone jinsi mradi huu unavyofanya kazi:LAFVIN ESP32 Basic Starter Kit - Project Overview

  • Sehemu ya ESP32 web seva inaonyesha kichagua rangi.
  • Unapochagua rangi, kivinjari chako kinatuma ombi kwenye a URL ambayo ina vigezo vya R, G, na B vya rangi iliyochaguliwa.
  • ESP32 yako inapokea ombi na kugawanya thamani kwa kila kigezo cha rangi.
  • Kisha, hutuma ishara ya PWM yenye thamani inayolingana kwa GPIO zinazodhibiti RGB LED.

Je, RGB LEDs hufanya kazije?
Katika LED ya cathode ya RGB ya kawaida, LED zote tatu hushiriki muunganisho hasi (cathode). Zote zilizojumuishwa kwenye kit ni RGB ya cathode ya kawaida.LAFVIN ESP32 Basic Starter Kit - RGB LEDs hufanya kaziJinsi ya kuunda rangi tofauti?
Kwa LED ya RGB unaweza, bila shaka, kuzalisha mwanga nyekundu, kijani na bluu, na kwa kusanidi ukubwa wa kila LED, unaweza kutoa rangi nyingine pia.
Kwa mfanoample, ili kutoa mwanga wa buluu tu, ungeweka LED ya samawati kwa kiwango cha juu zaidi na taa za kijani kibichi na nyekundu kwa kiwango cha chini zaidi. Kwa mwanga mweupe, ungeweka LED zote tatu kwa kiwango cha juu zaidi.
Kuchanganya rangi
Ili kuzalisha rangi nyingine, unaweza kuchanganya rangi tatu kwa nguvu tofauti. Ili kurekebisha ukubwa wa kila LED unaweza kutumia ishara ya PWM.
Kwa sababu LEDs ziko karibu sana kwa kila mmoja, macho yetu huona matokeo ya mchanganyiko wa rangi, badala ya rangi tatu moja kwa moja.
Ili kuwa na wazo la jinsi ya kuchanganya rangi, angalia chati ifuatayo.
Hii ndiyo chati rahisi zaidi ya kuchanganya rangi, lakini inakupa wazo jinsi inavyofanya kazi na jinsi ya kuzalisha rangi tofauti.LAFVIN ESP32 Basic Starter Kit - rangi tofautiSehemu Inahitajika
Kwa mradi huu unahitaji sehemu zifuatazo:

  • Bodi ya ESP32 DEVKIT V1
  • LED ya RGB
  • 3x 220 ohm resistors
  • Waya za kuruka
  • Ubao wa mkate

KimpangoLAFVIN ESP32 Basic Starter Kit - SchematicKanuni
Tutapanga ESP32 kwa kutumia Arduino IDE, kwa hivyo hakikisha kuwa umesakinisha programu jalizi ya ESP32 kabla ya kuendelea:(Ikiwa tayari umefanya hatua hii, unaweza kuruka hadi hatua inayofuata.)

  • Inasakinisha programu jalizi ya ESP32 katika Arduino IDE

Baada ya kukusanya mzunguko, Fungua msimbo
Project_6_RGB_LED_Web_Server.ino katika arduino IDE.
Kabla ya kupakia msimbo, usisahau kuingiza kitambulisho cha mtandao wako ili ESP iweze kuunganisha kwenye mtandao wako wa karibu.LAFVIN ESP32 Basic Starter Kit - mtandao wa ndaniJinsi kanuni inavyofanya kazi
Mchoro wa ESP32 hutumia maktaba ya WiFi.h.LAFVIN ESP32 Basic Starter Kit - maktaba ya WiFi.hMistari ifuatayo inafafanua vigezo vya kamba kushikilia vigezo vya R, G, na B kutoka kwa ombi.LAFVIN ESP32 Basic Starter Kit - String redStringVigezo vinne vinavyofuata vinatumika kusimbua ombi la HTTP baadaye.LAFVIN ESP32 Basic Starter Kit - Ombi la HTTPUnda vigezo vitatu vya GPIO ambavyo vitadhibiti ukanda wa R, G, na B vigezo. Katika kesi hii tunatumia GPIO 13, GPIO 12, na GPIO 14.LAFVIN ESP32 Basic Starter Kit - GPIOs zinahitajiGPIO hizi zinahitaji kutoa mawimbi ya PWM, kwa hivyo tunahitaji kusanidi sifa za PWM kwanza. Weka mzunguko wa ishara ya PWM hadi 5000 Hz. Kisha, unganisha chaneli ya PWM kwa kila rangiLAFVIN ESP32 Basic Starter Kit - kila rangiNa hatimaye, weka azimio la njia za PWM kwa 8-bitLAFVIN ESP32 Basic Starter Kit - chaneli za PWMKatika usanidi(), toa sifa za PWM kwa chaneli za PWMLAFVIN ESP32 Basic Starter Kit - chaneli za PWMAmbatisha chaneli za PWM kwa GPIO zinazolinganaLAFVIN ESP32 Basic Starter Kit - GPIO zinazolinganaSehemu ya msimbo ifuatayo inaonyesha kichagua rangi katika yako web ukurasa na kufanya ombi kulingana na rangi uliyochagua.LAFVIN ESP32 Basic Starter Kit - imechaguliwaLAFVIN ESP32 Basic Starter Kit - client.printlnLAFVIN ESP32 Basic Starter Kit - client.println 1Unapochagua rangi, unapokea ombi na umbizo lifuatalo.LAFVIN ESP32 Basic Starter Kit - ifuatayo umbizo

Kwa hivyo, tunahitaji kugawanya kamba hii ili kupata vigezo vya R, G, na B. Vigezo huhifadhiwa katika vijiti redString, greenString, na blueString na vinaweza kuwa na thamani kati ya 0 na 255.LAFVIN ESP32 Basic Starter Kit - kichwaLAFVIN ESP32 Basic Starter Kit - kichwa 1Ili kudhibiti ukanda kwa ESP32, tumia chaguo la kukokotoa ledcWrite() ili kutoa mawimbi ya PWM kwa thamani zilizotolewa msimbo kutoka kwa HTTP. ombi.LAFVIN ESP32 Basic Starter Kit - Ombi la HTTP 1Kumbuka: pata maelezo zaidi kuhusu PWM ukitumia ESP32: Project 3 ESP32 PWM(Analog Output)
Ili kudhibiti ukanda na ESP8266, tunahitaji tu kutumia
chaguo za kukokotoa za analogWrite() ili kutoa mawimbi ya PWM kwa thamani zilizotolewa msimbo kutoka kwa ombi la HTPP.
analogWrite(redPin, redString.toInt());
analogWrite(greenPin, greenString.toInt());
analogiAndika(bluePin, blueString.toInt())
Kwa sababu tunapata maadili katika utofauti wa kamba, tunahitaji kuzibadilisha kuwa nambari kamili kwa kutumia toInt() mbinu.
Maonyesho
Baada ya kuingiza kitambulisho chako cha mtandao, chagua ubao sahihi na mlango wa COM na upakie msimbo kwenye hatua zako za marejeleo za msimbo wa ESP32. Pakia.
Baada ya kupakia, fungua Ufuatiliaji wa Serial kwa kiwango cha baud cha 115200 na ubofye kitufe cha ESP Wezesha/Rudisha. Unapaswa kupata anwani ya IP ya bodi.LAFVIN ESP32 Basic Starter Kit - LAN sawaFungua kivinjari chako na uweke anwani ya IP ya ESP. Sasa, tumia kiteua rangi kuchagua rangi ya RGB LED.
Kisha, unahitaji kushinikiza kitufe cha "Badilisha Rangi" ili rangi ianze kutumika.LAFVIN ESP32 Basic Starter Kit - RGB LEDIli kuzima RGB LED , chagua rangi nyeusi.
Rangi kali zaidi (juu ya kichagua rangi), ndizo zitatoa matokeo bora.LAFVIN ESP32 Basic Starter Kit - matokeo bora

Mradi wa 7 ESP32 Relay Web Seva

Kutumia relay na ESP32 ni njia nzuri ya kudhibiti vifaa vya nyumbani vya AC ukiwa mbali. Mafunzo haya yanaelezea jinsi ya kudhibiti moduli ya relay kwa kutumia ESP32.
Tutaangalia jinsi moduli ya relay inavyofanya kazi, jinsi ya kuunganisha relay kwa ESP32 na kujenga web seva ya kudhibiti relay kwa mbali.
Tunakuletea Relay
Relay ni swichi inayoendeshwa kwa umeme na kama swichi nyingine yoyote, ambayo inaweza kuwashwa au kuzimwa, kuruhusu mkondo kupita au la. Inaweza kudhibitiwa kwa sauti ya chinitages, kama 3.3V iliyotolewa na ESP32 GPIOs na inaturuhusu kudhibiti sauti ya juu.tagni kama 12V, 24V au mains voltage (230V huko Uropa na 120V huko Amerika).LAFVIN ESP32 Basic Starter Kit - Kuanzisha RelaysKwa upande wa kushoto, kuna seti mbili za soketi tatu za kuunganisha sauti ya juutages, na pini upande wa kulia (low-voltage) kuunganisha kwa ESP32 GPIOs.
Mains Voltage UunganishoLAFVIN ESP32 Basic Starter Kit - Mains Voltage UunganishoModuli ya relay iliyoonyeshwa kwenye picha ya awali ina viunganisho viwili, kila moja na soketi tatu: kawaida (COM), Kawaida Imefungwa (NC), na Kawaida Open (NO).

  • COM: unganisha mkondo unaotaka kudhibiti (mains voltage).
  • NC (Inafungwa Kawaida): usanidi wa kawaida unaofungwa hutumiwa wakati unataka relay kufungwa kwa chaguo-msingi. NC ni pini za COM zimeunganishwa, kumaanisha mkondo unatiririka isipokuwa utume mawimbi kutoka kwa ESP32 hadi kwa moduli ya relay ili kufungua mzunguko na kusimamisha mtiririko wa sasa.
  • HAPANA (Kawaida Fungua): usanidi wa kawaida wazi hufanya kazi kwa njia nyingine kote: hakuna uhusiano kati ya pini za NO na COM, kwa hivyo mzunguko umevunjwa isipokuwa utume ishara kutoka kwa ESP32 ili kufunga mzunguko.

Pini za KudhibitiLAFVIN ESP32 Basic Starter Kit - Pini za KudhibitiKiwango cha chinitage side ina seti ya pini nne na seti ya pini tatu. Seti ya kwanza ina VCC na GND ili kuwasha moduli, na ingizo 1 (IN1) na ingizo 2 (IN2) ili kudhibiti relay za chini na za juu, mtawalia.
Iwapo sehemu yako ya relay ina chaneli moja tu, utakuwa na pini moja tu ya IN. Ikiwa una vituo vinne, utakuwa na pini nne za IN, na kadhalika.
Mawimbi unayotuma kwa pini za IN, huamua ikiwa relay inatumika au la. Relay inasababishwa wakati ingizo linakwenda chini ya 2V. Hii inamaanisha kuwa utakuwa na hali zifuatazo:

  • Usanidi wa Kawaida Hufungwa (NC):
  • Ishara ya HIGH - sasa inapita
  • Ishara ya CHINI - sasa haitiririki
  • Kawaida Fungua usanidi (NO):
  • Ishara ya JUU - sasa haitiririki
  • Ishara ya CHINI - sasa inapita

Unapaswa kutumia usanidi wa kawaida uliofungwa wakati mkondo unapaswa kutiririka mara nyingi, na ungependa kuusimamisha mara kwa mara.
Tumia usanidi uliofunguliwa kwa kawaida unapotaka mkondo utiririke mara kwa mara (kwa mfanoample, washa alamp mara kwa mara).
Uteuzi wa Ugavi wa NguvuLAFVIN ESP32 Basic Starter Kit - Uchaguzi wa Ugavi wa NguvuSeti ya pili ya pini ina GND, VCC, na JD-VCC pini.
Pini ya JD-VCC inawezesha sumaku-umeme ya relay. Ona kwamba moduli ina kofia ya kuruka inayounganisha pini za VCC na JD-VCC; iliyoonyeshwa hapa ni ya manjano, lakini yako inaweza kuwa na rangi tofauti.
Kwa kofia ya jumper, pini za VCC na JD-VCC zimeunganishwa. Hiyo inamaanisha kuwa sumaku-umeme ya relay inaendeshwa moja kwa moja kutoka kwa pini ya nguvu ya ESP32, kwa hivyo moduli ya relay na saketi za ESP32 hazijatengwa kimwili kutoka kwa kila mmoja.
Bila kofia ya kuruka, unahitaji kutoa chanzo huru cha nguvu ili kuwasha sumaku-umeme ya relay kupitia pini ya JD-VCC. Usanidi huo hutenganisha relays kutoka kwa ESP32 kwa kutumia optocoupler iliyojengewa ndani ya moduli, ambayo huzuia uharibifu wa ESP32 ikiwa kuna miiba ya umeme.
KimpangoLAFVIN ESP32 Basic Starter Kit - SchematicOnyo: Matumizi ya sauti ya juutagvifaa vya umeme vinaweza kusababisha majeraha makubwa.
Kwa hiyo, LED za 5mm hutumiwa badala ya usambazaji wa juu wa voltage balbu katika majaribio. Kama huna mazoea na mains voltagna kuuliza mtu ambaye ni kukusaidia nje. Wakati wa kupanga ESP au kuunganisha mzunguko wako hakikisha kuwa kila kitu kimetenganishwa na mtandao mkuutage.LAFVIN ESP32 Basic Starter Kit - mains voltageInasakinisha Maktaba ya ESP32
Ili kujenga hii web seva, tunatumia ESPAsyncWebMaktaba ya seva na Maktaba ya AsyncTCP.
Inasakinisha ESPAsyncWebMaktaba ya seva
Fuata hatua zinazofuata ili kusakinisha ESPAsyncWebSeva maktaba:

  1. Bofya hapa ili kupakua ESPAsyncWebMaktaba ya seva. Unapaswa kuwa nayo
    folda ya .zip katika folda yako ya Vipakuliwa
  2. Fungua folda ya .zip na unapaswa kupata ESPAsyncWebFolda kuu ya seva
  3. Badilisha jina la folda yako kutoka ESPAsyncWebSeva-bwana hadi ESPAsyncWebSeva
  4. Hamisha ESPAsyncWebFolda ya seva kwenye folda yako ya maktaba ya usakinishaji ya Arduino IDE

Vinginevyo, katika Arduino IDE yako, unaweza kwenda kwa Mchoro > Jumuisha
Maktaba > Ongeza maktaba ya .ZIP... na uchague maktaba ambayo umepakua hivi punde.
Inasakinisha Maktaba ya AsyncTCP ya ESP32
The ESPAsyncWebSeva maktaba inahitaji AsyncTCP maktaba ya kufanya kazi. Fuata
hatua zifuatazo za kusakinisha maktaba hiyo:

  1. Bofya hapa ili kupakua maktaba ya AsyncTCP. Unapaswa kuwa na folda ya .zip kwenye folda yako ya Vipakuliwa
  2. Fungua folda ya .zip na unapaswa kupata folda kuu ya AsyncTCP
    1. Badilisha jina la folda yako kutoka AsyncTCP-master hadi AsyncTCP
    3. Hamisha folda ya AsyncTCP hadi kwenye folda yako ya maktaba ya usakinishaji ya IDE ya Arduino
    4. Hatimaye, fungua upya IDE yako ya Arduino

Vinginevyo, katika Arduino IDE yako, unaweza kwenda kwa Mchoro > Jumuisha
Maktaba > Ongeza maktaba ya .ZIP... na uchague maktaba ambayo umepakua hivi punde.
Kanuni
Tutapanga ESP32 kwa kutumia Arduino IDE, kwa hivyo hakikisha kuwa umesakinisha programu jalizi ya ESP32 kabla ya kuendelea:(Ikiwa tayari umefanya hatua hii, unaweza kuruka hadi hatua inayofuata.)
Inasakinisha programu jalizi ya ESP32 katika Arduino IDE
Baada ya kusakinisha maktaba zinazohitajika, Fungua msimbo Project_7_ESP32_Relay_Web_Server.ino katika arduino IDE.
Kabla ya kupakia msimbo, usisahau kuingiza kitambulisho cha mtandao wako ili ESP iweze kuunganisha kwenye mtandao wako wa karibu.LAFVIN ESP32 Basic Starter Kit - mtandao wa ocalMaonyesho
Baada ya kufanya mabadiliko yanayohitajika, pakia msimbo kwenye hatua zako za marejeleo za msimbo wa ESP32. Pakia.
Fungua Serial Monitor kwa kiwango cha baud cha 115200 na ubonyeze kitufe cha ESP32 EN ili kupata anwani yake ya IP. Kisha, fungua kivinjari katika mtandao wako wa ndani na uandike anwani ya IP ya ESP32 ili kupata ufikiaji wa web seva.
Fungua Serial Monitor kwa kiwango cha baud cha 115200 na ubonyeze kitufe cha ESP32 EN ili kupata anwani yake ya IP. Kisha, fungua kivinjari katika mtandao wako wa ndani na uandike anwani ya IP ya ESP32 ili kupata ufikiaji wa web seva.LAFVIN ESP32 Basic Starter Kit - web sevaKumbuka: Kivinjari chako na ESP32 zinapaswa kuunganishwa kwenye LAN sawa.
Unapaswa kupata kitu kama ifuatavyo na vitufe viwili kama idadi ya relay ambazo umefafanua katika nambari yako.LAFVIN ESP32 Basic Starter Kit - smartphoneSasa, unaweza kutumia vitufe ili kudhibiti relays yako kwa kutumia smartphone yako.LAFVIN ESP32 Basic Starter Kit - simu mahiri 1

Project_8_Output_State_Synchronization_ Web_Seva

Mradi huu unaonyesha jinsi ya kudhibiti matokeo ya ESP32 au ESP8266 kwa kutumia a web seva na kitufe cha kimwili wakati huo huo. Hali ya pato inasasishwa kwenye web ukurasa ikiwa imebadilishwa kupitia kitufe halisi au web seva.
Mradi umekamilikaview
Hebu tuangalie kwa haraka jinsi mradi unavyofanya kazi.LAFVIN ESP32 Basic Starter Kit - Project OverviewESP32 au ESP8266 hupangisha a web seva ambayo hukuruhusu kudhibiti hali ya pato;

  • Hali ya sasa ya pato inaonyeshwa kwenye web seva;
  • ESP pia imeunganishwa kwa kitufe cha kusukuma kinachodhibiti matokeo sawa;
  • Ukibadilisha hali ya pato kwa kutumia puhsbutton ya kimwili, hali yake ya sasa pia inasasishwa kwenye web seva.

Kwa muhtasari, mradi huu hukuruhusu kudhibiti pato sawa kwa kutumia a web seva na kitufe cha kushinikiza wakati huo huo. Wakati wowote hali ya pato inabadilika, faili ya web seva imesasishwa.
Sehemu Inahitajika
Hapa kuna orodha ya sehemu ambazo unahitaji kuunda mzunguko:

  • Bodi ya ESP32 DEVKIT V1
  • 5 mm LED
  • Kipinga cha 220Ohm
  • Kitufe cha kushinikiza
  • Kipinga cha 10k Ohm
  • Ubao wa mkate
  • Waya za kuruka

KimpangoLAFVIN ESP32 Basic Starter Kit - Schematic 1Inasakinisha Maktaba ya ESP32
Ili kujenga hii web seva, tunatumia ESPAsyncWebMaktaba ya seva na Maktaba ya AsyncTCP.(Ikiwa tayari umefanya hatua hii, unaweza kuruka hadi hatua inayofuata.)
Inasakinisha ESPAsyncWebMaktaba ya seva
Fuata hatua zinazofuata ili kusakinisha ESPAsyncWebMaktaba ya seva:

  1. Bofya hapa ili kupakua ESPAsyncWebMaktaba ya seva. Unapaswa kuwa nayo
    folda ya .zip katika folda yako ya Vipakuliwa
  2. Fungua folda ya .zip na unapaswa kupata ESPAsyncWebFolda kuu ya seva
  3. Badilisha jina la folda yako kutoka ESPAsyncWebSeva-bwana hadi ESPAsyncWebSeva
  4. Hamisha ESPAsyncWebFolda ya seva kwenye folda yako ya maktaba ya usakinishaji ya Arduino IDE
    Vinginevyo, katika Arduino IDE yako, unaweza kwenda kwa Mchoro > Jumuisha
    Maktaba > Ongeza maktaba ya .ZIP... na uchague maktaba ambayo umepakua hivi punde.

Inasakinisha Maktaba ya AsyncTCP ya ESP32
Usawazishaji wa ESPAWebMaktaba ya seva inahitaji maktaba ya AsyncTCP kufanya kazi. Fuata hatua zifuatazo ili kusakinisha maktaba hiyo:

  1. Bofya hapa ili kupakua maktaba ya AsyncTCP. Unapaswa kuwa na folda ya .zip kwenye folda yako ya Vipakuliwa
  2. Fungua folda ya .zip na unapaswa kupata folda kuu ya AsyncTCP
  3. Badilisha jina la folda yako kutoka AsyncTCP-master hadi AsyncTCP
  4. Hamisha folda ya AsyncTCP hadi kwenye folda yako ya maktaba ya usakinishaji ya Arduino IDE
  5. Hatimaye, fungua upya IDE yako ya Arduino
    Vinginevyo, katika Arduino IDE yako, unaweza kwenda kwa Mchoro > Jumuisha
    Maktaba > Ongeza maktaba ya .ZIP... na uchague maktaba ambayo umepakua hivi punde.

Kanuni
Tutapanga ESP32 kwa kutumia Arduino IDE, kwa hivyo hakikisha kuwa umesakinisha programu jalizi ya ESP32 kabla ya kuendelea:(Ikiwa tayari umefanya hatua hii, unaweza kuruka hadi hatua inayofuata.)
Inasakinisha programu jalizi ya ESP32 katika Arduino IDE
Baada ya kusakinisha maktaba zinazohitajika, Fungua msimbo
Project_8_Output_State_Synchronization_Web_Server.ino katika arduino IDE.
Kabla ya kupakia msimbo, usisahau kuingiza kitambulisho cha mtandao wako ili ESP iweze kuunganisha kwenye mtandao wako wa karibu.LAFVIN ESP32 Basic Starter Kit - Kanuni

Jinsi Kanuni Hufanya Kazi

Hali ya Kitufe na Hali ya Pato
Tofauti ya ledState inashikilia hali ya matokeo ya LED. Kwa chaguo-msingi, wakati wa web seva inaanza, iko CHINI.LAFVIN ESP32 Basic Starter Kit - Code Works

Hali ya kitufe na lastButtonState hutumika kutambua kama kitufe cha kubofya kilibonyezwa au la.LAFVIN ESP32 Basic Starter Kit - ilibonyezwaKitufe (web seva)
Hatukujumuisha HTML ili kuunda kitufe kwenye kigezo cha index_html.
Hiyo ni kwa sababu tunataka kuwa na uwezo wa kuibadilisha kulingana na hali ya sasa ya LED ambayo inaweza pia kubadilishwa na kitufe cha kushinikiza.
Kwa hivyo, tumeunda kishikilia nafasi kwa kitufe %BUTTONPLACEHOLDER% ambacho kitabadilishwa na maandishi ya HTML ili kuunda kitufe baadaye kwenye msimbo (hii inafanywa katika kitendakazi()).LAFVIN ESP32 Basic Starter Kit - ilibonyezwa 1kichakataji ()
Kichakataji() chaguo za kukokotoa huchukua nafasi ya vishika nafasi vyovyote kwenye maandishi ya HTML na thamani halisi. Kwanza, inakagua ikiwa maandishi ya HTML yana yoyote
vishika nafasi %BUTTONPLACEHOLDER%.LAFVIN ESP32 Basic Starter Kit - processorKisha, piga theoutputState() kitendakazi ambacho kinarudisha hali ya sasa ya matokeo. Tunaihifadhi katika utofauti wa outputStateValue.LAFVIN ESP32 Basic Starter Kit - outputStateBaada ya hapo, tumia thamani hiyo kuunda maandishi ya HTML ili kuonyesha kitufe na hali sahihi:LAFVIN ESP32 Basic Starter Kit - misimbo 4Ombi la HTTP GET la Kubadilisha Hali ya Pato (JavaScript)
Unapobonyeza kitufe, kitendaji cha thetoggleCheckbox() kinaitwa. Chaguo hili la kukokotoa litafanya ombi kwa tofauti URLs kuwasha au kuzima LED.LAFVIN ESP32 Basic Starter Kit - JavaScriptIli kuwasha LED, inatuma ombi kwenye /update?state=1 URL:LAFVIN ESP32 Basic Starter Kit - element.checkedVinginevyo, inatoa ombi kwenye /update?state=0 URL.
Ombi la HTTP GET la Kusasisha Jimbo (JavaScript)
Ili kusasisha hali ya pato kwenye faili ya web seva, tunaita kazi ifuatayo ambayo hufanya ombi jipya kwenye /state URL kila sekunde.LAFVIN ESP32 Basic Starter Kit - Sasisha JimboLAFVIN ESP32 Basic Starter Kit - Sasisha Jimbo 1Shughulikia Maombi
Kisha, tunahitaji kushughulikia kile kinachotokea wakati ESP32 au ESP8266 inapokea maombi kwa hizo URLs.
Wakati ombi linapokelewa kwenye mzizi /URL, tunatuma ukurasa wa HTML pamoja na kichakataji.LAFVIN ESP32 Basic Starter Kit - Hushughulikia MaombiLAFVIN ESP32 Basic Starter Kit - Hushughulikia Maombi 1Laini zifuatazo huangalia kama ulipokea ombi kwenye /update?state=1 au /update?state=0 URL na kubadilisha led State ipasavyo.LAFVIN ESP32 Basic Starter Kit - ledStateLAFVIN ESP32 Basic Starter Kit - pembejeoParamWakati ombi limepokelewa kwenye /state URL, tunatuma hali ya sasa ya pato:LAFVIN ESP32 Basic Starter Kit - hali ya patokitanzi ()
Kwenye kitanzi(), tunapunguza kitufe cha kusukuma na kuwasha au kuzima LED kulingana na thamani ya ledState. kutofautiana.LAFVIN ESP32 Basic Starter Kit - kitanzi 1Maonyesho
Pakia msimbo kwenye ubao wako wa ESP32. Pakia hatua za marejeleo ya msimbo.
Kisha, fungua Kifuatiliaji cha Ufuatiliaji kwa kiwango cha baud cha 115200. Bonyeza kitufe cha EN/RST kwenye ubao ili kupata ni anwani ya IP.LAFVIN ESP32 Basic Starter Kit - MaonyeshoFungua kivinjari kwenye mtandao wako wa karibu, na uandike anwani ya IP ya ESP. Unapaswa kupata ufikiaji wa web seva kama inavyoonyeshwa hapa chini.
Kumbuka: Kivinjari chako na ESP32 zinapaswa kuunganishwa kwenye LAN sawa.LAFVIN ESP32 Basic Starter Kit - kivinjariUnaweza kugeuza kitufe kwenye web seva ili kuwasha LED.LAFVIN ESP32 Basic Starter Kit - web 1 serverUnaweza pia kudhibiti LED sawa na kitufe cha kusukuma. Hali yake itasasishwa kiotomatiki kila wakati kwenye web seva.

Mradi wa 9 ESP32 DHT11 Web Seva

Katika mradi huu, utajifunza jinsi ya kuunda ESP32 isiyolingana web seva iliyo na DHT11 inayoonyesha halijoto na unyevunyevu kwa kutumia Arduino IDE.
Masharti
The web seva tutaunda masasisho ya usomaji kiotomatiki bila hitaji la kuonyesha upya web ukurasa.
Kwa mradi huu utajifunza:

  • Jinsi ya kusoma hali ya joto na unyevu kutoka kwa sensorer za DHT;
  • Jenga asynchronous web seva kwa kutumia ESPAsyncWebMaktaba ya seva;
  • Sasisha usomaji wa vitambuzi kiotomatiki bila hitaji la kuonyesha upya web ukurasa.

Asynchronous Web Seva
Ili kujenga web seva tutatumia ESPAsyncWebMaktaba ya seva ambayo hutoa njia rahisi ya kujenga asynchronous web seva. Kujenga Asynchronous web seva ina advan kadhaatages kama ilivyotajwa kwenye ukurasa wa GitHub wa maktaba, kama vile:

  • "Hushughulikia zaidi ya muunganisho mmoja kwa wakati mmoja";
  • "Unapotuma jibu, uko tayari mara moja kushughulikia miunganisho mingine wakati seva inashughulikia kutuma jibu chinichini";
  • "Injini rahisi ya usindikaji wa violezo vya kushughulikia violezo";

Sehemu Inahitajika
Ili kukamilisha somo hili unahitaji sehemu zifuatazo:

  • Bodi ya maendeleo ya ESP32
  • Sehemu ya DHT11
  • Ubao wa mkate
  • Waya za kuruka

KimpangoLAFVIN ESP32 Basic Starter Kit - Schematic 2Inasakinisha Maktaba
Unahitaji kusakinisha maktaba kadhaa kwa mradi huu:

Inasakinisha Maktaba ya Sensor ya DHT
Ili kusoma kutoka kwa sensor ya DHT kwa kutumia Arduino IDE, unahitaji kusakinisha Maktaba ya kihisi cha DHT. Fuata hatua zinazofuata ili kusakinisha maktaba.

  1. Bofya hapa ili kupakua maktaba ya Sensor ya DHT. Unapaswa kuwa na folda ya .zip kwenye folda yako ya Vipakuliwa
  2. Fungua folda ya .zip na unapaswa kupata folda kuu ya DHT-sensor-library-master
  3. Badilisha jina la folda yako kutoka DHT-sensor-library-master hadi DHT_sensor
  4. Hamisha folda ya DHT_sensor hadi kwenye folda yako ya maktaba ya usakinishaji ya Arduino IDE
  5. Hatimaye, fungua upya IDE yako ya Arduino

Inasakinisha Kiendeshi cha Sensor ya Adafruit Unified
Pia unahitaji kufunga Maktaba ya Kiendeshi cha Kihisi cha Adafruit kufanya kazi na kihisi cha DHT. Fuata hatua zinazofuata ili kusakinisha maktaba.

  1. Bofya hapa ili kupakua maktaba ya Sensor ya Adafruit Unified. Unapaswa kuwa na folda ya .zip kwenye folda yako ya Vipakuliwa
  2. Fungua folda ya .zip na unapaswa kupata folda ya Adafruit_sensor-master
  3. Badilisha jina la folda yako kutoka Adafruit_sensor-master hadi Adafruit_sensor
  4. Hamisha folda ya Adafruit_sensor hadi kwenye folda yako ya maktaba ya usakinishaji ya Arduino IDE
  5. Hatimaye, fungua upya IDE yako ya Arduino

Inasakinisha ESPAsyncWebMaktaba ya seva

Fuata hatua zinazofuata ili kusakinisha ESPAsyncWebSeva maktaba:

  1. Bofya hapa ili kupakua ESPAsyncWebMaktaba ya seva. Unapaswa kuwa nayo
    folda ya .zip katika folda yako ya Vipakuliwa
  2. Fungua folda ya .zip na unapaswa
    pata ESPAsyncWebFolda kuu ya seva
  3. Badilisha jina la folda yako kutoka ESPAsyncWebSeva-bwana hadi ESPAsyncWebSeva
  4. Hamisha ESPAsyncWebFolda ya seva kwenye folda yako ya maktaba ya usakinishaji ya Arduino IDE

Inasakinisha Maktaba ya Async TCP ya ESP32
The ESPAsyncWebSeva maktaba inahitaji AsyncTCP maktaba ya kufanya kazi. Fuata hatua zifuatazo ili kusakinisha maktaba hiyo:

  1. Bofya hapa ili kupakua maktaba ya AsyncTCP. Unapaswa kuwa na folda ya .zip kwenye folda yako ya Vipakuliwa
  2. Fungua folda ya .zip na unapaswa kupata folda kuu ya AsyncTCP
  3. Badilisha jina la folda yako kutoka AsyncTCP-master hadi AsyncTCP
  4. Hamisha folda ya AsyncTCP hadi kwenye folda yako ya maktaba ya usakinishaji ya Arduino IDE
  5. Hatimaye, fungua upya IDE yako ya Arduino

Kanuni
Tutapanga ESP32 kwa kutumia Arduino IDE, kwa hivyo hakikisha kuwa umesakinisha programu jalizi ya ESP32 kabla ya kuendelea:(Ikiwa tayari umefanya hatua hii, unaweza kuruka hadi hatua inayofuata.)
Inasakinisha programu jalizi ya ESP32 katika Arduino IDE
Baada ya kusakinisha maktaba zinazohitajika, Fungua msimbo
Project_9_ESP32_DHT11_Web_Server.ino katika arduino IDE.
Kabla ya kupakia msimbo, usisahau kuingiza kitambulisho cha mtandao wako ili ESP iweze kuunganisha kwenye mtandao wako wa karibu.LAFVIN ESP32 Basic Starter Kit - KanuniJinsi Kanuni Hufanya Kazi
Katika aya zifuatazo tutaelezea jinsi kanuni inavyofanya kazi. Endelea kusoma ikiwa ungependa kujifunza zaidi au ruka hadi sehemu ya Maonyesho ili kuona matokeo ya mwisho.
Kuagiza maktaba
Kwanza, ingiza maktaba zinazohitajika. WiFi, ESPAsyncWebSeva na ESPAsyncTCP zinahitajika ili kuunda faili ya web seva. Adafruit_Sensor na maktaba za DHT zinahitajika ili kusoma kutoka kwa vitambuzi vya DHT11 au DHT22.LAFVIN ESP32 Basic Starter Kit - Kuagiza maktabaLAFVIN ESP32 Basic Starter Kit - Jinsi Kanuni Hufanya KaziUfafanuzi wa vigezo
Bainisha GPIO ambayo pini ya data ya DHT imeunganishwa. Katika kesi hii, imeunganishwa na GPIO 4.LAFVIN ESP32 Basic Starter Kit - Ufafanuzi wa VigezoKisha, chagua aina ya kihisi cha DHT unayotumia. Katika ex wetuampna, tunatumia DHT22. Ikiwa unatumia aina nyingine, unahitaji tu kufuta kihisi chako na kutoa maoni kwa wengine wote.LAFVIN ESP32 Basic Starter Kit - Ufafanuzi wa Vigeu 1

Sakinisha kitu cha DHT kwa aina na pini ambayo tumefafanua hapo awali.LAFVIN ESP32 Basic Starter Kit - Ufafanuzi wa Vigeu 2Unda AsyncWebKitu cha seva kwenye bandari 80.LAFVIN ESP32 Basic Starter Kit - Ufafanuzi wa Vigeu 3Soma Kazi za Joto na Unyevu
Tumeunda vipengele viwili vya kukokotoa: moja kusoma halijoto Tumeunda vipengele viwili vya kukokotoa: moja kusoma halijoto (readDHTEmperature()) na nyingine kusoma unyevunyevu (readDHTHumidity()).LAFVIN ESP32 Basic Starter Kit - readDHTHumidityLAFVIN ESP32 Basic Starter Kit - usomaji wa sensorKupata usomaji wa vitambuzi ni rahisi kama vile kutumia Kupata usomaji wa vitambuzi ni rahisi kama vile kutumia mbinu za readJoto() na readHumidity()kwenye kipengee cha dht.LAFVIN ESP32 Basic Starter Kit - kituPia tuna hali ya kurejesha deshi mbili (–) iwapo kitambuzi kitashindwa kupata usomaji.LAFVIN ESP32 Basic Starter Kit - usomajiUsomaji hurejeshwa kama aina ya kamba. Ili kubadilisha kuelea kuwa kamba, tumia kazi ya Kamba ().LAFVIN ESP32 Basic Starter Kit - KambaKwa chaguomsingi, tunasoma halijoto katika nyuzi joto Selsiasi. Ili kupata halijoto katika digrii Fahrenheit, toa maoni kuhusu halijoto katika Selsiasi na uondoe halijoto katika Fahrenheit, ili uwe na yafuatayo:LAFVIN ESP32 Basic Starter Kit - FahrenheitLAFVIN ESP32 Basic Starter Kit - Fahrenheit 1Pakia Kanuni
Sasa, pakia msimbo kwenye ESP32 yako. Hakikisha umechagua ubao sahihi na mlango wa COM. Pakia hatua za marejeleo ya msimbo.
Baada ya kupakia, fungua Ufuatiliaji wa Ufuatiliaji kwa kiwango cha baud cha 115200. Bonyeza kitufe cha kuweka upya ESP32. Anwani ya IP ya ESP32 inapaswa kuchapishwa katika mfululizo kufuatilia.LAFVIN ESP32 Basic Starter Kit - Pakia MsimboMaonyesho
Fungua kivinjari na uandike anwani ya IP ya ESP32. Wako web seva inapaswa kuonyesha usomaji wa hivi punde wa kihisi.
Kumbuka: Kivinjari chako na ESP32 zinapaswa kuunganishwa kwenye LAN sawa.
Kumbuka kuwa halijoto na unyevunyevu husasishwa kiotomatiki bila hitaji la kuonyesha upya web ukurasa.LAFVIN ESP32 Basic Starter Kit - Maonyesho 1

Project_10_ESP32_OLED_Display

Mradi huu unaonyesha jinsi ya kutumia skrini ya 0.96 inch SSD1306 OLED yenye ESP32 kwa kutumia Arduino IDE.
Tunakuletea Onyesho la OLED la inchi 0.96
The Onyesho la OLED tutakayotumia katika somo hili ni modeli ya SSD1306: onyesho la rangi moja, inchi 0.96 na pikseli 128×64 kama inavyoonyeshwa kwenye takwimu ifuatayo.LAFVIN ESP32 Basic Starter Kit - OLEDDisplayOnyesho la OLED halihitaji taa ya nyuma, ambayo husababisha utofautishaji mzuri sana katika mazingira ya giza. Zaidi ya hayo, pikseli zake hutumia nishati tu wakati zimewashwa, kwa hivyo onyesho la OLED hutumia nishati kidogo ikilinganishwa na skrini zingine.
Kwa sababu onyesho la OLED linatumia itifaki ya mawasiliano ya I2C, wiring ni rahisi sana. Unaweza kutumia jedwali lifuatalo kama kumbukumbu.

Pini ya OLED ESP32
Vin 3.3V
GND GND
SCL GPIO 22
SDA GPIO 21

KimpangoLAFVIN ESP32 Basic Starter Kit - SchematicKufunga maktaba ya OLED ya SSD1306 - ESP32
Kuna maktaba kadhaa zinazopatikana kudhibiti onyesho la OLED na ESP32.
Katika somo hili tutatumia maktaba mbili za Adafruit: Maktaba ya Adafruit_SSD1306 na Maktaba ya Adafruit_GFX.
Fuata hatua zinazofuata ili kusakinisha maktaba hizo.

  1. Fungua IDE yako ya Arduino na uende kwa Mchoro> Jumuisha Maktaba> Dhibiti Maktaba. Kidhibiti cha Maktaba kinapaswa kufungua.
  2. Andika "SSD1306" kwenye kisanduku cha kutafutia na usakinishe maktaba ya SSD1306 kutoka Adafruit.LAFVIN ESP32 Basic Starter Kit - OLEDLibrary–
  3. Baada ya kusakinisha maktaba ya SSD1306 kutoka Adafruit, chapa "GFX" kwenye kisanduku cha utafutaji na usakinishe maktaba.LAFVIN ESP32 Basic Starter Kit - maktaba
  4. Baada ya kusakinisha maktaba, anzisha upya IDE yako ya Arduino.

Kanuni
Baada ya kusakinisha maktaba zinazohitajika, Fungua Project_10_ESP32_OLED_Display.ino katika arduino IDE. kanuni
Tutapanga ESP32 kwa kutumia Arduino IDE, kwa hivyo hakikisha kuwa umesakinisha programu jalizi ya ESP32 kabla ya kuendelea: (Ikiwa tayari umefanya hatua hii, unaweza kuruka hadi hatua inayofuata.)
Inasakinisha programu jalizi ya ESP32 katika Arduino IDELAFVIN ESP32 Basic Starter Kit - Msimbo wa 1LAFVIN ESP32 Basic Starter Kit - Msimbo wa 2LAFVIN ESP32 Basic Starter Kit - Msimbo wa 3Jinsi Kanuni Hufanya Kazi
Kuagiza maktaba
Kwanza, unahitaji kuagiza maktaba muhimu. Maktaba ya Waya ya kutumia I2C na maktaba za Adafruit kuandikia onyesho: Adafruit_GFX na Adafruit_SSD1306.LAFVIN ESP32 Basic Starter Kit - Code Works 1LAFVIN ESP32 Basic Starter Kit - Code Works 2Anzisha onyesho la OLED
Kisha, unafafanua upana na urefu wa OLED yako. Katika hii exampna, tunatumia onyesho la OLED la 128×64. Ikiwa unatumia saizi zingine, unaweza kubadilisha hiyo katika SCREEN_WIDTH, na SCREEN_HEIGHT vigezo.LAFVIN ESP32 Basic Starter Kit - Onyesho la OLEDKisha, anzisha kitu cha kuonyesha kwa upana na urefu uliofafanuliwa mapema kwa itifaki ya mawasiliano ya I2C (&Wire).LAFVIN ESP32 Basic Starter Kit - itifaki ya mawasilianoKigezo cha (-1) kinamaanisha kuwa onyesho lako la OLED halina pini ya UPYA. Ikiwa onyesho lako la OLED lina pini ya RESET, inapaswa kuunganishwa kwa GPIO. Katika hali hiyo, unapaswa kupitisha nambari ya GPIO kama parameta.
Katika usanidi(), anzisha Kifuatiliaji cha Ufuatiliaji kwa kasi ya 115200 kwa madhumuni ya utatuzi.LAFVIN ESP32 Basic Starter Kit - madhumuniAnzisha onyesho la OLED kwa njia ya begin() kama ifuatavyo:LAFVIN ESP32 Basic Starter Kit - display.beginLAFVIN ESP32 Basic Starter Kit - Serial.printlnKijisehemu hiki pia huchapisha ujumbe kwenye Kifuatiliaji cha Ufuatiliaji, ikiwa hatuwezi kuunganisha kwenye onyesho.

LAFVIN ESP32 Basic Starter Kit - Serial.println 1Iwapo unatumia onyesho tofauti la OLED, huenda ukahitaji kubadilisha anwani ya OLED. Kwa upande wetu, anwani ni 0x3C.LAFVIN ESP32 Basic Starter Kit - anwaniBaada ya kuanzisha onyesho, ongeza ucheleweshaji wa sekunde mbili, ili OLED iwe na muda wa kutosha wa kuanzisha kabla ya kuandika maandishi:LAFVIN ESP32 Basic Starter Kit - kuchelewaOnyesha wazi, weka saizi ya fonti, rangi na uandike maandishi
Baada ya kuanzisha onyesho, futa bafa ya onyesho kwa njia ya clearDisplay():LAFVIN ESP32 Basic Starter Kit - onyesho

Kabla ya kuandika maandishi, unahitaji kuweka ukubwa wa maandishi, rangi na ambapo maandishi yataonyeshwa kwenye OLED.
Weka saizi ya fonti kwa kutumia setTextSize() njia:LAFVIN ESP32 Basic Starter Kit - onyesho 1Weka rangi ya fonti na setTextColor() njia:
NYEUPE huweka fonti nyeupe na mandharinyuma nyeusi.
Bainisha mahali ambapo maandishi yanaanza kutumia njia ya setCursor(x,y). Katika kesi hii, tunaweka maandishi kuanza kwenye viwianishi vya (0,0) - kwenye kona ya juu kushoto.LAFVIN ESP32 Basic Starter Kit - setTextColor 1Hatimaye, unaweza kutuma maandishi kwenye onyesho kwa kutumia mbinu ya println(), kama ifuatavyoLAFVIN ESP32 Basic Starter Kit - misimbo 5Kisha, unahitaji kupiga simu display() njia ili kuonyesha maandishi kwenye skrini.LAFVIN ESP32 Basic Starter Kit - onyesho

Maktaba ya OLED ya Adafruit hutoa mbinu muhimu za kusogeza maandishi kwa urahisi.

  • startscrollright(0x00, 0x0F): tembeza maandishi kutoka kushoto kwenda kulia
  • startscrollleft(0x00, 0x0F): sogeza maandishi kutoka kulia kwenda kushoto
  • startscrolldiagright(0x00, 0x07): tembeza maandishi kutoka kona ya chini kushoto hadi kona ya juu kulia startscrolldiagleft(0x00, 0x07): tembeza maandishi kutoka kona ya chini kulia hadi kona ya juu kushoto

Pakia Kanuni
Sasa, pakia msimbo kwenye hatua zako za marejeleo za msimbo wa ESP32. Pakia.
Baada ya kupakia msimbo, OLED itaonyesha maandishi ya kusogeza.LAFVIN ESP32 Basic Starter Kit - maandishi ya kusogezaNembo ya LAFVIN

Nyaraka / Rasilimali

LAFVIN ESP32 Basic Starter Kit [pdf] Mwongozo wa Maelekezo
ESP32 Basic Starter Kit, ESP32, Basic Starter Kit, Starter Kit

Marejeleo

Acha maoni

Barua pepe yako haitachapishwa. Sehemu zinazohitajika zimetiwa alama *