Обновить
128K+

Программирование микроконтроллеров *

Учимся программировать микроконтроллеры

258,91
Рейтинг
Сначала показывать
Порог рейтинга
Уровень сложности

Скоростная разработка электроники

Время на прочтение12 мин
Охват и читатели5.4K

То, что ИИ заменил кодеров, уже ясно. А электронщиков ещё нет. Или уже?

Я решил проверить, какова ситуация сейчас, и применил ИИ везде, где смог, при разработке универсального сенсора присутствия.

Я сделал плату с радаром на 60 ГГц и прошивку к ней, и почти на каждом шаге использовал Claude, чаще всего Fable 5. Он подбирал мне микроконтроллер, планировал функции выводов, анализировал комплектацию, писал скрипты для Altium, драйверы и прикладной код. И знаете, практически получилось с первой итерации!

Читать далее

Новости

Подключаю свой перчик к умному дому, или как я датчик влажности почвы для Home Assistant делал

Уровень сложностиСредний
Время на прочтение8 мин
Охват и читатели7.9K

Привет, Хабр!

Я люблю выращивать острый перчик халапеньо в домашних условиях, но есть небольшая проблема в моем домашнем «садоводстве»: я периодически забываю его поливать. Почему бы не делегировать напоминания о поливе своему умному дому, а в перспективе и автоматизировать полив — подумал я. И чтобы реализовать данную задумку, для начала нужно разработать и собрать датчик влажности почвы. А что из этого получилось — далее под катом.

Читать далее

Zynq 7000. HDMI для платы Zynq Mini и Linux

Уровень сложностиСредний
Время на прочтение88 мин
Охват и читатели7.9K

Раз уж пошла такая песня, я решил добить вопрос с выводом изображения по HDMI на плате Zynq Mini. В предыдущей статье мы уже разобрали как это сделать в baremetal-сценарии, теперь пришла пора дополнить дизайн для возможности вывода системной консоли Linux, при том, что у Zynq-7000 нет своего видеоконтроллера и весь видеотракт (DMA, генератор таймингов, TDMS-кодер) должен быть построен внутри FPGA, а затем быть проброшен в Linux. 

Всем, кому интересна данная тема - добро пожаловать под кат!

Читать далее

Математика для датчиков: как посчитать коэффициенты для АЦП и получить реальные значения

Уровень сложностиСложный
Время на прочтение13 мин
Охват и читатели6.8K

В большинстве устройств для промышленной или домашней автоматизации требуется измерить какую-либо физическую величину, например, температуру, влажность, освещенность, давление, уровень воды и др. Для этого используют соответствующий сенсор, подключают его к микроконтроллеру и с помощью АЦП преобразуют в цифровое значение. Но сырые цифры из АЦП микроконтроллера — это ещё не температура, не давление и не влажность. Нужно их пересчитать. И тут начинается самое интересное: где взять коэффициенты для функции? Вручную подбирать? Гадать? Самый распространённый способ — это рассчитать коэффициенты для линейной функции. Но как правильно рассчитать её коэффициенты, чтобы ошибка была минимальной? Разбираем теорию, типы графиков датчиков, расчёты и готовый код.

Вперёд, к свету разума

Digital Points — программный осциллограф, так и не ставший стартапом

Уровень сложностиСредний
Время на прочтение15 мин
Охват и читатели8.8K

История о том, как внутренний программный инструмент для отладки вырос в проект, так и не ставший коммерческим, и почему в итоге мы выложили его в open‑source в надежде вдохнуть в него вторую жизнь. Заодно расскажу, что умеет этот инструмент.

TL;DR Digital Points — «программный осциллограф», инструмент для отладки систем реального времени. Может считывать переменные микроконтроллеров в реальном времени и по триггеру, математически обрабатывать их, измерять частотные характеристики, рассчитывать программные регуляторы. Пытались его коммерциализировать, не вышло, и теперь выкладываем в open‑source.

Читать далее

DIY и C++ в системе охлаждения кур

