Как стать автором
Обновить
139.94

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

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

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

Сезам, откройся… или как оправдать свою лень прогрессом

Уровень сложности Простой
Время на прочтение 5 мин
Количество просмотров 1.7K

Кто не помнит арабскую сказку "Али-Баба и сорок разбойников", и их волшебную пещеру, для входа и выхода из которой требовался секретный пароль. Может кто-то вспомнит еще короткий и забавный рассказ А. Беляева, где та же команда открывала двери в доме престарелого магната. Но теперь для создания этого не надо учиться колдовать или даже продавать заработанные тяжким трудом текстильные фабрики...

Читать далее
Всего голосов 3: ↑2 и ↓1 +1
Комментарии 7

Новости

Как Чинить Программные Ошибки?

Уровень сложности Простой
Время на прочтение 5 мин
Количество просмотров 1.6K

В программировании микроконтроллеров регулярно приходится занимаются починкой bug(ов).

При этом все bug(и) уникальные. Поиск причины каждой конкретной осечки это скорее искусство. Починка программ сродни работы детектива.

Есть ли универсальные приемы того как искать причину программных ошибок?

Считаю, что да. Подробности в тексте...

Читать далее
Всего голосов 11: ↑7 и ↓4 +3
Комментарии 28

KC868-A2: ESP32 + LAN8720A + GSM 2G/4G (на квадрате 9x9 см)

Уровень сложности Простой
Время на прочтение 4 мин
Количество просмотров 5.7K


В линейке контроллеров Kincony KC868 на ESP32 присутствуют модели серий A4, A6, A8, A16, A32, A64, A128 и т. д., но не было модели A2 (компактной версии с двумя реле). И вот компания Kincony решила исправить это досадное упущение и выпустила модель KC868-A2, причём решила не мелочиться и на небольшом куске текстолита 9x9 см (плюс ко всему прочему) разместила разъёмы для подключения 2G/4G GSM модулей SIM800L/SIM7600, что делает эту компактную модель очень интересным решением — тут одновременно присутствуют ESP32, LAN8720A и один из GSM модулей 2G/4G (на выбор) и на этой плате можно реализовать довольно развитые IoT проекты.
Читать дальше →
Всего голосов 17: ↑17 и ↓0 +17
Комментарии 6

Индастриал-пирсинг со светодиодами

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

Моя подруга носит украшения, называемые «индастриал-пирсингом» – по сути, такое украшение представляет собой штангу, продетую через два противоположных прокола в ухе.

Мне же, как любителю интересных проектов с электроникой, пришла идея встроить в эту штангу светодиоды.

Это один из проектов, которые я успел реализовать как раз перед закрытием London Hackspace. К этому моменту у меня уже год, как нет доступа к фрезерному станку, а без него просверливание отверстий в игле от шприца оказалось нетривиальной задачей.
Читать дальше →
Всего голосов 72: ↑69 и ↓3 +66
Комментарии 33

Истории

Реверс-инжиниринг и ремонт платы зарядного устройства

Уровень сложности Простой
Время на прочтение 18 мин
Количество просмотров 2.6K
image

Волею случая у меня в руках оказались две неисправные платы от зарядного устройства тяговых аккумуляторов LiFePo. Параметры платы вызывают уважение – она выдает в номинале 48 В при токе до 60 А, то есть мощность платы порядка 3 кВт. Плата подключается к однофазной сети 220/230В. Всего в зарядном устройстве стоит несколько таких плат, они все подключаются параллельно и работают на общую нагрузку. Выпускаются варианты таких зарядных устройств с разным числом плат, соответственно, на разный зарядный ток. Например, как на фото ниже — 3 платы, 180 А.
Читать дальше →
Всего голосов 30: ↑30 и ↓0 +30
Комментарии 18

Как сделать быстрый Wi-Fi для ПЛК

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

Быстрый Wi-Fi позволяет собрать больше диагностической информации, а значит облегчает отладку, улучшает поддержку и открывает путь к машинному обучению в ПЛК и во встраиваемых устройствах. Но кроме быстрого Wi-Fi модуля нужен ещё быстрый драйвер на стороне микроконтроллера. Здесь покажем процесс портирования открытого проекта Infineon Wi-Fi Host Driver (WHD) на нашу платформу универсального ПЛК PLCS7.

