Поклонники продукции Microchip Technology Inc тусуются тут.
Ответить

Re: Унифицированная плата с большим ОЗУ на борту

Чт авг 29, 2019 20:22:31

Стандарт MP3 регламентирует потоки от 8kbit/s до 320kbit/s. Наиболее типичный битрейт — 128kbit/s.

Прошу извинить - забыл еще об одном важном условии.
MP3 и другие виды сжатия с потерями для данного "попугая" не подходят, т.к. кроме человеческого голоса, будет необходимо записывать еще и DTMF-посылки, которые такими видами кодирования будут безнадежно испорчены.

Поэтому если сжимать, то нужно кодировать алгоритмами без потерь, ну или записывать вообще без сжатия.

PS. А впрочем, кто его знает, может и MP3 сойдет. Просто распознавание DTMF-посылок требует их неискаженного сигнала.

Re: Унифицированная плата с большим ОЗУ на борту

Пт авг 30, 2019 07:09:25

распознавание DTMF-посылок требует их неискаженного сигнала.

Еще есть Speex — это свободный кодек для сжатия речевого сигнала, который может использоваться в приложениях «голос-через-интернет» (VoIP).
https://ru.wikipedia.org/wiki/Speex
Speex позволяет изменять степень сжатия сигнала, которая в описании кодека именуется «сложностью». Процесс управления поиском осуществляется с помощью целого числа от 1 до 10. В обычных условиях, уровень шума при сложности 1 на 1-2 дБ выше чем при сложности 10, но загрузка процессора при сложности 10 выше приблизительно в 5 раз. На практике лучшим выбором вероятно будет диапазон чисел от 2 до 4, но для кодирования неречевых сигналов (например DTMF — двухтональный многочастотный набор телефонного номера), могут оказаться полезными и более высокие значения.

Можно пробовать вначале на ПК. Тут например для кодирования используется программа JetAudio с параметром quality=4 (8kbit/s., 8kHz, Mono, Q4):
http://we.easyelectronics.ru/STM32/vosp ... speex.html
тут пример применения Speex на той же STM32F4-Discovery:
https://habr.com/ru/post/146501/

Re: Унифицированная плата с большим ОЗУ на борту

Пт авг 30, 2019 09:08:50

я так думаю, что любую проблему топикстартера решит простенькая Raspberry PI со скриптом на питоне...

Re: Унифицированная плата с большим ОЗУ на борту

Пт авг 30, 2019 11:44:52

Может, и Speex подойдет. Но опять-таки, пока не решен главный вопрос - на чем это все делать?

"Простенькая Raspberry PI" - решит запросто! Только вот в 2-5 мА она никак не уложится...

Re: Унифицированная плата с большим ОЗУ на борту

Пт авг 30, 2019 14:53:31

Но опять-таки, пока не решен главный вопрос - на чем это все делать

ну если дискавери дорого - можно на алике чего ни будь подобрать, типа:
https://ru.aliexpress.com/item/4000029771709.html
на борту SD разъем и SPI память
для аудио в этом микроконтроллере есть 12-бит АЦП и ЦАП - проверено звук хороший

Re: Унифицированная плата с большим ОЗУ на борту

Пт авг 30, 2019 18:41:59

А что такое здесь "дискавери"?

И поглядел Cortex'ы, среди них вроде есть со сверхнизким потреблением типа Cortex-M4F.
Но как бы они не были хороши, к сожалению, они не подходят по напряжению питания (на предыдущей страничке обозначил вольтажи).

Re: Унифицированная плата с большим ОЗУ на борту

Пт авг 30, 2019 19:55:13

про дискавери было тут:
https://www.radiokot.ru/forum/viewtopic ... 9#p3691199
Ну если не стабилизировать питание - громкость плавать будет, наверное.
Напряжение стабильное питания от любых батарей (так же и Li-ion) давно уж решено копеечными DC-DC, типа NCP1400, собственное потребление 60мкА, 3 внешних детали. Схему зарядки Li-ion тоже ж придется делать.

Re: Унифицированная плата с большим ОЗУ на борту

Пт авг 30, 2019 21:15:36

Да, зарядка для Li-ion уже подобрана, STC4054GR или LTC4054ES5-4.2.
Ее прелесть в том, что она аналоговая, поэтому не создает помех, что важно для радиостанции.

Соответственно DC-DC тоже должен не-импульсный, с этим тоже не должно быть проблем, но лучше всего обойтись вообще без него, чтобы не усложнять конструкцию.

Так сколько может потреблять Cortex-M4F при небольшой тактовой частотой?
Даташитов на него всяких полно, но в них этот вопрос обыгрыватся как-то косвенно, так что окончательно не понять.

