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

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

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

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

Оптимальный выбор файловой системы и создание драйвера для OSPI Flash с GitHub Copilot

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

Файловая система во встраиваемых решениях — критическое звено. От её выбора зависят надёжность, детерминированность и задержки всей системы.

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

На практике всплывают одни и те же проблемы: дефрагментация, высокое потребление RAM, плохая детерминированность (плавающие задержки), неустойчивость к сбоям записи/питания и низкая скорость. Нередко корнем оказываются драйверы из SDK производителей чипов: они не оптимизированы для многозадачной среды и часто недоработаны под OSPI.

Я протестировал четыре файловые системы на платформе MC80 с внешней OSPI NOR Flash и разработал специализированный драйвер вместо стандартного из FSP — с полноценной поддержкой OSPI и RTOS.

Читать далее

Рулим светодиодом по UDP и ESP8266

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

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

Сегодня я поделюсь опытом работы с протоколом UDP вместе с микроконтроллером ESP8266, где я управлял светодиодом, а также получал температуру с датчика DHT11. Всё управление будет происходить из Android-приложения, написание логики которого также будет рассмотрено.

Читать далее

Цитаты про программирование и разработку в общем

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

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

Читать далее

Переходим границу из Мексики в Калифорнию в 2025 году: инструкция для айтишника с фотографиями

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

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

Кроме этого, в последние месяцы на иммигрантских IT‑форумах появилась информация, что все, лавочка закрыта и границу больше перейти нельзя. Это разумеется не так, и моя заметка будет проводником в осуществлении вашей Калифорнийской Мечты.

Читать далее

Датчик качества воздуха EFEKTA Smart Air Quality Box

Уровень сложностиПростой
Время на прочтение9 мин
Количество просмотров5.8K
Приветствую всех читателей Habr, сегодня хочу рассказать вам о моем новом интересном проекте для умного дома — многофункциональном датчике качества воздуха EFEKTA Smart Air Quality Box, работающем на протоколе Zigbee 3.0. Современные технологии умного дома активно развиваются, и одним из ключевых аспектов комфортной жизни становится контроль микроклимата. Качество воздуха в помещении напрямую влияет на здоровье, работоспособность и общее самочувствие. Если вам интересна тема контроля качества воздуха и вы хотите узнать чем закончилась эта разработка — добро пожаловать под кат.


Читать дальше →

Обнаружение протечек воды на базе NodeMCU и Wi-Fi с отправкой уведомлений

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

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

Читать далее

Электронные песочные часы с Алиэкспресс

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

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

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

Насколько получилось лучше, чем у предшественников? Судить читателям.

Читать далее

Гений. Миллиардер. Плейбой. Филантроп. Участник «Технотекста-7»

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

Открылся прием заявок на седьмой «Технотекст» — конкурс лучших статей Хабра. В этом году мы в YADRO вновь поддерживаем номинацию «Железо: проектирование и технологии производства» и призываем «железных человеков» присылать свои материалы. В ней есть за что побороться: для каждого победителя заготовлен большой набор подарков: платы, осциллографы, книги, инструменты… и даже сертификаты на рассыпуху. Для лучшего молодого автора — отдельный призовой комплект, а для тех, кому немного не хватило до победы, — поощрительные наборы мерча. Другие подробности — в посте.

Читать далее

Велика ли полуночная невязка двухлучевых инфракрасных счётчиков

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

Как известно, инфракрасные счётчики зарабатывают себе на жизнь, считая людей. Обычно, на входах в торговые центры и отделы.

Самый бесхитростный из них — счётчик с одним инфракрасным лучом. Он считает подряд всё, что движется. Точнее, всё, что прерывает его луч. Неважно, входит человек или выходит: счётчик добавит к переменной‑сумматору одну единицу.

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

Счётчик с двумя параллельными инфракрасными лучами сложнее. По последовательности прерывания двух своих лучей он может определить, входит посетитель в торговый центр или выходит. Это, теоретически, даёт новую, фантастическую возможность: не дожидаясь полуночи, узнать, сколько людей находится в торговом центре прямо сейчас. Нужно лишь из числа вошедших вычесть число вышедших. Разумеется, это знание тоже будет слегка расплывчатым: плюс‑минус погрешность счёта.