Читать далее
Всего голосов 10: ↑10 и ↓0 +10
Комментарии 3

Разбор примера BLE Audio от Nordic Semiconductor (или переходник I2S->BLE-Audio)

Уровень сложности Средний
Время на прочтение 16 мин
Количество просмотров 1.2K

Обзор технологии беспроводной передачи данных BLE 5.3.
Представлен разбор примера Ble Audio от Nordic Semiconductor для микроконтроллера nRF5340. Это пример передачи звука по Bluetooth 5.3.

Читать далее
Всего голосов 8: ↑7 и ↓1 +6
Комментарии 2

Структура драйвера Linux для одноплатного компьютера

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

Здраствуйте меня зовут Дмитрий. Недавно я написал статью как собрать прошивку для одноплатного компьютера Orange PI i96 с нуля. Если вы не читали то очень советую. И там я упоминал что для того чтобы собрать прошивку на новом ядре Linux, мне пришлось переписать драйверы с учетом архитектуры Device Tree, которую использует современное ядро. В этой статье я опишу как я это сделал.

Читать далее
Всего голосов 35: ↑34 и ↓1 +33
Комментарии 4

Создание автоматического долива воды в чайник — своими руками

Уровень сложности Средний
Время на прочтение 10 мин
Количество просмотров 18K
image

Во время наших ежедневных утренних ритуалов часто возникает момент, когда нужно включить кофемашину или чайник, и если не повезет, то можно услышать их молчаливую просьбу: «Пожалуйста, добавьте воды» И Вам приходится искать подходящую емкость, терпеливо ждать, пока она заполнится водой из фильтра, а потом аккуратно переливать воду из емкости в чайник, рискуя при этом разлить ее. Знакомая вам ситуация?
Читать дальше →
Всего голосов 66: ↑60 и ↓6 +54
Комментарии 63

NORVI Arita: добавляем SD картридер и веб-интерфейс (почти контроллер мечты)

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


Итак, это уже третья статья (0, 1, 2) по модернизации NORVI Arita Model 5, контроллера который имеется в моём распоряжении. Арита изначально была интересным решением, а после добавления нами на прошлых этапах Ethernet интерфейса и OLED дисплея SSD1306 стала ещё интереснее.

Но до завершения первого цикла модернизации и выполнения «программы минимум» не хватает ещё одного элемента — картридера для microSD карт памяти. После добавления поддержки работы с SD картами памяти, контроллер получает возможность работы с полноценным веб-интерфейсом, значение чего трудно переоценить — появляется возможность удобно изменять настройки контроллера, создавать неограниченное количество веб-страниц, выводить на них нужную информацию и т. д.

Фактически, контроллер превращается в полностью самодостаточную вещь: он может управлять подключённым оборудованием (как собственно контроллер), общаться по сети с другими устройствами, выводить нужную информацию на веб-страницы, управлять другими контроллерами по проводным и беспроводным интерфейсам и т. д.
Читать дальше →
Всего голосов 22: ↑21 и ↓1 +20
Комментарии 13

К вопросу о ESP32

Уровень сложности Простой
Время на прочтение 11 мин
Количество просмотров 16K

Решил я приобщиться к модным трендам и купить себе (для побаловаться) платку на ESP32, тем более и повод выдался неординарный - на сайте одной из российских фирм, торгующих Arduino, обнаружился модуль ESP32 lolin32 OLED по цене ниже, чем на Aliexpress. Пнп: не знаю, будет ли это рекламой, но вот ссылка на модуль https://iarduino.ru/shop/boards/wemos-esp32-oled.html, а фирму вы узнаете сами. Не то, чтобы мне было очень жалко 1200-990=210 рублей, но возможность получить платку сразу, без ожидания посылки дорогого стоит. Пнп: кстати, если заказывать доставку до пункта выдачи, то даже получается чуть дороже, хотя и быстрее, чем из Китая - всего 3 рабочих дня. Но можно съездить в "столицу нашей Родины город-герой Москва" и получить заказ на следующий день, что я и сделал. Не очень понятно, зачем я это все совершил в пятницу, потому что в выходные с платой возится так и не начал, но охота пуще неволи.

