Pull to refresh
4
0.2
Александр @Sun-ami

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

Send message

DIY-программатор ST-Link V2.1

Level of difficultyMedium
Reading time6 min
Views18K

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

Предлагаю вашему вниманию самодельный программатор ST-Link V2.1.

Особенности: интерфейс SWD, функция виртуального COM-порта, поддержка SWO, функция MSC (mass storage class), низкая цена.

Перейти к статье
Total votes 33: ↑33 and ↓0+33
Comments47

USB на регистрах: составные устройства

Reading time13 min
Views8.2K


Еще более низкий уровень (avr-vusb)
USB на регистрах: STM32L1 / STM32F1
USB на регистрах: bulk endpoint на примере Mass Storage
USB на регистрах: interrupt endpoint на примере HID
USB на регистрах: isochronous endpoint на примере Audio device


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

Читать дальше →
Total votes 43: ↑41 and ↓2+39
Comments8

Обзор платы Black Pill V2.0

Level of difficultyEasy
Reading time3 min
Views8.8K

PCB Black Pill V2.0 - эта дешевая плата-малютка которая подходит для прототипирования электронных устройств.

В этом тексте я написал с какой стороны подходить к плате Black Pill V2.0. Перечислил особенности аппаратной реализации и перечислил плюсы и минусы этой платформы.

Читать далее
Total votes 12: ↑11 and ↓1+10
Comments18

21 фича современного C++, которые вам обязательно пригодятся

Reading time10 min
Views32K

Итак, судьба снова свела вас с C++, и вы поражены его возможностями с точки зрения производительности, удобства и выразительности кода. Но вот незадача: вы теряетесь в этом многообразии замечательных новых фич и, как следствие, затрудняетесь сходу определить, что из этого всего вам действительно стоило бы взять на вооружение в своей повседневной работе по написанию кода. Не стоит расстраиваться, в этой статье вашему вниманию будут представлены 21 новая фича современного C++, которые помогут сделать ваш проект лучше, а работу над ним легче.

Сообщество C++ дополняет стандарт чаще, чем Apple выпускает новые iPhone. Благодаря этому C++ теперь больше похож на большого слона, а съесть целого слона за один присест невозможно. Вот почему я решил написать эту статью, чтобы дать вашему путешествию по современному C++ своего рода отправную точку. Моя целевая аудитория здесь — люди, которые переходят со старого (т.е. 98/03) С++ на современный (т.е. 2011 и далее) С++.

Я отобрал ряд фич современного C++ и постарался объяснить их на лаконичных примерах, чтобы вы научились определять места, где их можно использовать.

Читать далее
Total votes 63: ↑58 and ↓5+53
Comments160

Контроллер CH579. Начинаем работу и избавляемся от закрытой сетевой библиотеки

Reading time14 min
Views13K


Сегодняшняя статья – не восклицание: «Смотрите, какой мне красивый проц попался». Это скорее просто упорядочивание накопленных сведений о конкретном процессоре CH579. Вдруг кому пригодится. Ну, и, если через годы мне потребуется, я сам буду восстанавливать знания по этой статье. Просто так получилось, что по проекту Заказчик велел освоить его… Это недорогой микроконтроллер на базе ядра Cortex M0. После освоения Заказчик же и сказал, что мы всё будем делать на китайском клоне STM32. Характеристики же самобытного CH579 он признал недостаточными.

Но с другой стороны… Сегодня эта микросхема стоит 120-150 рублей за штуку на Ali Express. А у неё имеется не только встроенный PHY для десятимегабитного Ethernet, но и всё для работы по BLE. По-моему, не самая плохая цена. Кажется, для Интернета вещей может пригодиться. Но это цены за микросхему. Макетки безобразно дороги.

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

В общем, сегодня мы пробежимся по работе с китайским контроллером CH579. Будет немного практических сведений и немного мемуаров, как пришлось вскрывать библиотеки.
Читать дальше →
Total votes 48: ↑47 and ↓1+46
Comments29

Основа BlueTooth колонки

Level of difficultyEasy
Reading time5 min
Views4.8K

Сейчас очень просто сделать BlueTooth колонку. Буквально из подручных компонентов. Обзор отладочной платы FSC-DB102 Ver: 1.4 от Feasycom на основе модуля FSC-BT1026C V1.2.

Читать далее
Total votes 4: ↑2 and ↓20
Comments0

Stm32 + USB на шаблонах C++. Продолжение'. Делаем MSC

Reading time12 min
Views5.8K