Как оценить эту расплывчатость? Какова типичная величина ошибок счёта для этого случая? Выясним это на практике.

Читать далее

Как отправлять SMS из NodeMCU (ESP8266)

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

Всем привет! У платформы МТС Exolve есть сообщество, которое часто делится полезными гайдами от прокачки серверов до создания своих приложений. Наиболее интересные и подробные продолжаем размещать в нашем хабе.

В этом гайде пользователь на простом примере рассматривает, как с помощью микроконтроллера NodeMCU (ESP8266) и кнопки отправлять SMS через HTTP POST-запросы. Это полезно для создания различных IoT-устройств — мониторинга и умных домов.

Читать далее

Использование Cortex-M3 hard core processor в ПЛИС GOWIN

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

В статье описывается опыт использования ARM ядра, встроенного в ПЛИС GOWIN GW1NSR-4C, в качестве процессора общего назначения для формирования PSK31 сигнала. Сигнал формируется с помощью генератора синуса, который был описан в предыдущей статье. Используются отладочная плата LilyGO T-FPGA, в составе которой ПЛИС GW1NSR-LV4CQN48PC6/I5, ЦАП на основе DAC904, ide GOWIN FPGA Designer и образовательная версия GMD.

Читать далее

Сжатие графики при помощи алгоритма LZ4

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

Привет, Хабр! Меня зовут Александр Крестинин, я разработчик встроенного ПО в компании Whoosh. Мы в embedded-команде не только переливаем биты из одного регистра в другой, но и решаем разные бизнес-задачи. Иногда попадаются головоломки. 

Однажды мы подумали, что было бы здорово выводить на экраны самокатов анимации и изображения — показывать инструкции, как пользоваться сервисом, как начать и закончить поездку, и чтобы запускать DOOM.

Зачем?

1) Сделать комфортнее. Удобно видеть инструкции на большом и ярком экране перед глазами, а не нырять за ними в приложение на смартфоне. 

2) Сделать безопаснее. Пользователь меньше отвлекается на телефон, крепче держится за самокат и внимательнее смотрит на всё, что вокруг.

3) Почти у всех привычных устройств уже есть экраны, которые выводят пользователям видео и картинки, а почему бы не сделать то же самое на самокате?

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

Расскажу, как мы нашли решение этой задачи. Прошу под кат.

Читать далее

Цифровые часы для дома на светодиодной ленте

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

Про конструкцию больших часов на светодиодной ленте я уже писал в одной из своих прошлых статей. Эти часы, размером 320 на 100 см, адаптированы к установке на открытом воздухе на улице. Тогда же, 7 лет назад, сразу же после изготовления этих часов я приступил к реализации другой похожей конструкции, размером меньше, для комнаты. Данная статья, можно сказать, является дополнением той вышеупомянутой статьи. Все основные подробности изложены именно там. А здесь я расскажу про особенности, касающиеся второй менее габаритной конструкции.

Читать далее

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

Ruby и встраиваемые системы

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

Казалось бы, какое отношение «хипстерские скрипты для веб» могут иметь к жестоким реалиям embedded‑разработки, со всей их низкоуровневой работой и ограниченными ресурсами? Но реальность в очередной раз оказалась куда интересней предубеждений, так появилась на свет эта статья.

Читать далее

Дружим iPhone и ESP32. Часть 1. ESP Arduino Core

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

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

Читать далее

KC868-AG Pro: Zigbee координатор (Tasmota и SLS)

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


В прошлой статье я дал общий обзор контроллера KC868-AG Pro, в этой статье мы разберём вопросы использования AG Pro в качестве Zigbee координатора при помощи двух популярных прошивок Tasmota и SLS.

Попробуем разобраться с тем, как установить прошивки на это железо, как их настроить, и я поделюсь своими впечатлениями об этих прошивках.
Читать дальше →

Контроллер управления аттенюаторами Agilent/Keysight 8494H и 8496H

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

