Эмуляция носителя FAT32 на stm32f4


Некоторое время назад возникла данная задача — эмуляция носителя FAT32 на stm32f4.
Её необычность заключается в том, что среди обвязки микроконтроллера вовсе может не быть накопителя, вроде FLASH-контроллера или SD-карты.
В моём случае накопитель был, но правила работы с ним не позволяли разместить файловую систему. В ТЗ, тем не менее, присутствовало требование организовать Mass Storage интерфейс для доступа к данным.
Результатом работы явился модуль, который я озаглавил «emfat», состоящий из одноимённого .h и .c файла.
Модуль независим от платформы. В прилагаемом примере он работает на плате stm32f4discovery.
Функция модуля — отдавать куски файловой системы, которые запросит usb-host, подставляя пользовательские данные, если тот пытается считать некоторый файл.
Итак, кому это может быть полезно и как это работает — читайте далее.


Читать дальше

Работа с SDR-свистками на C# (RTL2832)

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

Меж тем, подключить свисток к программе на C# достаточно просто.


Читать дальше

Стек для W5200 без циклов задержек + STM32F103

Чипы корейской фирмы WIZnet весьма широко известны и популярны. Так же полно где можно скачать драйверы для этих микросхем. Последняя реализация выполнена на W5500 здесь
Однако все драйверы построены по принципу вызова функций, которые весьма надолго стопорят основной цикл программы, мучительно и многократно ожидая события от внешней системы. Особенно «умиляет» ожидание в функции отправки по TCP и выход из нее по Timeout. А ведь это может растянуться не на одну секунду, и даже не 10! (При стандартных настройках — 28 сек). В некоторых случаях, если программа заточена полностью на Ethernet — это не критично, но не в моем случае. Да и вообще, инструкции вида
while(!Внешнее событие);
меня вымораживает напрочь, так как устройство полностью оказывается неработоспособным длительное время.
Мною были написаны несколько модулей, в которых я реализовал стек для W5200 без задержек.

Читать дальше
  • +5
  • 26 декабря 2015, 22:52
  • Mihail
  • 1

Радиомодуль nRF24L01+ быстрый старт.

Попался ко мне в руки вот такой радио модуль nRF24L01+, вот отсюда.



Читать дальше

"Wi-Fi" на модулях NRF24L01

Собственно, от вайфая здесь только частота рабочая. Продолжая вялотекущие изыскания по удобному объединению датчиков и исполнительных устройств в пределах дома, после проводов добрался и до беспроводки.
Городить очередной адаптер для домашнего сервера не хотелось и возник вопрос — а может скрестить nrf24 и сеть проводную/беспроводную вполне стандартную? Т.е. ethernet.


Читать дальше
  • 0
  • 24 декабря 2013, 19:48
  • artko
  • 2

Изготовление печатной платы при помощи пленочного фоторезиста: ORDYL Alpha 350 (первый опыт работы) vs ПНФ-ВЩ

В рамках данной заметки речь пойдет об изготовлении односторонней печатной платы с использованием фоторезиста (ФР) ORDYL Alpha 350 (далее также ORDYL):



Отмечу, что данная заметка – лишь дополнение к основной заметке, акцентирующее внимание на особенностях работы именно с ФР ORDYL. А все основные этапы самого процесса изготовления печатных плат (ПП) на примере отечественного фоторезиста ПНФ-ВЩ подробно рассмотрены в основной заметке. Также к основной заметке довеском идет «бумажный» ее вариант в формате .pdf с кучей картинок, где процесс изготовления плат в домашних условиях освещен еще более детально. Также следует учитывать, что данная заметка – ни в коем случае не рекомендации профессионала по работе с ORDYL, а скорее впечатления о первом опыте работы с данным фоторезистом (ну и примерное описание того, что предстоит для таких же начинающих, как и я).

В заметке будут использоваться ссылки на видео из основной заметки, так что кто их видел – уж не обессудьте, снимать практически точно такие же документальные ленты мне показалось нецелесообразным.



Читать дальше

Программный декодер MP3(+). Переход на платформу STM32F407

В предыдущих статьях цикла был описан проигрыватель на основе STM32F105. MP3 играет без проблем, однако хочется чего-то большего. А ресурсы контроллера — уже на пределе. Поэтому дальнейшее развитие проекта решено перенести на платформу SMT32F4DISCOVERY.

Итак, сегодня мы:


Читать дальше

Обзор Cubieboard2

ARM
Внешний вид Cubieboard2
Заказывалось на алиэкспрессе по цене в 69 долларов, что на 9 долларов дороже первой версии. Посылка пришла меньше, чем за две недели. Как ни странно, все посылки за последний месяц приходят в двухнедельный срок — я приятно удивлен Почтой России, хотя пока и отношусь к феномену настороженно :)
В этой статье я поделюсь первыми впечатлениями от кубика. Расскажу, как установить и настроить дебиан, что может оказаться полезным нелинуксоидам.
В общем, если интересно, велкам под кат.


Читать дальше
  • +15
  • 30 сентября 2013, 13:40
  • lokki

Программный декодер MP3(+MOD) на STM32F10x. Часть 4. Трекерная музыка

Поколению, воспитанному ZX-Спектрумом, посвящается...

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


Своему рождению трекерная музыка обязана компьютеру под названием «Амига». Это целое семейство домашних компьютеров, мегапопулярных «там» в середине 80-х — 90-х годов. Пока мы, после падения железного занавеса, дружно осваивали 8-битные компьютеры (легендарный Спектрум), заграница от ZX уже остыла и вовсю развлекалась взрослым компьютером Амига.


Читать дальше

Программный декодер MP3 на STM32F10x. Часть 3. Извлекаем звуки

Пилу на выходе ЦАП увидели (и при желании услышали), теперь хочется вывести звуки, более приятные для наших ушей. «Музыку давай»! Однако, не стоит торопиться. Контроллеру нужно предоставить поток MP3, который он сможет декодировать. Сегодня мы подключим карту памяти SD, освоим драйвер файловой системы и напоследок — запустим декодер MP3.


Читать дальше