Все потоки
Поиск
Написать публикацию
Обновить
176.32

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

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

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

Глубокий анализ модуля UWB650: от основных принципов до расширенной калибровки задержки антенны

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

Цель этой главы — заложить теоретическую основу для глубокого понимания функций и производительности модуля UWB650. Начиная с основных принципов сверхширокополосной (UWB) технологии, мы постепенно сосредоточимся на конкретной аппаратной реализации модуля UWB650, предоставляя инженерам необходимые базовые знания и технические спецификации для проведения первоначальной оценки.

Читать далее

Lua, как инструмент во встроенных системах

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

Есть немало проектов по встраиванию интерпретатора Lua на микроконтроллеры, и некоторые из них помогли мне в своей работе на начальном этапе. Но в данном случае речь пойдет о коммерческом проекте ПЛК, запущенном 3 года назад. За это время был получен интересный опыт, и я хотел поделиться своими мыслями по использованию Lua как инструмента разработки бизнес-логики в распределенных контроллерах ввода/вывода и управления технологическими процессами и оборудованием.

Читать далее

Обзор USB-CAN переходника USB2CANFD_V1

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

В этом тексте я произвел обзор широко распространенного переходника с USB на CAN? который называется USB2CANFD V1.

Вы узнаете, что это за прибор и с какой стороны следует к нему подходить.

Читать далее

Медианный фильтр на двух бинарных кучах

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

В программировании микроконтроллеров порой приходится прибегнуть к медианной фильтрации.

В этом тексте я произвел разбор решения LeetCode задачи 480. Sliding Window Median в контексте реализации на языке программирования Си.

Читать далее

DIY: как сделать игру за несколько минут

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

От идеи до готовой игры за пару вечеров: как гуманитарий сделал аркаду на ESP32 с помощью Copilot и Wokwi. Исходники в комплекте.

Читать далее

Знакомство с программным USB на CH32V003

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

Давно хотел сделать устройство с USB, но больше всего мне казалось интересным это использовать программное USB. И для микроконтроллера CH32V003 давно существует библиотека rv003usb, которая решает эти задачи. В этой статье можно было бы рассказать как делать простейшее USB-устройство на основе её, но эта библиотека заметно больше и предлагает, помимо самой библиотеки, несколько полноценных рабочих программ: загрузчик и программатор.

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

Попробуем сделать свой Digispark!

Читать далее

Программист embedded лезет в FPGA (часть 2, передышка на семисегментниках)

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

В предыдущей статье мы поморгали диодом. Большое дело, вообще‑то. После удобных сред разработки, вроде VSCode, CubeIDE, или продуктов JetBrains (поклонники Vim вышли из чата), Квартус не кажется очень уж дружелюбным. Плюс смена подхода к разработке: от программы к схеме. Но ничего, вроде, справились. Получается, мы погрузились в тему, наверное, на уровне «намочить ноги». Теперь, неспеша, зайдём по щиколотку.

Читать далее

Интеграция DMR858M: Практическое руководство по созданию пользовательских цифровых раций на ESP32

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

В области разработки встраиваемых систем интеграция радиочастотных (РЧ) функций в продукт часто сопряжена со сложным проектированием аппаратного обеспечения и трудоемкой реализацией стека протоколов. Модуль DMR858M значительно упрощает этот процесс, предоставляя высокоинтегрированную подсистему цифровой мобильной радиосвязи (DMR) с мощностью передачи до 5 Вт.1 Это не просто РЧ-трансивер, а комплексное решение, внутренне объединяющее микроконтроллер (MCU), чип цифровой рации, РЧ-усилитель мощности и аудиоусилитель.1 Такая конструкция позволяет разработчикам управлять полнофункциональным ядром рации — поддерживающим стандарт DMR Tier II, совместимым с традиционными аналоговыми режимами и оснащенным функциями SMS и шифрования голоса — через простой последовательный интерфейс.1

Читать далее

Схемотехника и алгоритмы световых мечей: вызовы и решения

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

