Некоторое время назад мне в очередной раз потребовался USB-Serial адаптер. И не просто адаптер c RX/TX, а чтобы еще присутствовали управляющие сигналы. И не один UART, а несколько. И еще желательно, в виде одного композитного устройства, чтобы все это хозяйство не занимало больше одного USB-порта. Так и началась эта история...
Рубрика «stm32» - 8
Полноценный трехпортовый USB-Serial адаптер на STM32 Blue Pill (STM32F103C8T6)
2020-11-27 в 10:26, admin, рубрики: arm-none-eabi, CDC, CMSIS, composite device, open source, Open Source Software, serial port, stm32, stm32f103, uart, usb, программирование микроконтроллеровКлоны STM32: хороший, плохой, злой
2020-11-09 в 9:15, admin, рубрики: diy или сделай сам, stm32, Блог компании RUVDS.com, микроконтроллер, подделка микроконтроллеров, программирование микроконтроллеров, Производство и разработка электроники, производство электроники, схемотехникаПосле того, как некий продукт становится популярным, у компаний, которые могли бы его создать, но не сделали этого, неизбежно возникает желание прокатиться на волне его популярности. Это — лишь вопрос времени. Именно этот феномен в ответе за то, что было создано так много ужасных детских игрушек и компьютерных игр. Проявляется он и в мире электроники. Поэтому неудивительным должно выглядеть то, что произошло с чрезвычайно успешной серией микроконтроллеров (Microcontroller Unit, MCU) STMicroelectronics, основанных на ARM. На долю этих контроллеров выпало немалое количество имитаций, клонов и явных подделок.
Пожалуй, подделки — это главная проблема. Дело в том, что эти чипы прикидываются, судя по их маркировке, настоящими STM32. Но при этом характеристики их совместимости с другими компонентами могут очень сильно отличаться от характеристик настоящих чипов. Если говорить об имитациях и клонах, которые маркированы по-своему, то тут ситуация выглядит немного более запутанной. Ведь вполне можно представить себе, что компании, производящие такие микроконтроллеры, по чистой случайности, спроектировали такие чипы, которые, и в плане распиновки, и в плане регистров, полностью совместимы с крайне популярными микросхемами-конкурентами. Это, пожалуй, было бы самой искренней формой подхалимажа.
Поговорим о том, какие существуют подделки и имитации STM32, и о том, каково это — с чем-то подобным столкнуться.
Читать полностью »
Как получить 9В-12В от зарядного с Quick Charge (на примере STM32)
2020-11-08 в 15:11, admin, рубрики: diy или сделай сам, hal, qc trigger, quick charge, quick charge микроконтроллер, stm32, STM32F103C8T6, быстрая зарядка, программирование микроконтроллеров, Разработка под Arduino, схемотехника, Электроника для начинающихЧем может быть полезна быстрая зарядка
С увеличением ёмкости аккумуляторов телефонов потребовалось увеличить и мощность зарядных устройств, чтобы достичь маленького времени зарядки, для чего и нужно было увеличивать выходную мощность: напряжение, ток. Таким образом зарядные с Quick Charge 3.0 кроме 5 В могут выдавать 9В/12В/20В +возможность регулировки с шагом 0.2 В (до 12 В).
Ввиду распространенности ЗУ с этой технологией появляется интерес использовать их для получения повышенного напряжения без дополнительных преобразователей.
О кэшах в микроконтроллерах ARM
2020-11-04 в 15:23, admin, рубрики: armv7-m, cache, embox, mcu, open source, stm32, Блог компании Embox, программирование микроконтроллеров, Процессоры, системное программирование Привет!
В предыдущей статье мы для ускорения графики на микроконтроллере в Embox применяли процессорный кэш. При этом мы использовали режим «write-through». Тогда мы писали о некоторых преимуществах и недостатках связанных с «write-through» режимом, но это был лишь беглый обзор. В этой статье я, как и обещал, хочу подробней рассмотреть типы кэшей в ARM микроконтроллерах, а также сравнить их. Конечно, все это будет рассмотрено с точки зрения программиста, и вдаваться в детали работы контроллера памяти в данной статье мы не планируем.
Читать полностью »
8 оттенков серого, или ZX Spectrum48 за $3
2020-10-17 в 0:23, admin, рубрики: analog tv, C, diy или сделай сам, stm32, stm32f401, Z80, zx spectrum, видеотехника, Мониторы и ТВ, старое железоПрочитав статью Передача аналогового тв сигнала с помощью STM32 решил попробовать нарисовать телевизионный сигнал на дешевой китайской плате stm32f401ccu6 за $2.5 без дополнительного железа.

