Съдържание:

3 прости начина за програмиране на 12X модул ESP8266: 5 стъпки (със снимки)
3 прости начина за програмиране на 12X модул ESP8266: 5 стъпки (със снимки)

Видео: 3 прости начина за програмиране на 12X модул ESP8266: 5 стъпки (със снимки)

Видео: 3 прости начина за програмиране на 12X модул ESP8266: 5 стъпки (със снимки)
Видео: Lazarus IDE Обзор преимуществ / Особенности / Установка, Удаление / FpcUpDeluxe / 2022 / Free Pascal 2024, Ноември
Anonim
3 прости начина за програмиране на 12X модул ESP8266
3 прости начина за програмиране на 12X модул ESP8266

Ако не сте запознати с микроконтролера ESP8266, наистина чувствам, че сте пропуснали! Тези неща са невероятни: те са евтини, мощни и най-доброто от всичко имат вграден WiFi! ESP8266 започна пътуването си като добавена WiFi на борда за по-традиционни Arduino платки, но малко след това общността осъзна силата им и добави поддръжка за да можете да програмирате директно с Arduino IDE.

Тези дни, ако искате да използвате ESP8266 за вашия проект, бих препоръчал да използвате дъска за разработка, като Wemos D1 Mini* (доставени са $ 2,50 !!) или Adafruit Feather Huzzah. Тези платки имат разбити всички използваеми щифтове, лесно се програмират чрез микро USB конектора и имат вграден регулатор 3.3 V. Но какво, ако искате да използвате ESP8266 в проект с персонализирана печатна платка? Най -лесният начин е да използвате ESP12 модул и в тази инструкция ще ви покажа няколко прости начина за тяхното програмиране.* = Партньорска връзка

Стъпка 1: Вижте видеото

Ето видеоклип с цялата информация, съдържаща се в Instructable, ако искате да го проверите. В моя канал върша много работа с ESP8266s, така че каналът ми като цяло може би си струва да проверите дали този вид неща ви интересуват!

Стъпка 2: Предварителна стъпка: Настройка за програмиране на ESP8266

Image
Image

Ако никога досега не сте използвали ESP8266 или Arduino, ще трябва да настроим малко софтуер. Имам специално видео за това. Той е само 5 минути и преминава през всичко необходимо за настройка.

Ако видеоклиповете всъщност не са вашето нещо, вижте урок 2 от страхотния IoT клас на Беки, той обхваща и всичко необходимо.

Преди да преминете към следващия раздел, трябва да можете да качите обикновена скица в ESP8266 (като например мигащия пример, споменат както във видеото, така и в урока на Беки)

Стъпка 3: Метод 1: Пръстен програмист "Жаба"

Метод 1
Метод 1

Това е може би най -лесният начин да програмирате ESP12 модул. По принцип просто пускате модула в дъската и след това той се държи точно като една от споменатите по -рано дъски за разработка. Избрах платката Wemos D1 Mini от падащите дъски при програмиране. Има недостатъци на този метод:

  • Програмистът е малко скъп, ако правите само няколко дъски.
  • Платките могат да бъдат програмирани само по този начин, преди да бъдат запоени към вашата печатна платка

Този, който купих, е от Aliexpress, но вярвам, че оригиналният дизайнер е потребител на Tindie на име Фред. Те бяха разпродадени по това време, така че в крайна сметка отидох с този на Aliexpress, но ще свържа и двете.

  • Aliexpress Pop-in ESP модулен програмист*
  • ESP модул програмист на Frog's Frog Pin

* = Партньорска връзка

Стъпка 4: Метод 2: Използване по принцип на всеки USB към сериен конвертор

Метод 2: Използване на всеки USB към сериен конвертор
Метод 2: Използване на всеки USB към сериен конвертор
Метод 2: Използване на всеки USB към сериен конвертор
Метод 2: Използване на всеки USB към сериен конвертор
Метод 2: Използване на всеки USB към сериен конвертор
Метод 2: Използване на всеки USB към сериен конвертор

За следващия метод ще въведем ръчно ESP модула в режим на програмиране и след това ще използваме практически всеки USB към сериен конвертор за програмиране на ESP8266, дори този PL2303*, който струва 50c доставени работи!

Нормална операция:

Преди да започнем с програмирането, първо трябва да разгледаме какви външни компоненти трябва да работи ESP8266. За нормална работа един модул ESP-12 се нуждае от следното

  • EN, RST и GPIO 0 трябва да се изтеглят високо с помощта на 10K резистор
  • GPIO 15 трябва да се изтегли към земята с помощта на 10K резистор
  • Захранване 3.3V, което може да изведе около 250mA ток (препоръчва се капачка между VCC и GND)

С горната конфигурация ESP8266 при включване ще бъде в нормален режим на работа, така че ще изпълнява всички скици, които сте програмирали към него. Можете да закупите пробивни платки за модули ESP-12*, които са наистина полезни за тестване на различните настройки. Модулите имат настройка на резисторите за EN и GPIO 15 пина, така че все още ще трябва да добавите издърпващ резистор за RST и GPIO 0,

Активиране на режима на програмиране:

За да влезе в режим на програмиране, GPIO 0 трябва да бъде намален, когато ESP се стартира. Най -лесният начин да направите това е да добавите бутони към GPIO 0 и RST щифта, които се свързват към земята при натискане. След това, за да активирате светкавичния режим, вие просто

  • Задръжте бутона GPIO 0
  • Натиснете бутона RST
  • След това пуснете двата бутона

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