Приветствуем!

Так получилось, что нам достались два аттенюатора Agilent 8494H и 8496H. Они долго лежали без дела, поскольку отсутствовал контроллер управления. Конечно, четыре простых переключателя справились бы с этой задачей, но хотелось реализации с дисплеем показывающий текущее значение затухания и программное управление. Проект сделан в EasyEDA и Atmel Studio.

Читать далее

Наше расследование: мониторы LightCom, блогеры и все все все…

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

Нашу прошлую публикацию про мониторы многие считают началом череды событий, которые взбудоражили российскую радиоэлектронную отрасль в конце 2023 года. Если кто не в курсе, то прочитав нашу статью блогер Максим Горшенин якобы нашёл подлог при получении статуса отечественной продукции для мониторов у компании Лайтком. И хотя это совсем не так, так как история началась намного раньше даже нашей статьи. И самое главное сейчас находится в кульминации, ну а уж развязка этого сериала будет фееричной. Ну а мы решили немного поспойлерить сюжет следующих серий.
Но для начала расскажем кто мы, и для чего мы. Мы – это очень небольшой аналитический отдел в одной очень большой внедренческой компании. Основная наша задача оценивать риски и выверять параметры будущих контрактов. Так что мы больше юристы, чем технари. Но при этом Вольты от Ваттов отличаем, ну а для особо сложных вопросов знаем у кого можно спросить. И так, в начале 2023 года наша компания планировала поучаствовать в одном крупном тендере на поставку техники в одно учреждение. Под планируемый тендер были подобраны товарные позиции от различных поставщиков, которые должны были быть заранее закуплены для того, чтобы в случае выигрыша тендера мы успеть его исполнить в обозначенные сроки. Среди множества позиций были и пресловутые мониторы. Так как тендер был достаточно крупным, то упреждающая закупка была достаточно рискованной и руководством была поставлена задача не облажаться при выборе. Потому мы попросили/купили/нашли большинство из планируемых к закупке позиций от нескольких поставщиков для анализа/разбора в целях минимизации рисков и отсева откровенного палева. И по результатам анализа мы рекомендовали вариант поставщиков и товарные позиции, которые и были утверждены и закуплены. Обычно по нашим рекомендациям мы не получаем вербальной обратной связи от руководства, поэтому иногда публикуем нашу информацию в профильных конференциях. Это позволяет выложить в открытый доступ найденные нами косяки поставщиков, а также получить отклик непредвзятых людей.

Но после публикации первого ролика Горшенина про мониторы в сентябре 2023 года мы-таки получили 100 децибельный фидбек от начальника. И хотя даже наши топы были уверены в том, что в этой истории торчат уши одного отвергнутого поставщика, ситуация усугублялась тем, что тендер проведён, контракт заключен, продукция заказчику поставлена, а вот закрывающие документы ещё не подписаны. И наш заказчик реально хочет весь фарш провернуть назад. А в этом случае мы попадаем не только на деньги за заранее закупленную продукцию, но и на штрафы по контракту. Потому руководством нам была поставлена новая задача во всём разобраться, по возможности успокоить заказчика и указать на виновных. Чем мы, собственно, и начали заниматься...

Читать далее

Особенности управления реальными устройствами с точки зрения backend разработчика. Часть 1. Разработка на стенде

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

Началось всё с того, что я захотел повысить мощность двигателя автомобиля установкой компрессора.

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

Разработка и особенности управления "реальными" устройствами с позиции человека, который раньше не работал ни с Arduino, ни тем более не управлял какими-то устройствами - показались интересными для написания статьи.

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

Читать далее

KatWalk C2: ч.3: отрезаем провода

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

Итак, мы познакомились с платформой как пользователи. Посмотрели на связь игр с софтом. Софта с платформой. Пришла пора посмотреть как платформа общается со своими сенсорами: нужен ли нам провод до платформы вообще?

Теперь познакомимся с Bluetooth LE и узнаем, почему приходится писать свой приёмник а не просто полагаться на операционную систему.

Кабель? Нет, спасибо. Но как?

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