<cut text="Когда-то давным-давно" />
STM32F3xx + FreeRTOS. Modbus RTU с аппаратным RS485 и CRC без таймеров и семафоров
2020-10-11 в 14:44, admin, рубрики: modbus rtu, stm32, программирование микроконтроллеровВсем привет! Относительно недавно, закончив ВУЗ, я попал в небольшую компанию, которая занималась разработкой электроники. Одна из первых задач с которой я столкнулся — необходимость в реализации Modbus RTU Slave протокола с использованием STM32. С грехом пополам я её тогда написал, однако этот протокол начал встречаться мне из проекта в проект и я решил написать зарефакторить и оптимизировать либу с использованием FreeRTOS.
Читать полностью »
Передача аналогового тв сигнала с помощью STM32
2020-10-03 в 19:01, admin, рубрики: stm32, микроконтроллер, программирование микроконтроллеров, радиосвязьПомните как некто cnlohr запустил передачу ТВ сигнала на ESP8266?
Недавно мне попалось к просмотру это видео, стало интересно как это возможно и выяснил что автор видео разогнал частоту I2S до телевизионного диапазона, а затем с помощью DMA генерировал AM сигнал. Мне захотелось повторить это, но или прошивка криво собирается, или ESP модуль оказался неподходящий. Запустить передачу телесигнала не получалось.
Затем я вспомнил что STM32 умеет выводить свой тактовый сигнал на один из пинов. Читать полностью »
ИК датчик движения на STM32
2020-09-18 в 18:24, admin, рубрики: ir, stm32, Беспроводные технологии, датчик, движения, диод, ИК, Интернет вещей, инфракрасный, Программирование, программирование микроконтроллеров, Производство и разработка электроники, Разработка для интернета вещей, Си, таймерПриветствую, в этой статье вы узнаете: как сделать датчик движения с использованием ИК диода и ИК приемника на STM32 с минимальным использованием ядра (т.е. с максимальной загрузкой периферии) на регистрах, используя таймеры.

В статье максимально подробно рассмотрены вопросы программирования. Материал рассчитан на начальный уровень подготовки, но также и подойдет для более опытных. Часть подробностей скрыта под спойлерами для снижения загруженности статьи.
Оглавление:
Продолжение очередной статьи: STM32 для начинающих. Интерфейсы
2020-09-12 в 23:13, admin, рубрики: c++, IAR, stm32, программирование микроконтроллеровПредыдущая публикация: «Очередная статья — STM32 для начинающих»
И как этим пользоваться?
В предыдущей статье создали класс для работы с портами ввода-вывода, проверили. И что дальше? Зачем это все запихивать в класс?
Возьмем для примера простенький опрос кнопок:

Для этой схемы в простейшем случае опрос будет выглядеть так:
int GetKey()
{
volatile uint32_t* addr = reinterpret_cast<uint32_t*>(GPIOA_IDR);
uint32_t ret_val = *addr;
return ret_val & 0x0F;
}
Очередная статья: STM32 для начинающих
2020-09-12 в 16:30, admin, рубрики: c++, IAR, stm32, программирование микроконтроллеровВсех приветствую!
Это моя первая статья на Хабре, поэтому прошу не кидаться тяжелыми предметами. Заранее спасибо.
Начнем с предыстории. Когда-то мне пришлось перейти на микроконтроллеры ARM фирмы ST. Это было связано с тем, что PIC и AVR уже не хватало и хотелось новых приключений. Из доступного в хлебобулочных магазинах и большого количества статей о «быстром старте» выбор пал именно на STM32F100.
Я привык работать в IAR. Да, есть другие IDE, но мне хватает возможности IAR: относительно удобный редактор, не плохой отладчик и достаточно удобно работать с регистрами во время отладки.
Когда я попытался сделать первый проект меня ждало разочарование — CMSIS! Кому как, но для меня это было (и остается) ужасом: много буков, длинные и для меня не понятные структуры. Вникать во все это было не интересно. Попытался скомпилировать пару примеров и понял — это не наш метод.
Читать полностью »