Логотипи LAFVINStarter Basic ESP32
Маҷмӯа

Феҳрасти бастабандӣ

LAFVIN ESP32 маҷмӯаи ибтидоӣ - PackingList

ESP32 Муқаддима

Оё дар ESP32 нав ҳастед? Аз ин ҷо оғоз кунед! ESP32 як қатор системаи камхарҷ ва камқуввати микроконтроллерҳои чип (SoC) мебошад, ки аз ҷониби Espressif таҳия шудааст, ки дорои қобилиятҳои бесими Wi-Fi ва Bluetooth ва протсессори дугона мебошад. Агар шумо бо ESP8266 шинос бошед, ESP32 вориси он аст, ки бо бисёр хусусиятҳои нав пур шудааст.LAFVIN ESP32 Маҷмӯаи ибтидоӣ - ESP32 МуқаддимаМушаххасоти ESP32
Агар шумо хоҳед, ки каме техникӣ ва мушаххастар гиред, шумо метавонед ба мушаххасоти муфассали зерини ESP32 назар андозед (манбаъ: http://esp32.net/)-барои тафсилоти бештар, варақаи маълумотро тафтиш кунед):

  • Пайвасти бесими WiFi: суръати маълумот бо HT150.0 40 Мбит/с
  • Bluetooth: BLE (Bluetooth Low Energy) ва Bluetooth Classic
  • Протсессори: Tensilica Xtensa Dual-Core микропросессори 32-бита LX6, ки дар 160 ё 240 МГс кор мекунад
  • Хотира:
  • ROM: 448 KB (барои пурборкунӣ ва вазифаҳои асосӣ)
  • SRAM: 520 KB (барои маълумот ва дастурҳо)
  • RTC fas SRAM: 8 КБ (барои нигоҳдории маълумот ва CPU асосӣ ҳангоми боркунии RTC аз ҳолати хоби амиқ)
  • RTC суст SRAM: 8KB (барои дастрасии протсессори муштарак дар ҳолати хоби амиқ) eFuse: 1 Kbit (аз он 256 бит барои система истифода мешавад (суроғаи MAC ва конфигуратсияи чип) ва 768 бит боқимонда барои замимаҳои муштарӣ, аз ҷумла Flash-Encryption ва Chip-ID)

Дурахши дарунсохт: дурахши дохили тавассути IO16, IO17, SD_CMD, SD_CLK, SD_DATA_0 ва SD_DATA_1 дар ESP32-D2WD ва ESP32-PICO-D4 пайваст карда шудааст.

  • 0 МБ (чипҳои ESP32-D0WDQ6, ESP32-D0WD ва ESP32-S0WD)
  • 2 МБ (чипи ESP32-D2WD)
  • 4 МБ (модули ESP32-PICO-D4 SiP)

Қувваи паст: кафолат медиҳад, ки шумо ҳоло ҳам метавонед табдили ADC-ро истифода баред, масаланampле, хангоми хоби сахт.
Вуруд/баромади периферӣ:

  • интерфейси периферӣ бо DMA, ки дар бар мегирад ламси capacitive
  • ADCs (Табдилдиҳандаи аналогӣ ба рақамӣ)
  • DACs (Табдилдиҳандаи рақамӣ ба аналогӣ)
  • I²C (Схемаи интегралӣ)
  • UART (Қабулкунандаи универсалии асинхронӣ/Интиқолдиҳанда)
  • SPI (Интерфейси силсилавии периферӣ)
  • I²S (Интегратсияи садои интерчип)
  • RMII (Интерфейси камшудаи мустақил аз медиа)
  • PWM (модуляцияи паҳнои импулс)

Амният: суръатбахшии сахтафзор барои AES ва SSL/TLS

Шӯрои рушди ESP32

ESP32 ба чипи луч ESP32 дахл дорад. Аммо, истилоҳи "ESP32" инчунин барои истинод ба тахтаҳои таҳияи ESP32 истифода мешавад. Истифодаи микросхемаҳои луч ESP32 осон ва амалӣ нест, махсусан ҳангоми омӯзиш, озмоиш ва прототипсозӣ. Бештари вақт, шумо мехоҳед, ки тахтаи таҳияи ESP32 -ро истифода баред.
Мо тахтаи ESP32 DEVKIT V1-ро ҳамчун истинод истифода хоҳем бурд. Дар расми зер тахтаи ESP32 DEVKIT V1, версияи дорои 30 пинҳои GPIO нишон дода шудааст.LAFVIN ESP32 Маҷмӯаи ибтидоии асосӣ - Шӯрои таҳияи ESP32Мушаххасоти - ESP32 DEVKIT V1
Дар ҷадвали зерин мухтасари хусусиятҳо ва мушаххасоти тахтаи ESP32 DEVKIT V1 DOIT нишон дода шудааст:

Шумораи ядроҳо 2 (дугонаи аслӣ)
Вай-фай 2.4 ГГц то 150 Мбит/с
блутуз BLE (Bluetooth Low Energy) ва Bluetooth-и меросӣ
Архитектура 32 бит
Басомади соат То 240 МГс
RAM 512 КБ
Пинҳо 30 (вобаста ба модел)
Таҷҳизоти периферӣ Лаҷомҳои иқтидор, ADC (табдилгари аналогӣ ба рақамӣ), DAC (табдилдиҳандаи рақамӣ ба аналогӣ), 12C (Схемаи байниҳамдигарӣ), UART (қабулкунаки универсалии асинхронӣ/интиқолдиҳанда), CAN 2.0 (Назоратчии минтақаи шабака), SPI (интерфейси силсилавии периферӣ) , 12S (Integrated Inter-IC
Садо), RMII (Интерфейси камшудаи мустақили медиа), PWM (модуляцияи паҳнои импулс) ва ғайра.
Тугмаҳои дарунсохт Тугмаҳои RESET ва BOOT
LED-ҳои дарунсохт сохта-дар кабуд LED пайваст ба GPIO2; LED-и сурхи дарунсохт, ки нишон медиҳад, ки тахта пур карда мешавад
USB ба UART
купрук
CP2102

LAFVIN ESP32 Маҷмӯаи ибтидоӣ - ESP32 DEVKITОн бо интерфейси microUSB меояд, ки шумо метавонед онро барои пайваст кардани тахта ба компютери худ барои бор кардани код ё истифодаи нерӯ истифода баред.
Он чипи CP2102 (USB ба UART) -ро барои иртибот бо компютери шумо тавассути порти COM бо истифода аз интерфейси силсилавӣ истифода мебарад. Чипи дигари маъмул CH340 мебошад. Санҷед, ки табдилдиҳандаи чипи USB ба UART дар тахтаи шумо чист, зеро шумо бояд драйверҳои лозимиро насб кунед, то компютери шумо бо тахта муошират кунад (маълумоти бештар дар бораи ин баъдтар дар ин дастур).
Ин тахта инчунин бо тугмаи RESET (метавонад EN нишон дода шавад) барои аз нав оғоз кардани тахта ва тугмаи BOOT барои гузоштани тахта дар ҳолати дурахш (барои қабули код дастрас) меояд. Дар хотир доред, ки баъзе тахтаҳо метавонанд тугмаи BOOT надошта бошанд.
Он инчунин бо LED-и кабуди дарунсохт меояд, ки дар дохили он ба GPIO 2 пайваст аст. Ин LED барои ислоҳи хатогиҳо муфид аст, то як навъ баромади физикии визуалӣ диҳад. Инчунин LED-и сурх мавҷуд аст, ки вақте ки шумо ба тахта қувваи барқ ​​медиҳед, фурӯзон мешавад.LAFVIN ESP32 Маҷмӯаи Starter Basic -тахтаНуқтаи ESP32
Дастгоҳҳои периферии ESP32 иборатанд аз:

  • 18 каналҳои табдилдиҳандаи аналогӣ-рақамӣ (ADC).
  • 3 интерфейси SPI
  • 3 интерфейси UART
  • 2 интерфейси I2C
  • 16 канали баромади PWM
  • 2 Табдилдиҳандаи рақамӣ ба аналогӣ (DAC)
  • 2 интерфейси I2S
  • 10 GPIO-ҳои ҳассосии ҳассос

Хусусиятҳои ADC (табдилдиҳандаи аналогӣ ба рақамӣ) ва DAC (табдилдиҳандаи рақамӣ ба аналогӣ) ба пинҳои мушаххаси статикӣ таъин карда мешаванд. Аммо, шумо метавонед муайян кунед, ки кадом пинҳо UART, I2C, SPI, PWM ва ғайра мебошанд - шумо танҳо бояд онҳоро дар код таъин кунед. Ин ба туфайли хусусияти мултиплексии чипи ESP32 имконпазир аст.
Гарчанде ки шумо метавонед хосиятҳои пинҳоро дар нармафзор муайян кунед, он ҷо пинҳо бо нобаёнӣ таъин шудаанд, ки дар расми зерин нишон дода шудааст.LAFVIN ESP32 Маҷмӯаи ибтидоӣ - ESP32 PinoutИлова бар ин, пинҳои дорои хусусиятҳои мушаххас мавҷуданд, ки онҳоро барои лоиҳаи мушаххас мувофиқ мекунанд ё не. Ҷадвали зерин нишон медиҳад, ки кадом пинҳоро ҳамчун вуруд, натиҷа истифода бурдан беҳтар аст ва кадоме аз онҳо бояд эҳтиёт бошед.
Пайвастҳои бо ранги сабз нишондодашуда барои истифода дурустанд. Онҳое, ки бо ранги зард ишора шудаанд, истифода бурдан ҷоиз аст, аммо шумо бояд диққат диҳед, зеро онҳо метавонанд асосан ҳангоми боркунӣ рафтори ғайричашмдошт дошта бошанд. Пинҳо, ки бо сурх нишон дода шудаанд, тавсия дода намешавад, ки ҳамчун вуруд ё натиҷа истифода шаванд.

GP IO Вуруд Натиҷа Қайдҳо
0 кашиданд OK сигнали PWM-ро ҳангоми боркунӣ мебарорад, барои ворид шудан ба ҳолати дурахшанда бояд ПАСТ бошад
1 рамзи TX OK баромади debug дар боркунӣ
2 OK OK ба LED-и борт пайваст, бояд шинокунанда ё паст гузошта шавад, то ба ҳолати дурахшанда ворид шавад
3 OK PIN RX БАЛАНД ҳангоми боркунӣ
4 OK OK
5 OK OK сигнали PWM-ро ҳангоми пурборкунӣ, pin strapping мебарорад
12 OK OK боркунӣ ноком мешавад, агар царакат баланд, PIN strapping
13 OK OK
14 OK OK сигнали PWM ҳангоми боркунӣ мебарорад
15 OK OK сигнали PWM-ро ҳангоми пурборкунӣ, pin strapping мебарорад
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 танҳо вуруд
35 OK танҳо вуруд
36 OK танҳо вуруд
39 OK танҳо вуруд

Хонданро барои таҳлили муфассал ва амиқи ESP32 GPIOs ва вазифаҳои он идома диҳед.
Танҳо пинҳоро ворид кунед
GPIOs аз 34 то 39 GPI мебошанд - танҳо пинҳои вуруд. Ин пинҳо резисторҳои дохилии боло ё поёнкунанда надоранд. Онҳоро ҳамчун баромад истифода бурдан мумкин нест, аз ин рӯ ин пинҳоро танҳо ҳамчун вуруд истифода баред:

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

Flash SPI дар ESP-WROOM-32 муттаҳид карда шудааст
GPIO 6 то GPIO 11 дар баъзе тахтаҳои таҳияи ESP32 дучор мешаванд. Аммо, ин пинҳо ба флеши ҳамгирошудаи SPI дар чипи ESP-WROOM-32 пайваст карда шудаанд ва барои истифодаҳои дигар тавсия дода намешаванд. Пас, ин пинҳоро дар лоиҳаҳои худ истифода набаред:

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

GPIO-ҳои ламсӣ
ESP32 дорои 10 сенсорҳои сенсории дохилӣ мебошад. Инҳо метавонанд тағиротро дар ҳама чизҳое, ки заряди барқ ​​доранд, ба монанди пӯсти инсонро ҳис кунанд. Ҳамин тавр, онҳо метавонанд вариантҳоро ҳангоми ламс кардани GPIO бо ангушт муайян кунанд. Ин пинҳо метавонанд ба осонӣ ба pads capacitive муттаҳид ва иваз тугмаҳои механикӣ. Пинҳонҳои ламсӣ инчунин метавонанд барои бедор кардани ESP32 аз хоби амиқ истифода шаванд. Он сенсорҳои сенсории дохилӣ ба ин GPIO пайваст карда шудаанд:

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

Табдилдиҳандаи аналогӣ ба рақамӣ (ADC)
ESP32 дорои 18 х 12 бит каналҳои вуруди ADC мебошад (дар ҳоле ки ESP8266 танҳо 1x 10 бит ADC дорад). Инҳо GPIO-ҳо мебошанд, ки метавонанд ҳамчун ADC ва каналҳои мувофиқ истифода шаванд:

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

Шарҳ: Вақте ки Wi-Fi истифода мешавад, пинҳои ADC2 истифода намешаванд. Ҳамин тавр, агар шумо Wi-Fi-ро истифода баред ва дар гирифтани арзиш аз ADC2 GPIO мушкилӣ дошта бошед, шумо метавонед ба ҷои истифодаи ADC1 GPIO фикр кунед. Ин бояд мушкилоти шуморо ҳал кунад.
Каналҳои вуруди ADC қарори 12-бит доранд. Ин маънои онро дорад, ки шумо метавонед хонишҳои аналогиро аз 0 то 4095 гиред, ки дар он 0 ба 0V ва 4095 то 3.3V мувофиқат мекунад. Шумо инчунин метавонед ҳалли каналҳои худро дар код ва диапазони ADC муқаррар кунед.
Пайвастҳои ESP32 ADC рафтори хаттӣ надоранд. Шумо эҳтимолан байни 0 ва 0.1V ё байни 3.2 ва 3.3Вро фарқ карда наметавонед. Ҳангоми истифодаи пинҳои ADC шумо бояд инро дар хотир нигоҳ доред. Шумо рафтореро, ки дар расми зерин нишон дода шудааст, ба даст меоред.LAFVIN ESP32 Basic Starter Kit - рафторТабдилдиҳандаи рақамӣ ба аналогӣ (DAC)
Дар ESP2 8 x 32 бит каналҳои DAC мавҷуданд, ки сигналҳои рақамиро ба ҷилди аналогӣ табдил медиҳандtagбаромади сигнали e. Инҳо каналҳои DAC мебошанд:

  • DAC1 (GPIO25)
  • DAC2 (GPIO26)

RTC GPIOs
Дар ESP32 дастгирии RTC GPIO мавҷуд аст. GPIOs, ки ба зерсистемаи камқуввати RTC равона карда шудаанд, метавонанд ҳангоми хоби амиқ будани ESP32 истифода шаванд. Ин RTC GPIO-ҳоро барои бедор кардани ESP32 аз хоби амиқ ҳангоми Ultra Low истифода бурдан мумкин аст
Ко-протсессори Power (ULP) кор мекунад. GPIO-ҳои зерин метавонанд ҳамчун манбаи бедории беруна истифода шаванд.

  • 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
Назоратчии LED PWM ESP32 дорои 16 канали мустақил мебошад, ки онҳоро барои тавлиди сигналҳои PWM бо хосиятҳои гуногун танзим кардан мумкин аст. Ҳама пинҳое, ки метавонанд ҳамчун баромад амал кунанд, метавонанд ҳамчун пинҳои PWM истифода шаванд (GPIOs 34 то 39 PWM-ро тавлид карда наметавонанд).
Барои муқаррар кардани сигнали PWM, шумо бояд ин параметрҳоро дар код муайян кунед:

  • басомади сигнал;
  • Давраи вазифа;
  • Канали PWM;
  • GPIO, ки шумо мехоҳед сигналро бароваред.

I2C
ESP32 дорои ду канали I2C аст ва ҳама гуна пин метавонад ҳамчун SDA ё SCL муқаррар карда шавад. Ҳангоми истифодаи ESP32 бо Arduino IDE, пинҳои пешфарзи I2C инҳоянд:

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

Агар шумо хоҳед, ки ҳангоми истифодаи китобхонаи сим дигар пинҳоро истифода баред, шумо танҳо бояд занг занед:
Wire.begin (SDA, SCL);
SPI
Бо нобаёнӣ, харитасозии пин барои SPI ин аст:

SPI МОСКВА МИСО CLK CS
VSPI GPIO 23 GPIO 19 GPIO 18 GPIO 5
HSPI GPIO 13 GPIO 12 GPIO 14 GPIO 15

Қатъ мекунад
Ҳама GPIO-ҳоро метавон ҳамчун халалдор танзим кард.
Пайвасткунакҳо
Чипи ESP32 дорои қуттиҳои зерини бастабандӣ мебошад:

  • GPIO 0 (барои ворид шудан ба ҳолати пурборкунӣ бояд паст бошад)
  • GPIO 2 (ҳангоми боркунӣ бояд шинокунанда ё паст бошад)
  • GPIO 4
  • GPIO 5 (ҳангоми пурборкунӣ бояд баланд бошад)
  • GPIO 12 (бояд ҳангоми боркунӣ паст бошад)
  • GPIO 15 (ҳангоми пурборкунӣ бояд баланд бошад)

Инҳо барои гузоштани ESP32 ба ҳолати пурборкунанда ё флешдор истифода мешаванд. Дар аксари тахтаҳои таҳия бо USB/Serial дарунсохт, ба шумо лозим нест, ки дар бораи ҳолати ин пинҳо хавотир шавед. Шӯрои мегузорад таїіизот дар ҳолати дуруст барои дурахш ё ҳолати пурборшаванда. Маълумоти бештарро дар бораи интихоби режими пурборкунандаи ESP32 дар ин ҷо пайдо кардан мумкин аст.
Аммо, агар шумо дастгоҳҳои периферии ба ин пинҳо пайвастшуда дошта бошед, шумо метавонед ҳангоми бор кардани рамзи нав, дурахши ESP32 бо нармафзори нав ё аз нав танзимкунии тахта мушкилӣ дошта бошед. Агар шумо баъзе таҷҳизоти перифериро ба пинҳои банд пайваст карда бошед ва шумо ҳангоми боркунии код ё дурахши ESP32 мушкилӣ дошта бошед, ин метавонад аз он сабаб бошад, ки он периферияҳо ба ESP32 ба ҳолати дуруст ворид намешаванд. Ҳуҷҷатҳои интихоби режими пурборкуниро хонед, то шуморо ба самти дуруст роҳнамоӣ кунад. Пас аз аз нав танзим кардан, дурахш кардан ё пурбор кардан, он пинҳо мувофиқи интизорӣ кор мекунанд.
Пинҳонҳои баланд дар боркунӣ
Баъзе GPIOҳо ҳангоми пурборкунӣ ё аз нав барқароркунӣ ҳолати худро ба HIGH ё баромади сигналҳои PWM иваз мекунанд.
Ин маънои онро дорад, ки агар шумо баромадҳои ба ин GPIO-ҳо пайвастшуда дошта бошед, шумо метавонед ҳангоми аз нав танзимкунии ESP32 ё пурборкунӣ натиҷаҳои ғайричашмдошт ба даст оред.

  • GPIO 1
  • GPIO 3
  • GPIO 5
  • GPIO 6 то GPIO 11 (ба хотираи флеши ҳамгирошудаи SPI ESP32 пайваст аст - истифода тавсия дода намешавад).
  • GPIO 14
  • GPIO 15

Фаъол кардан (EN)
Даргиронидани (EN) пинҳои фаъолкунандаи танзимкунандаи 3.3V мебошад. Он ба боло кашида шудааст, аз ин рӯ ба замин пайваст шавед, то танзимгари 3.3V-ро хомӯш кунед. Ин маънои онро дорад, ки шумо метавонед ин пинро, ки ба тугма пайваст шудааст, истифода баред, то ESP32-и худро аз нав оғоз кунед, масаланampле.
Ҷараёни GPIO кашида шудааст
Ҷараёни максималии мутлақи барои як GPIO кашидашуда мувофиқи бахши "Шартҳои тавсияшудаи кор" дар варақаи маълумотии ESP40 32 мА аст.
ESP32 сенсори дарунсохти Таъсири Холл
ESP32 инчунин дорои сенсори дарунсохташудаи эффекти толор мебошад, ки тағиротро дар майдони магнитии атроф муайян мекунад
ESP32 Arduino IDE
Илова барои Arduino IDE мавҷуд аст, ки ба шумо имкон медиҳад ESP32-ро бо истифода аз Arduino IDE ва забони барномасозии он барномарезӣ кунед. Дар ин дарс мо ба шумо нишон медиҳем, ки чӣ тавр насб кардани тахтаи ESP32 дар Arduino IDE, новобаста аз он ки шумо Windows, Mac OS X ё Linux-ро истифода мебаред.
Талабот: Arduino IDE насб карда шудааст
Пеш аз оғози ин тартиби насб, шумо бояд Arduino IDE-ро дар компютери худ насб кунед. Ду версияи Arduino IDE вуҷуд дорад, ки шумо метавонед насб кунед: версияи 1 ва версияи 2.
Шумо метавонед Arduino IDE-ро бо пахши истиноди зерин зеркашӣ ва насб кунед: arduino.cc/en/Main/Software
Кадом версияи Arduino IDE мо тавсия медиҳем? Дар айни замон, баъзеҳо ҳастанд plugins барои ESP32 (ба монанди SPIFFS FileSystem Uploader Plugin), ки ҳанӯз дар Arduino 2 дастгирӣ намешавад. Ҳамин тавр, агар шумо ният доред, ки плагини SPIFFS-ро дар оянда истифода баред, мо тавсия медиҳем, ки версияи кӯҳнаи 1.8.X-ро насб кунед. Барои пайдо кардани он ба шумо танҳо лозим аст, ки дар саҳифаи нармафзори Arduino ба поён ҳаракат кунед.
Насб кардани иловаи ESP32 дар Arduino IDE
Барои насб кардани тахтаи ESP32 дар Arduino IDE, ин дастурҳои зеринро иҷро кунед:

  1. Дар IDE Arduino-и худ, равед File> АфзалиятҳоLAFVIN ESP32 Маҷмӯаи ибтидоии асосӣ - Афзалиятҳо
  2. Ба "Менеҷери Шӯрои иловагӣ URLs" майдони:

https://raw.githubusercontent.com/espressif/arduino-esp32/gh-pages/package_esp32_index.json
Сипас, тугмаи "OK" -ро пахш кунед:Маҷмӯаи ибтидоии LAFVIN ESP32 - тугмаи "OK"Шарҳ: агар шумо аллакай тахтаҳои ESP8266 дошта бошед URL, шумо метавонед ҷудо кунед URLs бо вергул ба таври зерин:
https://raw.githubusercontent.com/espressif/arduino-esp32/gh-pages/package_esp32_index.json,
http://arduino.esp8266.com/stable/package_esp8266com_index.json
Менеҷери панелҳоро кушоед. Ба Асбобҳо > Раёсат > Менеҷери шӯроҳо…LAFVIN ESP32 Маҷмӯаи ибтидоӣ - EspressifҶустуҷӯ ESP32 and press install button for the “ESP32 by Espressif Systems“:LAFVIN ESP32 Маҷмӯаи ибтидоӣ - EspressifАна тамом. Он бояд пас аз чанд сония насб карда шавад.LAFVIN ESP32 Basic Starter Kit - насб карда шудааст

Рамзи санҷишро бор кунед

Тахтаи ESP32-ро ба компютери худ пайваст кунед. Бо кушодани Arduino IDE, ин қадамҳоро иҷро кунед:

  1. Шӯрои худро дар Асбобҳо > Менюи Шӯрои интихоб кунед (дар ҳолати ман ин модули ESP32 DEV аст)LAFVIN ESP32 Маҷмӯаи ибтидоии асосӣ - Шӯрои асбобҳо
  2. Портро интихоб кунед (агар шумо порти COM-ро дар IDE-и Arduino-и худ набинед, ба шумо лозим аст, ки CP210x USB-ро ба UART Bridge драйверҳои VCP насб кунед):LAFVIN ESP32 маҷмӯаи ибтидоӣ - UART Bridge
  3. Пешниҳоди зеринро кушоедampле зери File > Мисолamples > WiFi
    (ESP32) > WiFiScanLAFVIN ESP32 маҷмӯаи ибтидоӣ - WiFiScanМаҷмӯаи ибтидоии LAFVIN ESP32 - WiFiScan 1
  4. Дар Arduino IDE-и шумо эскизи нав кушода мешавад:LAFVIN ESP32 маҷмӯаи ибтидоӣ - Arduino IDE
  5. Тугмаи Боргириро дар Arduino IDE пахш кунед. Чанд сония интизор шавед, вақте ки код тартиб дода мешавад ва ба тахтаи шумо бор мекунад.LAFVIN ESP32 Маҷмӯаи Starter Basic - Шӯрои
  6. Агар ҳама чиз тавре ки интизор мерафт, шумо бояд "Боркунӣ анҷом ёфт" -ро бинед. паём.LAFVIN ESP32 Маҷмӯаи ибтидоӣ - Боркунӣ анҷом ёфт
  7. Monitor Serial Arduino IDE-ро бо суръати интиқоли 115200 кушоед:LAFVIN ESP32 Маҷмӯаи ибтидоии асосӣ - Монитор
  8. Тугмаи фаъолсозии ESP32-ро дар борт пахш кунед ва шумо бояд шабакаҳои дар наздикии ESP32-и худ дастрасро бубинед:LAFVIN ESP32 маҷмӯаи ибтидоии асосӣ - Тугмаи фаъол

Мушкилкушо

Агар шумо кӯшиш кунед, ки эскизи навро ба ESP32-и худ бор кунед ва шумо ин паёми хатогиро мегиред "Хатои марговар рух дод: Пайвастшавӣ ба ESP32 ноком шуд: Вақт тамом шуд... Пайвастшавӣ...". Ин маънои онро дорад, ки ESP32-и шумо дар ҳолати дурахш/боркунӣ нест.
Бо интихоби номи дурусти тахта ва COM, ин қадамҳоро иҷро кунед:
Тугмаи "BOOT" -ро дар тахтаи ESP32 пахш кунедLAFVIN ESP32 маҷмӯаи ибтидоӣ - "BOOT"

  • Барои бор кардани эскизи худ дар Arduino IDE тугмаи "Боргузорӣ" -ро пахш кунед:LAFVIN ESP32 Маҷмӯи ибтидоии асосӣ - ICON 6
  • Пас аз дидани "Пайвастшавӣ..." Паёмро дар IDE-и Arduino-и худ, ангушти худро аз тугмаи "BOOT" озод кунед:LAFVIN ESP32 Маҷмӯаи ибтидоии асосӣ - "Боргузорӣ анҷом ёфт
  • Пас аз он, шумо бояд паёми "Боркунӣ анҷом ёфт" -ро бинед
    Ана тамом. ESP32-и шумо бояд эскизи навро иҷро кунад. Барои бозоғоз кардани ESP32 тугмаи "Фаъол" -ро пахш кунед ва эскизи нави боршударо иҷро кунед.
    Шумо инчунин бояд ҳар дафъае, ки мехоҳед эскизи навро бор кунед, ин пайдарпаии тугмаро такрор кунед.

Лоиҳаи 1 ESP32 баромадҳо

Дар ин дастури оғозёбӣ шумо мефаҳмед, ки чӣ тавр хондани вуруди рақамӣ ба монанди гузариши тугма ва идоракунии баромадҳои рақамӣ ба монанди LED бо истифода аз ESP32 бо Arduino IDE.
Шартҳои пешакӣ
Мо ESP32-ро бо истифода аз Arduino IDE барномарезӣ мекунем. Ҳамин тавр, пеш аз идома додан, боварӣ ҳосил кунед, ки шумо панелҳои ESP32-ро насб кардаед:

  • Насб кардани иловаи ESP32 дар Arduino IDE

ESP32 назорати баромадҳои рақамӣ
Аввалан, ба шумо лозим аст, ки GPIO-ро, ки шумо мехоҳед назорат кунед, ҳамчун БАРҶОМ таъин кунед. Функсияи pinMode()-ро ба таври зерин истифода баред:
pinMode (GPIO, OUTPUT);
Барои идора кардани баромади рақамӣ ба шумо танҳо лозим аст, ки функсияи digitalWrite()-ро истифода баред, ки ҳамчун аргументҳо, GPIO (рақами int), ки шумо дар назар доред, ва ҳолати баланд ё паст.
digitalWrite (GPIO, STATE);
Ҳама GPIO-ҳоро метавон ҳамчун баромад истифода кард, ба истиснои GPIOs 6 то 11 (пайваст ба флеши ҳамгирошудаи SPI) ва GPIOs 34, 35, 36 ва 39 (танҳо вуруди GPIO);
Дар бораи ESP32 GPIOs бештар маълумот гиред: Дастури истинод ба ESP32 GPIO
ESP32 вурудоти рақамиро хонед
Аввалан, GPIO-ро, ки мехоҳед ҳамчун INPUT хонед, бо истифода аз функсияи pinMode() ба таври зерин таъин кунед:
pinMode (GPIO, INPUT);
Барои хондани вуруди рақамӣ, ба мисли тугма, шумо функсияи digitalRead()-ро истифода мебаред, ки ҳамчун аргумент, GPIO (рақами int), ки шумо дар назар доред, қабул мекунад.
DigitalRead (GPIO);
Ҳама ESP32 GPIO-ҳоро ҳамчун вуруд истифода бурдан мумкин аст, ба истиснои GPIO-ҳои аз 6 то 11 (бо флеши ҳамгирошудаи SPI пайваст).
Дар бораи ESP32 GPIOs бештар маълумот гиред: Дастури истинод ба ESP32 GPIO
Лоиҳаи собиқample
Барои нишон додани он ки чӣ тавр истифода бурдани вуруди рақамӣ ва баромадҳои рақамӣ, мо як лоиҳаи оддии собиқро месоземample бо тугмача ва LED. Мо ҳолати тугмаро мехонем ва мувофиқи он, ки дар расми зерин нишон дода шудааст, LED-ро фурӯзон мекунем.LAFVIN ESP32 Маҷмӯаи ибтидоӣ - Лоиҳаи собиқample

Қисмҳои зарурӣ
Ин аст рӯйхати қисмҳое, ки барои сохтани схема ба шумо лозиманд:

  • ESP32 DEVKIT V1
  • LED 5 мм
  • Муқовимат 220 Ohms
  • Пахш кардани тугма
  • Муқовимати 10к Ом
  • Панели нон
  • Симҳои гузариш

Диаграммаи схематикӣ
Пеш аз идома додан, шумо бояд як схемаро бо LED ва тугмача ҷамъ кунед.
Мо LED-ро ба GPIO 5 ва тугмаро ба GPIO пайваст мекунем 4.LAFVIN ESP32 Маҷмӯаи ибтидоӣ - Диаграммаи схематикӣКодекс
Рамзи Project_1_ESP32_Inputs_Outputs.ino -ро дар arduino IDE кушоедLAFVIN ESP32 Маҷмӯаи Starter Basic - РамзМаҷмӯаи ибтидоии LAFVIN ESP32 - Рамзи 1Чӣ тавр Кодекс кор мекунад
Дар ду сатри зерин шумо тағирёбандаҳоро барои таъин кардани пинҳо эҷод мекунед:

LAFVIN ESP32 Маҷмӯаи ибтидоии асосӣ - Корҳои кодТугма ба GPIO 4 ва LED ба GPIO 5 пайваст аст. Ҳангоми истифодаи Arduino IDE бо ESP32, 4 ба GPIO 4 ва 5 ба GPIO 5 мувофиқат мекунад.
Баъд, шумо тағирёбанда эҷод мекунед, то ҳолати тугмаро нигоҳ доред. Бо нобаёнӣ, он 0 аст (фишор нашудааст).
int buttonState = 0;
Дар танзимот (), шумо тугмаро ҳамчун Вуруд оғоз мекунед ва LED -ро ҳамчун ЧАРОИШ.
Барои ин, шумо функсияи pinMode()-ро истифода мебаред, ки pinеро, ки шумо дар назар доред, қабул мекунад ва режим: INPUT ё OUTPUT.
pinMode (тугмаиPin, INPUT);
pinMode (ledPin, OUTPUT);
Дар ҳалқа () он ҷоест, ки шумо ҳолати тугмаро хонед ва LED-ро мувофиқи он танзим кунед.
Дар сатри навбатӣ шумо ҳолати тугмаро хонед ва онро дар тағирёбандаи buttonState захира кунед.
Тавре ки мо қаблан дида будем, шумо функсияи digitalRead() -ро истифода мебаред.
buttonState = DigitalRead (buttonPin);
Изҳороти зерини if, месанҷад, ки ҳолати тугма баланд аст. Агар ин тавр бошад, он бо истифода аз функсияи digitalWrite() LED-ро фаъол мекунад, ки ҳамчун далел ledPin ва ҳолати HIGH-ро қабул мекунад.
агар (buttonState == БАЛАНД)LAFVIN ESP32 Маҷмӯи ибтидоии асосӣ - Корҳои код 1Агар ҳолати тугма баланд набошад, шумо LED-ро хомӯш мекунед. Танҳо LOW-ро ҳамчун далели дуюм ба функсияи digitalWrite() таъин кунед.LAFVIN ESP32 Маҷмӯаи ибтидоии асосӣ - digitalWriteБоркунии Кодекс
Пеш аз пахш кардани тугмаи боргузорӣ, ба Tools > Board гузаред ва тахтаро интихоб кунед: DOIT ESP32 DEVKIT V1.
Ба Асбобҳо> Порт гузаред ва порти COM-ро, ки ESP32 ба он пайваст аст, интихоб кунед. Сипас, тугмаи боргузорӣ -ро пахш кунед ва паёми "Боркунӣ анҷом ёфт" -ро интизор шавед.LAFVIN ESP32 Маҷмӯи ибтидоии асосӣ - ICON 7Эзоҳ: Агар шумо дар равзанаи ислоҳкунӣ нуқтаҳои зиёдеро (пайвастшавӣ…__…__) бинед ва паёми "Пайваст шудан ба ESP32: Вақти интизории сарлавҳаи бастаҳо гузашт", ин маънои онро дорад, ки шумо бояд ESP32-ро дар борт BOOT пахш кунед. тугмаи пас аз нуқтаҳо
пайдо шуданро оғоз кунед. Бартараф кардани мушкилот

Намоиш

Пас аз боркунии код, схемаи худро санҷед. Вақте ки шумо тугмаро пахш мекунед, LED-и шумо бояд фурӯзон шавад:LAFVIN ESP32 Маҷмӯаи ибтидоӣ - НамоишВа вақте ки шумо онро озод мекунед, хомӯш кунед:LAFVIN ESP32 Маҷмӯаи Starter Basic - навбати худ

Лоиҳаи 2 ESP32 Вурудҳои аналогӣ

Ин лоиҳа нишон медиҳад, ки чӣ тавр хондани вуруди аналогӣ бо ESP32 бо истифода аз Arduino IDE.
Хониши аналогӣ барои хондани арзишҳо аз резисторҳои тағирёбанда ба монанди потенциометрҳо ё сенсорҳои аналогӣ муфид аст.
Вурудҳои аналогӣ (ADC)
Хондани арзиши аналогӣ бо ESP32 маънои онро дорад, ки шумо метавонед ҳаҷми гуногунро чен кунедtagсатҳҳои e аз 0 В то 3.3 В.
Ҷилдиtage чен карда мешавад, сипас ба арзиши байни 0 то 4095 таъин карда мешавад, ки дар он 0 V ба 0 ва 3.3 В ба 4095 мувофиқат мекунад.tagд байни 0 V ва 3.3 V дар байни арзиши мувофиқ дода мешавад.LAFVIN ESP32 Маҷмӯаи ибтидоӣ - Вурудҳои аналогӣADC ғайрихаттӣ аст
Идеалӣ, шумо ҳангоми истифодаи пинҳои ESP32 ADC рафтори хатиро интизоред.
Бо вуҷуди ин, ин рӯй намедиҳад. Он чизе, ки шумо ба даст меоред, рафторест, ки дар диаграммаи зерин нишон дода шудааст:LAFVIN ESP32 Маҷмӯаи ибтидоӣ - ғайрихаттӣИн рафтор маънои онро дорад, ки ESP32-и шумо 3.3 В-ро аз 3.2 В фарқ карда наметавонад.
Шумо барои ҳарду ҷилд арзиши якхела мегиредtages: 4095.
Ҳамин чиз барои ҳаҷми хеле паст рӯй медиҳадtagарзишҳои e: барои 0 V ва 0.1 V шумо ҳамон арзишро ба даст меоред: 0. Шумо бояд ҳангоми истифодаи пинҳои ESP32 ADC инро дар хотир нигоҳ доред.
Функсияи analogRead ().
Хондани вуруди аналогӣ бо ESP32 бо истифода аз Arduino IDE мисли истифодаи функсияи analogRead() осон аст. Он ҳамчун далел, GPIO-ро, ки шумо мехоҳед хондан мехоҳед, қабул мекунад:
analogRead (GPIO);
Дар DEVKIT V15board танҳо 1 мавҷуд аст (версияи 30 GPIO).
Тахтаи ESP32-и худро гиред ва пинҳои ADC-ро ҷойгир кунед. Инҳо бо сарҳади сурх дар расми зер нишон дода шудаанд.LAFVIN ESP32 Basic Starter Kit - сарҳадИн пинҳои вуруди аналогӣ дорои қарори 12-бит мебошанд. Ин маънои онро дорад, ки ҳангоми хондани вуруди аналогӣ, диапазони он метавонад аз 0 то 4095 фарқ кунад.
Эзоҳ: Вақте ки Wi-Fi истифода мешавад, пинҳои ADC2 истифода намешаванд. Ҳамин тавр, агар шумо Wi-Fi-ро истифода баред ва дар гирифтани арзиш аз ADC2 GPIO мушкилӣ дошта бошед, шумо метавонед ба ҷои истифодаи ADC1 GPIO фикр кунед, ки ин бояд мушкилоти шуморо ҳал кунад.
Барои дидани он, ки ҳама чиз бо ҳам алоқаманд аст, мо як собиқи оддӣ месоземample барои хондани арзиши аналогӣ аз потенциометр.
Қисмҳои зарурӣ
Барои ин собикample, ба шумо қисмҳои зерин лозим аст:

  • Шӯрои ESP32 DEVKIT V1
  • Потенциометр
  • Панели нон
  • Симҳои гузариш

Нақшаи
Потенциометрро ба ESP32-и худ пайваст кунед. Сими миёнаи потенциометр бояд ба GPIO 4 пайваст карда шавад. Шумо метавонед диаграммаи схематикии зеринро ҳамчун истинод истифода баред.LAFVIN ESP32 Маҷмӯаи ибтидоии асосӣ - СхематикӣКодекс
Мо ESP32-ро бо истифода аз Arduino IDE барномарезӣ мекунем, бинобар ин пеш аз идома додан, боварӣ ҳосил кунед, ки шумо иловаи ESP32-ро насб кардаед: (Агар шумо ин қадамро аллакай иҷро карда бошед, шумо метавонед ба қадами оянда гузаред.)
Насб кардани иловаи ESP32 дар Arduino IDE
Рамзи Project_2_ESP32_Inputs_Outputs.ino -ро дар arduino IDE кушоедМаҷмӯаи ибтидоии LAFVIN ESP32 - Рамзи 2Ин рамз танҳо арзишҳоро аз потенциометр мехонад ва ин арзишҳоро дар Monitor Serial чоп мекунад.
Дар код, шумо бо муайян кардани GPIO, ки потенциометр ба он пайваст аст, оғоз мекунед. Дар ин собикample, GPIO 4.LAFVIN ESP32 Маҷмӯи ибтидоии асосӣ - собиқampleДар танзимот (), иртиботи пайдарпайро бо суръати интиқоли 115200 оғоз кунед.LAFVIN ESP32 Маҷмӯи ибтидоии асосӣ - собиқampле 1Дар ҳалқаи (), истифода analogRead () -функсия барои хондани вуруди аналогӣ аз potPin.LAFVIN ESP32 Маҷмӯи ибтидоии асосӣ - собиқampле 2Ниҳоят, арзишҳои аз потенциометр хондашуда дар монитори силсилавӣ чоп кунед.LAFVIN ESP32 Маҷмӯи ибтидоии асосӣ - собиқampле 3Рамзи пешниҳодшударо ба ESP32-и худ бор кунед. Боварӣ ҳосил кунед, ки шумо панели дуруст ва порти COM-ро дар менюи Tools интихоб кардаед.
Санҷиши Example
Пас аз боркунии код ва пахш кардани тугмаи аз нав танзимкунии ESP32, Мониторҳои Serial-ро бо суръати интиқоли 115200 кушоед. Потенциометрро гардиш кунед ва тағирёбии арзишҳоро бубинед.Арзиши максималии шумо 4095 ва арзиши ҳадди ақал 0 аст.LAFVIN ESP32 Basic Starter Kit - арзиши ҳадди аксар

Пахш кардан

Дар ин мақола шумо фаҳмидед, ки чӣ тавр хондани вуруди аналогиро бо истифода аз ESP32 бо Arduino IDE. Дар ҷамъбаст:

  • Тахтаи ESP32 DEVKIT V1 DOIT (версияи 30 пин) дорои 15 пинҳои ADC мебошад, ки шумо метавонед барои хондани вурудҳои аналогӣ истифода баред.
  • Ин пинҳо қарори 12 бит доранд, яъне шумо метавонед арзишҳоро аз 0 то 4095 гиред.
  • Барои хондани арзиш дар Arduino IDE, шумо танҳо функсияи analogRead () -ро истифода мебаред.
  • Пайвастҳои ESP32 ADC рафтори хаттӣ надоранд. Шумо эҳтимолан байни 0 ва 0.1V ё байни 3.2 ва 3.3Вро фарқ карда наметавонед. Ҳангоми истифодаи пинҳои ADC шумо бояд инро дар хотир нигоҳ доред.

Лоиҳаи 3 ESP32 PWM (Баромади аналогӣ)

Дар ин дарс мо ба шумо нишон медиҳем, ки чӣ тавр тавлид кардани сигналҳои PWM бо ESP32 бо истифода аз Arduino IDE. Ҳамчун собиқample мо як схемаи оддиеро месозем, ки бо истифода аз контролери LED PWM-и ESP32 LED-ро хира мекунад.LAFVIN ESP32 маҷмӯаи ибтидоӣ - AnalogOutputНазоратчии LED PWM ESP32
ESP32 дорои контролери LED PWM бо 16 канали мустақил аст, ки метавонад барои тавлиди сигналҳои PWM бо хосиятҳои гуногун танзим карда шавад.
Инҳоянд қадамҳое, ки шумо бояд барои хомӯш кардани LED бо PWM бо истифода аз Arduino IDE пайравӣ кунед:

  1. Аввалан, шумо бояд канали PWM-ро интихоб кунед. 16 канал аз 0 то 15 мавҷуд аст.
  2. Сипас, шумо бояд басомади сигнали PWM-ро муқаррар кунед. Барои LED, басомади 5000 Гц барои истифода хуб аст.
  3. Шумо инчунин бояд ҳалли сикли вазифаи сигналро муқаррар кунед: шумо қарорҳои аз 1 то 16 бит доред. Мо қарори 8-битро истифода мебарем, ки ин маънои онро дорад, ки шумо метавонед равшании LED-ро бо истифода аз арзиши аз 0 то 255 назорат кунед.
  4.  Баъдан, шумо бояд муайян кунед, ки сигнал дар кадом GPIO ё GPIO пайдо мешавад. Барои ин шумо функсияи зеринро истифода мебаред:
    ledcAttachPin(GPIO, канал)
    Ин функсия ду аргументро қабул мекунад. Якум GPIO аст, ки сигналро мебарорад ва дуюм каналест, ки сигналро тавлид мекунад.
  5. Дар ниҳоят, барои идора кардани равшании LED бо истифода аз PWM, шумо функсияи зеринро истифода мебаред:

ledcWrite (канал, давраи навбатӣ)
Ин функсия каналеро, ки сигнали PWM-ро тавлид мекунад ва давраи вазифаро ҳамчун далел қабул мекунад.
Қисмҳои зарурӣ
Барои пайравӣ аз ин дастур ба шумо ин қисмҳо лозиманд:

  • Шӯрои ESP32 DEVKIT V1
  • 5мм LED
  • Муқовимат 220 Ohms
  •  Панели нон
  • Симҳои гузариш

Нақшаи
Тавре ки дар диаграммаи схематикии зерин ба ESP32-и худ LED-ро пайваст кунед. LED бояд ба GPIO пайваст карда шавад 4.LAFVIN ESP32 Маҷмӯаи ибтидоии асосӣ - СхематикӣШарҳ: шумо метавонед ҳама гуна пинҳои дилхоҳатонро истифода баред, ба шарте ки он метавонад ҳамчун баромад амал кунад. Ҳама пинҳое, ки метавонанд ҳамчун баромад амал кунанд, метавонанд ҳамчун пинҳои PWM истифода шаванд. Барои маълумоти бештар дар бораи ESP32 GPIOs, хонед: Reference ESP32 Pinout: Кадом пинҳои GPIO-ро шумо бояд истифода баред?
Кодекс
Мо ESP32-ро бо истифода аз Arduino IDE барномарезӣ мекунем, бинобар ин пеш аз идома додан, боварӣ ҳосил кунед, ки шумо иловаи ESP32-ро насб кардаед: (Агар шумо ин қадамро аллакай иҷро карда бошед, шумо метавонед ба қадами оянда гузаред.)
Насб кардани иловаи ESP32 дар Arduino IDE
Рамзи Project_3_ESP32_PWM.ino -ро дар arduino IDE кушоедМаҷмӯаи ибтидоии LAFVIN ESP32 - Рамзи 3Маҷмӯаи ибтидоии LAFVIN ESP32 - Рамзи 4Шумо бо муайян кардани пин, ки LED ба он замима шудааст, оғоз мекунед. Дар ин ҳолат LED ба GPIO 4 пайваст карда мешавад.Маҷмӯаи ибтидоии LAFVIN ESP32 - Рамзи 5Пас, шумо хосиятҳои сигнали PWM-ро муқаррар мекунед. Шумо басомади 5000 Гцро муайян мекунед, канали 0-ро барои тавлиди сигнал интихоб мекунед ва қарори 8 битро муқаррар мекунед. Шумо метавонед хосиятҳои дигареро, ки аз инҳо фарқ мекунанд, барои тавлиди сигналҳои гуногуни PWM интихоб кунед.Маҷмӯаи ибтидоии LAFVIN ESP32 - Рамзи 6Дар setup() ба шумо лозим аст, ки LED PWM-ро бо хосиятҳое, ки қаблан муайян кардаед, бо истифода аз функсияи ledcSetup(), ки ҳамчун аргументҳо, ledChannel, басомад ва қарор қабул мекунад, ба таври зерин танзим кунед:Маҷмӯаи ибтидоии LAFVIN ESP32 - Рамзи 8Баъд, шумо бояд GPIO-ро интихоб кунед, ки сигналро аз он мегиред. Барои ин функсияи ledcAttachPin()-ро истифода баред, ки GPIO-ро дар он ҷое, ки мехоҳед сигнал гиред ва каналеро, ки сигнал тавлид мекунад, ҳамчун далел қабул мекунад. Дар ин собикample, мо сигналро дар ledPin GPIO мегирем, ки ба GPIO 4 мувофиқ аст. Канале, ки сигнал тавлид мекунад, ledChannel аст, ки ба канали 0 мувофиқ аст.Маҷмӯаи ибтидоии LAFVIN ESP32 - Рамзи 9Дар ҳалқа, шумо давраи вазифаро аз 0 то 255 тағир медиҳед, то равшании LED-ро зиёд кунед.LAFVIN ESP32 Basic Starter Kit - равшанӣВа он гоҳ, байни 255 ва 0 барои кам кардани равшанӣ.LAFVIN ESP32 Маҷмӯи ибтидоии асосӣ - равшанӣ 1Барои муқаррар кардани равшании LED, шумо танҳо бояд функсияи ledcWrite() -ро истифода баред, ки каналеро, ки сигнал тавлид мекунад ва давраро ҳамчун далел қабул мекунад.LAFVIN ESP32 Маҷмӯи ибтидоии асосӣ - равшанӣ 2Вақте ки мо ҳалли 8-битаро истифода мебарем, давраи вазифа бо истифода аз арзиши аз 0 то 255 назорат карда мешавад. Дар хотир доред, ки дар функсияи ledcWrite() мо каналеро истифода мебарем, ки сигнал тавлид мекунад, на GPIO.

Санҷиши Example

Рамзро ба ESP32-и худ бор кунед. Боварӣ ҳосил кунед, ки шумо панели дуруст ва порти COM-ро интихоб кардаед. Ба схемаи худ нигаред. Шумо бояд LED-и хира дошта бошед, ки равшаниро зиёд ва кам мекунад.LAFVIN ESP32 маҷмӯаи ибтидоӣ - Санҷиши Example

Лоиҳаи 4 ESP32 PIR Sensor Motion

Ин лоиҳа чӣ гуна муайян кардани ҳаракатро бо ESP32 бо истифода аз сенсори ҳаракати PIR нишон медиҳад. Сигнал ҳангоми муайян кардани ҳаракат ҳушдор медиҳад ва ҳушдорро ҳангоми муайян кардани ягон ҳаракат дар муддати муқарраршуда қатъ мекунад (масалан, 4 сония)
Чӣ тавр HC-SR501 Sensor Motion кор мекунад
.LAFVIN ESP32 маҷмӯаи ибтидоӣ - сенсори ҳаракат кор мекунадПринсипи кори сенсори HC-SR501 ба тағирёбии радиатсияи инфрасурх дар объекти ҳаракат асос ёфтааст. Барои муайян кардани сенсори HC-SR501, объект бояд ба ду талабот ҷавобгӯ бошад:

  • Объект роҳи инфрасурх мепошад.
  • Объект ҳаракат мекунад ё меларзад

Ҳамин тавр:
Агар объект шуоъҳои инфрасурх мебарорад, вале ҳаракат намекунад (масалан, шахс бе ҳаракат истода бошад), онро сенсор муайян намекунад.
Агар объект ҳаракат кунад, аммо нури инфрасурх набарорад (масалан, робот ё мошин), онро сенсор муайян намекунад.
Муаррифии таймерҳо
Дар ин собикample мо инчунин таймерҳоро муаррифӣ хоҳем кард. Мо мехоҳем, ки LED пас аз муайян кардани ҳаракат дар тӯли шумораи пешакӣ муайяншуда фурӯзон монад. Ба ҷои истифодаи функсияи таъхир (), ки коди шуморо блок мекунад ва ба шумо имкон намедиҳад, ки дар тӯли шумораи муайяни сонияҳо ягон кори дигарро иҷро кунед, мо бояд таймерро истифода барем.LAFVIN ESP32 Маҷмӯи ибтидоии асосӣ - Муаррифии таймерҳоФунксияи таъхир ().
Шумо бояд бо функсияи delay() шинос бошед, зеро он васеъ истифода мешавад. Истифодаи ин функсия хеле осон аст. Он рақами ягонаи int-ро ҳамчун аргумент қабул мекунад.
Ин рақам вақтро дар миллисонияҳо нишон медиҳад, ки барнома бояд то гузаштан ба сатри навбатии код интизор шавад.LAFVIN ESP32 Basic Starter Kit - рамзиВақте ки шумо таъхир (1000) мекунед, барномаи шумо дар он сатр барои 1 сония қатъ мешавад.
таъхир () функсияи бастани аст. Функсияҳои басташавӣ ба барнома имкон намедиҳад, ки то он даме, ки ин вазифаи мушаххас иҷро карда шавад. Агар ба шумо лозим ояд, ки якчанд вазифа дар як вақт иҷро шаванд, шумо аз таъхир () истифода бурда наметавонед.
Барои аксари лоиҳаҳо шумо бояд аз истифодаи таъхирҳо худдорӣ кунед ва ба ҷои он вақтсанҷҳоро истифода баред.
Функсияи millis().
Бо истифода аз функсияе, ки millis() ном дорад, шумо метавонед шумораи миллисонияҳоеро, ки аз замони оғози аввалини барнома гузаштаанд, баргардонед.LAFVIN ESP32 Basic Starter Kit - барнома аввал оғоз шудЧаро ин функсия муфид аст? Зеро бо истифода аз математика, шумо метавонед ба осонӣ тафтиш кунед, ки чӣ қадар вақт бе бастани рамзи шумо гузашт.
Қисмҳои зарурӣ
Барои пайравӣ аз ин дастур ба шумо қисмҳои зерин лозим аст

  • Шӯрои ESP32 DEVKIT V1
  • Сенсори ҳаракати PIR (HC-SR501)
  • Овози фаъол
  • Симҳои гузариш
  • Панели нон

НақшаиМаҷмӯаи ибтидоии LAFVIN ESP32 - Схемати 1Шарҳ: Ҷилди корӣtage аз HC-SR501 5V аст. Барои қувват додани он пинҳои Vin-ро истифода баред.
Кодекс
Пеш аз идома додани ин дарс шумо бояд иловаи ESP32-ро дар IDE Arduino-и худ насб кунед. Барои насб кардани ESP32 дар Arduino IDE яке аз дастурҳои зеринро иҷро кунед, агар шумо ин корро накарда бошед. (Агар шумо ин қадамро аллакай иҷро карда бошед, шумо метавонед ба қадами оянда гузаред.)
Насб кардани иловаи ESP32 дар Arduino IDE
Рамзи Project_4_ESP32_PIR_Motion_Sensor.ino -ро дар arduino IDE кушоед.
Намоиш
Рамзро ба тахтаи ESP32-и худ бор кунед. Боварӣ ҳосил кунед, ки шумо панели дуруст ва бандари COM-ро интихоб кардаед. Қадамҳои истинод ба кодро бор кунед.
Мониторҳои Serialро бо суръати интиқоли 115200 кушоед.LAFVIN ESP32 Маҷмӯи ибтидоии асосӣ - Намоиши 1Дасти худро дар назди сенсори PIR ҳаракат кунед. Садо бояд фурӯзон шавад ва паём дар мониторҳои силсилавӣ чоп карда мешавад, ки "Ҳаракат ошкор шуд! Ҳушдори садо".
Пас аз 4 сония садои занг бояд хомӯш шавад.LAFVIN ESP32 Маҷмӯаи ибтидоии асосӣ - садо

Лоиҳаи 5 ESP32 Гузариш Web Сервер

Дар ин лоиҳа шумо мустақилона эҷод мекунед web сервер бо ESP32, ки баромадҳоро (ду LED) бо истифода аз муҳити барномасозии Arduino IDE назорат мекунад. Дар web сервери мобилӣ ҷавобгӯ аст ва онро бо ҳама гуна дастгоҳе, ки ҳамчун браузер дар шабакаи маҳаллӣ истифода мебарад, дастрас кардан мумкин аст. Мо ба шумо нишон медиҳем, ки чӣ гуна эҷод кардан лозим аст web сервер ва чӣ тавр кор кардани код қадам ба қадам.
Лоиҳа ба охир расидview
Пеш аз он ки мустақиман ба лоиҳа равед, муҳим аст, ки чӣ гуна мо web сервер иҷро хоҳад кард, то ин ки баъдтар иҷро кардани қадамҳо осонтар бошад.

  • Дар web сервере, ки шумо ду LED-и ба ESP32 GPIO 26 ва GPIO 27 пайвастшударо идора мекунед;
  • Шумо метавонед ба ESP32 дастрасӣ пайдо кунед web сервер тавассути ворид кардани суроғаи IP ESP32 дар браузер дар шабакаи маҳаллӣ;
  • Бо пахш кардани тугмаҳои худ web сервер шумо метавонед ҳолати ҳар як LED-ро фавран тағир диҳед.

Қисмҳои зарурӣ
Барои ин дарс ба шумо қисмҳои зерин лозим аст:

  • Шӯрои ESP32 DEVKIT V1
  • 2х 5мм LED
  • Муқовимати 2х 200 Ом
  • Панели нон
  • Симҳои гузариш

Нақшаи
Бо сохтани схема оғоз кунед. Ду LED-ро ба ESP32 пайваст кунед, тавре ки дар диаграммаи схематикии зерин нишон дода шудааст - як LED ба GPIO 26 ва дигаре ба GPIO 27 пайваст карда шудааст.
Шарҳ: Мо тахтаи ESP32 DEVKIT DOIT-ро бо 36 пин истифода мебарем. Пеш аз васл кардани схема, боварӣ ҳосил кунед, ки pinout барои тахтаи истифодашавандаро тафтиш кунед.LAFVIN ESP32 Маҷмӯаи ибтидоии асосӣ - СхематикӣКодекс
Дар ин ҷо мо кодеро пешниҳод мекунем, ки ESP32-ро эҷод мекунад web сервер. Рамзи Project_5_ESP32_Switch _ -ро кушоедWeb_Server.ino дар arduino IDE, аммо онро ҳанӯз бор накунед. Шумо бояд каме тағирот ворид кунед, то он барои шумо кор кунад.
Мо ESP32-ро бо истифода аз Arduino IDE барномарезӣ мекунем, бинобар ин пеш аз идома додан, боварӣ ҳосил кунед, ки шумо иловаи ESP32-ро насб кардаед: (Агар шумо ин қадамро аллакай иҷро карда бошед, шумо метавонед ба қадами оянда гузаред.)
Насб кардани иловаи ESP32 дар Arduino IDE
Муқаррар кардани маълумоти шабакаи шумо
Шумо бояд сатрҳои зеринро бо маълумоти шабакавии худ тағир диҳед: SSID ва парол. Рамз дар бораи он ки шумо бояд тағирот ворид кунед, хуб шарҳ дода шудааст.LAFVIN ESP32 маҷмӯаи ибтидоӣ - Маълумотномаҳои шабакавӣБоркунии Кодекс
Акнун, шумо метавонед кодро бор кунед ва web сервер фавран кор хоҳад кард.
Барои бор кардани код ба ESP32 қадамҳои зеринро иҷро кунед:

  1. Шӯрои ESP32-и худро ба компютери худ пайваст кунед;
  2. Дар Arduino IDE тахтаи худро дар Tools > Board интихоб кунед (дар ҳолати мо мо тахтаи ESP32 DEVKIT DOIT-ро истифода мебарем);LAFVIN ESP32 Маҷмӯи ибтидоии асосӣ - Боркунии код
  3. Порти COM-ро дар Асбобҳо > Порт интихоб кунед.LAFVIN ESP32 Маҷмӯи ибтидоии асосӣ - Порти асбобҳо
  4. Тугмаи Боргириро дар Arduino IDE пахш кунед ва чанд сония интизор шавед, ки код тартиб медиҳад ва ба тахтаи шумо бор мекунад.LAFVIN ESP32 Маҷмӯи ибтидоии асосӣ - ICON 7
  5. Паёми "Боркунӣ анҷом ёфт" -ро интизор шавед.LAFVIN ESP32 Маҷмӯаи ибтидоии асосӣ - Боркунӣ анҷом ёфт 1

Ҷустуҷӯи суроғаи IP ESP
Пас аз боркунии код, Мониторҳои Serialро бо суръати интиқоли 115200 кушоед.LAFVIN ESP32 маҷмӯаи ибтидоии асосӣ - суроғаи IP ESPТугмаи ESP32 EN-ро пахш кунед (аз нав танзим кунед). ESP32 ба Wi-Fi пайваст мешавад ва суроғаи IP-и ESP-ро дар Monitor Serial мебарорад. Он суроғаи IP-ро нусхабардорӣ кунед, зеро он барои дастрасӣ ба ESP32 лозим аст web сервер.LAFVIN ESP32 маҷмӯаи ибтидоӣ - web серверДастрасӣ ба Web Сервер
Барои дастрасӣ ба web сервер, браузери худро кушоед, суроғаи IP-и ESP32-ро часбонед ва шумо саҳифаи зеринро хоҳед дид.
Шарҳ: Браузери шумо ва ESP32 бояд ба як LAN пайваст карда шаванд.LAFVIN ESP32 Маҷмӯи ибтидоии асосӣ - Дастрасӣ ба Web СерверАгар шумо ба мониторҳои силсилавӣ назар андозед, шумо метавонед дар замина чӣ рӯй дода истодааст. ESP дархости HTTP-ро аз муштарии нав қабул мекунад (дар ин ҳолат, браузери шумо).LAFVIN ESP32 Маҷмӯи ибтидоии асосӣ - дархости HTTPШумо инчунин метавонед маълумоти дигарро дар бораи дархости HTTP бубинед.
Намоиш
Акнун шумо метавонед санҷед, ки оё шумо web сервер дуруст кор мекунад. Барои идоракунии LED-ҳо тугмаҳоро пахш кунед.LAFVIN ESP32 Маҷмӯаи Starter Basic - заминаҲамзамон, шумо метавонед ба мониторҳои силсилавӣ назар андозед, то бубинед, ки дар замина чӣ рӯй дода истодааст. Барои мисолample, вақте ки шумо тугмаро пахш мекунед, то GPIO 26-ро фаъол созед, ESP32 дар /26/on дархост қабул мекунад. URL.LAFVIN ESP32 маҷмӯаи ибтидоӣ - URLВақте ки ESP32 ин дархостро қабул мекунад, он LED-и ба GPIO 26 замимашударо фаъол мекунад ва ҳолати худро дар экран навсозӣ мекунад. web саҳифа.LAFVIN ESP32 маҷмӯаи ибтидоӣ - web саҳифаТугмаи GPIO 27 низ ҳамин тавр кор мекунад. Санҷед, ки он дуруст кор мекунад.LAFVIN ESP32 Маҷмӯи ибтидоии асосӣ - дуруст кор мекунад

Чӣ тавр Кодекс кор мекунад

Дар ин бахш кодро бодиққат дида мебароем, то бубинем, ки он чӣ гуна кор мекунад.
Аввалин чизе, ки ба шумо лозим аст, дохил кардани китобхонаи WiFi мебошад.LAFVIN ESP32 маҷмӯаи ибтидоӣ - китобхонаи WiFiТавре ки қаблан гуфта шуда буд, шумо бояд ssid ва пароли худро дар сатрҳои зерин дар дохили нохунакҳои дугона ворид кунед.LAFVIN ESP32 Маҷмӯаи ибтидоии асосӣ - нохунакҳои дукаратаПас шумо худатонро таъин мекунед web сервер ба порти 80.LAFVIN ESP32 маҷмӯаи ибтидоӣ - web серверСатри зерин барои нигоҳ доштани сарлавҳаи дархости HTTP тағирёбанда эҷод мекунад:LAFVIN ESP32 Маҷмӯи ибтидоии асосӣ - HTTPrequestБаъдан, шумо тағирёбандаҳои ёрирасон эҷод мекунед, то ҳолати кунунии натиҷаҳои худро нигоҳ доред. Агар шумо хоҳед, ки натиҷаҳои бештар илова кунед ва ҳолати онро захира кунед, шумо бояд тағирёбандаҳои бештар эҷод кунед.LAFVIN ESP32 Basic Starter Kit - тағирёбандаҳоШумо инчунин бояд ба ҳар як баромади худ GPIO таъин кунед. Дар ин ҷо мо GPIO 26 ва GPIO 27-ро истифода мебарем. Шумо метавонед дигар GPIO-ҳои мувофиқро истифода баред.LAFVIN ESP32 маҷмӯаи ибтидоӣ - дигар мувофиқташкил кардан()
Акнун биёед ба танзимот () меравем. Аввалан, мо иртиботи пайдарпайро бо суръати интиқоли 115200 барои мақсадҳои ислоҳкунӣ оғоз мекунем.LAFVIN ESP32 Маҷмӯаи Starter Basic - ҳадафҳоШумо инчунин GPIO-ҳои худро ҳамчун OUTPUT муайян мекунед ва онҳоро ба паст таъин мекунед.LAFVIN ESP32 маҷмӯаи ибтидоии асосӣ - GPIO ҳамчун баромадҳоСатрҳои зерин пайвасти Wi-Fi-ро бо WiFi.begin (ssid, парол) оғоз мекунанд, пайвасти бомуваффақиятро интизор шавед ва суроғаи IP-и ESP-ро дар Monitor Serial чоп кунед.LAFVIN ESP32 Маҷмӯаи ибтидоии асосӣ - СилсилаМаҷмӯаи ибтидоии LAFVIN ESP32 - Серияи 1ҳалқа ()
Дар loop() мо барнома месозем, ки вақте муштарии нав бо web сервер.
ESP32 ҳамеша муштариёни воридшударо бо сатри зерин гӯш мекунад:LAFVIN ESP32 Маҷмӯаи ибтидоии асосӣ - ҳалқаВақте ки дархост аз муштарӣ гирифта мешавад, мо маълумоти воридшударо захира мекунем. Давраи while, ки пас аз он меояд, то он даме, ки муштарӣ пайваст аст, кор хоҳад кард. Мо тавсия намедиҳем, ки қисми зерини кодро тағир диҳед, агар шумо аниқ надонед, ки чӣ кор карда истодаед.LAFVIN ESP32 Маҷмӯаи ибтидоии асосӣ - маҳзLAFVIN ESP32 маҷмӯаи ибтидоӣ - маҳз 1LAFVIN ESP32 маҷмӯаи ибтидоӣ - маҳз 2Қисми навбатии изҳороти if ва else тафтиш мекунад, ки кадом тугма дар шумо пахш шудааст web саҳифа ва натиҷаҳоро мувофиқи он назорат мекунад. Тавре ки мо қаблан дида будем, мо дар бораи гуногун дархост мекунем URLс вобаста ба тугмаи пахшшуда.LAFVIN ESP32 Маҷмӯаи ибтидоии асосӣ - тугма пахш карда шудLAFVIN ESP32 Маҷмӯаи ибтидоии асосӣ - тугмаи 1 пахш карда мешавадБарои мисолample, агар шумо тугмаи GPIO 26 ON-ро пахш карда бошед, ESP32 дар /26/ON дархост қабул мекунад URL (мо мебинем, ки ин маълумот дар сарлавҳаи HTTP дар Monitor Serial). Ҳамин тавр, мо метавонем тафтиш кунем, ки оё сарлавҳа ифодаи GET /26/on дорад. Агар он дорои он бошад, мо тағирёбандаи output26state-ро ба ON табдил медиҳем ва ESP32 LED-ро фаъол мекунад.
Ин барои тугмаҳои дигар низ ҳамин тавр кор мекунад. Ҳамин тавр, агар шумо хоҳед, ки натиҷаҳои бештар илова кунед, шумо бояд ин қисми кодро барои дохил кардани онҳо тағир диҳед.
Намоиши HTML web саҳифа
Чизи навбатӣ, ки ба шумо лозим аст, эҷод кардан аст web саҳифа. ESP32 ба браузери шумо бо якчанд коди HTML барои сохтани web саҳифа.
Дар web саҳифа бо истифода аз ин ифодакунандаи client.println() ба муштарӣ фиристода мешавад. Шумо бояд он чизеро, ки мехоҳед ба муштарӣ фиристед, ҳамчун далел ворид кунед.
Аввалин чизе, ки мо бояд фиристем, ҳамеша сатри зерин аст, ки нишон медиҳад, ки мо HTML мефиристем.LAFVIN ESP32 Basic Starter Kit - фиристодани HTMLСипас, сатри зеринро месозад web саҳифа дар ҳама гуна web браузер.LAFVIN ESP32 маҷмӯаи ибтидоӣ - web браузерВа инҳо барои пешгирии дархостҳо дар фавикон истифода мешаванд. — Аз ин хат хавотир шудан лозим нест.LAFVIN ESP32 Маҷмӯаи ибтидоии асосӣ - client.println

Ороиши Web Саҳифа

Минбаъд, мо якчанд матни CSS дорем, ки тугмаҳо ва тугмаҳоро ба услуби услубӣ табдил диҳанд web намуди саҳифа.
Мо шрифти Helvetica-ро интихоб мекунем, мундариҷаеро, ки ҳамчун блок намоиш дода мешавад ва дар марказ мувофиқ карда мешавад, муайян мекунем.LAFVIN ESP32 Маҷмӯи ибтидоии асосӣ - Ороиши Web СаҳифаМо тугмаҳои худро бо ранги #4CAF50, бидуни сарҳад, матн бо ранги сафед ва бо ин пуркунӣ: 16px 40px услуб мекунем. Мо инчунин ороиши матнро ба ҳеҷ чиз муқаррар кардаем, андозаи ҳуруф, маржа ва курсорро ба нишоннамо муайян мекунем.LAFVIN ESP32 Basic Starter Kit - ишоракунандаМо инчунин услуби тугмаи дуюмро бо тамоми хосиятҳои тугмаи қаблан муайянкардаамон муайян мекунем, аммо бо ранги дигар. Ин услуби тугмаи хомӯш хоҳад буд.LAFVIN ESP32 Маҷмӯи ибтидоии асосӣ - client.println 1

Муқаррар кардани Web Сарлавҳаи аввали саҳифа
Дар сатри оянда шумо метавонед сарлавҳаи аввали худро таъин кунед web саҳифа. Дар ин ҷо мо "ESP32 Web Сервер», аммо шумо метавонед ин матнро ба ҳар чизе ки мехоҳед, иваз кунед.LAFVIN ESP32 маҷмӯаи ибтидоӣ - Web Сарлавҳаи саҳифаНамоиши тугмаҳо ва ҳолати мувофиқ
Сипас, шумо параграф менависед, то ҳолати кунунии GPIO 26 -ро нишон диҳед. Тавре ки шумо мебинед, мо тағирёбандаи output26State -ро истифода мебарем, то вақте ки ин тағирёбанда тағир меёбад, ҳолат фавран нав мешавад.LAFVIN ESP32 Basic Starter Kit - тағирёбии тағирёбандаСипас, мо вобаста ба ҳолати кунунии GPIO тугмаи фурӯзон ё хомӯшро нишон медиҳем. Агар ҳолати кунунии GPIO хомӯш бошад, мо тугмаи ON-ро нишон медиҳем, агар не, мо тугмаи OFF -ро нишон медиҳем.LAFVIN ESP32 Basic Starter Kit - нишон додани тугмаи OFFМо ҳамон тартибро барои GPIO 27 истифода мебарем.
Пӯшидани Пайвастшавӣ
Ниҳоят, вақте ки посух ба итмом мерасад, мо тағирёбандаи сарлавҳаро тоза мекунем ва пайвастшавиро бо муштарӣ бо client.stop() қатъ мекунем.LAFVIN ESP32 Маҷмӯаи ибтидоии асосӣ - Бастани пайвастшавӣ

Пахш кардан

Дар ин дастур мо ба шумо нишон додем, ки чӣ тавр сохтани a web сервер бо ESP32. Мо ба шумо як собиқи оддӣ нишон додемample, ки ду LED-ро идора мекунад, аммо идея ин аст, ки ин LED-ҳоро бо реле ё ҳама гуна баромади дигаре, ки шумо мехоҳед назорат кунед, иваз кунед.

Лоиҳаи 6 RGB LED Web Сервер

Дар ин лоиҳа мо ба шумо нишон медиҳем, ки чӣ гуна LED RGB-ро бо тахтаи ESP32 бо истифода аз фосилаи дур идора кардан мумкин аст web сервер бо интихобкунандаи ранг.
Лоиҳа ба охир расидview
Пеш аз оғоз, биёед бубинем, ки ин лоиҳа чӣ гуна кор мекунад:LAFVIN ESP32 Маҷмӯаи ибтидоӣ - Лоиҳа ба итмом расидview

  • ESP32 web сервер интихобкунандаи рангро нишон медиҳад.
  • Вақте ки шумо рангро интихоб кардед, браузери шумо дар бораи a URL ки дорои параметрҳои R, G ва B ранги интихобшуда мебошад.
  • ESP32-и шумо дархостро қабул мекунад ва арзиши ҳар як параметри рангро тақсим мекунад.
  • Сипас, он сигнали PWM-ро бо арзиши мувофиқ ба GPIOs, ки RGB LED-ро идора мекунанд, мефиристад.

LED-ҳои RGB чӣ гуна кор мекунанд?
Дар як LED катоди умумӣ RGB, ҳар се LED як пайвасти манфӣ (катод) мубодила. Ҳама дар маҷмӯа дохил RGB умумӣ-катод.LAFVIN ESP32 Маҷмӯи ибтидоии асосӣ - LEDs RGB кор мекунадЧӣ тавр эҷод кардани рангҳои гуногун?
Бо LED RGB шумо метавонед, албатта, нури сурх, сабз ва кабуд тавлид кунед ва бо танзим кардани шиддатнокии ҳар як LED, шумо метавонед рангҳои дигарро низ тавлид кунед.
Барои мисолample, барои тавлиди нури сирф кабуд, шумо LED-и кабудро ба шиддати баландтарин ва LED-ҳои сабз ва сурхро ба шиддати пасттарин муқаррар мекардед. Барои нури сафед, шумо ҳар се LED-ро ба шиддати баландтарин муқаррар мекардед.
Омезиши рангҳо
Барои истеҳсоли рангҳои дигар, шумо метавонед се рангро дар шиддатҳои гуногун муттаҳид кунед. Барои танзими шиддатнокии ҳар як LED шумо метавонед сигнали PWM-ро истифода баред.
Азбаски LEDҳо ба ҳамдигар хеле наздиканд, чашмони мо натиҷаи омезиши рангҳоро мебинанд, на се рангро алоҳида.
Барои тасаввур кардан дар бораи чӣ гуна якҷоя кардани рангҳо, ба ҷадвали зерин нигаред.
Ин соддатарин диаграммаи омехтаи рангҳост, аммо ба шумо тасаввурот медиҳад, ки он чӣ гуна кор мекунад ва чӣ гуна рангҳои гуногунро истеҳсол мекунад.LAFVIN ESP32 Маҷмӯаи ибтидоӣ - рангҳои гуногунҚисмҳои зарурӣ
Барои ин лоиҳа ба шумо қисмҳои зерин лозиманд:

  • Шӯрои ESP32 DEVKIT V1
  • LED RGB
  • 3x 220 Ом резисторҳо
  • Симҳои гузариш
  • Панели нон

НақшаиLAFVIN ESP32 Маҷмӯаи ибтидоии асосӣ - СхематикӣКодекс
Мо ESP32-ро бо истифода аз Arduino IDE барномарезӣ мекунем, бинобар ин пеш аз идома додан, боварӣ ҳосил кунед, ки шумо иловаи ESP32-ро насб кардаед: (Агар шумо ин қадамро аллакай иҷро карда бошед, шумо метавонед ба қадами оянда гузаред.)

  • Насб кардани иловаи ESP32 дар Arduino IDE

Пас аз васл кардани схема, Рамзро кушоед
Лоиҳа_6_RGB_LED_Web_Server.ino дар arduino IDE.
Пеш аз бор кардани код, ворид кардани маълумоти шабакавии худро фаромӯш накунед, то ESP ба шабакаи маҳаллии шумо пайваст шавад.LAFVIN ESP32 Basic Starter Kit - шабакаи маҳаллӣЧӣ тавр код кор мекунад
Эскизи ESP32 китобхонаи WiFi.h -ро истифода мебарад.LAFVIN ESP32 маҷмӯаи ибтидоӣ - китобхонаи WiFi.hСатрҳои зерин тағирёбандаҳои сатрро барои нигоҳ доштани параметрҳои R, G ва B аз дархост муайян мекунанд.LAFVIN ESP32 Маҷмӯаи ибтидоӣ - String redStringЧор тағирёбандаи навбатӣ барои рамзкушоӣ кардани дархости HTTP баъдтар истифода мешаванд.LAFVIN ESP32 Маҷмӯи ибтидоии асосӣ - дархости HTTPБарои GPIO-ҳо се тағирёбанда эҷод кунед, ки параметрҳои рахи R, G ва B-ро идора мекунанд. Дар ин ҳолат мо GPIO 13, GPIO 12 ва GPIO 14-ро истифода мебарем.LAFVIN ESP32 маҷмӯаи ибтидоӣ - GPIOs лозим астИн GPIO-ҳо бояд сигналҳои PWM-ро бароварданд, аз ин рӯ мо бояд аввал хосиятҳои PWM-ро танзим кунем. Басомади сигнали PWM-ро ба 5000 Гц таъин кунед. Сипас, канали PWM-ро барои ҳар як ранг пайваст кунедLAFVIN ESP32 Маҷмӯаи ибтидоии асосӣ - ҳар як рангВа ниҳоят, ҳалли каналҳои PWM-ро ба 8-бит муқаррар кунедLAFVIN ESP32 маҷмӯаи ибтидоӣ - каналҳои PWMДар танзимот (), хосиятҳои PWM-ро ба каналҳои PWM таъин кунедLAFVIN ESP32 маҷмӯаи ибтидоӣ - каналҳои PWMКаналҳои PWM-ро ба GPIO-ҳои мувофиқ пайваст кунедLAFVIN ESP32 маҷмӯаи ибтидоии асосӣ - GPIO-ҳои мувофиқҚисми рамзи зерин интихобкунандаи рангро дар шумо нишон медиҳад web саҳифа ва дар асоси ранги интихобкардаатон дархост мекунад.LAFVIN ESP32 Маҷмӯаи ибтидоӣ - интихобшудаLAFVIN ESP32 Маҷмӯаи ибтидоии асосӣ - client.printlnLAFVIN ESP32 Маҷмӯи ибтидоии асосӣ - client.println 1Вақте ки шумо рангро интихоб мекунед, шумо дархостро бо формати зерин мегиред.LAFVIN ESP32 Basic Starter Kit - формати зерин

Ҳамин тавр, мо бояд ин сатрро тақсим кунем, то параметрҳои R, G ва B-ро ба даст орем. Параметрҳо дар тағирёбандаҳои redString, greenString ва blueString захира карда мешаванд ва метавонанд аз 0 то 255 арзиш дошта бошанд.LAFVIN ESP32 Маҷмӯаи ибтидоии асосӣ - сарлавҳаLAFVIN ESP32 Маҷмӯи ибтидоии асосӣ - сарлавҳаи 1Барои идора кардани тасма бо ESP32, функсияи ledcWrite () -ро барои тавлиди сигналҳои PWM бо арзишҳои аз HTTP рамзкушошуда истифода баред дархост.LAFVIN ESP32 Маҷмӯи ибтидоии асосӣ - дархости HTTP 1Шарҳ: Маълумоти бештар дар бораи PWM бо ESP32: Лоиҳаи 3 ESP32 PWM (Нусхаи аналогӣ)
Барои идора кардани тасма бо ESP8266, мо танҳо бояд истифода барем
функсияи analogWrite () барои тавлиди сигналҳои PWM бо арзишҳои аз дархости HTPP рамзкушошуда.
analogWrite (redPin, redString.toInt ());
analogWrite (greenPin, greenString.toInt());
analogWrite(bluePin, blueString.toInt())
Азбаски мо арзишҳоро дар як тағирёбандаи сатр мегирем, мо бояд онҳоро бо истифодаи усули toInt() ба ададҳои бутун табдил диҳем.
Намоиш
Пас аз ворид кардани эътимодномаҳои шабакаи худ, панели рост ва порти COM-ро интихоб кунед ва кодро ба қадамҳои истинод ба рамзи ESP32.Upload-и худ бор кунед.
Пас аз боркунӣ, Monitor Serial-ро бо суръати интиқоли 115200 кушоед ва тугмаи ESP Enable/Reset -ро пахш кунед. Шумо бояд суроғаи IP-и панелро гиред.LAFVIN ESP32 Маҷмӯаи Starter Basic - ҳамон LANБраузери худро кушоед ва суроғаи IP-и ESP-ро ворид кунед. Акнун, интихобкунандаи рангро барои интихоби ранг барои LED RGB истифода баред.
Пас, шумо бояд тугмаи "Тағйир додани ранг" -ро пахш кунед, то ранг эътибор пайдо кунад.LAFVIN ESP32 маҷмӯаи ибтидоӣ - RGB LEDБарои хомӯш кардани LED RGB , ранги сиёҳро интихоб кунед.
Рангҳои қавӣ (дар болои интихобкунандаи ранг) ҳамонҳоянд, ки натиҷаҳои беҳтар медиҳанд.LAFVIN ESP32 Basic Starter Kit - натиҷаҳои беҳтар

Лоиҳаи 7 ESP32 реле Web Сервер

Истифодаи реле бо ESP32 як роҳи олии идоракунии асбобҳои маишии AC аз фосилавӣ мебошад. Ин дастур мефаҳмонад, ки чӣ гуна идора кардани модули реле бо ESP32.
Мо дида мебароем, ки модули реле чӣ гуна кор мекунад, чӣ гуна пайваст кардани реле ба ESP32 ва сохтани web сервер барои идора кардани реле аз дур.
Муаррифии реле
Эстафета як коммутатори электрикӣ мебошад ва ба монанди ҳама гуна коммутатор, он метавонад фурӯзон ё хомӯш карда шавад, ки ҷараёнро аз он мегузарад ё не. Онро бо ҳаҷми паст идора кардан мумкин астtages, ба монанди 3.3V, ки аз ҷониби ESP32 GPIOs таъмин карда шудааст ва ба мо имкон медиҳад, ки ҳаҷми баландро назорат кунемtagба монанди 12V, 24V ё ҷtage (230В дар Аврупо ва 120В дар ИМА).LAFVIN ESP32 Маҷмӯи ибтидоии асосӣ - Муаррифии релеҳоДар тарафи чап, ду маҷмӯи се розеткаҳо барои пайваст кардани ҳаҷми баланд мавҷудандtages, ва пинҳо дар тарафи рост (ҳаҷми пастtagд) ба GPIOs ESP32 пайваст шавед.
Маҷмаи Ҷилдиtage ПайвастшавӣLAFVIN ESP32 маҷмӯаи ибтидоӣ - Mains Voltage ПайвастшавӣМодули реле, ки дар акси қаблӣ нишон дода шудааст, ду пайвасткунак дорад, ки ҳар як дорои се розетка дорад: умумӣ (COM), Одатан пӯшида (NC) ва Одатан кушода (НЕ).

  • COM: ҷараёнеро, ки шумо мехоҳед назорат кунед, пайваст кунед (ҷилдtagва).
  • NC (Одатан пӯшида): конфигуратсияи одатан пӯшида истифода мешавад, вақте ки шумо мехоҳед реле бо нобаёнӣ баста шавад. NC пинҳои COM пайвастанд, яъне ҷараён ҷараён дорад, агар шумо аз ESP32 ба модули реле барои кушодани схема ва қатъ кардани ҷараёни ҷорӣ сигнал нафиристед.
  • НЕ (Одатан кушода): конфигуратсияи маъмулан кушода ба таври дигар кор мекунад: байни пинҳои NO ва COM пайваст нест, бинобар ин, агар шумо аз ESP32 барои пӯшидани схема сигнал нафиристед, схема вайрон мешавад.

Таҷҳизоти назоратӣLAFVIN ESP32 Маҷмӯаи ибтидоии асосӣ - Пинҳҳои назоратӣҲаҷми пастtagканори д дорои маҷмӯи чор таїіизот ва маҷмӯи се таїіизот. Маҷмӯи аввал аз VCC ва GND барои пур кардани модул ва вуруди 1 (IN1) ва вуруди 2 (IN2) барои назорати релеҳои поён ва боло иборат аст.
Агар модули релеи шумо танҳо як канал дошта бошад, шумо танҳо як pin IN доред. Агар шумо чор канал дошта бошед, шумо чор IN пин доред ва ғайра.
Сигнал, ки шумо ба пинҳои IN мефиристед, муайян мекунад, ки реле фаъол аст ё не. Эстафета вақте оғоз мешавад, ки вуруд тақрибан аз 2V камтар мешавад. Ин маънои онро дорад, ки шумо сенарияҳои зеринро хоҳед дошт:

  • Конфигуратсияи Одатан пӯшида (NC):
  • Сигнали БАЛАНД – ҷараён ҷараён дорад
  • Сигнал паст - ҷараёни ҷорӣ нест
  • Конфигуратсияи Одатан кушода (НЕ):
  • Сигнали БАЛАНД – ҷараён ҷараён надорад
  • Сигнал паст - ҷараён дар ҷараён

Шумо бояд конфигуратсияи маъмулан пӯшидаро истифода баред, вақте ки ҷараён бояд аксар вақт ҷараён гирад ва шумо мехоҳед онро баъзан қатъ кунед.
Конфигуратсияи одатан кушодаро истифода баред, вақте ки шумо мехоҳед, ки ҷараён гоҳ-гоҳ ҷорӣ шавад (масаланample, даргиронед alamp баъзан).
Интихоби таъминоти барқLAFVIN ESP32 маҷмӯаи ибтидоӣ - Интихоби таъминоти барқМаҷмӯи дуюми пинҳо аз пинҳои GND, VCC ва JD-VCC иборат аст.
PIN JD-VCC ба электромагнити реле қудрат медиҳад. Аҳамият диҳед, ки модул дорои сарпӯши jumper мебошад, ки пинҳои VCC ва JD-VCC-ро мепайвандад; ки дар ин ҷо нишон дода шудааст, зард аст, аммо ранги шумо метавонад ранги дигар дошта бошад.
Ҳангоми кушодани сарпӯши jumper, пинҳои VCC ва JD-VCC пайваст карда мешаванд. Ин маънои онро дорад, ки электромагнити реле мустақиман аз сими барқии ESP32 таъмин карда мешавад, аз ин рӯ модули реле ва схемаҳои ESP32 аз ҳамдигар физикӣ ҷудо нестанд.
Бе сарпӯши jumper, ба шумо лозим аст, ки манбаи мустақили барқро таъмин кунед, то электромагнити релеро тавассути pin JD-VCC пур кунад. Ин конфигуратсия релеҳоро аз ESP32 бо оптокоуплери дарунсохташудаи модул ҷудо мекунад, ки зарари ESP32-ро дар сурати пошхӯрии барқ ​​пешгирӣ мекунад.
НақшаиLAFVIN ESP32 Маҷмӯаи ибтидоии асосӣ - СхематикӣОгоҳӣ: Истифодаи ҳаҷми баландtagд., таъминоти барқ ​​метавонад осеби ҷиддӣ расонад.
Аз ин рӯ, ба ҷои ҳаҷми баланди таъминоти LEDs 5mm истифода мешавадtagлампаҳои электронӣ дар таҷриба. Агар шумо бо vol mains шинос набошедtagаз касе пурсед, ки ба шумо кӯмак кунад. Ҳангоми барномасозии ESP ё васл кардани ноқилҳои худ боварӣ ҳосил кунед, ки ҳама чиз аз шабака ҷудо карда шудаастtage.LAFVIN ESP32 Маҷмӯаи ибтидоии асосӣ - ҷилдtageНасб кардани китобхона барои ESP32
Барои сохтани ин web сервер, мо ESPAsync-ро истифода мебаремWebКитобхонаи сервер ва китобхонаи AsyncTCP.
Насб кардани ESPAsyncWebКитобхонаи сервер
Барои насб кардани он қадамҳои ояндаро иҷро кунед ESPAsyncWebСервер китобхона:

  1. Барои зеркашии ESPAsync ин ҷо клик кунедWebКитобхонаи сервер. Шумо бояд дошта бошед
    папкаи .zip дар ҷузвдони Боргириҳои шумо
  2. Папкаи .zip-ро кушоед ва шумо бояд ESPAsync гиредWebПапкаи сервер-мастер
  3. Номи ҷузвдони худро аз ESPAsync иваз кунедWebСервер-мастер ба ESPAsyncWebСервер
  4. ESPAsync-ро интиқол диҳедWebПапкаи сервер ба ҷузвдони китобхонаҳои насби Arduino IDE

Интихобан, дар Arduino IDE-и худ, шумо метавонед ба Sketch> Include гузаред
Китобхона > Иловаи китобхонаи .ZIP… ва китобхонаеро, ки навакак бор кардаед, интихоб кунед.
Насб кардани китобхонаи AsyncTCP барои ESP32
Дар ESPAsyncWebСервер китобхона талаб мекунад AsyncTCP китобхона ба кор. Пайравӣ кунед
қадамҳои минбаъда барои насб кардани ин китобхона:

  1. Барои зеркашии китобхонаи AsyncTCP ин ҷо клик кунед. Шумо бояд дар папкаи Боргириҳои худ папкаи .zip дошта бошед
  2. Папкаи .zip-ро кушоед ва шумо бояд ҷузвдони AsyncTCP-мастерро гиред
    1. Номи ҷузвдони худро аз AsyncTCP-master ба AsyncTCP иваз кунед
    3. Папкаи AsyncTCP-ро ба ҷузвдони китобхонаҳои насби Arduino IDE-и худ интиқол диҳед
    4. Дар ниҳоят, IDE Arduino-и худро аз нав кушоед

Интихобан, дар Arduino IDE-и худ, шумо метавонед ба Sketch> Include гузаред
Китобхона > Иловаи китобхонаи .ZIP… ва китобхонаеро, ки навакак бор кардаед, интихоб кунед.
Кодекс
Мо ESP32-ро бо истифода аз Arduino IDE барномарезӣ мекунем, бинобар ин пеш аз идома додан, боварӣ ҳосил кунед, ки шумо иловаи ESP32-ро насб кардаед: (Агар шумо ин қадамро аллакай иҷро карда бошед, шумо метавонед ба қадами оянда гузаред.)
Насб кардани иловаи ESP32 дар Arduino IDE
Пас аз насб кардани китобхонаҳои лозимӣ, рамзи Project_7_ESP32_Relay_ -ро кушоедWeb_Server.ino дар arduino IDE.
Пеш аз бор кардани код, ворид кардани маълумоти шабакавии худро фаромӯш накунед, то ESP ба шабакаи маҳаллии шумо пайваст шавад.LAFVIN ESP32 Basic Starter Kit - шабакаи ocalНамоиш
Пас аз ворид кардани тағйироти зарурӣ, рамзро ба қадамҳои истинод ба ESP32.Upload рамзи худ бор кунед.
Monitor Serial-ро бо суръати интиқоли 115200 кушоед ва тугмаи ESP32 EN-ро пахш кунед, то суроғаи IP-и онро гиред. Сипас, дар шабакаи маҳаллии худ браузер кушоед ва суроғаи IP-и ESP32-ро ворид кунед, то дастрасӣ ба web сервер.
Monitor Serial-ро бо суръати интиқоли 115200 кушоед ва тугмаи ESP32 EN-ро пахш кунед, то суроғаи IP-и онро гиред. Сипас, дар шабакаи маҳаллии худ браузер кушоед ва суроғаи IP-и ESP32-ро ворид кунед, то дастрасӣ ба web сервер.LAFVIN ESP32 маҷмӯаи ибтидоӣ - web серверШарҳ: Браузери шумо ва ESP32 бояд ба як LAN пайваст карда шаванд.
Шумо бояд чизеро бо ду тугма ҳамчун шумораи релеҳое, ки шумо дар коди худ муайян кардаед, ба даст оред.LAFVIN ESP32 Basic Starter Kit - смартфонАкнун, шумо метавонед тугмаҳоро истифода баред, то бо истифода аз смартфони худ релеҳои худро идора кунед.LAFVIN ESP32 Basic Starter Kit - смартфон 1

Лоиҳаи_8_Баромад_Ҳолати_синхронизатсия_ Web_Сервер

Ин лоиҳа нишон медиҳад, ки чӣ гуна идора кардани баромадҳои ESP32 ё ESP8266 бо истифода аз a web сервер ва тугмаи физикӣ ҳамзамон. Ҳолати баромад дар бораи навсозӣ карда мешавад web саҳифа, ки оё он тавассути тугмаи ҷисмонӣ тағир дода шудааст ё web сервер.
Лоиҳа ба охир расидview
Биёед зуд дида бароем, ки лоиҳа чӣ гуна кор мекунад.LAFVIN ESP32 Маҷмӯаи ибтидоӣ - Лоиҳа ба итмом расидviewESP32 ё ESP8266 мизбони a web сервер, ки ба шумо имкон медиҳад ҳолати баромадро назорат кунед;

  • Ҳолати баромади ҷорӣ дар экран нишон дода мешавад web сервер;
  • ESP инчунин ба тугмаи физикӣ пайваст аст, ки ҳамон баромадро идора мекунад;
  • Агар шумо ҳолати баромадро бо истифода аз тугмаи физикӣ тағир диҳед, ҳолати кунунии он низ дар web сервер.

Хулоса, ин лоиҳа ба шумо имкон медиҳад, ки ҳамон натиҷаро бо истифода аз a web сервер ва тугмаи пахш ҳамзамон. Ҳар вақте ки ҳолати баромад тағир меёбад, web сервер нав карда мешавад.
Қисмҳои зарурӣ
Ин аст рӯйхати қисмҳое, ки барои сохтани схема ба шумо лозиманд:

  • Шӯрои ESP32 DEVKIT V1
  • LED 5 мм
  • Муқовимати 220 Ом
  • Пахш кардани тугма
  • Муқовимати 10к Ом
  • Панели нон
  • Симҳои гузариш

НақшаиМаҷмӯаи ибтидоии LAFVIN ESP32 - Схемати 1Насб кардани китобхона барои ESP32
Барои сохтани ин web сервер, мо ESPAsync-ро истифода мебаремWebКитобхонаи сервер ва китобхонаи AsyncTCP.(Агар шумо ин қадамро аллакай иҷро карда бошед, шумо метавонед ба қадами оянда гузаред.)
Насб кардани ESPAsyncWebКитобхонаи сервер
Барои насб кардани ESPAsync қадамҳои ояндаро иҷро кунедWebКитобхонаи сервер:

  1. Барои зеркашии ESPAsync ин ҷо клик кунедWebКитобхонаи сервер. Шумо бояд дошта бошед
    папкаи .zip дар ҷузвдони Боргириҳои шумо
  2. Папкаи .zip-ро кушоед ва шумо бояд ESPAsync гиредWebПапкаи сервер-мастер
  3. Номи ҷузвдони худро аз ESPAsync иваз кунедWebСервер-мастер ба ESPAsyncWebСервер
  4. ESPAsync-ро интиқол диҳедWebПапкаи сервер ба ҷузвдони китобхонаҳои насби Arduino IDE
    Интихобан, дар Arduino IDE-и худ, шумо метавонед ба Sketch> Include гузаред
    Китобхона > Иловаи китобхонаи .ZIP… ва китобхонаеро, ки навакак бор кардаед, интихоб кунед.

Насб кардани китобхонаи AsyncTCP барои ESP32
ESPAsyncWebКитобхонаи сервер барои кор кардани китобхонаи AsyncTCP талаб мекунад. Барои насб кардани ин китобхона қадамҳои зеринро иҷро кунед:

  1. Барои зеркашии китобхонаи AsyncTCP ин ҷо клик кунед. Шумо бояд дар папкаи Боргириҳои худ папкаи .zip дошта бошед
  2. Папкаи .zip-ро кушоед ва шумо бояд ҷузвдони AsyncTCP-мастерро гиред
  3. Номи папкаи худро аз AsyncTCP-master ба AsyncTCP иваз кунед
  4. Папкаи AsyncTCP-ро ба ҷузвдони китобхонаҳои насби Arduino IDE-и худ интиқол диҳед
  5. Дар ниҳоят, Arduino IDE-и худро дубора кушоед
    Интихобан, дар Arduino IDE-и худ, шумо метавонед ба Sketch> Include гузаред
    Китобхона > Иловаи китобхонаи .ZIP… ва китобхонаеро, ки навакак бор кардаед, интихоб кунед.

Кодекс
Мо ESP32-ро бо истифода аз Arduino IDE барномарезӣ мекунем, бинобар ин пеш аз идома додан, боварӣ ҳосил кунед, ки шумо иловаи ESP32-ро насб кардаед: (Агар шумо ин қадамро аллакай иҷро карда бошед, шумо метавонед ба қадами оянда гузаред.)
Насб кардани иловаи ESP32 дар Arduino IDE
Пас аз насб кардани китобхонаҳои зарурӣ, Рамзро кушоед
Лоиҳаи_8_Баромад_Ҳолати_синхронизатсия_Web_Server.ino дар arduino IDE.
Пеш аз бор кардани код, ворид кардани маълумоти шабакавии худро фаромӯш накунед, то ESP ба шабакаи маҳаллии шумо пайваст шавад.LAFVIN ESP32 Маҷмӯаи Starter Basic - Рамз

Чӣ тавр Кодекс кор мекунад

Ҳолати тугма ва Ҳолати баромад
Тағйирёбандаи ledState ҳолати баромади LED-ро нигоҳ медорад. Барои пешфарз, вақте ки web сервер оғоз мешавад, он КАМ аст.LAFVIN ESP32 Маҷмӯаи ибтидоии асосӣ - Корҳои код

ButtonState ва lastButtonState барои муайян кардани пахш кардани тугма истифода мешаванд ё не.LAFVIN ESP32 Basic Starter Kit - пахш карда шудТугма (web сервер)
Мо HTML-ро барои сохтани тугма дар тағирёбандаи index_html дохил накардаем.
Ин аз он сабаб аст, ки мо мехоҳем онро вобаста ба ҳолати кунунии LED тағир диҳем, ки онро бо тугма иваз кардан мумкин аст.
Ҳамин тавр, мо барои тугмаи %BUTTONPLACEHOLDER% ҷойнишин эҷод кардем, ки бо матни HTML иваз карда мешавад, то тугмаро дертар дар код созад (ин дар функсияи протсессори() анҷом дода мешавад).LAFVIN ESP32 маҷмӯаи ибтидоии асосӣ - пахш карда шуд 1протсессори ()
Функсияи протсессори () ҳама ҷойнишинҳоро дар матни HTML бо арзишҳои воқеӣ иваз мекунад. Аввалан, он месанҷад, ки оё матнҳои HTML ягон чизро дар бар мегиранд
ҷойнишинҳои %BUTTONPLACEHOLDER%.LAFVIN ESP32 Basic Starter Kit - протсессориСипас, функсияи theoutputState() -ро даъват кунед, ки ҳолати баромади ҷорӣро бармегардонад. Мо онро дар тағирёбандаи outputStateValue захира мекунем.LAFVIN ESP32 Маҷмӯаи Starter Basic - outputStateПас аз он, ин арзишро барои сохтани матни HTML барои намоиш додани тугма бо ҳолати дуруст истифода баред:LAFVIN ESP32 Маҷмӯи ибтидоии асосӣ - рамзи 4Дархости HTTP GET барои тағир додани ҳолати баромад (JavaScript)
Вақте ки шумо тугмаро пахш мекунед, функсияи thetoggleCheckbox() даъват мешавад. Ин функсия дар бораи гуногун дархост мекунад URLс барои фурӯзон ё хомӯш кардани LED.LAFVIN ESP32 маҷмӯаи ибтидоӣ - JavaScriptБарои фурӯзон кардани LED, он дар /update?state=1 дархост мекунад URL:LAFVIN ESP32 Маҷмӯаи Starter Basic - element.checkedДар акси ҳол, он дар /update?state=0 дархост мекунад URL.
Дархости HTTP GET барои навсозии ҳолати (JavaScript)
Барои нигоҳ доштани ҳолати баромади нав дар web сервер, мо функсияи зеринро даъват мекунем, ки дархости навро дар /давлат мекунад URL хар сония.LAFVIN ESP32 маҷмӯаи ибтидоӣ - ҳолати навсозӣМаҷмӯаи ибтидоии LAFVIN ESP32 - Навсозии ҳолати 1Муолиҷаи дархостҳо
Пас, мо бояд ҳал кунем, ки вақте ки ESP32 ё ESP8266 дархостҳоро дар бораи онҳо қабул мекунад, чӣ мешавад. URLs.
Вақте ки дархост дар реша гирифта мешавад /URL, мо саҳифаи HTML ва инчунин протсессорро мефиристем.LAFVIN ESP32 Маҷмӯи ибтидоии асосӣ - Дархостҳоро идора кунедLAFVIN ESP32 Маҷмӯи ибтидоии асосӣ - Идоракунии дархостҳо 1Сатрҳои зерин тафтиш мекунанд, ки оё шумо дар бораи /update?state=1 ё /update?state=0 дархост гирифтаед ё не URL ва ledState-ро мувофиқан тағйир медиҳад.LAFVIN ESP32 Маҷмӯи ибтидоии асосӣ - ledStateLAFVIN ESP32 Маҷмӯи ибтидоии асосӣ - inputParamВақте ки дархост дар бораи / давлатӣ гирифта мешавад URL, мо ҳолати ҳозираи баромадро мефиристем:LAFVIN ESP32 Basic Starter Kit - ҳолати баромадҳалқа ()
Дар ҳалқа (), мо тугмаро аз байн мебарем ва вобаста ба арзиши ledState LED-ро фурӯзон ё хомӯш мекунем тағйирёбанда.LAFVIN ESP32 Маҷмӯи ибтидоии асосӣ - ҳалқаи 1Намоиш
Рамзро ба тахтаи ESP32-и худ бор кунед. Қадамҳои истинод ба кодро бор кунед.
Сипас, Мониторҳои Serial-ро бо суръати интиқоли 115200 кушоед. Тугмаи EN/RST-ро пахш кунед, то суроғаи IP-ро дарёфт кунед.LAFVIN ESP32 Маҷмӯаи ибтидоӣ - НамоишДар шабакаи маҳаллии худ браузерро кушоед ва суроғаи IP-и ESP-ро нависед. Шумо бояд дастрасӣ дошта бошед web сервер тавре ки дар зер нишон дода шудааст.
Шарҳ: Браузери шумо ва ESP32 бояд ба як LAN пайваст карда шаванд.LAFVIN ESP32 Basic Starter Kit - браузерШумо метавонед тугмаи чапро иваз кунед web сервер барои фаъол кардани LED.LAFVIN ESP32 маҷмӯаи ибтидоӣ - web сервер 1Шумо инчунин метавонед ҳамон LED-ро бо тугмаи ҷисмонӣ идора кунед. Ҳолати он ҳамеша ба таври худкор дар навсозӣ мешавад web сервер.

Лоиҳаи 9 ESP32 DHT11 Web Сервер

Дар ин лоиҳа шумо мефаҳмед, ки чӣ тавр сохтани ESP32 асинхронӣ web сервер бо DHT11, ки ҳарорат ва намиро бо истифода аз Arduino IDE нишон медиҳад.
Шартҳои пешакӣ
Дар web сервер, мо бе зарурати навсозӣ хонишҳоро ба таври худкор навсозӣ мекунем web саҳифа.
Бо ин лоиҳа шумо меомӯзед:

  • Чӣ тавр хондани ҳарорат ва намӣ аз сенсорҳои DHT;
  • Асинхронӣ созед web сервер бо истифода аз ESPAsyncWebКитобхонаи сервер;
  • Хонишҳои сенсорро бе зарурати навсозӣ ба таври худкор навсозӣ кунед web саҳифа.

Асинхронӣ Web Сервер
Барои сохтани web сервер мо истифода мебарем ESPAsyncWebКитобхонаи сервер ки рохи осони сохтани асинхронро таъмин мекунад web сервер. Сохтани асинхронӣ web сервер дорои якчанд афзалиятҳо мебошадtages тавре ки дар саҳифаи китобхонаи GitHub зикр шудааст, ба монанди:

  • "Дар як вақт зиёда аз як пайвастро идора кунед";
  • "Вақте ки шумо ҷавоб мефиристед, шумо фавран омодаед, ки пайвастҳои дигарро идора кунед, дар ҳоле ки сервер барои фиристодани посух дар замина ғамхорӣ мекунад";
  • "Муҳаррики коркарди қолибҳои оддӣ барои коркарди қолибҳо";

Қисмҳои зарурӣ
Барои анҷом додани ин дарс ба шумо қисмҳои зерин лозим аст:

  • Шӯрои рушди ESP32
  • Модули DHT11
  • Панели нон
  • Симҳои гузариш

НақшаиМаҷмӯаи ибтидоии LAFVIN ESP32 - Схемати 2Насб кардани китобхонаҳо
Барои ин лоиҳа шумо бояд якчанд китобхонаҳоро насб кунед:

  • Дар DHT ва Сенсори ягонаи Adafruit Китобхонаҳои ронандагон барои хондан аз сенсори DHT.
  • ESPAsyncWebСервер ва TCP асинх китобхонаҳо барои сохтани асинхронӣ web сервер.
    Барои насб кардани ин китобхонаҳо дастурҳои зеринро иҷро кунед:

Насб кардани китобхонаи сенсори DHT
Барои хондан аз сенсори DHT бо истифода аз Arduino IDE, шумо бояд насб кунед Китобхонаи сенсории DHT. Барои насб кардани китобхона қадамҳои ояндаро иҷро кунед.

  1. Барои зеркашии китобхонаи DHT Sensor ин ҷо клик кунед. Шумо бояд дар папкаи Боргириҳои худ папкаи .zip дошта бошед
  2. Папкаи .zip-ро кушоед ва шумо бояд ҷузвдони DHT-sensor-library-master гиред
  3. Номи ҷузвдони худро аз DHT-sensor-libraries-master ба DHT_sensor иваз кунед
  4. Папкаи DHT_sensor-ро ба ҷузвдони китобхонаҳои насби Arduino IDE-и худ интиқол диҳед
  5. Дар ниҳоят, Arduino IDE-и худро дубора кушоед

Насб кардани драйвери ягонаи сенсори Adafruit
Шумо инчунин бояд насб кунед Китобхонаи ягонаи драйвери Adafruit Sensor барои кор кардан бо сенсори DHT. Барои насб кардани китобхона қадамҳои минбаъдаро иҷро кунед.

  1. Барои зеркашии китобхонаи Unified Sensor Adafruit ин ҷо клик кунед. Шумо бояд дар папкаи Боргириҳои худ папкаи .zip дошта бошед
  2. Папкаи .zip-ро кушоед ва шумо бояд ҷузвдони Adafruit_sensor-master гиред
  3. Номи папкаи худро аз Adafruit_sensor-master ба Adafruit_sensor иваз кунед
  4. Папкаи Adafruit_sensor -ро ба ҷузвдони китобхонаҳои насби Arduino IDE-и худ интиқол диҳед
  5. Дар ниҳоят, Arduino IDE-и худро дубора кушоед

Насб кардани ESPAsyncWebКитобхонаи сервер

Барои насб кардани он қадамҳои ояндаро иҷро кунед ESPAsyncWebСервер китобхона:

  1. Барои зеркашии ESPAsync ин ҷо клик кунедWebКитобхонаи сервер. Шумо бояд дошта бошед
    папкаи .zip дар ҷузвдони Боргириҳои шумо
  2. Папкаи .zip-ро кушоед ва шумо бояд
    ESPAsync гиредWebПапкаи сервер-мастер
  3. Номи ҷузвдони худро аз ESPAsync иваз кунедWebСервер-мастер ба ESPAsyncWebСервер
  4. ESPAsync-ро интиқол диҳедWebПапкаи сервер ба ҷузвдони китобхонаҳои насби Arduino IDE

Насб кардани китобхонаи TCP Async барои ESP32
Дар ESPAsyncWebСервер китобхона талаб мекунад AsyncTCP китобхона ба кор. Барои насб кардани ин китобхона қадамҳои зеринро иҷро кунед:

  1. Барои зеркашии китобхонаи AsyncTCP ин ҷо клик кунед. Шумо бояд дар папкаи Боргириҳои худ папкаи .zip дошта бошед
  2. Папкаи .zip-ро кушоед ва шумо бояд ҷузвдони AsyncTCP-мастерро гиред
  3. Номи папкаи худро аз AsyncTCP-master ба AsyncTCP иваз кунед
  4. Папкаи AsyncTCP-ро ба ҷузвдони китобхонаҳои насби Arduino IDE-и худ интиқол диҳед
  5. Дар ниҳоят, Arduino IDE-и худро дубора кушоед

Кодекс
Мо ESP32-ро бо истифода аз Arduino IDE барномарезӣ мекунем, бинобар ин пеш аз идома додан, боварӣ ҳосил кунед, ки шумо иловаи ESP32-ро насб кардаед: (Агар шумо ин қадамро аллакай иҷро карда бошед, шумо метавонед ба қадами оянда гузаред.)
Насб кардани иловаи ESP32 дар Arduino IDE
Пас аз насб кардани китобхонаҳои зарурӣ, Рамзро кушоед
Лоиҳа_9_ESP32_DHT11_Web_Server.ino дар arduino IDE.
Пеш аз бор кардани код, ворид кардани маълумоти шабакавии худро фаромӯш накунед, то ESP ба шабакаи маҳаллии шумо пайваст шавад.LAFVIN ESP32 Маҷмӯаи Starter Basic - РамзЧӣ тавр Кодекс кор мекунад
Дар параграфҳои зерин мо мефаҳмонем, ки код чӣ гуна кор мекунад. Агар шумо хоҳед, ки маълумоти бештар гиред ё ба бахши намоиш гузаред, то натиҷаи ниҳоиро бубинед.
Воридоти китобхонаҳо
Аввалан, китобхонаҳои заруриро ворид кунед. WiFi, ESPAsyncWebБарои сохтани он сервер ва ESPAsyncTCP лозим аст web сервер. Барои хондан аз сенсорҳои DHT11 ё DHT22 китобхонаҳои Adafruit_Sensor ва DHT лозиманд.LAFVIN ESP32 Маҷмӯи ибтидоии асосӣ - Воридоти китобхонаҳоLAFVIN ESP32 Маҷмӯи ибтидоии асосӣ - Чӣ тавр Кодекс кор мекунадТаърифи тағирёбандаҳо
GPIO-ро муайян кунед, ки пини додаҳои DHT ба он пайваст аст. Дар ин ҳолат, он ба GPIO 4 пайваст аст.LAFVIN ESP32 Маҷмӯаи ибтидоии асосӣ - Таърифи тағирёбандаҳоСипас, навъи сенсори DHT-ро, ки шумо истифода мебаред, интихоб кунед. Дар собиқ моample, мо DHT22-ро истифода мебарем. Агар шумо навъи дигарро истифода баред, ба шумо танҳо лозим аст, ки сенсори худро шарҳ диҳед ва ҳамаи дигаронро шарҳ диҳед.LAFVIN ESP32 Маҷмӯаи ибтидоии асосӣ - Таърифи тағирёбандаҳо 1

Объекти DHT-ро бо намуд ва пин, ки мо қаблан муайян карда будем, эҷод кунед.LAFVIN ESP32 Маҷмӯаи ибтидоии асосӣ - Таърифи тағирёбандаҳо 2Async эҷод кунедWebОбъекти сервер дар порти 80.LAFVIN ESP32 Маҷмӯаи ибтидоии асосӣ - Таърифи тағирёбандаҳо 3Функсияҳои ҳарорат ва намӣ хонед
Мо ду функсия эҷод кардем: яке барои хондани ҳарорат Мо ду функсияро офаридаем: яке барои хондани ҳарорат (readDHTTemperature()) ва дигаре барои хондани намӣ (readDHTHumidity()).LAFVIN ESP32 Маҷмӯаи ибтидоии асосӣ - readDHTHumidityLAFVIN ESP32 Basic Starter Kit - хониши сенсорГирифтани хонишҳои сенсор ба мисли истифодаи Гирифтани хониши сенсорҳо ба мисли истифодаи усулҳои readTemperature() ва readHumidity() дар объекти dht осон аст.LAFVIN ESP32 Basic Starter Kit - объектМо инчунин шарт дорем, ки ду тире (-) бармегардонад, агар сенсор хонишҳоро нагирад.LAFVIN ESP32 Маҷмӯи ибтидоии асосӣ - хонишҳоХонишҳо ҳамчун навъи сатр баргардонида мешаванд. Барои табдил додани шинокунанда ба сатр, функсияи String() -ро истифода баредLAFVIN ESP32 Маҷмӯаи ибтидоии асосӣ - СатрБо нобаёнӣ, мо ҳароратро дар дараҷаҳои Селсий хонда истодаем. Барои гирифтани ҳарорат дар дараҷаҳои Фаренгейт, ҳароратро дар Celsius шарҳ диҳед ва ҳароратро дар Фаренгейт шарҳ диҳед, то ки шумо инҳоро дошта бошед:LAFVIN ESP32 Маҷмӯаи ибтидоӣ - ФаренгейтМаҷмӯаи ибтидоии LAFVIN ESP32 - Фаренгейт 1Кодексро бор кунед
Акнун, кодро ба ESP32-и худ бор кунед. Боварӣ ҳосил кунед, ки шумо панели дуруст ва бандари COM-ро интихоб кардаед. Қадамҳои истинод ба кодро бор кунед.
Пас аз боркунӣ, Monitor Serial-ро бо суръати интиқоли 115200 кушоед. Тугмаи барқароркунии ESP32-ро пахш кунед. Суроғаи IP ESP32 бояд дар силсила чоп карда шавад назорат.LAFVIN ESP32 Маҷмӯи ибтидоии асосӣ - Рамзро бор кунедНамоиш
Браузерро кушоед ва суроғаи IP-и ESP32-ро нависед. шумо web сервер бояд хониши охирини сенсорро нишон диҳад.
Шарҳ: Браузери шумо ва ESP32 бояд ба як LAN пайваст карда шаванд.
Аҳамият диҳед, ки нишондиҳандаҳои ҳарорат ва намӣ ба таври худкор бе зарурати навсозӣ нав карда мешаванд web саҳифа.LAFVIN ESP32 Маҷмӯи ибтидоии асосӣ - Намоиши 1

Project_10_ESP32_OLED_Display

Ин лоиҳа нишон медиҳад, ки чӣ тавр истифода бурдани дисплейи 0.96 дюймаи SSD1306 OLED бо ESP32 бо истифода аз Arduino IDE.
Муаррифии дисплейи 0.96 дюймаи OLED
Дар Намоиши OLED ки мо дар ин дастур истифода хоҳем кард, модели SSD1306 аст: дисплейи якранг, 0.96 дюйм бо 128 × 64 пиксел, ки дар расми зерин нишон дода шудааст.LAFVIN ESP32 маҷмӯаи ибтидоӣ - OLEDDisplayДисплейи OLED равшании қафоро талаб намекунад, ки дар муҳити торик контрасти хеле хуб ба вуҷуд меорад. Илова бар ин, пикселҳои он танҳо ҳангоми фаъол буданашон энергия сарф мекунанд, аз ин рӯ дисплейи OLED дар муқоиса бо дигар дисплейҳо қувваи камтарро сарф мекунад.
Азбаски дисплейи OLED протоколи иртиботи I2C-ро истифода мебарад, ноқилҳо хеле содда аст. Шумо метавонед ҷадвали зеринро ҳамчун истинод истифода баред.

Рамзи OLED ESP32
Вин 3.3В
GND GND
SCL GPIO 22
SDA GPIO 21

НақшаиLAFVIN ESP32 Маҷмӯаи ибтидоии асосӣ - СхематикӣНасб кардани китобхонаи OLED SSD1306 - ESP32
Якчанд китобхонаҳо мавҷуданд, ки намоиши OLED-ро бо ESP32 идора мекунанд.
Дар ин дарс мо ду китобхонаи Adafruit-ро истифода мебарем: Китобхонаи Adafruit_SSD1306 ва Китобхонаи Adafruit_GFX.
Барои насб кардани он китобхонаҳо қадамҳои ояндаро иҷро кунед.

  1. Arduino IDE-и худро кушоед ва ба Sketch > Дохил кардани китобхона > Идоракунии китобхонаҳо гузаред. Менеҷери китобхона бояд кушода шавад.
  2. Дар қуттии ҷустуҷӯ "SSD1306" -ро ворид кунед ва китобхонаи SSD1306-ро аз Adafruit насб кунед.Маҷмӯи ибтидоии LAFVIN ESP32 - OLEDLibrary–
  3. Пас аз насб кардани китобхонаи SSD1306 аз Adafruit, дар қуттии ҷустуҷӯ "GFX" -ро нависед ва китобхонаро насб кунед.LAFVIN ESP32 Basic Starter Kit - китобхона
  4. Пас аз насб кардани китобхонаҳо, Arduino IDE-и худро аз нав оғоз кунед.

Кодекс
Пас аз насб кардани китобхонаҳои зарурӣ Project_10_ESP32_OLED_Display.ino -ро дар arduino IDE кушоед. код
Мо ESP32-ро бо истифода аз Arduino IDE барномарезӣ мекунем, бинобар ин пеш аз идома додан, боварӣ ҳосил кунед, ки шумо иловаи ESP32-ро насб кардаед: (Агар шумо ин қадамро аллакай иҷро карда бошед, шумо метавонед ба қадами оянда гузаред.)
Насб кардани иловаи ESP32 дар Arduino IDEМаҷмӯаи ибтидоии LAFVIN ESP32 - Рамзи 1Маҷмӯаи ибтидоии LAFVIN ESP32 - Рамзи 2Маҷмӯаи ибтидоии LAFVIN ESP32 - Рамзи 3Чӣ тавр Кодекс кор мекунад
Воридоти китобхонаҳо
Аввалан, шумо бояд китобхонаҳои заруриро ворид кунед. Китобхонаи Wire барои истифодаи I2C ва китобхонаҳои Adafruit барои навиштан ба намоиш: Adafruit_GFX ва Adafruit_SSD1306.LAFVIN ESP32 Маҷмӯи ибтидоии асосӣ - Корҳои код 1LAFVIN ESP32 Маҷмӯи ибтидоии асосӣ - Корҳои код 2Намоиши OLED-ро оғоз кунед
Сипас, шумо паҳнӣ ва баландии OLED-и худро муайян мекунед. Дар ин собикample, мо дисплейи 128 × 64 OLED-ро истифода мебарем. Агар шумо андозаҳои дигарро истифода баред, шумо метавонед онро дар тағирёбандаҳои SCREEN_WIDTH ва SCREEN_HEIGHT тағир диҳед.LAFVIN ESP32 Маҷмӯи ибтидоии асосӣ - Намоиши OLEDСипас, объекти намоишро бо паҳнӣ ва баландии қаблан бо протоколи иртиботи I2C (&Wire) оғоз кунед.LAFVIN ESP32 Basic Starter Kit - протоколи алоқаПараметри (-1) маънои онро дорад, ки дисплейи OLED-и шумо PIN RESET надорад. Агар дисплейи OLED-и шумо як PIN RESET дошта бошад, он бояд ба GPIO пайваст карда шавад. Дар ин ҳолат, шумо бояд рақами GPIO-ро ҳамчун параметр гузаронед.
Дар setup(), Мониторҳои Силсилаиро бо суръати интиқоли 115200 барои мақсадҳои ислоҳкунӣ оғоз кунед.LAFVIN ESP32 Маҷмӯаи Starter Basic - ҳадафҳоНамоиши OLED-ро бо усули start() ба таври зерин оғоз кунед:LAFVIN ESP32 Маҷмӯаи ибтидоии асосӣ - display.beginLAFVIN ESP32 маҷмӯаи ибтидоӣ - Serial.printlnИн порча инчунин дар мониторҳои силсилавӣ паём чоп мекунад, агар мо ба экран пайваст шуда натавонем.

LAFVIN ESP32 Маҷмӯи ибтидоии асосӣ - Serial.println 1Агар шумо дисплейи дигари OLED-ро истифода баред, ба шумо лозим меояд, ки суроғаи OLED-ро иваз кунед. Дар ҳолати мо, суроға 0x3C аст.LAFVIN ESP32 Basic Starter Kit - суроғаПас аз оғоз кардани экран, ду сония таъхирро илова кунед, то OLED пеш аз навиштани матн вақти кофӣ барои оғозёбӣ дошта бошад:LAFVIN ESP32 Маҷмӯаи Starter Basic - таъхирДисплейро тоза кунед, андозаи шрифт, рангро таъин кунед ва матн нависед
Пас аз оғоз кардани намоиш, буфери дисплейро бо усули clearDisplay() тоза кунед:LAFVIN ESP32 Basic Starter Kit - намоиш

Пеш аз навиштани матн, шумо бояд андозаи матн, ранг ва дар куҷо нишон додани матн дар OLED-ро муқаррар кунед.
Андозаи шрифтро бо усули setTextSize() танзим кунед:LAFVIN ESP32 маҷмӯаи ибтидоии асосӣ - намоиши 1Ранги шрифтро бо усули setTextColor() танзим кунед:
WHITE шрифти сафед ва заминаи сиёҳро муқаррар мекунад.
Мавқеъеро, ки матн бо истифода аз усули setCursor(x,y) оғоз мешавад, муайян кунед. Дар ин ҳолат, мо матнро аз координатҳои (0,0) оғоз мекунем - дар кунҷи чапи болои.LAFVIN ESP32 Маҷмӯи ибтидоии асосӣ - setTextColor 1Ниҳоят, шумо метавонед матнро бо усули println() ба таври зерин фиристедLAFVIN ESP32 Маҷмӯи ибтидоии асосӣ - рамзи 5Сипас, ба шумо лозим аст, ки усули display() -ро даъват кунед, то матнро дар экран намоиш диҳед.LAFVIN ESP32 Basic Starter Kit - намоиш

Китобхонаи Adafruit OLED усулҳои муфидро барои ба осонӣ паймоиш кардани матн таъмин мекунад.

  • startscrollright(0x00, 0x0F): матнро аз чап ба рост ҳаракат кунед
  • startscrollleft(0x00, 0x0F): матнро аз рост ба чап ҳаракат кунед
  • startscrolldiagright(0x00, 0x07): ҳаракат кардани матн аз кунҷи чапи поён ба кунҷи рости боло startscrolldiagleft(0x00, 0x07): ҳаракат кардани матн аз кунҷи рости поён ба кунҷи чапи боло

Кодексро бор кунед
Акнун, рамзро ба қадамҳои истинод ба ESP32.Upload рамзи худ бор кунед.
Пас аз боркунии код, OLED матни ҳаракаткунандаро намоиш медиҳад.LAFVIN ESP32 Маҷмӯаи ибтидоӣ - паймоиш матнЛоготипи LAFVIN

Ҳуҷҷатҳо / Сарчашмаҳо

LAFVIN ESP32 Маҷмӯаи ибтидоӣ [pdf] Дастури дастур
ESP32 маҷмӯаи ибтидоӣ, ESP32, маҷмӯаи ибтидоӣ, маҷмӯаи ибтидоӣ

Иқтибосҳо

Назари худро гузоред

Суроғаи почтаи электронии шумо нашр намешавад. Майдонҳои зарурӣ қайд карда шудаанд *