Сага «Звёздные войны» давно стала больше, чем просто серией фильмов. Миллионы людей объединены общей страстью, и для многих из них обладание своим личным световым мечом становится очень важным. Ведь это не только предмет коллекционирования, технологический артефакт или даже спортивный инвентарь, а символ джедайской (или ситхской) философии.

На этом интересе вырос целый рынок. Есть компании, которые производят световые мечи целиком. Есть те, кто специализируется только на отдельных компонентах: рукоятях, платах, светодиодных модулях и прочей электронике.

Привет, на связи Крэйл из команды умных устройств Яндекса. Но сегодня я расскажу не о Станциях, а о своём необычном хобби. Однажды ко мне обратились производители компонентов с задачей разработать электронику для кастомных световых мечей. Проект оказался ярким во всех смыслах. А в статье я расскажу о том, какие были условия и как я справлялся с поставленными задачами.

Читать далее

CAN-шина (Теория)

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

Вэтом тексте изложены базовые теоретические основы по CAN шине безотносительно к конкретному микроконтроллеру.

CAN — это двухпроводный, дифференциальный, последовательный, полудуплексный интерфейс для передачи бинарных данных между электронными платами (PCB). В качестве кабеля чаще всего применяют одну экранированную витую пару проводов с именами: CAN_L и CAN_H.

Читать далее

Практическое руководство по реализации LoRa-связи точка-точка между модулем LoRa1120 и ESP32

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

Ядром модуля LoRa1120 является чипсет LR1120 от Semtech, интегральная схема, разработанная специально для беспроводной связи на большие расстояния с низким энергопотреблением и для приложений геолокации ¹. Перед началом разработки реальных приложений ключевым фактором успеха является глубокий анализ основных технических возможностей этого модуля. Это не просто LoRa-приемопередатчик, а комплексная платформа, объединяющая несколько режимов связи и функции позиционирования.

Читать далее

Самодельная монтировка телескопа на ESP32

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

Несколько лет назад благодаря таким ютуберам, как Nebula Photos, у меня появился интерес к астрофотографии. Вооружённый OM System OM-5 и объективом Olympus на 15-140 мм, я смог сделать со штатива достаточно приличные снимки туманности Ориона, сняв 300 кадров с двухсекундной экспозицией и затем объединив их в Siril.

Понимая, что могу получить более качественные результаты при помощи трекинга, я примерно за €200 купил трекер Move Shoot Move. Он позволил использовать более долгую экспозицию, но находить объекты для съёмки и обеспечивать правильную привязку к полюсам всё равно было довольно сложно. В итоге я потратил кучу времени на изучение подходящих монтировок телескопов с функциями GOTO (автоматического наведения) и трекинга, почти решившись на приобретение моделей в ценовом диапазоне от €1200 до €4000. Для хобби, в котором я пока был новичком, подобные вложения показались мне перебором.

Читать далее

Контроль напряжения над блоком питания на STM32: Подход к энергоэффективности и защите

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

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

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

В данной статье будет представлен пример контроля напряжения, над блоком питания - внутри которого (никель-металлгидридная аккумуляторная сборка NiMH 14.4В/12 банок по 1.2В(1.4В- при полной зарядке)), с помощью микроконтроллера STM32.

В блоке питания уже есть палата управления над аккумулятором, которая выполняет задачи:

Работа с кнопкой;

Работа со светодиодом;

Работа с пъезоэлектрическим излучателем(звуковая индикация);

Контроль заряда/разряда аккумулятора(дает звуковой сигнал при напряжении менее 9 вольт и более 14).

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

Читать далее

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

Обзор USB-CAN переходника USBCAN-II C

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

В программировании микроконтроллеров часто приходится работать с CAN шиной.
В этом тексте я произвел обзор USB-CAN переходника USBCAN-II C.

Как известно, не существует компьютеров с интерфейсом CAN. Зато во всех настольных компьютерах и LapTop(ах) есть USB. В связи с этим для отладки оборудования с CAN нужны всяческие переходники USB-CAN.

В этом тексте я написал про достаточно хороший переходник с USB на CAN, который не раз выручал меня при отладке прошивок с CAN-трансивером. Называется изделие USBCAN-II C. Вот он перед вами.

