Tag Archives: STM32

STM32L4xx

STM32L433CC мне везут на оленях из дальних стран. Будут везти еще недели две. Хорошо бы, к Новому году успели бы привезти! А пока конфетки едут, будем пилить шоколадку.

Это немножко не та модель. 433-я будет несколько по-новее по- свежее. На сколько я понял, сравнивая описания, 476-я — это предыдущая моделька. Но тоже с весьма впечатляющими параметрами.

У этой — 476-ой — 100 ног, 1 МБайт флеша и 256 кБайт оперативы. Мне столько не надо. Ну раз уж есть, то куда деваться 😦

Программное обеспечение для работы над ПО для STM43Lxx (под Debian-ом) уже установлено и настроено, тестовые проги компилятся и линкуются. Заливать пока не пробовал, но руки уже чешутся. Сейчас пока продумываю принципиальную схему для своей «игрушки», потом буду запиливать плату, а что там дальше будет — не знаю. Посмотрим! Главное ввязаться в драку, а там разберёмся кого бьют.

Реклама

Вам и не снилось!

Уже вроде бы и не молодой совсем, … но не перестаю удивляться техническому прогрессу.

Вот, например, микроконтроллер — STM32L433.

С виду микросхема как микросхема. Таких у меня в ящике, как тараканов на грязной кухне. Разве-что сами не бегают. А вот по энергопотреблению — аж дух захватывает! ST Microelectronics обещает каких-то 39 мкА на мегагерц тактовой частоты. А ведь я хорошо помню времена, когда Texas Instruments гордилась значениями 280 и 260 мкА/МГц у своих MSP430. Никто так не умел делать микроконтроллеры. А потом были 220 и, казалось, даже недостижимые 180 и 165 мкА/МГц. Куда мир катиться!

Читать далее

Debian-9: устанавливаем тулчейн для работы с STM32

Время течёт незаметно. Некоторые вещи почти не меняются, но другие, наоборот, изменяются сильно или вообще исчезают из употребления. Как оказалось, есть кое-какие отличия при установке программного обеспечения для работы с STM32 в Debian-8x и в Debian-9x.

Установка кросс-компилятора, сопутствующих утилит и библиотек — практически не изменились. Немного изменилась установка stlink. А вот способ получения файлов CMSIS изменился самым серьёзным образом.

В общем, господа программисты-разработчики-электронщики, пожалуйте снова за парту!

Читать далее

1. Реверс-инжиниринг DPS5005

Применительно к модулю DPS5005 определение реверс-инжиниринга можно описать как изучение работы «железа» (аппаратной части STM32) и написание программного обеспечения для управления этим «железом».

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

Блин! С чего начинать?

Читать далее

0. Что не так с DPS5005?

Это — первая статья из цикла, посвященного программируемому модулю питания DPS5005. Автором материала является швед Йохан Канфло (Johan Kanflo). Я всего лишь занимаюсь переводом его труда на русский язык. Материала много, материал интересный. Затрагиваются технологии STM32, Линукс, OpenOCD, Python.

Авторский материал находится тут:
https://johan.kanflo.com/hacking-the-dps5005/

Стиль оригинального текста я отмечаю как очень хороший, чуть ли не классический, рафинированный английский язык. Возможно на этом сказывается отсутствие у автора американских корней. А может быть просто для Йогана английский не является родным языком, поэтому в его тексте практически нет бытового сленга. Американский бульварный сленг меня дико напрягает. Зачастую бывает так, что я порой даже теряюсь в догадках, о чём хотел сказать тот или иной автор.

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

Кроме того, в последнее время по жизни у меня пошли какие-то совершенно дурацкие трудности. И я, честно говоря, нахожусь в непростом положении. Поэтому я на всякий случай предупрежу: хоть я и буду прилагать все усилия, но я не могу обещать, что я смогу осилить перевод до конца.

Ладно. Поехали!

Читать далее

Список наиболее используемых команд gdb

Ниже я привожу не полный список команд отладчика arm-none-eabi-gdb, а описываю только те, которыми постоянно пользуюсь.

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

Вообще базовых команд у отладчика не очень много. Меня больше напрягает разнообразие их модификаций. И по первости, когда я ещё начинал осваивать эту технологию (особенно после IAR-овских мышкотыканий), для меня было довольно-таки непривычно — что-то там набирать «ручками-ручками». Это уж потом, значительно позже я понял преимущество такого подхода. А пока — да, пока я осваивал эту технологию, я испытывал определённый дискомфорт.

Я так думаю, что это не окончательный вариант статьи. Я начал её писать, и понял, что я наверняка буду в неё добавлять и добавлять разные полезные вкусности.

Нучо, пассажиры, понеслась?!

Читать далее

Как я осуществляю отладку микроконтроллерных программ

Задающего этот вопрос товарища интересовало как вообще осуществляется отладка микроконтроллеров STM32 из среды Linux.

В Винде, там — понятно, там сама среда разработки (IAR, KEIL) для этого имеет соответствующие режимы и средства. А вот в Линуксе — как? Тут ведь нет единой среды. Текстовый редактор — отдельно, компилятор — отдельно, программа для заливки кода — отдельно. Всё это хозяйство логически объединяется и управляется с помощью Make-файла. И это у меня в блоге было неоднократно расписано на примерах разного типа микроконтроллеров (AVR, MSP430, STM32). А вот про отладку — я скромно умолчал.

Читать далее

VPNkey-свисток. AT45DB041B

Сегодня почти весь день ушёл на флеш-память AT45DB041B, которую я вынул из VPN-свистка.

Выпаял я чип крайне неаккуратно. Сорвал один пятачок. Корпус у AT45DB041B жутко дурной — выводы очень хлипенькие. Ну, работать как-то надо. Поэтому в качестве гибких выводов я сначала использовал обмоточный провод ПЭВ-0.2 как и с ATMEGA64. Но, как это ни странно, даже диаметр 0.2 мм оказался для пятачков AT45DB041B очень жестким. В процессе работы из восьми пятачков осталось всего три, остальные отлетели. Пришлось использовать ПЭВ-0.08.

img_1241

Поскольку проводки бликуют, то визуально на фотке они кажутся более толстыми. На самом деле они чуть-чуть толще волоса.

Читать далее

Допиливание тулчейна до кондиции

Установить-то тулчейн для ARM-ов/Cortex-ов мы установили, но вот полноценно пользоваться им всё ещё нельзя. Нам понадобится доустановить набор файлов, которые описывают специфику конкретных микроконтроллеров — микроконтроллеры-то все разные, периферия у них отличается. А установленный тулчейн имеет общий набор файлов, которые не затрагивают специфику микроконтроллеров.

Читать далее

Устранение варнингов в stlink-gui

Я предполагаю, что вы уже знакомы с предыдущей публикацией:

Установка тулчейна для работы с микроконтроллерами ARM/Cortex http://wp.me/p1H7g0-1pG

Проблема в том, что при компиляции утилиты stlink-gui.c выскакивают пять ворнингов в строках 598, 599, 840, 853 и 913. Ругань идёт на использование устаревших технологий, которые применять не рекомендуется.

Далее я очень кратно расскажу, что нужно сделать, чтобы исправить ситуацию.

Читать далее