Re: Унифицированная плата с большим ОЗУ на борту

Сб авг 31, 2019 06:59:07

тогда LDO микропотребляющий стабилизатор типа MCP1700T-3002E, но будем рассеивать "лишнюю" мощность

Для STM32 основных 2 документа - даташит и референс мануал
Потребление из таблицы для STM32F405xx, STM32F407xx:
-- all peripherals enabled, TA = 25 °C, 8 MHz - 5mA
-- all ripherals disabled, TA = 25 °C, 8 MHz - 3mA

по любому любой микроконтроллер в этой задаче надо укладывать в спящий режим, периодически просыпаться, смотреть аудиовход, если есть звук - поработать и спать опять, нет звука - спать.
В STM32 есть встроенные часы микропотребляющие (RTC) - они и могут периодически будить.

з.ы. если даже использовать 5-и вольтовые микроконтроллеры, скорее всего придется применять внешнюю память SPI типа W25QXX или SD карту, а они обычно 3-х вольтовые - все равно стабилизатор нужен

Re: Унифицированная плата с большим ОЗУ на борту

Сб авг 31, 2019 23:45:57

Ok, значит, STM32F405xx, STM32F407xx потребляют не более 5 мА ?
Но это, видимо, на холостом ходу, когда никакие операции не выполняются, а если работает, то в даташитах проскакивали цифры до 200 мА, емнип.

Встроенные часы - любопытно, какая гарантируется их точность хода? Секунд в год, если такое предположение для них уместно.

Re: Унифицированная плата с большим ОЗУ на борту

Вс сен 01, 2019 08:31:38

Не на холостом, а "Typical current consumption in Run mode, code with data processing running from Flash memory or RAM" - см. таблицу в даташите.

При тактовой 168 MHz STM32F405xx, STM32F407xx потребляет 40 mA.

А 5 mA при тактовой 8 MHz это когда вся периферия включена, а ее там много разнообразной и при старте вся выключена, включаем только нужную, и чтоб в глубокий сон положить - надо чтоб вся периферия была выключена.

Во внутренних часах STM32 есть очень гибкая цифровая калибровка - все будет зависеть от часового кварца.

Re: Унифицированная плата с большим ОЗУ на борту

Вс сен 01, 2019 16:05:47

oleg110592, всё это заманчиво, конечно, даже очень! И какую же готовую плату с ними вы можете предложить? ;)
Чтобы была как можно проще по составу и поменьше размерам, без ненужных наворотов (типа индикаторов, USB-разъемов и пр.).
От нее требуются всего 4 (!) контакта - 2 цифровых и 2 аналоговых, и отладочные платы просто пугают своим огромным количеством контактов.

Кстати, почему у Cortex'ов эти платы называются только "отладочными" или "макетными"? Во-всяком случае, других названий не нашел.
В то же время всё ардуиновское семейство является коммерчески закончеными изделиями под конкретные задачи.
И получается, что кортексовые платы огромные с морем контактов, а ардуинки крохотные, вот такие бы найти среди Cortex.

"будет зависеть от часового кварца" - это понятно, но какие-то цифры по точности хода они предоставляют или нет?
Последний раз редактировалось UTF Вс сен 01, 2019 16:19:47, всего редактировалось 4 раз(а).

Re: Унифицированная плата с большим ОЗУ на борту

Вс сен 01, 2019 16:22:53

oleg110592 писал(а):ну если дискавери дорого - можно на алике чего ни будь подобрать, типа:https://ru.aliexpress.com/item/4000029771709.html
Тогда лучше взять STM32F407ZET6. https://ru.aliexpress.com/item/32951809692.html
На плате есть посадочное место под ОЗУ на 1 МБ.
Микросхема стоит недорого, около 1.5$ и насколько помню потребляет немного.

oleg110592 писал(а):При тактовой 168 MHz STM32F405xx, STM32F407xx потребляет 40 mA.
Потребление во многом зависит от того как написана программа и какая периферия задействована ну и от тактовой частоты. Короче от многого. Указанный STM32F407 у меня потреблял пару миллиампер, при тактовой 48 МГц, использовании только одного таймера (другая периферия была отключена) и использовании энергосберегающих функций.

UTF писал(а):Но это, видимо, на холостом ходу, когда никакие операции не выполняются, а если работает, то в даташитах проскакивали цифры до 200 мА, емнип.
В компе процессор и видеокарта потребляют больше и греются сильнее при 100% загрузке, верно? Не возникало мыслей что потребление должно быть на одном уровне? Тогда почему с МК такие мысли возникают? Пишите программу так чтобы во время бездействия ядро находилось в спящем режиме. Используйте только нужную периферию, а не всю и тогда потребление будет минимальным.

