Совет: для есп32 берите сразу 2-3 макетки. А ещё лучше сразу набор гайверкит
Напоминаю: в комменты можно прислать идею для выпуска (#идея) и проблему с ардуинками (#чётонеработает). А ещё там есть #техподдержка
Просто интересно. Какие виды микроконтроллеров вам больше нравятся?
Anonymous Poll
27%
AVR
16%
STM
68%
ESP
5%
Другое
8%
Не знаю
8%
...................что?
16%
Хватит опросов, контент пили
Короче я заболел. Температура 37(минимум) — 40(максимум), компьютер включать нельзя. Так что вся деятельность откладывается примерно на неделю. Может меньше, может больше
у меня к вам вопрос:
вот вы заказываете что-то на AliExpress, что вы выберете? товар за 500р с доставкой за 100р, или товар за 600р и бесплатной доставкой?
вот вы заказываете что-то на AliExpress, что вы выберете? товар за 500р с доставкой за 100р, или товар за 600р и бесплатной доставкой?
Anonymous Poll
69%
с бесплатной доставкой
31%
с платной доставкой
Перед тем, как будет обзор железок, надо ещё кое-что рассказать. У ардуины есть 2 вида ног: цифровые и аналоговые. Почти все ноги могут быть входом и выходом сигнала. У обычных avr'ок нет ЦАПа, т.е. они не могут выдавать аналоговый сигнал. Только 0 и 1. Но есть ШИМ, и он позволяет плавно управлять яркостью, скоростью и т.д. У есп есть и ЦАП, и ШИМ. У всех обычных микроконтроллеров есть АЦП, которое преобразовывает аналоговый сигнал в цифровой. Ну и есть цифровой вход/выход. 0 или 1, 0В или 5В. Вот функции для управления этим всем на AVR :
Цифр. выход: digitalWrite(пин, значение)
Цифр. вход: digitalRead(пин)
Аналоговый вход: analogRead(пин)
ШИМ: analogWrite(пин, значение от 0 до 255)
Скоро будет остальное.И проекты!
#начало
#уроки
Цифр. выход: digitalWrite(пин, значение)
Цифр. вход: digitalRead(пин)
Аналоговый вход: analogRead(пин)
ШИМ: analogWrite(пин, значение от 0 до 255)
Скоро будет остальное.
#начало
#уроки
Сначала расскажу про потенциометр. Это резистор, сопротивлением которого можно управлять. К ардуинке он подключается просто: одна крайняя нога на gnd, другая на 5в, а средняя на аналоговую ногу ардуины(А0, А1, А2 и т.д.). Прошивка для проверки этого всего тоже простая:
#начало
#уроки
П. С. Дополнение: в pinMode 0 можно поменять на INPUT, это то же самое
#define POT_PIN A0 // пин потенциометраТут в порт выводятся числа от 0 до 1024, это значение с АЦП. Ещё можно открыть плоттер(ctrl+shif+l или через инструменты).
void setup() {
Serial.begin(9600); // настраиваем порт
pinMode(POT_PIN, 0); // настраиваем пин
}
void loop() {
// таймер на миллисе
static uint32_t tmr;
if(millis() - tmr >= 150) {
tmr = millis();
Serial.println(analogRead(POT_PIN)); // вывод в порт
}
}
#начало
#уроки
П. С. Дополнение: в pinMode 0 можно поменять на INPUT, это то же самое
Ардуинки, ESP, программирование
Сначала расскажу про потенциометр. Это резистор, сопротивлением которого можно управлять. К ардуинке он подключается просто: одна крайняя нога на gnd, другая на 5в, а средняя на аналоговую ногу ардуины(А0, А1, А2 и т.д.). Прошивка для проверки этого всего…
Ещё одно дополнение: pinMode настраивает, будет пин входом или выходом.
pinMode(пин, 0); — вход
pinMode(пин, 1); — выход
pinMode(пин, 2); — вход с подтяжкой к +
И ещё:
INPUT = 0
OUTPUT = 1
INPUT_PULLUP = 2
#начало
pinMode(пин, 0); — вход
pinMode(пин, 1); — выход
pinMode(пин, 2); — вход с подтяжкой к +
И ещё:
INPUT = 0
OUTPUT = 1
INPUT_PULLUP = 2
#начало
А теперь кнопки. Обычно у них 4 ноги, но они попарно соединены. Остаётся 2 контакта. Кнопку можно подключать по разному. Обычно одна нога идёт на пин, вторая на gnd или 5В. Если на 5В, то к пину надо подключить резистор(обычно на 10 или 4,7 кОм). Вот прошивка без библиотеки:
Это минимальная обработка нажатия, в которой нет антидребезга. Все не сенсорные кнопки дребезжат, т.е. нажатие происходит не сразу, т.е. на ардуину приходит много 0 и 1. Из-за этого будут ложные срабатывания. Потом пришлю прошивку с антидребезгом
#начало
#уроки
#define BTN 3 // кнопка на д3
void setup() {
Serial.begin(9600); // настройка порта
pinMode(BTN, 2); // настройка пина на подтяжку к +
}
void loop() {
static bool flg; // флаг состояния кнопки
bool s = !digitalRead(BTN); // текущее состояние кнопки
if (s && !flg) { // кнопка нажата
flg = true;
Serial.println("Click");
}
if (!s && flg) { // кнопка отпущена
flg = false;
Serial.println("Relase");
}
}
Это минимальная обработка нажатия, в которой нет антидребезга. Все не сенсорные кнопки дребезжат, т.е. нажатие происходит не сразу, т.е. на ардуину приходит много 0 и 1. Из-за этого будут ложные срабатывания. Потом пришлю прошивку с антидребезгом
#начало
#уроки
А сейчас датчики. Они бывают простыми и сложными. Простые выдают цифровой(0 и 1, 0В и 5В(3,3В)) или аналоговый. А сложные связываются с ардуиной с помощью интерфейсов(I2C, I2S, UART, SPI и т.д.). Простые датчики могут работать и без микроконтроллера.
У простых цифровых или только аналоговых датчиков три ноги — gnd(-, знак земли), out(a0 или d0) и 5v(3,3v, vcc, +). Out подключается к любой ноге если датчик цифровой и к аналоговой, если аналоговый. Ещё есть простые цифроаналоговые датчики, у них 4 ноги — gnd, 5v, d0(цифровой) и a0(аналоговый). Подключать и a0, и d0 не обязательно. Прошивку для простых датчиков присылать не буду. Для аналоговых подойдёт прошивка потенциометра, а для цифровых там же можно заменить analogRead на digitalRead.
А со сложными датчиками всё сложнее. Потом будем разбирать самые популярные.
А потом пришлю фотографии разных датчиков.
#начало
#железки
А ещё я ввожу новый хэштег #уроки
У простых цифровых или только аналоговых датчиков три ноги — gnd(-, знак земли), out(a0 или d0) и 5v(3,3v, vcc, +). Out подключается к любой ноге если датчик цифровой и к аналоговой, если аналоговый. Ещё есть простые цифроаналоговые датчики, у них 4 ноги — gnd, 5v, d0(цифровой) и a0(аналоговый). Подключать и a0, и d0 не обязательно. Прошивку для простых датчиков присылать не буду. Для аналоговых подойдёт прошивка потенциометра, а для цифровых там же можно заменить analogRead на digitalRead.
А со сложными датчиками всё сложнее. Потом будем разбирать самые популярные.
А потом пришлю фотографии разных датчиков.
#начало
#железки
А ещё я ввожу новый хэштег #уроки
А теперь расскажу про светодиод. У него обычно 2 ноги, анод и катод, + и -. Для диодов нужен определённый ток. Если диод напрямую подключить к 5в, то он сгорит. Чтобы этого не произошло, используют резистор (обычно на 220ом). Программа для моргания диодом тут уже есть (см. урок про нанку). Так что вот прошивка для управления светодиодом с помощью кнопки:
А сейчас пришлю схему подключения и как выглядят светодиоды
#начало
#уроки
#define BTN 3 // кнопка на д3Тут уже есть антидребезг
#define LED_PIN 2 // диод на д2
void setup() {
Serial.begin(9600); // настройка порта
pinMode(BTN, 2); // настройка пина на подтяжку к +
pinMode(LED_PIN, 1); // настройка пина диода на выход
}
void loop() {
static uint32_t tmr;
static bool flg; // флаг состояния кнопки
bool s = !digitalRead(BTN); // текущее состояние кнопки
if (s && !flg && millis() - tmr > 100) { // кнопка нажата
flg = true;
tmr = millis();
Serial.println("Click");
digitalWrite(LED_PIN, !digitalRead(LED_PIN));
}
if (!s && flg && millis() - tmr > 100) { // кнопка отпущена
flg = false;
tmr = millis();
Serial.println("Relase");
}
}
А сейчас пришлю схему подключения и как выглядят светодиоды
#начало
#уроки
Кстати не у всех простых датчиков 3/4 ноги. Вот у такого микрофона на max9814 5 ног, но выдаёт он аналоговый сигнал. А ещё этот микрофон работает лучше всех остальных, так что если вам нужен микрофон, покупайте его.
#железки (точно не помню, есть такой хэштег или нет. Значит будет)
#железки (точно не помню, есть такой хэштег или нет. Значит будет)
!!ОБНОВЛЕНО!!
Внимание!Объявляется конкурс на лучший ардуино(авр, есп, стм, рп2040) проект!
Условие: подписаться на этот канал и прислать в комментарии, а лучше в чат код, а ещё желательно инструкцию и схему (можно на бумажке нарисовать). В воскресенье на следующей неделе объявлю 2 победителей — одного выберу сам, а второго голосованием. Присылать можно до пятницы.
А в подарок будет скан этой недоподделки с фотографии и доработка прошивки мной.
П. С. Премиум не просите, у меня самого нет
ДОПОЛНЕНИЕ: если нет своего проекта, можно повторить чужой. Но желательно качественно. А если вообще ничего нет, можно предложить идею
Внимание!Объявляется конкурс на лучший ардуино(авр, есп, стм, рп2040) проект!
Условие: подписаться на этот канал и прислать в комментарии, а лучше в чат код, а ещё желательно инструкцию и схему (можно на бумажке нарисовать). В воскресенье на следующей неделе объявлю 2 победителей — одного выберу сам, а второго голосованием. Присылать можно до пятницы.
А в подарок будет скан этой недоподделки с фотографии и доработка прошивки мной.
ДОПОЛНЕНИЕ: если нет своего проекта, можно повторить чужой. Но желательно качественно. А если вообще ничего нет, можно предложить идею
А теперь коротко про вайфай в еспшках.
1. Режим АР — точка доступа от самой еспшки, запускается так:
П. П. С. Т.к. я выздоровел, мне надо ходить в школу, и уроки тут будут выходить реже
#вифи
#espшки
#уроки
1. Режим АР — точка доступа от самой еспшки, запускается так:
WiFi.mode(WIFI_AP); // настройка режима вифи2. Подключение к роутеру, режим STA:
WiFi.softAP("ssid", "pass"); // имя и пароль точки доступа
Serial.begin(115200); // открываем портП. С. Скоро будет интересный урок про вифи!
WiFi.mode(WIFI_STA); // настройка режима вифи. Тут необязательно
WiFi.begin("ssid", "pass"); // ssid и пароль от роутера
while(WiFi.status() != WL_CONNECTED) { // если не подключились, пишем в порт .
delay(500);
Serial.print(".");
}
Serial.println(WiFi.localIP()); // вывод айпи адреса
П. П. С. Т.к. я выздоровел, мне надо ходить в школу, и уроки тут будут выходить реже
#вифи
#espшки
#уроки
И кстати у меня появился ещё один чат(https://yangx.top/arduinki_esp_chat). Туда всякие проблемы и проекты присылать можно. И поговорить
П. С. Скоро пятница, пока что есть3,5 4,5 проекта. Осталось 2 1 0 дня
П. С. Скоро пятница, пока что есть
Вот проекты.
1. Светодиодный куб
2. Эффект на адресной ленте
3. Радар на лазерном дальномере
4. Гирлянда Гайвера (которая твинкли)
П. С. В четвёртом нет фотографии, но проект вроде собран. Гирлянда твинкли (гайверовская версия)
вроде если я правильно понял, то это то видео
1. Светодиодный куб
2. Эффект на адресной ленте
3. Радар на лазерном дальномере
4. Гирлянда Гайвера (которая твинкли)
П. С. В четвёртом
вроде если я правильно понял, то это то видео