Блог им. Catethysis - Страница 2 из 13 - Блог по электронике, STM32, и встроенной разработки.
image Push Pull преобразователь с использованием STMF

Push-Pull преобразователь с использованием STM32F103

Автор: Dzinn Введение Так уж сложилось, что интересная тема в вузе потребовала собрать интересный импульсный блок питания. До этого момента, автор уже много раз собирал однотактные преобразователи: прямоходовые и обратноходовые, на основе микроконтроллеров STM32F031 и STM32F103 и собственных печатных плат. Но тут встал вопрос с двухтактными преобразователями, которые требуют принципиально другого управления, что первоначально поставило …

Push-Pull преобразователь с использованием STM32F103 Читать далее »

image Вставка файлов в прошивку

Вставка файлов в прошивку

Часто бывает нужно использовать в прошивке какой-то файл: картинку, музыку, набор файлов для создания веб-страницы, а иногда и ещё одну прошивку. Есть программы вроде bin2h, но по-моему скачивать программу на один раз неудобно. Поэтому я написал онлайн-сервис для конвертирования бинарных файлов в сишный header. Принцип работы конвертера   Работает всё очень просто. загружаете файл, выбираете …

Вставка файлов в прошивку Читать далее »

mikromedia for STM mcu

Разбор .svd-файлов из IAR (описания регистров STM32)

Для одной задумки с битбэндингом мне потребовался полный список регистров всех модулей STM32. Моя старшая сестра (лень вперёд меня родилась) запретила мне рыскать по даташитам на все контроллеры и выписывать данные о регистрах, поэтому в IARе нашлись файлы вида stm32f100xx.svd. Это xml-файл с кучей инфы про модули STM: модули, их регистры, начальные значения и отдельные биты регистров, …

Разбор .svd-файлов из IAR (описания регистров STM32) Читать далее »

bfabcdec i

BitBanding в ARM Cortex — доступ к отдельным битам регистров

В ядрах ARM Cortex есть удобный способ для доступа к отдельным битам регистров. Каждый бит получает свой виртуальный регистр, в который можно записать 0 или 1. Номера регистров битбэндинга формируются так: 0x42000000 + (регистр – 0x40000000) * 0x20 + номер_бита * 4. Использование битбэндинга Рассмотрим пример. Вам нужно выполнить операцию GPIOC->CRH |= GPIO_CRH_MODE9_0; Эта операция …

BitBanding в ARM Cortex — доступ к отдельным битам регистров Читать далее »

image stmcrc

STM32 → CRC (подсчёт контрольной суммы)

Во всех микроконтроллерах STM32 есть модуль CRC, с помощью которого можно вычислить контрольную сумму любого набора данных. Внутри модуля реализован аппаратный калькулятор контрольной суммы по алгоритму CRC-32, который применяется в том числе в Ethernet, MPEG-2, PNG и POSIX. Любой CRC-калькулятор устроен как сдвиговый регистр из N штук триггеров, охваченный несколькими цепями обратной связи, и его …

STM32 → CRC (подсчёт контрольной суммы) Читать далее »

image Anboxing

Анбоксинг и обзор STM32F746G-Discovery — новой отладочной платы от ST

Итак, у меня есть самая топовая плата STM32F746G-Discovery с процессором новой серии F7, и это — первый в России обзор этой платы. Её пока нет ни у кого больше. Плата приехала в обычном пластмассовом кейсе, как и все другие платы Дискавери. Сбоку есть краткий перечень её фич: Процессор STM32F746NGH6 — TFBGA-216, 216 мегагерц и 462 DMIPS. Самый …

Анбоксинг и обзор STM32F746G-Discovery — новой отладочной платы от ST Читать далее »

image STMElectronics

Блог наладил контакты с ST Microelectronics

28 июля я побывал в московском офисе ST Microelectronics. В первую очередь, конечно, меня интересовали микроконтроллеры STM32, но ещё мы затронули тему MEMS, силовых транзисторов и радиомодулей.

image Consolnyi programmator

