Information
- Rating
- 81-st
- Location
- Москва, Москва и Московская обл., Россия
- Registered
- Activity
Specialization
Инженер встраиваемых систем, DevOps-инженер
Старший
Git
Bash
CI/CD
C
Встраиваемая система
Программирование микроконтроллеров
Разработка программного обеспечения
Алгоритмы и структуры данных
Системное программирование
Разработка драйверов
Микрофон тоже может быть sigma delta .
https://habr.com/ru/articles/765896/
Просто это еще называют PDM интерфейс.
Вы наверное удивитесь, но для построения диктофона можно вполне себе отказаться и от аудиокодека и от ADC.
Просто соединить микроконтроллер и PDM микрофон MP23DB01HPTR по SPI.
Данные с микрофона получать по SPI. Будет поступать однобитный поток с Sigma Delta модулятора, который встроен в микрофон. И этот поток как есть сохранять на SD карту.
https://habr.com/ru/articles/765896/
Далее уже на PC отдельной утилитой преобразовывать однобитный PDM в PCM при помощи CIC фильтра. Можно будет задать любое разрешение и качество выходного звука на выбор в зависимости от конфигурации CIC фильтра.
У микроконтроллеров много SPI трансиверов. Можно подключить столько микрофонов сколько есть SPI модулей у микроконтроллера.
Компания Nuvoton Technology известна тем, что другой её аудиокодек NAU88C22 был заложен в культовый SDR-приёмник Малахит DSP3.
https://malahiteam.com/product/priemnik-malahit-dsp3/
Спасибо.
Будучи студентом в 2015 году писал прошивку для софт процессора MicroBlaze, который был сконфигурирован на основе Xilinx FPGA Spartan 6, где происходила передача радарных данных по UDP через LwIP на скорости 470 MBit/s.
Почему бы не подключить mems микрофон по spi и не писать голый pdm? Потом уже на PC трансформировать sigma Delta модуляцию в pcm семплы.
Я вам больше скажу. Можно не просто воспроизводить записанные звуковые дорожки. Можно записывать и воспроизводить звук одновременно. Причем на одном единственном микроконтроллере.
Вот даже есть отдельная методичка про технологию Audio LoopBack.
Обработка звука в реальном времени (или Full Duplex I2S на STM32)
https://habr.com/ru/articles/1058052/
Да. Так и есть.
Да. Именно так.
Напишите пожалуйста про устройство автоматической коробки переключения передач (АКПП).
ST-link программатор уверенно побеждает на голосовании предпочтений разработчиков.
Кто бы мог подумать...
А какой у Вас отладочный клиент? Какой отладочный сервер задействован в связке с St link?
Еще один плюс DWT. Высокая надежность.
DWT хорош тем, что он тикает даже внутри обработчика прерываний, когда прерывания вообще запрещены глобально.
В то время SysTick таймер в прерывании как раз только увеличивает счетчик миллисекунд.
Какие еще есть?
Нормально так, использовать IDE PlatformIO из недружественного государства для программирования российского микроконтроллера K1948BK018 на казённом режимном заводе Микрон.
В России и так делают хорошие диктофоны семейства EDIC.
https://www.telesys.ru/Products/EM
Можно просто взять и заказать себе готовое устройство.
Я считал, что отладочные платы от компании DevEBox очень широко известны и не нуждаются в доп. рекламе. Тем не менее вот документация на учебно-тренировочную плату
DevEBox STM32F4XX M
https://stm32-base.org/boards/STM32F407VGT6-STM32F4XX-M.html
Вот её схемотехника
https://github.com/aabzel/trunk/blob/main/docs/boards/DevEBox_V3_0/sch/original-schematic-STM32F407VGT6_STM32F4XX_M.pdf
На её основе и был смонтирован прототип.
Я добавил индикацию для диктофона. LED всегда мигает с частотой 1Hz. Как метроном.
При этом:
1) Если происходит запись звука, то LED мигает с заполнением 10%.
2) Если происходит воспроизведение звука, то LED мигает с заполнением 80%.
3) Если ничего не происходит, то LED мигает с заполнением 50%.
Мигание в 1 Hz весьма удобно, так как позволяет глядя на прибор посчитать в уме длительность записи или воспроизведения.
У меня есть отдельная тестировочная сборка
dev_ebox_stm32f4x_play_rec_gcc_m
как раз специльно для демонстрации возможности записи звука с последующим воспроизведением.
Вот тут можно скачать бинари.
https://github.com/aabzel/Artifacts/tree/main/dev_ebox_stm32f4x_play_rec_gcc_m
Достаточно в UART CLI выполнить команду
rec_play_start N
и прибор начнет записывать N секунд, а записав тут же воспроизведет записанное в наушники.
Log выполнения команды rec_play_start
Где это включается?
Вот интересное кино...
И кто в РФ делает эти самые сложные проекты?
И что это за проекты такие?