Обновить
212.18

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

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

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

Мультиплексор, дешифратор… где великий комбинатор?

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

Когда я создавал первые электрические цепи в 3D-симуляторе, то часто думал: как же происходит переход из «живого мира» бесконечных вариантов значений в «компьютерный мир» нулей, единиц и вообще всего, для чего набор значений и их изменчивость строго ограничены? В этой статье я продолжу осваивать курс по схемотехнике, и, судя по темам лекций, ответ мне откроется. Вперед, к комбинационной логике!

Читать далее

Новости

Я купил игровую консоль и написал для неё… BIOS

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

Осторожно: статья написана максимально простым языком. Так что если вы гик, но не умеете программировать — вам всё равно будет интересно!

Недавно я наткнулся на DIY-игровую консоль за 1.500 рублей — Waveshare GamePi13. Когда гаджет приехал ко мне, я запустил примеры игр от производителя... и оторопел от 5 FPS в Pong — это ж как плохо нужно код писать!

Не желая мириться с этим, я открыл схему устройства, даташит на RP2040 и принялся писать свой собственный BIOS. Если вам интересно узнать, как работают DIY-консоли «изнутри», можно ли запускать внешние программы на микроконтроллерах из RAM, как реализованы различные подсистемы BIOS, а в конце даже написать «Змейку» - добро пожаловать под кат!

Читать далее

Оживляем ESP8266 и ESP32 за 15 минут без программистских заморочек с помощью MicroPython

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

Что, если я скажу, что для прошивки ESP8266/ESP32 не нужна Arduino IDE? Покажу, как с помощью портативных программ за 15 минут вдохнуть жизнь в ваш модуль: прошить MicroPython, помигать светодиодом и даже подключиться к Wi-Fi. Без установки гигабайтных программ и лишних телодвижений.

Прошить и оживить

АрдуЛисп: революционное решение в области образовательной робототехники

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

АрдуЛисп – это революционное решение для олимпиадной и соревновательной образовательной робототехнике, основанное на использовании блочного языка программирования и скриптового языка программирования – ЛИСП.

Все известные решения в области образовательной робототехники в мировой практике имеют возрастной порог...

Читать далее

Ещё одна отладочная плата и тесты К1921ВГ015

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

Где‑то полгода назад я в комментариях писал что «через пару недель» протестирую К1921ВГ015 и выложу результаты. Пара недель прошли, кроме меня никто этим не занялся, так что исправляем ситуацию как можем! В программе: мотивация создать свою собственную отладочную плату, краткий обзор существующих и тесты АЦП с подручным оборудованием.

Читать далее

Электрическая УАЗ Буханка на Телеуправлении

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

Инженерное образование имеет такой специфический бонус, как дает его обладателю возможность делать всяческие безделушки чисто ради fun-на. Это особенно актуально длинными зимними вечерами.

В этом тексте я расскажу, как сделать игрушечную модель УАЗ Буханки с дистанционным управлением по инфракрасному лучу.

Читать далее

Некрокомпиляция или как собрать OpenWatcom для QNX4 под Debian 12 и прикрутить его к Eclipse

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

Меня зовут Ярослав Бомбов и я более 30 лет занимаюсь созданием АСУТП. Как вы понимаете жизненные циклы в АСУТП штука длительная и иногда возникают задачи что-то добавить в систему работающую уже лет 20. И именно такой случай произошел - возникла необходимость изменить код в контроллере под управлением QNX4.

Можно конечно было поговорить на тему "вы в каком морге этого Франкенштейна получали туда и обращайтесь", но при ближайшем рассмотрении оказалось что код мой собственный ;). Самое простое решение открыть mcedit, что-то поправить и собрать в самом QNX4, но для начала надо вспомнить разобраться как все работает, а это удобней делать в современных IDE. Поиск бинарников OpenWatcom (OW) под линукс дал ровно два архива которые в моей системе не заработали. Поэтому решено действовать по принципу - лучше день потерять, потом за пять минут долететь.

Полетели

