В прошлый раз мы научились создавать в STM32CubeMX новый проект, настраивать тактовый генератор, таймер и порт ввода-вывода, и немного помигали светодиодом. Сегодня мы освоим цифро-аналоговый преобразователь и научимся работать с ним через DMA. В результате у нас должен получиться простой генератор прямого синтеза (Direct digital synthesizer, DDS).
Читать полностью »
Рубрика «stm32» - 25
Начинаем работать в STM32CubeMX. Часть 2
2016-10-17 в 1:07, admin, рубрики: dac, DMA, stm32, микроконтроллеры, прерывание, программирование микроконтроллеров, таймерНачинаем работать в STM32CubeMX. Часть 1
2016-09-26 в 1:59, admin, рубрики: stm32, микроконтроллеры, прерывание, программирование микроконтроллеров, таймерПриветствую аудиторию хабра, и хочу предложить вашему вниманию первый пост, посвященный использованию среды разработки STM32CubeMX, написанный для тех, кто хочет начать изучение STM32 «с нуля».
Я планировал написать несколько постов, рассмотрев несколько периферийных устройств микроконтроллера и их конфигурирование в STM32CubeMX. Но эти посты не заменяют фирменной документации и не претендуют на полноту. В них будут рассмотрены только некоторые, наиболее, на мой взгляд, типичные, примеры использования периферии STM32.
Надеюсь, кому-то этот материал будет полезен.
Читать полностью »
Работа с датчиками тока на эффекте Холла: ACS758
2016-09-15 в 6:46, admin, рубрики: ACS758, stm32, датчик тока, Производство и разработка электроники, Электроника для начинающих, эффект Холла, метки: Датчик токаВсем привет!
Пожалуй, стоит представиться немного — я обычный инженер-схемотехник, который интересуется также программированием и некоторыми другими областями электроники: ЦОС, ПЛИС, радиосвязь и некоторые другие. В последнее время с головой погрузился в SDR-приемники. Первую свою статью (надеюсь, не последнюю) я сначала хотел посвятить какой-то более серьезной теме, но для многих она станет лишь чтивом и не принесет пользы. Поэтому тема выбрана узкоспециализированная и исключительно прикладная. Также хочу отметить, что, наверное, все статьи и вопросы в них будут рассматриваться больше со стороны схемотехника, а не программиста или кого-либо еще. Ну что же — поехали!
Не так давно у меня заказывали проектирование «Система мониторинга энергоснабжения жилого дома», заказчик занимается строительством загородных домов, так что кто-то из вас, возможно, даже уже видел мое устройство. Данный девайс измерял токи потребления на каждой вводной фазе и напряжение, попутно пересылая данные по радиоканалу уже установленной системе «Умный дом» + умел вырубать пускатель на вводе в дом. Но разговор сегодня пойдет не о нем, а о его небольшой, но очень важной составляющей — датчике тока. И как вы уже поняли из названия статьи, это будут «бесконтактные» датчики тока от компании Allegro — ACS758-100.
________________________________________________________________________________________________________________________
Даташит, на датчик о котором я буду рассказывать, можно посмотреть тут. Как несложно догадаться, цифра «100» в конце маркировки — это предельный ток, который датчик может измерить. Скажу честно — есть у меня сомнения по этому поводу, мне кажется, выводы просто не выдержат 200А долговременно, хотя для измерения пускового тока вполне подойдет. В моем устройстве датчик на 100А без проблем пропускает через себя постоянно не менее 35А + бывают пики потребления до 60А.
Рисунок 1 — Внешний вид датчика ACS758-100(50/200)
Читать полностью »
STM32 USB Mass Storage Bootloader
2016-09-05 в 10:46, admin, рубрики: bootloader, stm32, stm32f103, usb msd, программирование микроконтроллеровИзвестно, что софт можно дописывать вечно, а всякого рода недочёты на плате полностью исправляются ревизии так к третьей. И если с железом уже ничего не поделаешь, то для обновления микропрограмм придумали неплохой способ обхода ограничений пространства и времени — Bootloader.
Загрузчик — это удобно и полезно, не правда ли? А если загрузчик собственной реализации, то это еще более удобно, полезно и гибко и не стабильно. Ну и конечно же, очень круто!
Так же, это прекрасная возможность углубиться и изучить особенности используемой вычислительной машины — в нашем случае микроконтроллера STM32 с ядром ARM Cortex-M3.
На самом деле, загрузчик — это проще, чем кажется на первый взгляд. В доказательство, под cut'ом соберём свой собственный USB Mass Storage Bootloader!
Портирование FreeModbus под STM32. Версия от Динара
2016-08-11 в 16:06, admin, рубрики: freemodbus, IAR, stm32, stmqube, программирование микроконтроллеровДоброго времени суток, любители и профессионалы программирования на микроконтроллерах. Эта статья посвящена портированию библиотеки freemodbus на STM32F100 (тот, что в discovery vl). Да, на habrahabr уже есть подобная статья, но мне она кажется не самой удачной. Буду использовать Modbus RTU в режиме slave. Для успешного портирования библиотеки freemodbus на платформу без операционной системы, необходимо выполнить три шага:
1. прописать файл port.h
2. настроить таймер
3. настроить usart
Итак, план составлен — пора за работу.
Читать полностью »
STM32F405: прошить 400кб за 10 секунд или быстрый UART-загрузчик заточенный под USB-UART, размером менее 4 килобайт
2016-07-28 в 12:43, admin, рубрики: bootloader, stm32, STM32F4, uart, обновление прошивки, программирование микроконтроллеров, Разработка систем связи, системное программированиеC утилитой для ПК и платой — программатором,
с использованием SPL,
с полноценной системой команд и проверкой CRC32,
с гарантией доставки и переотправки сбойной или потерянной команды,
с проверками ошибок, отладочными сообщениями и урезанным printf'ом.
Оптимизирован под современные USB-UART преобразователи и потоковую передачу.
История одного диплома или как сделать шаробота
2016-07-26 в 14:36, admin, рубрики: maxon, stm32, линейно-квадратичный регулятор, Разработка робототехники, теория управления, уравнения Аппеля, шаробот, метки: линейно-квадратичный регулятор, уравнения Аппеля, шароботИстория этого проекта начинается в 2014 году, когда я учился на 4-м курсе в ведущем техническом вузе России на кафедре «Робототехнические системы». В это время я уже начал задумываться над темой диплома и искал проект, который был бы интересен мне, и при этом в нем присутствовала некоторая новизна. И вот однажды, увидев видео шаробота Rezero, я захотел попробовать повторить успех. Кому интересно, что из этого получилось — прошу под кат.
Два в одном: USB хост и составное USB устройство
2016-07-20 в 14:38, admin, рубрики: c++, eclipse, libopencm3, libusbhost, open source, stm32, STM32F4, usb, usb msd, Блог компании Третий пин, программирование микроконтроллеровНе так давно, была опубликована статья «Пастильда — открытый аппаратный менеджер паролей». Так как данный проект является открытым, то мы решили, что будет интересно, если мы будем писать небольшие заметки о процессе проектирования, о задачах, которые перед нами стоят и о трудностях, с которыми мы сталкиваемся.
Основная суть Пастильды заключается в том, что она является своеобразным переходником между клавиатурой и ПК. Таким образом, она должна уметь:
- быть USB хостом для клавиатуры, которая к ней подключается,
- быть клавиатурой для ПК, чтобы либо перенаправлять сообщения от реальной клавиатуры, либо самой быть клавиатурой,
- быть дисковым накопителем, чтобы можно было редактировать базу данных паролей в удобном для человека виде.
Данный функционал является скелетом нашего проекта, поэтому первая заметка будет посвящена именно ему.
Читать полностью »
STM32F103C8T6 — делаем осциллограф. Часть 3
2016-07-12 в 12:15, admin, рубрики: diy или сделай сам, stm32, stm32f103, осциллограф, программирование микроконтроллеров, Электроника для начинающихДешевая STM32 плата + Arduino IDE
2016-07-07 в 23:23, admin, рубрики: arduino, Arduino IDE, arduino nano, bootloader, diy или сделай сам, MrПоделкинЦ, stm32, stm32f103, STM32F103C8T6, загрузчик, прошивка, Электроника для начинающих, метки: MrПоделкинЦ
Хотите прокачать ваши Arduino проекты? Заставить их работать быстрее, измерения и регулировку сделать точнее, ну и добавить баги, с новыми девайсами они неизбежны. Тогда эта статья для Вас.
Arduino тема всё больше захватывает умы человечества, но рано или поздно мы встречаемся с тем, что нам чего-то не хватает, например бюджета/размеров/пиновпортов/разрядности/производительности… Как говорил один мудрый человек — «Кто хочет, тот ищет возможности, кто не хочет — ищет причины».
Хорошие люди это понимают, и потихоньку начинают приобщать STM32 к ардуино теме, ибо восьмибитные AVR микроконтроллеры, на которых основано немало ардуино плат, не всегда могут справиться с поставленными задачами.
Краткое изложение данной статьи в видео формате: