• Уважаемые посетители сайта esp8266.ru!
    Мы отказались от размещения рекламы на страницах форума для большего комфорта пользователей.
    Вы можете оказать посильную поддержку администрации форума. Данные средства пойдут на оплату услуг облачных провайдеров для сайта esp8266.ru
  • Система автоматизации с открытым исходным кодом на базе esp8266/esp32 микроконтроллеров и приложения IoT Manager. Наша группа в Telegram

Адресация к ножкам Lolin в Ардуино.

ЛИУС-2

New member
Уважаемые друзья. Приобрел Lolin (340) для реализации задумки. Пару недель шарил по сайтам, и чем больше читал - тем глупее становился от обилия не всегда верной информации.
В итоге более-менее подружился с Ардуино, и даже удалось заморгать синеньким! (Из большинства статеек склоняешься к мысли, что только ради этого микроконтроллер и разрабатывали:)
Проблема - не могу адресоваться к ногам ни для AnalogWrite, ни для digitalWrite. Осциллограф вместо сигналов показывает черт-те что. Скетч C++ загружается нормально.
Где найти таблицу соответствия между контактами на плате и № пинов для функций Ардуино? Ибо создается впечатление, что вот такие картинки не совсем корректны. (даже кол-во ШИМов не совпадаетю) Интересует только в разрезе analogWrite, digitalWrite, analogRead (на int azp = A0 ; компиллятор не ругался).
Спасибо за внимание!
 

Вложения

aZholtikov

Active member
Например, если на картинке написано GPIO15 - пишем digitalWrite(15) или digitalWrite(D8).
Фсё. :)
 

ЛИУС-2

New member
Доброе утро!
Например, если на картинке написано GPIO15 - пишем digitalWrite(15) или digitalWrite(D8).
Фсё. :)
1. Только компилятор это фигово понимает.
2. я не написал вначале, но мне нужен массив выводов, чтобы последовательно их обрабатывать по единому алгоритму
byte o_pins [5] = {18, 17, 5, 6, 7} ; // ноги каналов ШИМ - именно по чёрным цифиркам
//byte o_pins [5] = {GPIO0, GPIO2==LED(!), GPIO14, GPIO12, GPIO13} ; вот это Ардуино обложила и про D ей тоже не понравилось.
пишем digitalWrite(15) - GPIO15, а нога на картинке 16-я. Вот поэтому сумленья и терзают...
Черные цифры - номера контактов модуля - на них забиваем.
... я это тоже моментально предположил и прописал - вот только осциллограф не согласен. Именно поэтому обращаюсь за помощью!
Этого например. - ESP-12E WiFi Module
Пардон, на я же в первой строке написал Lolin! А WiFi мне вообще-то и не нужен.
Нужна таблица из первоисточника:
Контакт платы |Название | Контакт на чипе

Тем не менее, благодарю за участие.
PS: вот так компилятор реагирует на D. А тип байт проглатывает спокойно!
...
| byte o_pins [5] = {D3, D4, D5, D6, D7} ; // ноги каналов ШИМ
| ^~
exit status 1
Compilation error: 'D3' was not declared in this scope
... и так про все ноги
 

aZholtikov

Active member
Плата NodeMcu v3 Lolin построена на микроконтроллере ESP8266 с интерфейсом Wi-Fi и конвертере USB-UART на базе микросхемы CH340G...
Смотрим ESP-12E.pdf
Пишем вместо byte o_pins [5] = {GPIO0, GPIO2==LED(!), GPIO14, GPIO12, GPIO13} - byte o_pins [3] = {14, 12, 13}
Пины GPIO00 и GPIO02 не используем!!! Стараемся не использовать... Гугл в помощь.
 

aZholtikov

Active member
P.S. Вместо byte (используется в Ардуино) крайне рекомендую использовать uint8_t (стандарт С++).
 

ЛИУС-2

New member
И... А в начале кода есть #include "arduino.h"?
и тем не менее, из хрестоматийных примеров (с доработкой):
byte noga = 2 ;
void setup() {
// initialize digital pin noga as an output.
pinMode(noga, OUTPUT);
}
// the loop function runs over and over again forever
void loop() {
digitalWrite(noga, HIGH); // turn the LED on (HIGH is the voltage level)
delay(300); // wait for a second
digitalWrite(noga, LOW); // turn the LED off by making the voltage LOW
delay(300); // wait for a second
}
моргает синим глазом, а сигнал осциллоскопом наблюдаю на контакте D4!
Ура - прогресс! это GPU:)-)2
добавил в тест
byte tst_noga = 0 ; т.е. GPIO-0 = D3, и на ней тоже появился сигнал
Вывод - в массив надо указывать № без префикса GPIO.
Сейчас вернусь к основной программе.
Огромное спасибо, что сотрясли мой усохший мозг на анализ!
А насчёт инклюда - раз компилятор не ругается, нефиг и навязываться!
Всем всего самого!!!
 

ЛИУС-2

New member
Победа!
Правда, я с испугу самопальный ШИМ на любые пин-ауты залудил, но это всего пяток команд...
Надеюсь, тема закрыта, если АЦП не подведет - ибо 3-й месяц жду комплектующих к проекту от Али.
Еще раз - всех благ!!!
 
Сверху Снизу