Уровень сложностиПростой
Время на прочтение3 мин
Охват и читатели8.2K

Расскажу о проблеме с электронным регулятором давления, которая возникла после запуска системы охлаждения куриных тушек, и как проблема была решена.

Читать далее

200 рублей, ESP12 и полная потеря самоконтроля: хроники одной вентиляции

Время на прочтение22 мин
Охват и читатели13K

ESP01 и ESP12 кажутся идеальными кирпичиками для самодельной автоматизации: стоят копейки, занимают минимум места, умеют Wi‑Fi и позволяют собрать полезное устройство буквально из нескольких модулей. Но стоит перейти от макетной платы к реальному корпусу, питанию, реле, датчикам и установке «на место», как начинается настоящая инженерная проза: пины внезапно мешают загрузке, реле щёлкает не тогда, питание проседает, корпус не герметичен, а вентилятор оказывается умнее, чем хотелось бы.

В этой статье я собрал свой практический путь — от выбора между ESP01 и ESP12 до проектирования платы, корпуса, прошивки и отладки устройства для управления вентиляцией в санузле. Здесь будет не только «как надо», но и честный список ошибок, тупиков и переделок: почему правило «семь раз проверь» для ESP особенно актуально, какие пины лучше не трогать, зачем тестировать питание заранее и почему иногда самое ценное в проекте — это не схема, а возможность спокойно обновить прошивку по воздуху и наконец-то лечь спать.

Читать далее

IoT системы не безопасны и разрознены

Время на прочтение8 мин
Охват и читатели16K

Ни для кого не секрет, что IoT‑устройства собирают огромное количество информации, в том числе личные данные пользователей и фиксируют их местоположение. А также они жёстко привязаны к конкретному производителю, т.е. пользователь зависим от конкретного производителя или бренда. Гаджеты совместимы с парой основных систем, но кроссплатформенность отсутствует. Устройства разных производителей часто не могут взаимодействовать друг с другом без дополнительных шлюзов. Универсального протокола связи устройств тоже нет. Из стандартов: Zigbee, Matter, Z‑Wave, Bluetooth, Wi-Fi — как следствие умные устройства плохо дружат между собой.

Читать далее

Из обучения школьников цифре на макетке нужно выкинуть все резисторы и вставить микросхемы с FIFO

Уровень сложностиПростой
Время на прочтение3 мин
Охват и читатели26K

Раз уж я начал учить школьников как собирать на макетной плате цифровые схемы (в рамках подготовки демонстраций к мероприятию торговой палаты города Маунтин-Вью, Калифорния), то возникла необходимость написать для них инструкции. У меня тут же ожидаемо спросили, почему мне не подходят существующие инструкции от Make и других источников. Объясняю:

1. Все эти туториалы последние 55 лет переписывают друг от друга как использовать: 1) резисторы при светодиодах и 2) подтягивающие резисторы. У меня этого нет, потому что я использую LED толерантные к пяти вольтам, кнопки со встроенными подтягивающими резисторами, а также блок питания от USB которые генерит стабильные 5V вместо 9-вольтовой батарейки "Крона". То есть я удалил как кучу лишних резисторов на плате, так и необходимость объяснять законы Ома и Кирхгофа.

2. Эти туториалы часто описывают как строить генератор тактового сигнала из микросхемы 555, конденсатоов и резисторов. У меня этого нет, посколько я используют уже собранные генераторы тактового сигнала с AlExpress. Сборка такого блока самому не дает ничего полезного для обучения цифровому проектированию по направлении к микроархитектуре.

3. В мейкерских туториалах есть куча вещей, которые никогда не возникают в работе проектировщика современного чипа (JK-триггеры, SR-защелки), но нет того, что используется ежедневно (FIFO - микросхема CMOS 40105, приоритетный энкодер - CMOS 4532 итд).

Короче вот первые четыре страницы и фотки школьников с последней сессии:

Читать далее

О Raspberry Pi Pico, RP2040 и Baremetal

