Съдържание:

ESP32: Вътрешни подробности и разводка: 11 стъпки
ESP32: Вътрешни подробности и разводка: 11 стъпки

Видео: ESP32: Вътрешни подробности и разводка: 11 стъпки

Видео: ESP32: Вътрешни подробности и разводка: 11 стъпки
Видео: LDmicro 14: ЖК-дисплей I2C и часы реального времени DS3231 (программирование лестничной схемы ПЛК микроконтроллера с помощью LDmicro) 2024, Юни
Anonim
Image
Image

В тази статия ще говорим за вътрешните детайли и закрепването на ESP32. Ще ви покажа как правилно да идентифицирате пиновете, като погледнете листа с данни, как да определите кои от щифтовете работят като ИЗХОД / ВХОД, как да имате преглед на сензорите и периферните устройства, които ESP32 ни предлага, в допълнение към зареждане. Затова вярвам, че с видеото по -долу ще мога да отговоря на няколко въпроса, които съм получил в съобщения и коментари относно препратките към ESP32, наред с друга информация.

Стъпка 1: NodeMCU ESP-WROOM-32

ESP-WROOM-32
ESP-WROOM-32

Тук имаме PINOUT на

WROOM-32, който служи като добра отправна точка при програмиране. Важно е да се обърне внимание на входовете / изходите с общо предназначение (GPIO), тоест програмируеми входни и изходни портове за данни, които все още могат да бъдат AD конвертор или сензорен щифт, например GPIO4, например. Това се случва и с Arduino, където входните и изходните щифтове също могат да бъдат PWM.

Стъпка 2: ESP-WROOM-32

На горното изображение имаме самия ESP32. Има няколко вида вложки с различни характеристики според производителя.

Стъпка 3: Но какво е правилното разпределение, което да използвам за моя ESP32?

Но какво е правилно да използвам за моя ESP32?
Но какво е правилно да използвам за моя ESP32?
Но какво е правилното разпечатване, което да използвам за моя ESP32?
Но какво е правилното разпечатване, което да използвам за моя ESP32?
Но какво е правилното разпечатване, което да използвам за моя ESP32?
Но какво е правилното разпечатване, което да използвам за моя ESP32?
Но какво е правилното разпечатване, което да използвам за моя ESP32?
Но какво е правилното разпечатване, което да използвам за моя ESP32?

ESP32 не е труден. Толкова е лесно, че можем да кажем, че няма дидактическа загриженост във вашата среда. Трябва обаче да бъдем дидактични, да. Ако искате да програмирате в Assembler, това е добре. Но инженерното време е скъпо. Така че, ако всичко, което е доставчик на технологии, ви дава инструмент, който отнема време, за да разберете работата му, това лесно може да се превърне в проблем за вас, защото всичко това ще увеличи времето за инженеринг, докато продуктът става все по -скъп. Това обяснява моето предпочитание към лесни неща, тези, които могат да улеснят ежедневието ни, защото времето е важно, особено в днешния зает свят.

Връщайки се към ESP32, в лист с данни, както в този по -горе, имаме правилната идентификация на пина в акцентите. Често етикетът на чипа не съвпада с действителния номер на щифта, тъй като имаме три ситуации: GPIO, серийния номер, а също и кода на самата карта.

Както е показано в примера по -долу, имаме връзка на светодиод в ESP и правилния режим на конфигуриране:

Забележете, че етикетът е TX2, но трябва да следваме правилната идентификация, както е подчертано в предишното изображение. Следователно правилната идентификация на щифта ще бъде 17. Изображението показва колко близо трябва да остане кодът.

Стъпка 4: INPUT / OUTPUT

ВХОД ИЗХОД
ВХОД ИЗХОД

При извършване на INPUT и OUTPUT тестове върху щифтовете, получихме следните резултати:

INPUT не работи само на GPIO0.

OUTPUT не работи само на пиновете GPIO34 и GPIO35, които са съответно VDET1 и VDET2.

* Пиновете VDET принадлежат към домейна на захранване на RTC. Това означава, че те могат да се използват като ADC щифтове и че ULP-съпроцесорът може да ги прочете. Те могат да бъдат само записи и никога не излизат.

Стъпка 5: Блокова диаграма

Блокова диаграма
Блокова диаграма