Тем не менее, на следующей неделе приступил к освоению платы. Для начала включил плату в USB порт - экран засветился и появилась надпись, заявляющая о любви к ESP - начало неплохое. Нужно установить среду разработки программ, и я решил поступить, как нормальный самодельщик, тем более что мне это рекомендовали на сайте фирмы продавца - скачать Arduino. Читатели, испытывающие непреодолимое отвращение к этому термину, могут далее себя не мучить, все остальные могут нажать на транспарант ниже.

Читать далее
Всего голосов 28: ↑24 и ↓4 +20
Комментарии 36

Санком. Неизвестный производитель оптических домофонов

Уровень сложности Средний
Время на прочтение 14 мин
Количество просмотров 7K
Приветствую всех!

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



Итак, сегодня поговорим об оптических считывателях и домофонах ранее неизвестной мне фирмы. Узнаем, как работали их ключи и разберёмся, как всё это запустить. Традиционно будет много интересного.
Читать дальше →
Всего голосов 44: ↑44 и ↓0 +44
Комментарии 2

Зачем Программисту Микроконтроллеров Математическая Статистика? (или так ли хороши UWB трансиверы?)

Уровень сложности Простой
Время на прочтение 5 мин
Количество просмотров 5.2K

Настал день, когда мне для работы программистом микроконтроллеров наконец пригодилась математическая статистика из ВУЗ(овского) курса по теории вероятностей.

Есть очень интересная технология для автоматического радиоизмерения расстояния. Технология основана на UWB трансиверах. Позволяет измерять время пролёта радиоволны.

В этом тексте написал как я исследовал измерения расстояния, при помощи ASICа UWB трансивера DWM1000.

Читать далее
Всего голосов 12: ↑12 и ↓0 +12
Комментарии 23

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

Как «озолотиться» на собственном образовательном продукте

Уровень сложности Простой
Время на прочтение 11 мин
Количество просмотров 7K
image

В этой статье я расскажу, как прошел весь путь для реализации своего образовательного продукта от идеи до… полного провала. Как и многие преподаватели, я мечтал поделиться своими наработками. Кто-то выпускает учебные пособия или даже целые книги. Но мне хотелось запустить учебный стенд. Что из этого получилось, вы можете прочитать под катом.

Чтобы не создавать интриг, сразу скажу, что озолотиться конечно же не получилось! Но было чертовски интересно пройти весь этот путь.
Читать дальше →
Всего голосов 61: ↑61 и ↓0 +61
Комментарии 24

Управление сервоприводами, часть 4. Управление «сервами» по I2C с Repka Pi через серво-драйвер Robointellect Controller

Уровень сложности Средний
Время на прочтение 20 мин
Количество просмотров 2K

В предыдущих статьях нашей серии про сервоприводы мы рассказывали, как они устроены, как можно управлять сервоприводами с помощью широтно-импульсной модуляции ШИМ (Pulse Width Modulation,  PWM) с помощью контроллеров Robointellect Controller 001, а также напрямую через GPIO через генератор ШИМ на плате микрокомпьютера Repka Pi.

В четвертой статье серии статей про сервоприводы мы расскажем, как управлять сервоприводами с помощью контроллеров Robointellect Controller 001 или PCA9685, подключенных к Repka Pi через шину I2C.

Читать далее
Всего голосов 7: ↑7 и ↓0 +7
Комментарии 1

Продолжаем глубже изучать передачу данных по сетям GSM через GPRS с помощью SIM868 и Repka Pi — про AT-команды

Уровень сложности Простой
Время на прочтение 17 мин
Количество просмотров 3.2K

 

В предыдущей статье мы рассказали, как с помощью модуля GSM/GPRS/GNSS Bluetooth HAT, созданного на базе SIM868, библиотек SIM800L, RoverConnect и Telemetry можно обмениваться данными между микрокомпьютером Repka Pi с JSON-сервисом, доступным в интернете.

