- Необхідні матеріали:
- Інформація про апаратне забезпечення ESP32:
- Програмування ESP32
- Підготовка IDE для Arduino:
- Програмування ESP32 за допомогою Arduino IDE:
Інтернет дійшов майже до кожної кишені завдяки смарт-телефонам, за оцінками, близько 3,2 мільярда людей користуються Інтернетом, але на диво близько 8,4 мільярда пристроїв використовують Інтернет. Тобто електронні пристрої підключені до Інтернету більш ніж удвічі більшості населення, яке користується Інтернетом, і це робить речі навколо нас розумнішими з кожним днем. Основною причиною є бум Інтернету речей, який зазвичай називають IOT, також передбачається, що до кінця 2020 року ми матимемо 20,4 мільярда пристроїв, підключених до Інтернету. Тож настав час підготуватися і підняти рукави для роботи з проектами IOT, якщо ми хочемо йти в ногу з цим розвитком, на наше щастя, платформи з відкритим кодом, такі як Arduino та Espressif Systems, значно полегшили нам ситуацію.
Espressif Systems випустив ESP8266-01 давно назад, який відкрив двері для багатьох любителів потрапити у світ IOT, з тих пір спільнота розвивається сильно, і багато продуктів вийшли на ринок. Зараз запуск ESP32 Espressif підняв ситуацію на новий рівень. Цей крихітний дешевий 8-доларовий модуль - це двоядерний 32-розрядний процесор із вбудованим Wi-Fi та дворежимним Bluetooth з достатньою кількістю висновків вводу-виводу 30 для всіх основних проектів електроніки. Всі ці функції дуже прості у використанні, оскільки їх можна запрограмувати безпосередньо з IDE Arduino. Досить захоплююче… Тож давайте копати глибоко, щоб розпочати роботу з ESP32.
Необхідні матеріали:
- Модуль ESP32
- IDE Arduino
- Кабель для програмування (кабель micro USB)
- Камінь душі від MCU (жартую)
Інформація про апаратне забезпечення ESP32:
Давайте подивимось на модуль ESP32. Він трохи більший, ніж модуль ESP8266-01, і зручний для макетів, оскільки більшість заголовків виводів розбиваються як штифти вводу-виводу, які стоять один навпроти одного, що є чудовою річчю. Давайте розбиємо дошку на дрібні частини, щоб знати призначення кожного сегмента
Як бачите, суть модуля - це ESP-WROOM-32, який є 32-розрядним мікропроцесором. Він також має пару кнопок і світлодіодів, які пояснюються нижче.
Гніздо Micro-USB: Гніздо Micro USB використовується для підключення ESP32 до нашого комп'ютера за допомогою кабелю USB. Він використовується для програмування модуля ESP, а також може бути використаний для послідовної налагодження, оскільки він підтримує послідовний зв’язок
Кнопка EN: кнопка EN - кнопка скидання модуля ESP. Натискання цієї кнопки скине код, що працює на модулі ESP
Кнопка завантаження: Ця кнопка використовується для завантаження програми з Arduino в модуль ESP. Його потрібно натиснути після натискання на піктограму завантаження в IDE Arduino. Коли натискається кнопка завантаження разом із кнопкою EN, ESP переходить у режим завантаження мікропрограми. Не грайте в цьому режимі, якщо не знаєте, що робите.
Червоний світлодіод: червоний світлодіод на платі використовується для позначення джерела живлення. Він світиться червоним, коли плата живиться.
Синій світлодіод: Синій світлодіод на платі підключений до штирка GPIO. Його можна вмикати або вимикати за допомогою програмування. У деяких китайських клонованих дошках, таких як моя, цей світлодіод також може бути червоного кольору.
Штифти вводу / виводу: Тут відбувся основний розвиток. На відміну від ESP8266, на ESP32 ми можемо отримати доступ до всіх виводів вводу-виводу модуля через вибивні штифти. Ці висновки здатні здійснювати цифрове читання / запис, аналогове читання / запис, ШІМ, IIC, SPI, ЦАП та багато іншого. Ми дізнаємось більше про це пізніше. Але якщо вам цікаво, ви можете дізнатись через опис контактів у таблиці даних ESP32.
ESP-WROOM-32: Це серце модуля ESP32. Це 32-розрядний мікропроцесор, розроблений системами Espressif. Якщо ви більше технічна особа, ви можете прочитати таблицю даних ESP-WROOM-32. Я також перерахував кілька важливих параметрів нижче.
ESP32 |
|
Специфікація |
Значення |
Кількість ядер |
2 |
Архітектура |
32 біт |
Частота процесора |
|
Wi-Fi |
ТАК |
Bluetooth |
ТАК |
ОЗП |
512 КБ |
Спалах |
16 МБ |
Шпильки GPIO |
36 |
Протоколи зв'язку |
SPI, IIC, I2S, UART, CAN |
Канали АЦП |
18 каналів |
Дозвіл АЦП |
12-розрядна |
Канали ЦАП |
2 |
Дозвіл ЦАП |
8-розрядна |
На даний момент це вся інформація, яку нам потрібно знати про обладнання. Ми розглянемо докладніше, коли рухаємося з різними проектами за допомогою ESP32.
Програмування ESP32
Як вже згадувалося раніше в цьому посібнику, ми збираємося запрограмувати ESP32, використовуючи IDE Arduino, оскільки він має потужну підтримку спільноти. Але ви також можете запрограмувати ESP32 за допомогою іншого програмного забезпечення ESP Toolchain.
Крім того, у цьому посібнику буде розказано лише про початок роботи з платформою Windows. Якщо ви з інших платформ, перейдіть за посиланнями нижче
- Інструкції для Mac
- Інструкції для Debian / Ubuntu Linux
- Інструкції для Fedora
- Інструкції для openSUSE
Підготовка IDE для Arduino:
КРОК 1: А тепер давайте почнемо. Першим кроком було б завантажити та встановити IDE Arduino. Це можна легко зробити, перейшовши за посиланням https://www.arduino.cc/en/Main/Software та завантаживши IDE безкоштовно. Якщо у вас вже є, переконайтеся, що він має останню версію.
КРОК 2: Далі перейдіть за цим посиланням, щоб завантажити GIT, і завантаження почнеться автоматично з назвою “Git-2.16.2”. Дочекайтеся завершення завантаження.
КРОК 3: Після завершення завантаження відкрийте файл exe, щоб встановити GIT на свій комп’ютер. Просто натисніть Далі для всіх параметрів, не змінюючи нічого, щоб продовжити встановлення.
КРОК 4: Шукайте назву “GIT GUI”, щоб знайти ту, яку ми щойно встановили. Не відкривайте GIT bash. За замовчуванням GIT GUI буде встановлено на диск C у каталозі програмних файлів
КРОК 5: Запустіть програму GIT GUI. Потім виберіть “ Клонувати вихід із сховища ”.
КРОК 6: З'явиться наступне вікно, в якому слід виконати наступне.
У розділі Вставити місце розташування джерела: https://github.com/espressif/arduino-esp32.git
У розділі Вставка цільового каталогу: / hardware / espressif / esp32
можна знайти, натиснувши Файл -> Налаштування в IDE Arduino
Моє - C: / Users / Aswinth / Documents / Arduino , тому моїм цільовим каталогом буде C: / Users / Aswinth / Documents / Arduino / hardware / Espressif / esp32 . Після вставлення мій екран виглядав подобається, як показано нижче
КРОК 7: Після забезпечення правильних шляхів розташування натисніть на клон, і ви отримаєте наступний екран.
КРОК 8: Тепер знову знайдіть “ Git Bash ” і відкрийте його. Ви отримаєте наступне вікно.
КРОК 9: Тепер введіть “ cd”, а потім знову вставте свій каталог Target сюди. Моя виглядала так нижче нижче після вставки. Потім натисніть Enter.
КРОК 10: Тепер вставте git submodule update --init –recursive та натисніть Enter, щоб отримати наступний екран.
КРОК 11: Тепер відкрийте “/ hardware / espressif / esp32 / tools”, а потім двічі клацніть на файлі get.exe . Зачекайте, поки процес закінчиться. Після завершення ви побачите наступні файли в каталозі
Тобто зараз наш IDE Arduino готовий працювати з ESP32. Давайте перевіримо, чи працює.
Програмування ESP32 за допомогою Arduino IDE:
КРОК 1: Підключіть плату ESP32 до комп'ютера за допомогою кабелю micro-USB. Переконайтеся, що червоний світлодіод горить високо на модулі, щоб забезпечити живлення.
КРОК2: Запустіть IDE Arduino та перейдіть до Інструменти -> Плати та виберіть плату ESP32Dev, як показано нижче
КРОК 3: Відкрийте диспетчер пристроїв та перевірте, до якого порту підключений ваш ESP32. Шахта підключена до COM 8, як показано нижче
КРОК 4: Поверніться до Arduino IDE і в розділі Інструменти -> Порт виберіть порт, до якого підключений ваш ESP. Після вибору ви побачите щось подібне у нижньому лівому куті IDE.
КРОК 5: Давайте завантажимо програму Blink, щоб перевірити, чи зможемо ми запрограмувати наш модуль ESP32. Ця програма повинна блимати світлодіодом з інтервалом в 1 секунду.
int LED_BUILTIN = 2; void setup () {pinMode (LED_BUILTIN, OUTPUT); } void loop () {digitalWrite (LED_BUILTIN, HIGH); затримка (1000); digitalWrite (LED_BUILTIN, LOW); затримка (1000); }
Програма дуже схожа на код мигання Arduino, тому я не пояснюю їх детально. Але одна зміна полягає в тому, що тут, в ESP32, світлодіод на борту підключений до виводу номер 2, тоді як для Arduino він буде підключений до виводу No 13.
КРОК 6: Щоб завантажити код, просто натисніть на завантаження, і ви побачите консоль Arduino, що відображає наступне, якщо все працює належним чином.
Примітка: Для деяких модулів, можливо, доведеться утримувати кнопку завантаження під час завантаження, щоб уникнути помилок.
Тобто ми успішно завантажили перший код на нашу плату ESP32. Мій модуль з його світлодіодним блиманням показано нижче
Ви можете спробувати інші приклади програм, доступні у меню Файл -> Приклад -> ESP32 для роботи з іншими функціоналами ESP32. Якщо у вас виникли проблеми з отриманням цієї роботи, сміливо розміщуйте запит у розділах коментарів нижче. Ви також можете скористатися форумом для отримання технічної допомоги.