Метка «stm32»

в 16:15, , рубрики: Песочница, метки: , ,

На Geektimes уже были статьи, посвященные подключению светодиодов WS2812 к микроконтроллерам семейства STM32. Вот например эта. В ней достаточно подробно описан протокол общения с WS2812 и способ реализации этого протокола при помощи таймера и прямого доступа к памяти. Однако, те, кто, не побоюсь этого слова, программирует при помощи STM32Cube, наверняка задаются вопросом: «Какие же галки мне ставить, чтобы так получилось?» Попробуем им помочь.
Читать полностью »

The Beatsqueezer. MIDI audio sampler prototype - 1

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

The Beatsqueezer — это аудио сэмплер, основанный на STM32F407 168MHz микроконтроллере. Так-же были использованы CS4334 ЦАП, AD8532 операционный усилитель, Samsung K9F1G08U0M 1 Гбит NAND Flash память (с возможностью замены на K9F8G08U0M 8 Гбит).
Читать полностью »

Введение

MIDI-контроллер — устройство, преобразующее определённый физический процесс в набор цифровых команд формата MIDI. Физическим процессом может являться всё, что угодно — от нажатия пальцем на клавишу до поворота ручки громкости. Полученный поток команд передаётся посредством протокола MIDI другим устройствам — компьютеру, аппаратным семплерам, синтезаторам или внешним секвенсорам и расшифровывается там определённым образом. Наиболее распространённым типом MIDI-контроллера является MIDI-клавиатура — электронный аналог клавиатуры фортепиано. Также существует множество других типов контроллеров, среди которых — электронные ударные установки.
Читать полностью »

Программируем микроконтроллеры stm32 при помощи QtCreator
Как-то так незаметно получилось, что программист, который разрабатывал нам прошивку для микроконтроллера, стал банально не успевать и в некоторые моменты я начинал перехватывать инициативу и самостоятельно браться за исправление ошибок.
Разработка велась в среде IAR, и многие согласятся со мной, что по сравнению с разработкой в QtCreator'е это боль и страдание.
В какой-то момент мы решили, что быстрее нанять нового программиста и вместе с ним заново переписать прошивку контроллера stm32, так, как я к этому моменту уже немного сам смыслил в их программировании и к тому же обнаружил, что QtCreator умеет отладку на голом железе (плагин BareMetal), я решил принять в этом активное участие.
Здесь я хочу поделиться шаблоном проекта для stm32f407 от Terra Electronica и рассказать об особенностях его настройки.
Читать полностью »

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

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

С чего все начиналось

Изначально мы занимались разработкой программного обеспечения для чип-тюнинга. Одна из основных задач которого — считать прошивку из ЭБУ (электронный блок управления двигателем) и записать ее обратно. Понятное дело, что для этих целей нужно каким-то образом связать компьютер и ЭБУ при помощи адаптера. Когда раньше подавляющее количество ЭБУ использовало простейший способ приема-передачи данных, достаточно было использовать простейший адаптер на транзисторах или специализированной микросхеме. Однако на сегодняшний день большинство автомобилей для «общения» своих компонентов со внешней средой используют CAN шину. Адаптер для CAN шины на транзисторах уже не соберешь, и тут однозначно нужен процессор, который будет управлять всем по определенной программе.
Так возникла первая проблема — как побороть CAN шину. Для того, чтобы не изобретать велосипед выбор сделан на использовании готового адаптера, который работает по стандарту J2534. Для тех, кто не в курсе, стандарт J2534 это стандарт, описывающий аппаратную и программную части устройства, с помощью которого можно произвести подключение к ЭБУ посредством компьютера. Разработали его американцы. Основной причиной его разработки стало законодательное закрепление возможности обновление прошивки ЭБУ не специализированным дилерским сервисом, а любым желающим. Собственно, если каждый желающий может обновить прошивку на своем телефоне, то почему он не может это сделать со своим автомобилем.

Самый доступный импортный аналог стоит в районе 200 долл. США. Как впоследствии оказалось, два одинаковых устройства, удовлетворяющие стандарту J2534, могут работать по-разному с одним и тем же программным обеспечением. Поэтому изначально пришлось привязаться к конкретному производителю и его устройству.
Читать полностью »

Микроконтроллеры семейств AVR, MSP430, STM32 и мои субъективные впечатления

Здравствуйте, обитатели Хабра. В этой статье хочу поделится своими впечатлениями об опыте программирования микроконтроллеров семейств AVR, MSP430, STM32.

Введение

В бытность мою студентом занимался я прикладным программированием на Delphi и горя не знал, но и счастья не ведал. Пока как то раз не посетил меня на четвертом курсе предмет «Микропроцессорные контроллеры». Ну и пошло, поехало.
Читать полностью »

Данная статья является первой в планируемом цикле статей по изучению программирования микроконтроллеров. Изучая различные материалы я отметил, что практически все они начинаются с того, что новичку предлагается скачать (или использовать идущую со средой разработки) библиотеку для работы с периферийными устройствами и использовать ее для написания своей первой программы (обычно мигание светодиодом).

Меня это сильно удивило. Если верить данным статьям, для программирования не обязательно даже читать документацию к программируемому контроллеру. Меня же учили премудростям «железного программирования» совершенно иначе.

В этой статье, путь от фразы «Да, я хочу попробовать!» до радостного подмигивания светодиода, будет значительно длиннее чем у других авторов. Я постараюсь раскрыть аспекты программирования микроконтроллеров, которые прячутся за использованием библиотечных функций и готовых примеров.
Если вы намерены серьезно изучать программирование микроконтроллеров данная статья для вас. Возможно, она может заинтересовать и тех, кто вдоволь наигрался с Arduino и хочет получить в свои руки все аппаратные возможности железа.
Читать полностью »

image

Приветствую читатели!

Не так давно мне в руки попала отладочная плата STM32F429I-DISCO на базе контроллера STM32F429ZI.
Пожалуй главной ее отличительно особенностью является помимо достаточно производительного процессора Cortex M4 — интегрированный экран на 2,4'' дюйма, которого вполне хватает для многих экспериментов.
Первым делом я естественно начал искать по нему документацию и примеры. Хорошая документация вместе с примерами нашлась прямо на сайта st.com, но естественно хотелось большего, туториалов и прочего. То чего так не хватает начинающему программисту под ARM. Но детальный поиск не дал каких то больших результатов. Поэтому пришлось собирать информацию по крохам, анализировать, пересматривать и тестировать ее.

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

Тем кому это может показаться интересным, добро пожаловать под кат.
Читать полностью »

Два месяца назад мы остановились на том, что rusEfi стал полнофункциональным блоком управления — вот только аппаратная часть напоминала взрыв на макаронной фабрике. Напомню, rusEfi — это автомобильный блок управления с открытым кодом и железом на платформе stm32.

Мы не сидели сложа руки и сфокусировались как раз на аппаратной стороне вопроса: задача была сделать шаг вперёд по железу, и я думаю прогресс на лицо:

Было no name v3:
image

Стало Франкенштейт 0.1:
image
Читать полностью »

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