Обновить
128K+

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

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

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

Как изменить ситуацию, что вузы готовят не кадры для промышленности, а следущее поколение преподавателей

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

Провели мероприятие в Калифорнийском политехническом государственном университете в Сан-Луис-Обиспо. Докладчиками были: ваш покорный слуга Юрий Панчул, два американских инженера проектирующие чип по ускорению ИИ, и китайский студент из Университета Калифорнии в Санта-Барбаре. Идея мероприятия возникла, когда я встретился с выпускником Cal Poly Стенли на конференции самоделкиных OpenSause, и он поведал мне то, что я уже знал из собеседований американских студентов: они изучают в вузе карты Карно, доходят до конечного автомата светофора, отдельно постигают классический 5-стадийный конвейер MIPS (ныне RISC-V), а потом идут на собеседование на работу, и - хоба! - выясняется что их карты Карно никого в индустрии не интересуют, а вопросы идут про сопряжение конвейера обработки данных (не процессорного!) и FIFO, чего они не проходили.

Привожу ниже мой отчет на английском.

Читать далее

WebREPL и uPyLoader: Выбираем способ беспроводного управления ESP

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

Практикуемся создавать и загружать постоянные инструкции в виде файлов, которые ESP устройство (микроконтроллер) будет выполнять автономно с помощью:

 uPyLoader — файловый менеджер и редактор в одном флаконе, как блокнот с закладками: и файлы видно, и поправить можно.

 WebREPL — удаленное управление по Wi-Fi без проводов, как пульт управления по воздуху: управляй устройством, изменяй, корректируй и добавляй инструкции (файлы), вообщем, проводи отладку без подключения кабеля.

Разберем:

 - Как работать с файлами на устройстве с помощью uPyLoader.

- Как настроить беспроводное управление через WebREPL.

- Как настроить Wi-Fi в двух режимах: точка доступа и клиент.

 Только практические шаги с объяснением, которые вы сможете повторить.

Приступаем

Разработка электропривода. Часть 1. Вводная

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

Статья начинает цикл материалов по разработке электроприводов, подходов и технических нюансов, которые используются при их проектировании. Охватим большую часть силовой электроники для электропривода, промышленные сети (PROFINET, EtherCAT, CC-Link, EtherNet/IP (CIP) и др.), энкодеры (абсолютные: Hiperface DSL, SSI, BISS и др., а также инкрементные). Датчиковое и бездатчиковое векторное ориентированное управление  (sensored/sensorless FOC - EKF/MRAS/SMO/HFI), рассмотрим электродвигатели PMSM (СДПМ), ACIM (асинхронный ЭД), BLDC (бесколлекторный двигатель постоянного тока) и другие их виды. 

Читать далее

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

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

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

Читать далее

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

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

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

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

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

Читать далее

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

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

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

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

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

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

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

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

Читать далее

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

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

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

Читать далее

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

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

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

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

Читать далее

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

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

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

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

Полетели

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

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

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

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

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

Читать далее

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

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

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

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

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

Читать далее

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

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

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

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

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

Читать далее

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

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

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

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

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

Читать далее

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

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

Сегодня мы поговорим об одной интересной платке — 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 мин
Охват и читатели9.6K

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

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

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

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

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

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

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

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

Читать далее

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

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

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

Читать далее

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

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

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

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

Читать далее

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

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

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

Читать далее

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

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

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

Читать далее