В продолжение темы применения современного C++, а именно шаблонов, в программировании микроконтроллеров рассматриваю реализацию еще одного популярного класса USB - Mass Storage, а также вопрос создания композитного устройства.

Читать далее
Total votes 19: ↑16 and ↓3+13
Comments10

Как начать использовать USB Type-C в своих разработках

Reading time13 min
Views45K

В современных embedded-устройствах используется огромное количество различных разъемов, таких как USB Type-B, miniUSB, microUSB и так далее. Все они отличаются форм-фактором, максимальной пропускной способностью и другими различными характеристиками. Самым верным решением в данной ситуации было бы минимизировать количество используемых разъемов и остановиться на каком-то одном, «едином» для большинства разработок. Наиболее перспективным выглядит использование разъема Type-C. В нем объединены невероятная пропускная способность с высокой мощностью питания. Такие производители, как Apple, Huawei, Sony уже внедряют разъем Type-C в свои разработки, постепенно отказываясь от использования «старых» разъемов. А чем embedded-разработчики хуже?


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

Читать дальше →
Total votes 52: ↑52 and ↓0+52
Comments57

Звуковая карта USB на STM32. Часть 1: Используем I2S-кодек

Reading time6 min
Views12K

С момента публикации материала о реализации составного устройства USB на STM32 прошло полтора года. Данная статья в двух частях будет своеобразным отчётом о проделанной за это время работе.

Напомню, что описанное в предыдущей публикации решение состоит из двухканального звукового устройства USB и виртуального COM-порта. Разрабатывалось составное устройство USB для применения в составе любительской SDR-радиостанции.

Далее речь пойдёт об аппаратно-программной доработке двухканального звукового устройства USB в полноценную звуковую карту USB.
Читать дальше →
Total votes 56: ↑55 and ↓1+54
Comments13

Гальваническое покрытие 3D-печатных моделей

Reading time11 min
Views16K

Картинка youtube-канал Jason Welsh

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

Однако не всегда требуется изготовление сверхмонолитных металлических деталей сложными способами, так как существует гораздо более простой вариант…

Читать дальше →
Total votes 74: ↑72 and ↓2+70
Comments33

Как Data Scientist переехал в Германию в разгар мобилизации

Reading time13 min
Views30K

Под катом я расскажу о своем опыте поиска работы в Германии после начала войны военной операции, а также о переезде после объявления частичной мобилизации.

Разрушим стереотипы по поводу немецкой бюрократии и педантичности.

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

Запрыгнуть на трактор
Total votes 67: ↑51 and ↓16+35
Comments58

Спектрометр из смартфона, картона и осколка DVD-диска: смотрим на спектры лампочек, фонариков, солнца

Reading time14 min
Views26K

Всем привет! Продолжаем придумывать, как можно использовать устаревший смартфон в новом качестве. Эта статья подготовлена по материалам второго сезона видеокурса “Galaxy Upcycling - новая жизнь старого смартфона”. В  уроках первого сезона мы уже сделали 3D-голограмму, проектор (и написали об этом статью на Хабр), микроскоп, часы, гирлянду, а сегодня делаем еще один исследовательский прибор.

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

Читать далее
Total votes 113: ↑113 and ↓0+113
Comments11

Микроконтроллеры по 5 рублей. Программируем микросхемы PADAUK

Reading time16 min
Views55K

Впервые известие о том, что фирма PADAUK Tech продаёт микроконтроллеры по три цента появилось в 2018 году. Эта новость вызвала интерес и обсуждение на форумах, а затем благополучно была забыта (по крайней мере в русскоязычном комьюнити).

В статье расскажу о своём опыте освоения микроконтроллеров PADAUK. Кратко рассмотрим особенности архитектуры, средствах разработки и отладки, посмотрим что нужно учесть перед тем как использовать эти микросхемы в своих проектах. Протестируем микроконтроллер PFC161 на отладочной плате.

Читать далее
Total votes 103: ↑100 and ↓3+97
Comments69

Предельная скорость USB на STM32F103, чем она обусловлена?

Reading time18 min
Views18K
У данной статьи тяжёлая история. Мне надо было сделать USB-устройства, не выполняющие никакой функции, но работающие на максимальной скорости. Это были бы эталоны для проверки некоторых вещей. HS-устройство я сделал на базе ПЛИС и ULPI, загрузив туда «прошивку» на базе проекта Daisho. Для FS-устройства, разумеется, была взята «голубая пилюля». Скорость получалась смешная. Прямо скажем, черепашья скорость.



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