Програмиране с USB към сериен адаптер:

Активирането на програмен режим е само половината от успеха, сега трябва да програмираме модула. Повечето USB към серийни адаптери не могат да осигурят достатъчно ток към ESP8266, затова се препоръчва да захранвате ESP8266, използвайки външен 3.3V източник.

За да свържете програмиста, трябва да свържете следните щифтове (също показани на изображението по -горе):

  • Свържете TX на програмиста към RX на ESP8266 (Не е печатна грешка, връзките са обърнати)
  • Свържете RX на програмиста към TX на ESP8266
  • Свържете заземяването на програмиста към заземяването на ESP8266

За да качите скицата си, направете следните стъпки:

  • Изберете номера на порта на вашия сериен адаптер (Инструменти-> Порт)
  • Активирайте режима на програмиране на вашия ESP8266, както е описано по -горе
  • Щракнете върху бутона за качване. (Ако не успее, проверете отново кабелите си и опитайте отново да поставите дъската си в режим на програмиране)
  • Щракнете върху бутона за нулиране, когато качването приключи

Ето настройките на дъската, които използвах при качването по този метод:

  • Платка: Общ модул ESP8266
  • Режим на светкавица: DIO
  • Размер на светкавицата: 4M (3M Spiffs)
  • Метод за нулиране: ck
  • Честота на светкавицата: 40MHz
  • Скорост на качване: 115200

Последното нещо, което трябва да се отбележи, е дефиницията LED_BUILIN за общ модул ESP8266, която сочи към пин 1, но вграденият светодиод на модул ESP12 е свързан към пин 2 (Той е активен също като FYI). Така че, ако тествате мигаща скица, ще трябва да използвате номер 2, а не LED_BUILTIN

* = Партньорска връзка

Стъпка 5: Метод 3: Автоматично нулиране на програмист, използващ NodeMCU

Метод 3: Автоматично нулиране на програмист, използващ NodeMCU
Метод 3: Автоматично нулиране на програмист, използващ NodeMCU
Метод 3: Автоматично нулиране на програмист, използващ NodeMCU
Метод 3: Автоматично нулиране на програмист, използващ NodeMCU

Ако сте използвали някакви платки за разработка на ESP, ще забележите, че по принцип всички те не изискват ръчно активиране на режима на програмиране с помощта на бутоните, така че как да го направят?

Повечето USB към серийни чипове имат допълнителни изводи, които извеждат сигнали на различни етапи от процеса на качване и с помощта на някои външни схеми е възможно да се задейства ниското ниво на GPIO 0 и нулиране. RuiMoteiro има инструкции по тази тема, използвайки FTDI платка и ESP8266.

Но мисля, че има по -прост подход към това и още по -доброто е, че има голям шанс вече да имате всичко необходимо, за да го направите! Можете да използвате платка за разработка на ESP8266 като NodeMCU като програмист*.

Какво е предимството от използването на NodeMCU?

Основните предимства на използването на NodeMCU като програмист са следните:

  • Можете да захранвате ESP8266 директно от 3V щифтове на NodeMCU
  • Ще се справи с автоматичното нулиране/активиране на режима на програмиране
  • Разходите за доставени около $ 2,50 (и могат да се използват като обикновени табла за разработчици, когато не се програмират други!)

Можете да използвате същия подход с всяка разработваща дъска, която излага щифта за активиране на чипа на ESP8266.

Как работи?

Идеята за това получих от YouTuber, наречен Mika Kurkela, във видеото си той използва NodeMCU за програмиране на модул ESP-01, но можем да използваме същата идея за модула ESP12.

По принцип ще деактивираме ESP8266 на NodeMCU, като принудим ниския щифт на EN, това ще попречи на зареждането на модула ESP8266 на NodeMCU. След това ще свържем всички съответни щифтове на платката NodeMCU към нашия външен ESP8266.

Окабеляване

За да го свържете, ще ви е необходимо стандартното окабеляване ESP8266, както е показано в предишната стъпка и след това да добавите следните връзки (също показани на изображението по -горе):

  • Свържете 3V на NodeMCU към VCC на ESP8266
  • Свържете GND към GND
  • Свържете TX на NodeMCU към TX на ESP8266 (Това е различно от предишната стъпка)
  • Свържете RX на NodeMCU към RX на ESP8266
  • Свържете D3 на NodeMCU към GPIO 0 на ESP8266 (D3 е GPIO 0 на ESP8266)
  • Свържете RST на NodeMCU към RST на ESP8266
  • Свържете EN на NodeMCU към GND

Качване на скица

След като свържете ESP8266, трябва да направите следното:

  • Изберете номера на порта на NodeMCU (Инструменти-> Порт)
  • Изберете типа платка "NodeMCU 1.0 (ESP12-E модул)"
  • Щракнете върху качване

И това е! Той автоматично ще активира режима на програмиране и автоматично ще се нулира, когато приключи качването, така че ще започне изпълнението на скицата.

Използвайки това в дизайна на вашата дъска

За да използвате този метод в дизайна на дъската, просто трябва да извадите следните щифтове:

  • Земя
  • GPIO 0
  • VCC
  • TX
  • RX
  • RST

И когато искате да програмирате дъските си, свържете ги както по -горе.

Надяваме се, че тази инструкция е полезна, ако имате въпроси, не се колебайте да попитате!

* = Партньорска връзка

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