Мы привели исходные коды программ на Python, которые можно использовать для такого обмена. Однако за пределами изложения остался рассказ о том, как происходит работа с модулем на уровне AT-команд.

Такая информация нужна для более глубокого понимания принципов работы SIM800 и SIM868 при передаче данных через GPRS (General Packet Radio Service). Она может пригодиться при отладке программ передачи данных, составленных с использованием других библиотек и языков программирования. Также же сведения об AT-командах GPRS потребуются, если вы собираетесь создать свою собственную библиотеку передачи данных в сетях мобильных операторов.

Собираем стенд для работы

Установка и запуск терминала minicom

Документация по AT-командам модуля

Получаем информацию с помощью AT-команд

Инициализация модуля SIM868

Обмен данными через GPRS

Полезные ссылки

Итоги

Читать далее
Всего голосов 15: ↑13 и ↓2 +11
Комментарии 10

Реализация многофункционального терминального интерфейса для МК AVR

Время на прочтение 29 мин
Количество просмотров 3.2K

В данной статье речь пойдёт о разработке многофункционального терминального интерфейса для МК (на примере МК Atmega32 и терминала HyperTerminal. Многофункциональность в моём случае будет заключаться в обработке управляющих символов и управляющих последовательностей с целью реализации не только командного функционала, но и истории вводимых команд. Я постараюсь максимально приблизить свой интерфейс к интерфейсу командной строки Windows. Большая часть статьи - подробный комментарий программного кода, который может быть доступен даже начинающим в программировании. Никакого ООП нет - только элементы языка Си.

Читать сначала
Всего голосов 9: ↑9 и ↓0 +9
Комментарии 5

Осваиваем чип с Arm Cortex-M85

Уровень сложности Средний
Время на прочтение 6 мин
Количество просмотров 6.8K

Фирма Renesas вдруг стала раздавать бесплатно платы EK-RA8M1 со своим новейшим чипом R7FA8M1AHECBD. А чип этот является первым в индустрии коммерческим микроконтроллером с ядром Arm® Cortex®-M85. Работает ядро на 480 МГц, снабжено технологией M-Profile Vector Extension (MVE) под названием Helium™ и ускоряет работу AI в малых системах в 4 раза. Ну и другие DSP алгоритмы там тоже ускоряются примерно на столько же. По сути чип стал передовым DSP, но это не всё.

Читать далее
Всего голосов 12: ↑12 и ↓0 +12
Комментарии 11

Озвучка самокатов, часть 2: MIDI через пьезоизлучатель

Время на прочтение 15 мин
Количество просмотров 1.8K

Всем привет! В первой части статьи мы рассказали о том, как на наших IoT модулях реализована схема управления пьезоэлектрическим излучателем (баззером) с регулировкой частоты и амплитуды; как эта схема управляется микроконтроллером программно, воспроизводя простые звуки и мелодии. Такая реализация показала себя надежной в эксплуатации, нетребовательной к ресурсам и на начальном этапе решала задачу базовой озвучки самоката. Шло время, появлялись новые сценарии взаимодействия с пользователями и нам самим хотелось чего-то большего — например, хорошо было бы сделать звучание самоката более “фирменным”, узнаваемым и приятным на слух. Так мы и задумались о “звуковом рефакторинге” — об этом и расскажем вам в этой статье.

Слушать далее
Всего голосов 8: ↑7 и ↓1 +6
Комментарии 4

Домофон, который знает, как вас зовут — своими руками

Уровень сложности Средний
Время на прочтение 12 мин
Количество просмотров 9.4K
image

В мире современных технологий, где мы можем управлять многими устройствами через мобильный телефон или голосового ассистента, удивляет присутствие примитивных элементов, таких как неприятно пищащие зуммеры. Ведь они были изобретены еще в 1831 году! Я решил привнести некоторые современные функции в систему управления доступом (СКУД), которая является ключевой частью любого домофона. Мой проект направлен на создание более интуитивной и приятной для слуха системы управления доступом.
Читать дальше →
Всего голосов 36: ↑35 и ↓1 +34
Комментарии 36

Вклад авторов