Рубрика «stm32f103» - 3

image

Мне хотелось бы верить, что хотя бы половина читателей может расшифровать хотя бы половину названия статьи :) Кто не в курсе — поясню. Мое устройство должно реализовывать сразу две USB функции:

  • Mass Storage Device (он же Mass Storage Class — MSC). Я хочу, чтобы мой девайс прикидывался обычной флешкой и отдавал файлики с данными, которые лежат на SD карте.
  • Другая функция это виртуальный COM порт (он же в терминологии USB называется Communication Device Class — CDC). Через этот канал у меня идет всякий дебажный вывод, который удобно смотреть обычным терминалом.

В большинстве примеров по работе с USB реализуется только один тип устройства — флешка, мышка, кастомное HID устройство или виртуальный COM порт. А вот найти вменяемое объяснение как реализовать хотя бы две функции одновременно оказалось не так просто. В своей статье я хотел бы восполнить этот пробел.

Я буду описывать создание композитного USB устройства на базе микроконтроллера STM32, но сам подход будет также применим и для других микроконтроллеров. В статье я детально разберу каждый из классов по отдельности, так и принцип построения композитных устройств. Но обо все по порядку.

Итак, поехали!
Читать полностью »

Подключение oled дисплея с контроллером SSD1306 к STM32 по I2C - 1Многие, наверное, знают о таких маленьких дешёвых (меньше $3) OLED дисплеях, которые можно найти в огромном ассортименте на ebay или aliexpress. В интернете существует множество различных статей о том, как подключать эти дисплеи к Arduino и другим МК, но для STM32f10x затруднительно найти даже библиотеку. Поэтому я решил написать эту статью.

Данный дисплей имеет разрешение 128х64 пиксела и контроллер SSD1306 и подклчается к микроконтроллеру по интерфейсу I2C.
Читать полностью »

Посмотрев на то, что Geektimes выкладываются описания китайских «поливалок» комнатных растений, я решил поделиться и своим опытом. Пусть и несколько поздновато (работает «поливалка» у меня уже 2.5 года).

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

Посмотрев на то, что есть на e-bay и в магазинах, я решил (по разным причинам), что проще сделать самому из завалявшейся платы с LCD сенсорным экраном.

Полив растений по расписанию (STM32F103) - 1
Читать полностью »

Постановка задачи

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

  • Симрейсинг
  • Программирование микроконтроллеров
  • Разводка и изготовление печатных плат
  • Сборка электроники
  • Изготовление корпусов для электроники на 3D принтере
  • Куда девать собранные платы

Все картинки и рассказ что из этого вышло — под катом. Много рассуждений и совсем мало нет кода.
Читать полностью »

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

Загрузчик — это удобно и полезно, не правда ли? А если загрузчик собственной реализации, то это еще более удобно, полезно и гибко и не стабильно. Ну и конечно же, очень круто!

Так же, это прекрасная возможность углубиться и изучить особенности используемой вычислительной машины — в нашем случае микроконтроллера STM32 с ядром ARM Cortex-M3.

На самом деле, загрузчик — это проще, чем кажется на первый взгляд. В доказательство, под cut'ом соберём свой собственный USB Mass Storage Bootloader!

imageЧитать полностью »

Третья часть (первая и вторая) про то как я делаю осциллограф из отладочной платы ценой менее $3. Демонстрационное видео работы:

А описание некоторых ключевых особенностей под катом.

Читать полностью »

image

Хотите прокачать ваши Arduino проекты? Заставить их работать быстрее, измерения и регулировку сделать точнее, ну и добавить баги, с новыми девайсами они неизбежны. Тогда эта статья для Вас.

Arduino тема всё больше захватывает умы человечества, но рано или поздно мы встречаемся с тем, что нам чего-то не хватает, например бюджета/размеров/пиновпортов/разрядности/производительности… Как говорил один мудрый человек — «Кто хочет, тот ищет возможности, кто не хочет — ищет причины».

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

Краткое изложение данной статьи в видео формате:


Читать полностью »

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

Зима в северных широтах — время, когда у FPV пилота появляется время, чтобы отдохнуть от гонок и постоянных поломок, взять в руки паяльник, и смастерить что-нибудь полезное для своего хобби.

Раз уж на улице летать холодно, то будем тренировать навыки пилотирования на симуляторах. Для этого нужно подключить свою радиоаппаратуру к компьютеру через специальный адаптер, который преобразует PPM сигнал с пульта в сигналы USB-джойстика, понятные компу. Такие адаптеры, конечно не редкость и стоят копейки в китайских магазинах. Однако доставки заказа ждать долго, да и будет ли он работать так как мы ожидали? Например у меня есть вот такой:

FPV гонки на симуляторе (делаем USB джойстик из пульта радиоуправления) - 1

Он по каким-то, еще не постигнутым мною причинам, наотрез отказывается адекватно калиброваться в симуляторе FPV Freerider, хотя прекрасно работает в Phoenix RC и Aerofly RC 7. А FPV Freerider вполне неплохо передает физику акро-полета на гоночном коптере, да к тому же имеет бесплатный демо-режим.
Читать полностью »

О радостях и трудностях первого знакомства с STM32 после AVR. Как я реализовывал простейшую задачу — передачу данных на ПК.
STM32F103C8T6 — первые шаги. Начинаем делать осциллограф - 1
Читать полностью »


https://ajax.googleapis.com/ajax/libs/jquery/3.4.1/jquery.min.js