Тази диаграма показва, че ESP32 има двуядрено, област с чип, която контролира WiFi, и друга област, която контролира Bluetooth. Той също така има хардуерно ускорение за криптиране, което позволява връзка с LoRa, мрежа на дълги разстояния, която позволява връзка до 15 км, използвайки антена. Наблюдаваме също генератора на часовника, часовника в реално време и други точки, включващи, например, PWM, ADC, DAC, UART, SDIO, SPI, между другото. Всичко това прави устройството доста цялостно и функционално.

Стъпка 6: Периферни устройства и сензори

Периферни устройства и сензори
Периферни устройства и сензори

ESP32 има 34 GPIO, които могат да бъдат присвоени на различни функции, като например:

Само цифрови;

Аналогов (може да се конфигурира като цифров);

Капацитивно докосване (може да бъде конфигурирано като цифрово);

И други.

Важно е да се отбележи, че повечето цифрови GPIO могат да бъдат конфигурирани като вътрешно издърпване или падане или да бъдат конфигурирани за висок импеданс. Когато е зададено като вход, стойността може да се прочете през регистъра.

Стъпка 7: GPIO

Аналогово-цифров преобразувател (ADC)

Esp32 интегрира 12-битови ADC и поддържа измервания на 18 канала (аналогови пинове). Копроцесорът ULP в ESP32 също е проектиран да измерва напрежения, докато работи в режим на заспиване, което позволява ниска консумация на енергия. Процесорът може да се събуди чрез настройка на праг и / или чрез други тригери.

Цифрово-аналогов преобразувател (DAC)

Два 8-битови DAC канала могат да се използват за преобразуване на два цифрови сигнала към два аналогови изхода за напрежение. Тези двойни DAC поддържат захранването като еталон на входно напрежение и могат да управляват други вериги. Двойните канали поддържат независими преобразувания.

Стъпка 8: Сензори

Сензори
Сензори
Сензори
Сензори

Докоснете сензор

ESP32 има 10 капацитивни GPIO за откриване, които откриват индуцирани вариации при докосване или приближаване към GPIO с пръст или други предмети.

ESP32 също има температурен сензор и вътрешен сензор за Хол, но за да работите с тях, трябва да промените настройките на регистрите. За повече подробности вижте техническото ръководство чрез връзката:

www.espressif.com/sites/default/files/documentation/esp32_technical_reference_manual_en.pdf

Стъпка 9: Пазител

ESP32 има три таймера за наблюдение: един на всеки от двата модула на таймера (наречен първичен таймер за наблюдение или MWDT) и един на модула RTC (наречен таймер за наблюдение на RTC или RWDT).

Стъпка 10: Bluetooth

Bluetooth
Bluetooth
Bluetooth
Bluetooth

Bluetooth интерфейс v4.2 BR / EDR и Bluetooth LE (ниска енергия)

ESP32 интегрира контролер за Bluetooth връзка и основна лента на Bluetooth, които изпълняват протоколи за основна лента и други рутинни процедури на ниско ниво, като модулация / демодулация, обработка на пакети, обработка на битов поток, прескачане на честотата и т.н.

Контролерът за връзка работи в три основни състояния: готовност, връзка и нюхане. Той позволява множество връзки и други операции, като запитване, страница и сигурно просто сдвояване и по този начин позволява Piconet и Scatternet.

Стъпка 11: Стартирайте

Стартиране
Стартиране
Стартиране
Стартиране

На много дъски за разработка с вграден USB / Serial, esptool.py може автоматично да върне платката в режим на зареждане.

ESP32 ще влезе в серийния стартов товарач, когато GPIO0 се държи ниско при нулирането. В противен случай тя ще стартира програмата във флаш.

GPIO0 има вътрешен резистор за издърпване, така че ако е без връзка, той ще се повиши.

Много платки използват бутон с надпис "Flash" (или "BOOT" на някои дъски за разработка на Espressif), който води GPIO0 надолу при натискане.

GPIO2 също трябва да остане несвързан / плаващ.

На горното изображение можете да видите тест, който направих. Сложих осцилоскопа на всички щифтове на ESP, за да видя какво се е случило при включването му. Открих, че когато получа пин, той генерира колебания от 750 микросекунди, както е показано в подчертаната област от дясната страна. Какво можем да направим по този въпрос? Имаме няколко опции, като например закъснение с верига с транзистор, разширител на врата, например. Посочвам, че GPIO08 е обърнат. Трептенето излиза нагоре, а не надолу.

Друга подробност е, че имаме някои щифтове, които започват от High, а други от Low. Следователно този PINOUT е препратка към това кога ESP32 се включва, особено когато работите с товар за задействане, например триак, реле, контактор или някакво захранване.

Препоръчано: