Обновить
246.21

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

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

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

RP2040. Асинхронный вывод в UART по прерываниям

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

Это статься для «ардуинщиков» на платформе RP2040. В ней расскажу, как программировать асинхронный вывод в UART на C с помощью прерываний. А также затрону тему почему я выбрал для себя PR2040 и мигрировал на него с платформы STM32.

Читать далее

Использование Assembler'a. Фишка 1

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

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

Читать далее

DIY LED Cube: ультимативный гайд для сильных духом. Часть 1. Сборка

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


В народе говорят, что каждый радиолюбитель должен собрать своими руками хотя бы один радиоприёмник, а каждый настоящий DIY-щик — LED Cube. Действительно, какой же ты радиолюбитель, если не собрал ни одного радио? (смайл)

Со светодиодным кубом тема интересная, но имеет множество «нюансов», поэтому я всё время откладывал построение собственного куба. И, как выяснилось, не зря — если бы я только знал во что ввязываюсь, то скорее всего никогда бы не взялся за этот проект.

На деле всё вылилось в просто-таки экзистенциальный вызов и испытание, которое может пройти только человек с узкой задницей стальными нервами, кучей навыков и умений и непреклонной волей к победе — иначе вся эта конструкция уже на сотом светодиоде полетит через всю комнату в мусорное ведро (или просто тупо не включится после подачи питания).

Но зато, если ты преодолел все трудности и создал это маленькое чудо, то можешь наслаждаться как самим девайсом (а это совершенно замечательная штука, особенно в умелых руках), так и осознанием того, что ты сдал экзамен на звание DIY-щика 80-го уровня (смайл).
Читать дальше →

DIY фитнес-трекер: выводим пульс на LED-матрицу, записываем данные IMU на SD и передаем в интернет

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

Ничто так не поднимает настроение, как продолжительная анаэробная тренировка. Но здесь важно не переусердствовать. В нашем возрасте (50+) тренировка может как улучшить самочувствие, так и ухудшить его. Поэтому во время бега я всегда контролирую пульс.

Читать далее

Светодиодная звезда из елочной игрушки

Время на прочтение2 мин
Охват и читатели5.3K
Приветствую, Хабр!



В преддверии Нового года очень хотелось написать статью о какой-нибудь праздничной поделке. Вообще, каждый год я стараюсь сделать что-то новое, чтобы порадовать свою семью. Решил с вами поделиться своей первой разработкой, которая радует нас в праздники уже 14 лет.
Читать дальше →

Виртуальный ПЛК – следующий шаг в цифровой трансформации архитектур автоматизации

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

Статья Дэвида Хамфри (David Humphrey), директора по исследованиям аналитического агентства ARC Europe, в которой рассматривается появление программно-определяемой автоматизации на уровне контроллера и ее влияние на то, как АСУ ТП будут проектироваться, развертываться и управляться в будущем. Речь идет о виртуальных ПЛК (vPLC) – программных средств, эмулирующих функции физических программируемых логических контроллеров.

Читать далее

Как взломать Harley Davidson. Часть 1

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

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

Читать далее

Давайте зажжём светодиод на STM32

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

В интернете куча статей о том, как мигать светодиодом на esp8266. Предлагаем рассмотреть ту же задачу, но на альтернативном микроконтроллере - stm32. 

Перед вами небольшое руководство, в котором описано, как зажечь светодиод с помощью микроконтроллера STM32, настроив контакты GPIO. В посте разберём основы регистров микроконтроллера и как ими манипулировать напрямую. Также здесь вы найдёте пошаговое руководство по написанию кода на ассемблер и на C для управления светодиодом. 

Читать далее

Создаём своё первое USB-устройство

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

Сегодня мы поговорим о создании USB-устройств, подключаемых к компьютеру и распознаваемых им. Этот пост задумывался как ваш первый источник для знакомства с разработкой USB-устройств.

Сначала небольшое предупреждение: я не считаю себя экспертом в USB. Не рассматривайте пост как авторитетное руководство; скорее, это документация к моему небольшому проекту по созданию простейшего USB-устройства E2E. Также в нём приведены ссылки на хорошие материалы, в которых тема рассмотрена более подробно.
Читать дальше →

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

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

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

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

Читать далее

Портативные медицинские приборы из микроконтроллера, датчиков и смартфона

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

Привет, читатель! Вероятность того, что вы пользуетесь устройствами из сферы персональной медицины, весьма высока. Для профессиональных спортсменов есть приборы для контроля состояния сердечно-сосудистой системы во время тренировок, (например, портативный ЭКГ). Для пациентов — медицинские холтеры, которые отслеживают работу сердца. Для всех желающих – фитнес-браслеты на любой вкус и кошелек. А что если собрать такой прибор своими руками? Нюансы, особенности и реализация проектов под катом!
Читать дальше →

Зачем нужна диспетчеризация, или как «приготовить» SCADA на Linux

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

Множество инженерных систем, работающих на поддержание комфортных, или требуемых условий (температура и влажность воздуха, содержание СО2 и примесей, уровень освещенности, температура воды), время от времени выходят из строя, требуют технического обслуживания. Раньше дежурный инженер несколько раз за смену обходил все оборудование и проверял его исправность и режимы работы. Кому-то стало жарко в помещении - потопал менять уставку температуры на установке за тридевять земель. И так каждый раз. Если что-то выходило из строя, то узнавали об этом либо в очередной обход, либо от пострадавших.

Читать далее

От спецификации до производства: как устроена магистратура, где студенты разрабатывают чипы

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

«Несколько лет в университете приносят меньше знаний, чем несколько месяцев практики в реальной компании». Этот аргумент в пользу «ненужности» высшего образования звучит все громче. Но что если результат обучения в магистратуре — не вымученный, написанный «в стол» диплом, а топология микроконтроллера, готовая к печати на фабрике? 

Несколько лет назад МИЭТ и YADRO решили заложить в основу новой магистерской программы проект, который объединит студентов, желающих стать инженерами в сфере микроэлектроники. Александр Силантьев, руководитель лаборатории НИЛ СФБ и старший преподаватель НИУ МИЭТ, лектор Школы синтеза цифровых схем, рассказал про то, как строится программа и какие обязательные этапы проходят будущие инженеры. А еще — про характеристики созданного магистрантами чипа, который скоро вернется с фабрики. 

Читать далее

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

Как поднять Wi-Fi на ESP8266 и не зашквариться об Arduino

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

Как сделать устройство сети Wi-Fi на ESP8266 и не использовать ArduinoIDE? Легко!
Реализация асинхронного ТСР-сервера на модеме ESP8266, с управлением модемом АТ-командами.

Читать далее

Как мы проектировали свой отечественный драйвер IGBT

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

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

В этом году я со своими студентами провел такое проектно-научное исследование в рамках гранта НИУ «МЭИ» на реализацию программы научных исследований «Приоритет 2030: Технологии будущего». Тематикой работы была «Разработка интеллектуального драйвера IGBT на напряжение 3,3 кВ для 3-уровневых инверторов тяговых электроприводов поездов высокоскоростной железнодорожной магистрали Москва - Санкт-Петербург». Проект выполнялся с апреля по октябрь, и в нём были задействованы кроме меня, как руководителя, студенты 4 курса бакалавриата и 1 курса магистратуры.

Данный проект выполнялся в довольно небольшие сроки (полгода действительно срок довольно маленький для полноценного проекта), но, во-первых, у нас уже были определённые наработки по этой теме, а во-вторых, для данного исследования подразумевается продолжение в рамках следующего этапа ПНИ.

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

Читать далее

Отображение веб-контента на дисплее E-Ink

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

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

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

Читать далее

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

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

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

Читать далее

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

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

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

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

Зачем?

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

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

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

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

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

Читать далее

Scratch-box — изучаем основы программирования без покупки ноутбука

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

Здравствуйте! Я большой фанат детского языка программирования Scratch, автор учебников и основатель детской школы codim.online. Внимательно слежу за развитием Scratch и его клонов на этой планете. В прошлом году я помог китайским товарищам локализовать один из клонов Scratch, и перевел на русский язык интерфейс приложения. В знак благодарности они прислали мне свою новейшую разработку, которую я называю Scratch-box. Эта коробочка поднимает web-сервер со Скретчем, на который можно зайти с медиаплеера и прогать на экране телевизора в Scratch, и даже Arduino! Дадада, прогать Arduino на телеке без установки драйверов! Сейчас такое устройство в России находится в единственном экземпляре. Если хотите его раздобыть, то читайте статью до конца.

Читать далее

Рудирон

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

Импортозамещение в образовательной сфере. Отечественный контроллер для образовательной робототехники, IOT, БАС и т.д.

Читать далее

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