Но неожиданно, с тех пор мне по работе уже трижды приходилось пересказывать эти результаты то Заказчикам, то коллегам. Все они считали, что этот контроллер может больше. И мне приходилось вновь и вновь показывать физическую суть. Поэтому сделать документ было нужно хотя бы чтобы давать его прочесть тем, кто вновь будет говорить, что шина шустрая, контроллер быстрый… Ну, а если и делать документ, то почему бы не оформить его в виде статьи и не выложить на всеобщее обозрение?

Итак, давайте выясним, почему именно STM32F103C8T6 не может прокачать по шине USB данные на скорости 12 мегабит, заняв всю ширину предоставленного канала, и можно ли с этим что-то сделать.
Читать дальше →
Total votes 61: ↑59 and ↓2+57
Comments73

Переводы малых сумм из Европы в Украину

Reading time2 min
Views9.9K

Здравствуйте, члены сообщества.

Задался вопросом, какой из путей перевода наиболее оптимальный.

Если нужно быстро, то paysend. Если нужны наличные евро, то Privatbank Eur.

Участники: Иностранный банк, Monobank Eur (SEPA), Monobank Uah, PrivatBank Eur, Paysend, TransferWise, MoneyGram.

Читать далее
Total votes 20: ↑17 and ↓3+14
Comments30

Разработка защищённого WEB интерфейса для микроконтроллеров

Reading time18 min
Views10K

Цель - разработка компактного, простого, быстрого, защищённого и адаптивного WEB интерфейса для встраиваемого устройства на микроконтроллере. Микроконтроллер на ядре ARM Cortex-M, с размером Flash 1...4 Мегабайта и RAM 200...1000 Кбайт, частота ядра 100-1000... МГц.

Читать далее
Total votes 8: ↑6 and ↓2+4
Comments18

О кэшах в микроконтроллерах ARM

Reading time10 min
Views15K
image Привет!

В предыдущей статье мы для ускорения графики на микроконтроллере в Embox применяли процессорный кэш. При этом мы использовали режим «write-through». Тогда мы писали о некоторых преимуществах и недостатках связанных с «write-through» режимом, но это был лишь беглый обзор. В этой статье я, как и обещал, хочу подробней рассмотреть типы кэшей в ARM микроконтроллерах, а также сравнить их. Конечно, все это будет рассмотрено с точки зрения программиста, и вдаваться в детали работы контроллера памяти в данной статье мы не планируем.
Читать дальше →
Total votes 31: ↑30 and ↓1+29
Comments6

8 оттенков серого, или ZX Spectrum48 за $3

Reading time2 min
Views21K

Прочитав статью Передача аналогового тв сигнала с помощью STM32 решил попробовать нарисовать телевизионный сигнал на дешевой китайской плате stm32f401ccu6 за $2.5 без дополнительного железа.

Когда-то давным-давно
Total votes 47: ↑46 and ↓1+45
Comments86

Клинические испытания на пороге – интервью с Обри де Греем

Reading time6 min
Views9.5K


В ноябре Обри де Грей был в Испании и принял участие в Longevity World Forum в Валенсии, на котором он дал пресс-конференцию, организованную его другом, инженером из MIT Хосе Луисом Кордейру.
Доктор Обри де Грей является научным руководителем (CSO) и основателем SENS Research Foundation. В Мадриде и Валенсии Обри де Грей повторил Tendencias21 одно из своих самых ярких заявлений 2018 года: «В будущем будет много разных лекарств, чтобы обратить вспять старение. Через пять лет многие из них будут работать в ранних клинических испытаниях».
Longevity World Forum – конгресс по долголетию и геномике в Европе. Он является преемником первого конгресса в Испании, International Longevity and Cryopreservation Summit, который прошёл в штаб-квартире CSIC в Мадриде в мае 2017 года, и Обри де Грей также принял в нём участие. В Валенсии его презентации были восприняты с интересом, и Обри де Грей объяснил избранной аудитории, что старение начнёт рассматриваться в качестве медицинской проблемы в ближайшее время. Вместо того, чтобы лечить его симптомы как принято в лечении инфекционных заболеваний, сами причины старения будут вылечены.
Читать дальше →
Total votes 20: ↑12 and ↓8+4
Comments132

Information

Rating
2,132-nd
Location
Potsdam, Brandenburg, Германия
Date of birth
Registered
Activity

Specialization

Embedded Software Engineer
Lead
C++
Object-oriented design
Programming microcontrollers
Real-time operating system
C
STM32
Circuitry
Development of printed circuit board
Atmel AVR
Development management