Уровень сложностиСредний
Время на прочтение41 мин
Охват и читатели13K

В этой статье пойдет речь о первом поколении микроконтроллеров от Raspberry Pi Foundation — RP2040 на основе двух ядер ARM Cortex‑M0+, и о плате, которая базируется на этом чипе — Raspberry Pi Pico. Статья призвана облегчить понимание некоторых принципов работы RP2040 и микроконтроллеров в целом.

Читать далее

Калвиаутра путает калвиши: один байт изменил всё

Уровень сложностиСредний
Время на прочтение8 мин
Охват и читатели15K

Пришла моя долгожданная плата EC для клавиатуры Agar Mini. Собрал, начал пользоваться, но вот что-то слишком много опечаток. Думал, повожусь с настройками, да не тут-то было — приключение растянулось на 7 часов.

В статье о том, что такое EC, как отдебажить проблему и внести фикс в прошивку. Не обошлось и без реверс-инжиниринга.

Все опечатки неслучайны.

Читать далее

Подключение вакуумного люминесцентного индикатора (ВЛИ) типа ИВЛ1-8/13 от старого кассового аппарата АМС-100Ф

Уровень сложностиПростой
Время на прочтение7 мин
Охват и читатели8.6K

Как оживить старый ВЛИ (VFD) без родной электроники? В этой статье разберем подключение неизвестного дисплея, управление сетками и сегментами, работу с высоким напряжением и создание собственного драйвера на Arduino Nano, который позволит управлять индикатором через Serial‑порт.

Читать далее

Эмулятор CD-ROM из Raspberry Pi Pico W, использующий образы из сети

Уровень сложностиСредний
Время на прочтение7 мин
Охват и читатели18K

В одной из своих статей я уже рассказывал, как из Raspberry Pi Pico сделать USB CD-ROM. Так как размер флеш-памяти Pico ограничен, поместить что-то серьёзное в образ, который будет находиться во флеш-памяти невозможно. Можно попробовать разместить образ на флеш-карте и использовать модуль для неё, но я нашёл более интересное с точки зрения используемых технологий решение. Эмулировать образ, который находится в интернете. Образа многих дистрибутивов Linux доступны для загрузки с сайта.

Читать далее

Ближайшие события

MIK32 Амур + PlatformIO: пошаговый гайд по настройке среды разработки на Windows

Уровень сложностиСредний
Время на прочтение4 мин
Охват и читатели7.4K

MIK32 Амур (К1948ВК018) — первый российский 32-битный микроконтроллер на ядре RISC-V от АО «Микрон». Для работы с ним разработчики предлагают связку VS Code + PlatformIO. Казалось бы, всё просто — но на практике сталкиваешься с множеством неочевидных шагов, которые нигде не собраны в одном месте. В этой статье я пошагово покажу, как развернуть полноценную среду разработки для MIK32 Амур на Windows.

Читать далее

К1921ВГ015 в Pandora EV UCCS: RISC‑V в контроллере зарядных станций постоянного тока

Уровень сложностиПростой
Время на прочтение7 мин
Охват и читатели7.4K

Копилка практических кейсов применения RISC-V в серийных изделиях российских производителей электроники пополнилась еще одним примером. Калужская компания Pandora EV, известная с 2004 года как разработчик высокотехнологичной автомобильной электроники вывела в свет универсальный контроллер зарядных станций постоянного тока Pandora EV UCCS, в котором применен российский микроконтроллер К1921ВГ015 производства АО "НИИЭТ" (входит в ГК "Элемент").

Зарядная станция постоянного тока - это не только силовые модули, кабель и корпус с экраном. Внутри есть управляющий контур, который связывает логику станции, энергетические подсистемы, счетчики, цифровые измерительные устройства, промышленную периферию, зарядные протоколы и обмен с вышестоящими системами управления.

В этом кейсе архитектура RISC-V интересна, в первую очередь, как основа российского микроконтроллера, который дошел до промышленного устройства для зарядной инфраструктуры. И в этом материале мы разберем, какую роль выполняет Pandora EV UCCS и что дает применение К1921ВГ015 в контроллере ЗСПТ. 

Подробности - под катом! =)

Читать далее

Как я собрал инфопанель на ESP32, поручив написание кода нейросетям

Уровень сложностиПростой
Время на прочтение8 мин
Охват и читатели20K

В 2026 году ИИ-помощников для написания кода пруд пруди. Разные модели по-разному подходят к решению задач: тот же ИИ, способный за пару минут состряпать безупречный сайт, может намертво зависнуть на сложных кодинг-проектах. Но для небольших любительских схем на микроконтроллерах такие модели подходят идеально – тут они могут показать себя во всей красе.

Поэтому автор обзора, Ядулла Абиди, устроил очную ставку Claude Code, Codex и Antigravity в реальном хардверном проекте. Задача – собрать простенькую информационную панель на базе ESP32 с OLED-дисплеем и датчиком температуры, которая умеет выполнять несколько параллельных задач. И хотя все три ассистента способны выдать рабочий прототип, выбирать помощника не глядя точно не стоит.

Читать далее

Диктофон на микроконтроллере (WM8731 + I2S + STM32 + SDIO + FAT16)

Уровень сложностиПростой
Время на прочтение18 мин
Охват и читатели12K

В этом тексте я покажу, как на основе микроконтроллера, аудиокодека и SD карты запрограммировать самый настоящий диктофон.

Перечислены особенности разработки звукозаписывающей аппаратуры и типичные трудности разработки диктофонов.

Читать далее

Modbus-датчик от подключения до Grafana без написания кода — только конфиги

Уровень сложностиСредний
Время на прочтение10 мин
Охват и читатели8.7K

Типичная история при работе с промышленными датчиками выглядит примерно так. Есть RS485- датчик, нашли документацию с картой регистров. Написали Python-скрипт, который раз в 10 секунд опрашивает Modbus, парсит регистры и пишет строчку в CSV. Через неделю скрипт падает — оказывается, что порт занят другим процессом, или systemd не поднял его после перезагрузки, или датчик не ответил три раза подряд и скрипт завис в ожидании. Чиним, причесываем, добавляем watchdog. Потом понимаем, что CSV — плохая идея и надо куда-то писать данные нормально. Этот путь знаком многим в промышленной инженерии, но есть и другой. 

Читать далее

LumaBloom — DIY‑цветок, который автоматически регулирует яркость мониторов

Уровень сложностиСредний
Время на прочтение7 мин
Охват и читатели10K

Идея этого проекта появилась после обсуждения с коллегой устройств, которые могли бы автоматически регулировать яркость мониторов по окружающему свету. Картина была довольно унылая: встроенные решения обычно встречаются в дорогих моделях мониторов, отдельных внешних устройств на рынке почти нет, а то, что есть, либо стоит слишком дорого, либо недоступно, либо просто выглядит не очень.

После этого разговора я решила сделать такое устройство для себя из подручных средств — у меня была простая плата esp32c3 и фоторезистор ky018. Я хотела получить быстрое и простое решение, потому что сама задача довольно тривиальна, а для меня она при этом решала вполне реальную проблему: постоянное напряжение глаз из‑за изменения освещения в течение дня.

Читать далее

USB-ключ для ввода TOTP-кодов и сохранённого пароля

Уровень сложностиСредний
Время на прочтение4 мин
Охват и читатели13K

Мне всегда было лень доставать телефон ради TOTP-кода, а вручную вводить длинные сложные пароли — удовольствие тоже сомнительное. С паролями эту проблему часто решают плохо: делают пароль попроще и покороче, чтобы его было удобно набирать. Но с TOTP так не получится — код живёт отдельно, его всё равно нужно открыть, посмотреть и перепечатать.

Поэтому я решил сделать маленький «вписыватель паролей»: USB-устройство, которое притворяется клавиатурой и само вводит TOTP-код или сохранённый пароль.

Читать далее
1
23 ...