CAN шина на Audio-Jack (или новая жизнь Audio-Jack)

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

При разработке электроники часто приходится работать с CAN шиной. Это не только автомобилестроение, но и электронная начинка для лифтов, поездов, кораблей, космических аппаратов и прочего тоже использует CAN шину для общения между агрегатами.

При прототипировании CAN совместимых устройств часто надо собирать и разбирать различные конфигурации CAN шин. Два устройства, 4 устройства, 8 устройств, потом снова 3 и прочее.

В этом тексте я представил инструкцию по сборке harness-a для CAN или RS-485.

Читать далее

Корпоративные стандарты автоматизации технологических процессов

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

Если посмотреть на ведущие промышленные компании — от машиностроения до нефтегаза, — становится ясно: многие из них давно и плотно занимаются разработкой собственных, внутренних стандартов по АСУТП. Это не просто свод общих правил. Речь идет о детальных регламентах, которые покрывают все: от проектирования архитектуры и выбора ПО до конкретных требований к интерфейсам операторов, промышленной безопасности и дальнейшему сопровождению систем.

Главная особенность этих документов в том, что они — не сухая адаптация норм вроде ГОСТ или МЭК. Это, скорее, живые и практические руководства, которые инженеры компаний буквально «выстрадали» на собственном опыте. Они рождаются из реальных проектов, учебы на ошибках и направлены на решение конкретных задач, а не на соответствие абстрактным нормативам.

Что это дает на практике? Эффект от внедрения таких стандартов — вполне измерим. Это не просто «для галочки». Компании получают реальные результаты:

Читать далее

Платотерапия: как я собрал свои Arduino UNO и Digispark с нуля

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

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

Эта статья — рассказ о том, как я собрал клоны Arduino UNO и Digispark, сделал три разные платы расширения своими руками и протестировал две из них, купленные в магазине.

Попробуем сделать Arduino UNO DIY — свой ответ Arduino UNO Q.

Читать далее

Обзор микросхемы DRV8870 (или Драйвер H-моста)

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

DRV8870 - это старая простая микросхема управления коллекторным DC-мотором с токами в обмотках до 3.5 Ампер от компании Texas Instruments. По сути это драйвер H-моста. Причем H-мост встроен прямо внутрь корпуса самой микросхемы. Это полностью интегрированное решение.

В этом тексте я произвел обзор микросхемы DRV8870. Посмотрим с какой стороны следует подходить к микросхеме DRV8870.

Читать далее

LORAmaster Lite: хорошо упакованная Лора (мечта электронщика Егора)

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

Сегодня мы поговорим об одной интересной платке — LORAmaster Lite, которая представляет собой «микро-ядерную» платформу для построения батарейных и стационарных LoRa нод (датчиков, актуаторов и т. п. устройств).

«Микро-ядерность» LORAmaster Lite заключается в том, что на этой миниатюрной платке, сравнимой по размером с популярной Pro Mini, содержится всё для построения законченного устройства — управляющий микроконтроллер, LoRa модуль на SX1262, аппаратный Watchdog, крипточип ATSHA204A, подсистема управления питанием датчиков и многое другое.

Но самое главное, на этой же платке находится чип DC/DC преобразователя Texas Instruments TPS63802, который позволяет «прямо из коробки» как угодно запитывать устройство — можно от сетевого источника питания, можно от пары батареек AA или AAA, а можно и от литиевого аккумулятора 3,7 В.

Другими словами — подцепил батарею, подключил датчики, залил прошивку (благо контроллер совместим с Pro Mini) — и батарейная долгоживущая LoRa нода готова.

Не об этом ли мы мечтали всё это время?

Читать далее

Модуль обработки и коммутации данных, с внешними управляющими устройствами по RS-485 на STM32

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

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

В данной статье будет рассматриваться разработка коммутатора, для приема, обработки и передачи потока данных от GNSS-приемника и энкодера, осуществляться передача ведущему устройству будет по интерфейсу RS-485.

Интерфейс RS-485 - представляет собой промышленный стандарт физического уровня передачи данных, широко применяемый в распределенных системах управления, телеметрии и автоматизации, его ключевая особенность - использование дифференциального сигнала, что обеспечивает высокую помехоустойчивость и надежность передачи данных на значительные расстояния (до 1200 метров).

Исходный сигнал разделяется на два синхронных сигнала, передаются они по двум проводникам - линия А и линия В образующих витую пару.

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

Если разность положительная (+200 мВ) - логический 0;

Если разность отрицательная (-200 мВ) - логическая 1.

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

Читать далее

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

Как я свой макропад за 600₽ собирал

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

Собрал свой макропад за 600₽. Делюсь, как за пару вечеров создал программируемую мини-клавиатуру с 10 механическими кнопками, удобной эргономикой и RGB-подсветкой. Без дорогих плат, с 3D-печатным корпусом и Raspberry Pi Pico.

Читать далее

Как я сделал робота — что хотел и что получилось. Часть 2

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

Привет! На связи Михаил Дроздов, младший разработчик в Selectel. Заканчиваю рассказ о создании собственного робота. Предыдущая часть была целиком посвящена железу: выбору компонентов, особенностям проектирования и изготовления корпуса, распайке электроники.

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

Читать далее

Embox поддерживает новый российский микроконтроллер от компании Миландр с архитектурой RISC-V

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

Недавно мы добавили в открытую ОСРВ Embox поддержку российского микроконтроллера на RISC-V, о чем я и хочу рассказать в данной статье. Речь пойдет о микроконтроллере MDR1206FI от компании «Миландр».

Читать далее

Работа с RISC-V контроллерами на примере CH32V303. Часть 9. Многозадачность

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

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

Читать далее

Программист embedded лезет в FPGA (часть 3, чего не может ардуинка)

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

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

На плате, которую я использую для примера (QMTECH Cyclone 10 Starter Kit), есть разъём HDMI, что недвусмысленно намекает нам, что к нему можно подключить дисплей соответствующим кабелем. На самом деле, разъём – это не обязательно. А вот наличие на чипе выходов, которые можно сконфигурировать как lvds, очень сильно приветствуется. Возможно, получится и без этого (просто 2 выхода, формируемые из одного инверсией), но я не пробовал, потому промолчу.

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

Мы будем работать на более низком уровне. Делать на коленке прозрачные электроды, и наклеивать поляризационные плёнки, конечно, не надо. Будем формировать видео-сигнал.

Если вы думаете, что в 2025-м году ЭЛТ мониторы и телевизоры остались в далёком прошлом, то у меня для вас есть новость: Формат сигналов внутри проводов всё ещё напоминает сигнал, который идёт на одну из сеток большой вакуумной лампы, которой, по сути и является кинескоп.

Читать далее

LuckFox pico — одноплатник в форм факторе Arduino

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

В данной статье я хочу рассказать об одной интересной плате LackFox pico. Она представляет собой нечто среднее между микроконтроллером и полноценным компьютером. На плате установлен полноценный ARM-процессор от Rockchip, и на ней запускается полноценный Linux. При этом по габаритам и цене данная плата сопоставима с микроконтроллерами. Её цена начинается от 600р за младшую версию.

Читать далее

Как я сделал робота — что хотел и что получилось. Часть 1

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

Привет! На связи Михаил Дроздов, младший разработчик в Selectel. Все началось с простого вопроса о том, как устроен мир микроконтроллеров. Возникло желание не просто прочитать теорию об Arduino или подключить пару датчиков к плате. Хотелось понять саму суть — архитектуру, принципы работы и реальные возможности подобных систем.

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

Выбор пал на создание робота-универсала. Такое устройство — целый мир механики, 3D‑печати, электроники, низкоуровневой разработки, веба и даже ИИ. Идея — создать машину, которая не просто перемещается в пространстве, а по-настоящему видит и понимает свое окружение.

Можно ли представить лучшую возможность поработать с различными типами датчиков и исполнительных механизмов? Также впереди ждали интересные задачи…

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

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