Консольный программатор ST-Link_Utility-CLI

В комплекте поставки программатора ST-Link есть не только графическая утилита ST-Link Utility, но и консольная программа ST-LINK_CLI.exe. Она даёт возможность автоматизировать процесс прошивки МК, что крайне полезно если плат много (десятки или сотни). Я написал простейший скрипт. Он принимает путь к файлу прошивки (в параметрах командной строки) и прошивает его в микроконтроллер STM32. После этого …

Консольный программатор ST-Link_Utility-CLI Читать далее »

image RFID reader

RFID-ридер с экранчиком на STM32

Мы уже умеем использовать знакосинтезирующий ЖК-экран WH1602 и RFID-ридер SL-030. Настало время соединить их вместе, и сделать простую и полезную штуку — ридер RFID-карт с экранчиком. У ридера есть специальный выход OUT, на котором появляется ноль всякий раз, когда он обнаруживает карту. Сразу после этого можно послать ему запрос на чтение номера — сделаем это …

RFID-ридер с экранчиком на STM32 Читать далее »

stringintellisense

Функции форматированного ввода/вывода: printf и scanf

Очень многие не знают о существовании в языке C стандартных функций форматированного ввода, и особенно вывода данных. Простейший вывод числа в строчку порой превращается в по-настоящему адовые функции с кромсанием числа на разряды (обычно неэффективно реализованным), выделением памяти под строку и прочими ночными кошмарами. Но всё это реализовано уже очень давно. Страшно сказать, но функция …

Функции форматированного ввода/вывода: printf и scanf Читать далее »

image sjat sjimatel

Сжать сжиматель: codec2 + miniz

Кодек codec2, про который я писал недавно, обладает одной приятной особенностью: он прекрасно сжимается архиватором! Это может показаться странным, но похоже что код на его выходе имеет высокую степень похожести, которая даёт архиватору простор для выделения повторяющихся элементов. Я обнаружил это, когда просто из любопытства попытался сжать полученный в прошлой статье *.c2-файл стандартным линуксовым gzip: voice.c2 …

Сжать сжиматель: codec2 + miniz Читать далее »

Сжатие голоса

Сжатие голоса — гласные звуки

Чем меньше битрейт потока данных, тем дальше можно его передать. Если получится сжать голос до 1-2 кБ/с, можно будет общаться на расстоянии до 25км (с использованием трансивера CC1125). Давайте попробуем разработать голосовой кодек самостоятельно, без использования готовых решений вроде codec2. Как устроен голос? В нём можно выделить несколько элементов: гласные звуки согласные — шумовые — …

Сжатие голоса — гласные звуки Читать далее »

video

Использование codec2 для сжатия звука

Кодек codec2, про который я писал в одном из прошлых постов, предоставляет удобное API для потокового сжатия звука. Я написал простую тестовую программу для демонстрации его использования в реальной жизни. Codec2 использует разные параметры дискретизации для достижения разной степени сжатия — в частности, длину чанка (количество семплов на фрейм) и длину сжатого фрейма. Поэтому сначала …

Использование codec2 для сжатия звука Читать далее »

image STM и экран WH

STM32 и ЖК-экран WH1602

Самый распространённый и наглядный способ вывода информации из микроконтроллера — это ЖК-экран, самый популярный это WH1602 и подобные экраны компании Winstar. Все они построены на одном контроллере HD44780, и отличаются лишь количеством строк и символов в строке, а также типом подсветки.

hpBnyPzrK d MEHrJnVcFBfbPfOXlnftWFT

Бот для telegram на node.js

В мессенджере Telegram появилась возможность создать бота — с его помощью вы можете отвечать на сообщения в телеграме, рассылать уведомления, добавлять к сообщениям картинки и так далее. Пользователи node.js уже подготовили npm-пакет, с которым всё становится ещё проще. Сначала создаём бота. Стучимся к @botfather, говорим ему /newbot, пишем имя бота и его юзернейм (он должен …

Бот для telegram на node.js Читать далее »

Прокрутить наверх