Автор |
Сообщение |
|
Дата: 03 Окт 2013 03:55:46
#
Помнится давно ещё просили здесь у меня схему эхо репитера, вот дошли руки криво-косо, но нарисовать схему, собрать в один zip прошивку, исходный код, схему, печатку и некоторые пояснения.
Собственно вдруг кому нужен будет цифровой диктофон или эхо репитер, который можно собрать "на скорую руку" и "из подручных компонентов", по этому выкладываю.
Скачать файл можно на страничке:
Эхо репитер на ATmega8 + SD карта 1...2Гб - схема, прошивка, исходный код, печатная плата
(выложено на 27kb.ru, потому, что в случае нахождения ошибок или доработок мне там проще выложить обновление).
Вопросы можно задать здесь или там. |
|
Дата: 04 Окт 2013 09:55:18
#
размер карточки прописан в коде?
сильно геморно его изменить?
|
Реклама Google |
|
|
Дата: 04 Окт 2013 12:30:02
#
Спасиб за исходники :)
|
|
Дата: 04 Окт 2013 13:31:42
#
Shador, размер карточки прописан в коде как максимальная величина для обращения к секторам, в исходниках это:
// 0 ... 3006250 sector (1.6 Gb rec/play area)
#define MAXIMAL_SECTOR_NUMBER 3006250
Если надо, могу перекомпилить, например под 128Мб карточку.
Если карточка больше объёма, то будет работать, просто часть её секторов никогда не будут использоваться.
В принципе учитывая что в наше время 2Гб карточки стоят ровно столько же, сколько и любого меньшего объёма, то мероприятие по смене максимального сектора имеет смысл.
UB4PAK, пожалуйста.
Код конечно говнарский, но работает и с комментариями.
Думаю будет неплохим подспорьем для желающих собрать какое ни будь устройство подобного плана.
|
|
Дата: 04 Окт 2013 15:25:48
#
azm.su
Ага понятно. да есть просто у меня карточки старые от 64 до 512.
Кстати sdhc будут работать или только SD? или не важно.
|
|
Дата: 04 Окт 2013 16:49:01
#
Флешка сдохнет быстро, они сейчас все дешёвые на 3000 перезаписей, а распределения износа между ячейками там скорее всего нет, такое только в SSD.
|
|
Дата: 04 Окт 2013 19:52:15
#
Ну 3000 это не соответсвует действительности. У меня диктофон в телефоне рабочем пришет все входящие на микроSD уже 4 года :) автоматом по кругу. От того что сдохнет битик - главное что бы не в фате, ничо страшного не произойдет.. а в попугае тем более
|
|
Дата: 04 Окт 2013 22:30:07 · Поправил: azm.su (04 Окт 2013 22:30:36)
#
Sergey4565, вы правы, флешки сейчас дрянные, секторы 10 перезаписей выдерживают, дальше начинает деградировать скорость записи, причём скорость падает существенно, потом ещё 2-3 тыс перезаписей и начинают секторы вылетать.
Для того, что бы эхо подольше жило сделано так: указатель записи только увеличивается, доходя до верхней границы возвращается в 0, то есть каждая новая запись начинается с нового сектора, что бы равномерно убивать все сектора карточки.
Эта эха работает уже 2-й год на одном из АРК в Новосибирске, где довольно плотный радиообмен, пока карточка 2Гб жива.
Кстати, не нужно путать работу карточки в SPI в её родном, в SPI от у неё нет никаких вкусных функций для записи, да и насколько я выяснил в SPI они совсем убого начинают работать.
Shador смотрим табличку "Сравнение технических особенностей MMC и SD вариантов карт" на страничке:
http://ru.wikipedia.org/wiki/Secure_Digital
Везде где в строке "Режим SPI" написано "Да" должно работать. |
|
Дата: 06 Окт 2013 02:18:35
#
Эхо репитер на ATmega8 + SD карта - версия 2
Отличие этой версии от предыдущей:
1)
Мега разогнана по тактовой частоте на всю дурнину (в коде искать строку: "OSCCAL=255;" )
2)
Алгоритм перепилен так что бы меньше терзать карточку (полнее забивать сектора полезными данными).
3)
Схема доработана, второй операционник в корпусе MC33202 использован как ФНЧ финальный.
Плата под новую схему не доработана!
В файле несколько сборок под объёмы карточек от 120Мб до 1,6Гб сборки разложены по папочкам.
Папки с не чётными номерами содержат прошивки, расчитанные на принятие сигнала открытия шумодава в виде лог 0 чётные номера на принятие сигнала открытия шумодава в виде лог 1.
Файл с прошивками и обновлённой схемой, доступен на 27kb.ru в той же теме (ссылка в первом сообщении).
---
Это не вчера возникший вариант, он опробовал и пол года успешно трудится, просто всё скомпоновать, дорисовать схему руки не доходили, по этому упаковывал в архив устаревший вариант, а сегодня (выходной) выбрал время, дорисовал схему и упаковал свежие файлы.
|
|
Дата: 08 Окт 2013 00:36:18
#
Спасибо большое, начал соберать.
Давно искал что то похожее. Думал и сам написать но микроконтроллеры только изучаю и не потянул бы.
По поводу операционника, туда походу любой можно всунуть я так понимаю? Или выбор именно этого чемто оправдан?
|
|
Дата: 08 Окт 2013 08:46:13
#
Shador требования к операционнику:
Low Voltage, Single Supply Operation (+1.8 V and Ground to +12 V and Ground)
Главное не забывать, что в схеме питается он как и микроконтроллер и карточка от 3.3 вольта.
Если запитать микроконтроллер от 5 вольт и налепить резисторов согласующих напряжения контроллера и карточки, то требования к операционнику становятся менее суровыми.
В эту сторону смотреть схему: http://obrazki.elektroda.net/25_1157891033.JPG
Топик откуда она: http://www.elektroda.pl/rtvforum/topic581744.html
Можно операционник взять любой, только тогда на AREF подать 1/2 от 3.3 вольта а на ADC6 1/2 от того, что напряжения, что на AREF и через конденсатор сигнал размахом вольта 3.
Если размах сигнала и так около 1 вольт или более, то можно обойтись вообще без операционника.
Например размах у нас 1 вольт (+0.5 и -0.5), тогда просто задать опорное напряжение ADC равное 1 вольт (делителем на 2 резисторах на ногу 20 (AREF)), на 19 ногу (ADC6) соответственно подаём половину напряжения AREF и через конденсатор сигнал звука.
В прошивке нужно естественно будет поправить от чего подсосана опора для ADC, сейчас V+ контроллера.
Ну и если реализуем ФНЧ на выходе, то его естественно можно выполнить на любом операционнике и запитать скажем прямо от +12 вольт.
В общем вариантов решений масса.
Что бы посчитать К_усиления на схеме написал формулы, что бы посчитать ФНЧ, приложил к версии 2 папку с HTML калькуляторами, работают в любом браузере, можно для ФНЧ посчитать на 9кгц среза под любые номиналы деталей которые есть в наличии. |
|
Дата: 08 Окт 2013 09:55:11 · Поправил: allamat (08 Окт 2013 14:08:43)
#
Продается игрушка "говорящий хомяк". Интересно, если использовать начинку этой игрушки. Никто не пробовал ?
|
|
Дата: 08 Окт 2013 12:23:19
#
azm.su
Огромное спасибо... по поводу операционника вопрос отпал... нашел такие в закромах.
Необратил сразу внимание что контроллер от 3.3в. Теперь все понятно.
|
|
Дата: 10 Окт 2013 19:04:28
#
Shador, в любом случае вопрос про операционник важный, может ещё кому ответы будут полезны.
Я тоже использовал операционник "подручный" который подошел по параметрам.
Цоколёвка у операционников стандартная, так что с небольшими доработками платы (более высокое питание сразу на операционник подать) можно использовать почти любой, а так почти любой, готовый работать от низкого питания.
3.3 вольта меня самого не восторгает, но и городить резисторы для согласования 5 -> 3.3 ещё помоему печальнее.
allamat, даже не думал в сторону применения игрушек, но думаю, что если игрушка может воспроизводить то, что запишет, то можно и на её базе сделать, правда не понятно как игрушка будет сигнализировать управлению, что у неё вышел лимит времени записи. Да и в любом случае на каком то микроконтроллере придётся городить управление (таймоуты, задержку между нажатием PTT и вывода звука, задержку на закрывание шумодава, что бы при кратковременном QSB продолжать писать).
|
|
Дата: 11 Окт 2013 00:19:57 · Поправил: jammer (11 Окт 2013 00:24:31)
#
azm.su , хотел спросить , а в чем заключается функция операционника, буферный усилок просто , или из за задранного усиления - компрессор? Мне почему то показалось, что можно обойтись без него, если вывести сигнал НЧ с УМ станции?
|
|
Дата: 11 Окт 2013 11:15:25
#
|
|
Дата: 11 Окт 2013 13:20:25
#
jammer, можно и без операционника обойтись, подать на ногу ADC6 0.5 напряжения на AREF и туда же, в ADC6 вдуть НЧ через конденсатор.
Но это если уровень НЧ ощутимо больше, чем шумы по линии AREF и возможные наводки от линий работы с карточкой, то есть его размах порядка 1 вольта.
Выше я уже об этом писал - http://lpd.radioscanner.ru/topic26125.html#msg290512
Компрессор на ОУ так просто не сделать, а ограничитель будет только портить и без того испорченный звук.
Я ставил опыты с компрессированием и другой обработкой звука уже в алгоритме, то есть в цифре, но в публичную версию исходников я не стал включать этот код, что бы окончательно не путать код для желающих разобраться и перепилить под свои нужды.
Кому интересно, могут потренироваться в программировании.
Алгоритм компрессора вообще крайне простая штука, причём не в момент записи, а в момент воспроизведения, так как в этот момент мы знает то, что ни один простой компрессор не знает, а хотел бы - каким будет уровень звука в будущем (скажем через 1 секунду от текущего момента, который воспроизводится).
Немного смекалки (сдвиги вместо деления и умножения) и получаются весьма хорошие алгоритмы. Так же можно реализовать и включение репы по тональному сигналу и многие другие вещи, немного о фильтрах я пишу на личном сайте, например: http://electronics-and-mechanics.azm.su/page57.html
Брать звук "с динамика" искренне считаю дурной практикой, потому что: уровень выхода будет зависеть от положения ручки громкости, а в станциях обычно выключатель питания подвешен именно на ручку громкости, а значит, каждый раз выключая/включая питание есть шанс или "недокрутить" или что хуже "перекрутить" уровень и не заметить что так вышло.
Обычно я делаю так:
снимаю сигнал НЧ до регулятора громкости (с его ноги, на которой уровень максимален) -> вешаю внутрь станции операционник который усиливает этот уровень в 10 ... 20 раз -> вывожу из станции экранированным кабелем.
В устройстве делителем понижаю его в 10 раз -> использую.
То есть в шланге соединяющем станцию с чем то снаружи действует уровень 1...2 вольта НЧ, причём низкоомный выход и вход гарантируют что любые наводки будут ничтожны по сравнению с этим уровнем.
С вводом звука в станцию действую аналогично - гоняю по шлангам 1...2 вольта звука, а уже в станции низкоомный (Ом 100) делитель 1:100 или более.
Если снимать звук в станции до ключа шумодава, то при работе эхо с задержкой на закрытие шумодава (защита от обрыва при QSB) появляется интересный эффект - сигнал сваливается в QSB (уходит в шумы) но не рвётся, от чего мозгу слушателя проще ориентироваться (мозг то привык что голос может уходить в шумы, даже на улице, голосо собеседника) и так сообщения разбираются гораздо лучше. Собственно даже приятнее случашть: "мамшШш шмыла шШшшаму" чем если: "ма ыла му" при исходном: "мама мыла раму". |
|
Дата: 11 Окт 2013 13:28:12 · Поправил: azm.su (11 Окт 2013 13:28:33)
#
FRIST, круть!
Снимаю шляпу!
Когда то тоже хотел запилить на тиньке13, а потом они усосались из продажи в близлежащем магазине, да и прикинул, что может потребоваться расширение функционала, например включение репы по тональнику, а в тиньку сложно положить алгоритм цифрового фильтра в плюс к алгоритму репы.
|
|
Дата: 11 Окт 2013 19:01:33
#
FRIST
А можно поподробней по программированию этого девайса?
1. в тиньку ничего не заливается. Просто после изготовления все настраивается на родном софте и потом заливается родным софтом?
2. программатор. судя по всему нужен K-line программатор с уровнями 3.3В? У меня есть автомобильный (когда то делал) но помоему он на 5В. Можно как то его согласовать? Или может есть схема простого программатора для этих целей.
|
|
Дата: 11 Окт 2013 19:51:42
#
Smolovyk,
ЭЭЭ!
Как в тиньку ничего не заливается... Думаете исполняемый код состоящий из 00 или FF сплошных есть эхо репа?
|
|
Дата: 11 Окт 2013 23:00:28
#
Да уже разобрался просто скачал архив с сайта разработчиков а там только екзешник, потом уже нашел файл прошивки он после установки ПО появляется через меню пуск. :-)
Но по программатору в документации описано что можно от мобильного телефона шнурок брать и там есть схема подключения, у меня такой шнурок на pl2303 незнаю подойдет ли он для этого. В принципе им радиостанцие почти все шил. Буду пробовать.
|
|
Дата: 17 Окт 2013 19:23:59 · Поправил: 501 (17 Окт 2013 19:24:56)
#
FRIST
У меня на попугае вот этот вариант.
Себистоимость 400 руб.
http://ziblog.ru/2013/09/22/eho-repiter.html
Повторил ещё кто нибудь её, (репу)?
Если не трудно, можете скинуть скриншот фьюзов Attiny13 в Ponyprog.
Автор репы что то лукавит... выставить все фьюзы в значение-1, а указанные
RSTDISBL BODLEVEL1 SUT0 CKSEL0 в ноль0.
Уже Две Attiny13, ушли в глухую оборону. Не читаются не шьются ((
Залил прошивку в Attiny. Фьюзы не трогал. Сейчас выглядит вот так.
Причём RSTDISBL не активна.
Увеличить |
|
Дата: 20 Окт 2013 19:57:22
#
Вопрос снят. Всё отлично работает.
|
|
Дата: 20 Окт 2013 20:37:06
#
Так в чем проблема была?501
|
|
Дата: 20 Окт 2013 21:04:28 · Поправил: 501 (21 Окт 2013 18:07:03)
#
Smolovyk
В том, что мне попалась битая FLASH W25X16. Я делал на ней, так как она ещё меньше по габаритам.
Впаял другую (не новую), снял с неё биты защиты и всё заработало.
Есть небольшая проблема. При подаче на вход слабых сигналов, при воспроизведении идут искажения.
К нему, на вход добавил компрессор TA31101AP, что бы уровень входного сигнала держался на одном уровне. Результат отличный.
|
|
Дата: 23 Дек 2013 21:39:18
#
501
Интересно прошло уже некоторое время как работает попугай?
|
|
Дата: 24 Дек 2013 08:49:06
#
|
|
Дата: 24 Дек 2013 09:08:01 · Поправил: 501 (24 Дек 2013 11:07:36)
#
Smolovyk
Работает отлично. По началу, как писал выше, внедрил компрессор. Буквально вчера его убрал, и вместо него поставил один каскад на транзисторе, что бы усилить уровень входного сигнала с DATA интерфейса FT-7800.
Были небольшие проблемы с малыми сигналами на входе, но это ерунда. Самое главное, обеспечить на входе сигнал в 1 вольт peek to peek.
|
|
Дата: 29 Янв 2014 12:21:47
#
В том, что мне попалась битая FLASH W25X16. Я делал на ней, так как она ещё меньше по габаритам.
Впаял другую (не новую), снял с неё биты защиты и всё заработало.
Есть небольшая проблема. При подаче на вход слабых сигналов, при воспроизведении идут искажения.
К нему, на вход добавил компрессор TA31101AP, что бы уровень входного сигнала держался на одном уровне. Результат отличный.
Если не сложно выложите доработанную схему, мне интересно согласование компрессора.
Вопрос по микросхеме памяти, вы подбирали аналог по разрядности или каким либо другим параметрам ?
и какие фузы на понипрог выставляли ?
|
|
Дата: 29 Янв 2014 13:22:41
#
Если не сложно выложите доработанную схему, мне интересно согласование компрессора.
Чуть выше писал, что отказался от компрессора, и применил каскад на одном транзисторе, для поднятия уровня 800-900мв.Более ничего не нужно.
Вопрос по микросхеме памяти, вы подбирали аналог по разрядности или каким либо другим параметрам ?
Под руку попался ADSL модем с FLASH 25X16. Это 2 минуты записи. Стёр в программаторе, снял биты защиты, и всё заработало. Новую с магазина стирать не нужно, а подбирал по габаритам, в авторском варианте она немного больше. В основном все FLASH одинаковые, разница в объёме памяти.
и какие фузы на понипрог выставляли ?
К сожалению, биты конфигурации понипрог не скажу, так как "шил" CodevisionAVR, а там биты такие -
Увеличить |
Реклама Google |
|