Читать далее

Программист embedded лезет в FPGA (часть 1, hello blink)

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

Любой программист микроконтроллеров, Imho, рано или поздно (сейчас, скорее, рано) от одного из коллег или из статьи в интернете слышит загадочное ПЛИС или FPGA, CPLD, ПВМ — что-то такое. Если честно, то я услышал вот это загадочное, занырнул чуть-чуть, и теперь думаю, что мой опыт пригодится кому-то ещё. Если совсем честно, то статья ещё планируется как небольшая (всего в трёх частях) заметка для себя. Я когда погружался, делал пометки в текстовом файле, здесь получится их хорошо отредактированная версия.

Очень много вещей в подобных этому туториалах, которые я читал, пропускаются как сами собой разумеющиеся. Подробные инструкции куда и как тыкать есть в документации к плате разработки. Но там не хватает ответов на вопросы зачем и почему. Здесь я хочу скомбинировать 2 подхода.

Лезем в FPGA

I2C Slave на STM32G4

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

Понадобилось мне для проекта по приколу сделать i2c slave (ведомого устройства), но не просто эмуляцию одного устройства (например eeprom), а сразу эдакого эмулятора с, если можно это так назвать, API, к которому можно уже привязывать эмуляции конкретных реализаций устройств на произвольные адреса.

На тему реализации ведомых устройств на STM32 с использованием LL я как-то не особо много инфы нарыл, в итоге накостылил, как сам понял :D Тест отвёрткой проходит, хотя первые реализации иногда прям залипали намертво.

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

Читать далее

Монитор качества воздуха Zigbee своими руками

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

Сразу должен сказать, что идея не моя. Изначально речь шла об устройстве на дисплее epaper, который бы на экран выводил значения CO2, температуру и влажность. Ну еще время. В процессе обсуждения родился проект, который мы назвали Air Quality Monitor.

Самым главным критерием была выбрана повторяемость как можно большим количеством пользователей Умных Домов, даже теми, которых пугает паяльник. Поэтому все датчики были выбраны в виде готовых модулей, которые просто вставляются в соответствующие разъемы на общей плате, а пайка сведена к минимуму.

Читать далее

Расследование: отечественные микросхемы в счетчиках электроэнергии – миф или реальность?

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

Расследование: отечественные микросхемы в счетчиках электроэнергии – миф или реальность?

13 апреля в канале пользователя @STriple вышла первая разоблачающая публикация о производителях счетчиков, использующих комплектующие зарубежного происхождения, что запрещено законом. Со временем таких статей стало несколько, и каждая из них получала широкий отклик: об этом писали СМИ, обсуждали в блогах и кулуарах на отраслевых тусовках, а Минпромторг инициировал проверки.Мы с замиранием сердца следили за происходящим и были слегка разочарованы тем, что в поле зрения @STriple попало только несколько игроков рынка, тогда как их значительно больше. Быть может у остальных все нормально и дела с импортозамещением не так уж и плохи? Или, наоборот, нам показали лишь вершину айсберга? Мы решили это проверить и приобрели три реестровых счетчика, которые не фигурировали в расследовании нашего незримого коллеги. Продолжим вскрывать этот гнойник, чтобы заражение не разнеслось по всей отрасли.

Читать далее

Как я научил Espruino на ESP-32 понимать кириллицу

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

Espruino + ESP32: как вывести русский текст и подключить кириллический шрифт ? История из жизни, создание и подключение кастомного шрифта 🦐

Ну давай показывай, что там у тебя

Практическое руководство по проектированию для инженеров по мощным модулям LoRa1121F33-2G4

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

LoRa6100Pro-mini — это современный беспроводной UART-модуль от компании NiceRF, построенный на базе чипа Semtech SX127X и использующий технологию LoRa с расширенным спектром. Модуль предназначен для передачи данных на большие расстояния при низком энергопотреблении и высокой помехоустойчивости, что делает его идеальным решением для IoT-приложений.

Читать далее

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