UTF писал(а):Так сколько может потреблять Cortex-M4F при небольшой тактовой частотой?Даташитов на него всяких полно, но в них этот вопрос обыгрыватся как-то косвенно, так что окончательно не понять.
Потому что потребление зависит от многих факторов. В даташите есть таблицы для расчетов.

UTF писал(а):И поглядел Cortex'ы, среди них вроде есть со сверхнизким потреблением типа Cortex-M4F.Но как бы они не были хороши, к сожалению, они не подходят по напряжению питания
Не думаю что из распространенных МК какой-то будет полностью соответсвовать вашим условиям. Ставьте стабилизатор напряжения с малым потреблением.

UTF писал(а):Кстати, почему у Cortex'ов эти платы называются только "отладочными" или "макетными"? Во-всяком случае, других названий не нашел.
В то же время всё ардуиновское семейство является коммерчески закончеными изделиями
Может потому что на плате присутствует отладчик. Ардуина аппаратную отладку не поддерживает.

UTF писал(а):И получается, что кортексовые платы огромные с морем контактов, а ардуинки крохотные, вот такие бы найти среди Cortex.
https://ru.aliexpress.com/item/32881417785.html
https://ru.aliexpress.com/item/32326304541.html

Re: Унифицированная плата с большим ОЗУ на борту

Вс сен 01, 2019 16:46:43

https://ru.aliexpress.com/item/32881417785.html
https://ru.aliexpress.com/item/32326304541.html
Просто замечательно, по форм-фактору - самое то! :))
Осталось только как-то прикрутить к ним ОЗУ - это возможно?

Re: Унифицированная плата с большим ОЗУ на борту

Вс сен 01, 2019 16:58:21

UTF писал(а):Осталось только как-то прикрутить к ним ОЗУ - это возможно?
Допустим есть ОЗУ с шиной данных 16 или 32 бита и с шиной адреса равной объему памяти. Посчитайте число выводов МК необходимых для подключения. Не забудьте про выводы типа RW, CE и т. д.
МК допускающие подключение внешних параллельных ОЗУ не зря многовыводные. В добавок наличие аппаратной поддержки памяти упрощает программу и ускоряет работу, а значит меньше нагрузка на процессор и меньше потребление.

Re: Унифицированная плата с большим ОЗУ на борту

Вс сен 01, 2019 17:08:16

Да, действительно, шина получится изрядная, нетехнологично.
Поэтому приходится опять возвращатся к тому, с чего начал - "Унифицированная плата с большим ОЗУ на борту" .... :?

Re: Унифицированная плата с большим ОЗУ на борту

Вс сен 01, 2019 17:19:13

Варианты плат уже предлагали в т. ч. и я. viewtopic.php?p=3692763#p3692763
1 МБ это кончено не 2, но может хватит.

Re: Унифицированная плата с большим ОЗУ на борту

Вс сен 01, 2019 20:08:13

"Унифицированная плата с большим ОЗУ на борту" .... :?

плату скорее всего делать придется или на монтажке.
Еще в тему "плата с большим ОЗУ", как пример - тут Чен использовал ногодрыгом Tiny26+DRAM (такие DRAM раньше были на планках памяти для ПК) и как раз для аудиоэкспериментов:
http://elm-chan.org/works/vp/report.html
На монтажке однако.
Может сейчас на мусорке можно найти DRAM побольше объемом

Re: Унифицированная плата с большим ОЗУ на борту

Вс сен 01, 2019 20:55:27

Варианты плат уже предлагали в т. ч. и я. viewtopic.php?p=3692763#p3692763

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

Может сейчас на мусорке можно найти DRAM побольше объемом

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

Похоже, обсуждение уже немножко пошло по кругу ;) , но оно было очень полезное, спасибо! :beer:
Так что соберусь с мыслями и изложу квинт-эссенцию того, чего бы хотелось найти, как бы ТЗ для поисков.

Re: Унифицированная плата с большим ОЗУ на борту

Вс сен 01, 2019 21:43:25

UTF писал(а):что хорошо бы, мол, чего попроще и поменьше.
Не так много готовых плат с возможностью подключения внешней ОЗУ. Хотите проще и меньше - плату придется изготавливать самому. В любом случае потребуется МК с большим количеством выводов и желательно аппаратной поддержкой внешней ОЗУ.
А что касается размера платы, разве 9 на 7 см это много?
Ответить