Цифровой приёмник на TEA5767 c часами на DS1307

Обсуждаем контроллеры компании Atmel.
Аватара пользователя
WiseLord
Друг Кота
Сообщения: 4905
Зарегистрирован: Чт апр 11, 2013 11:19:59
Откуда: Минск
Контактная информация:

Re: Цифровой приёмник на TEA5767 c часами на DS1307

Сообщение WiseLord »

Спасибо за терпение и вынуждженное бета-тестирование :)
Cheal
Грызет канифоль
Сообщения: 265
Зарегистрирован: Пн окт 31, 2011 12:35:59
Откуда: Родился в Сибири

Re: Цифровой приёмник на TEA5767 c часами на DS1307

Сообщение Cheal »

Добрый день WiseLord

Приёмник на RDA5807.

Плату рисую по схеме из статьи (с распиновкой как указано на схеме), почти закончил.

Прошивки брать для нее из папки " flash-5c66d0a " - Правильно ли я понял.

С уважением.
Вложения
Схема5807.rar
(42.46 КБ) 787 скачиваний
Аватара пользователя
WiseLord
Друг Кота
Сообщения: 4905
Зарегистрирован: Чт апр 11, 2013 11:19:59
Откуда: Минск
Контактная информация:

Re: Цифровой приёмник на TEA5767 c часами на DS1307

Сообщение WiseLord »

В архиве рядом с прошивками pins.h лежит с распиновкой. Ваша версия прошивки, если схема по статье, в другой папке.
Cheal
Грызет канифоль
Сообщения: 265
Зарегистрирован: Пн окт 31, 2011 12:35:59
Откуда: Родился в Сибири

Re: Цифровой приёмник на TEA5767 c часами на DS1307

Сообщение Cheal »

Добрый день WiseLord.

Спасибо за внимание.

Извините за назойливость, появились ещё вопросы и не хотелось бы потом на плате проводками исправлять неточности.

Приёмник на RDA5807.

Сравнивая схему из статьи и файл pins.h из папки flash-27b99c1 выявилось:
На схеме подсоединение кнопок К3-PD2, K4-PD1.
В файле pins.h подсоединение кнопок К3-PD1, K4-PD2.
На что ориентироваться при разводке платы.

При использовании кнопок вместо энкодера какой порт использовать на увеличение а какой на уменьшение.

С Уважением.
Аватара пользователя
WiseLord
Друг Кота
Сообщения: 4905
Зарегистрирован: Чт апр 11, 2013 11:19:59
Откуда: Минск
Контактная информация:

Re: Цифровой приёмник на TEA5767 c часами на DS1307

Сообщение WiseLord »

Кнопка A увеличивает, кнопка B уменьшает.
Верить лучше pins.h - это часть исходников. По большому счёту, если кнопки выносные - это неважно, если они являются часть платы, то да, это могло бы быть важным, но из исходников правкой pins.р легко пересобрать под любую разводку.

Я так и делал - сначала разводил, чтобы по минимуму были пересечения и переходные отверстия, а потом уже смотрел, что к чему подключилось и правил pins.h. Можете поступить так же, если осилите сборку под свою разводку.
Cheal
Грызет канифоль
Сообщения: 265
Зарегистрирован: Пн окт 31, 2011 12:35:59
Откуда: Родился в Сибири

Re: Цифровой приёмник на TEA5767 c часами на DS1307

Сообщение Cheal »

WiseLord большое спасибо за ответ.
denvik
Первый раз сказал Мяу!
Сообщения: 23
Зарегистрирован: Пт окт 31, 2014 12:35:23

Re: Цифровой приёмник на TEA5767 c часами на DS1307

Сообщение denvik »

Уважаемый WiseLord, приветствую!
Повторил Ваш проект, все очень понравилось, большое спасибо за разработку. Давно хотел приемник с энкодером.

Выходной усилитель сделал на микре PAM8403 - не рад оказался, что решил использовать ее - намучился с ней прилично.
Оказывается она крайне капризна к разводке дорожек.. Но таки добился своего.
Еще один большой минус - это то, что у нее нет авто-отключения (при отсутствии входного сигнала) и поэтому приемник в стендбае тихонько шипит колонками. Совсем тихо, но я считаю, что это не порядок. У PAM-ки есть пин - Shutdown - если его притянуть к земле - усилитель полностью отключается.

Огромная просьба к Вам - подскажите, что добавить в код, чтобы при переходе в стендбай на свободном порту МК (например PC3) появлялся лог.1, а при выходе из него - лог.0
Мысль моя проста и понятна - через транзистор притягивать в стендбае пин SHDN усилителя PAM8403 на землю.

Собрать прошивку я смогу, но вот в программировании под AVR я пока не очень разобрался. Конечно, если долго мучится - получится, но если у Вас будет минутка свободная подсказать, что добавить в код - буду крайне признателен :beer:
Аватара пользователя
WiseLord
Друг Кота
Сообщения: 4905
Зарегистрирован: Чт апр 11, 2013 11:19:59
Откуда: Минск
Контактная информация:

Re: Цифровой приёмник на TEA5767 c часами на DS1307

Сообщение WiseLord »

На самом деле, подобная мысль мне тоже в голову приходила. В standby режиме выход тюнера (RDA5807M) находится в z-состоянии, и вход усилителя как бы "висит" в воздухе. И ловит, например, помеху от мобильника при наборе номера или входящем звонке (многие, наверное, слышали эти звуки).

Вот, по сути, вся разница. Плюс заодно исправлен баг с неправильным пином для ШИМ в этой разводке (из статьи).

Управление транзистором (биполяр npn с резистором в базе или n-канальный полевой) по ножке PC3 (в варианте для TEA5767 она используется для ШИМ, для этой разводки ошибочно в коде стояло значение PD0, скопированное из другой разводки).

Прошивки во вложении.
Вложения
fm7segm-20150210.7z
(11.26 КБ) 520 скачиваний
denvik
Первый раз сказал Мяу!
Сообщения: 23
Зарегистрирован: Пт окт 31, 2014 12:35:23

Re: Цифровой приёмник на TEA5767 c часами на DS1307

Сообщение denvik »

Огромное спасибо, все действительно просто. :)
Единственное, еще небольшая просьба - добавьте в инициализацию устройства установку PC3 в 1. А то при подаче питания там 0, а после выхода/входа в стендбай все обрабатывается как и должно.

Получается, если подать питание - усилитель будет активен.

Кстати такое решение пригодится не только для усилителей с функцией MUTE или Shutdown, можно p-канальным полевым просто отключать питание любого усилителя.

Добавил в процедуру hwInit код

Код: Выделить всё

   #if defined(RDA5807)
   PORT(VOLUME) |= VOLUME_LINE;               /* Pull amplifier input to ground */
    #endif

Скомпилил, прошил - теперь то, что нужно! Спасибо большое за помощь!
Аватара пользователя
WiseLord
Друг Кота
Сообщения: 4905
Зарегистрирован: Чт апр 11, 2013 11:19:59
Откуда: Минск
Контактная информация:

Re: Цифровой приёмник на TEA5767 c часами на DS1307

Сообщение WiseLord »

... или можно было просто в hwInit добавить вызов muteVolume(), где это уже проделано.

Код у меня, хоть и не прокомментирован целиком, но, на мой взгляд, достаточно понятный сам по себе.
denvik
Первый раз сказал Мяу!
Сообщения: 23
Зарегистрирован: Пт окт 31, 2014 12:35:23

Re: Цифровой приёмник на TEA5767 c часами на DS1307

Сообщение denvik »

Да нет, код написан отлично и понятно. Видно, что работа проделана качественно и системно :write:
Просто я не очень знаком с Си, поэтом тяжеловато.. Ну ничего, лиха беда начало))

Ну, а теперь закончив с лирикой, поделюсь своими наработками по поводу использования PAM8403. Может кто-то захочет ее применить.
Повторюсь -микруха капризная и требует кое-каких моментов.
Итак - PAM8403 - чудо китайской промышленности. Стерео усилитель ЗЧ с мощностью на канал 3Вт при напряжении 5В (динамики 4Ом). Работать должна от 2,7В при соответствующем снижении мощности. Ну, в datasheet все указано.
Звук выдает неплохой, очень чувствительный вход. Не греется вообще, хотя производителем предусмотрена защита от перегрева.
Стоит около 1 доллара в рознице.

Тут плюшки заканчиваются и начинаются нюансы :)) , а именно:
- напряжение питания НЕ должно превышать 5,6В - может погореть
- на входе НЕ должно быть очень мощного сигнала - может погореть
- минусовые выходы на динамики НЕ должны касаться общей "земли" - может погореть

По поводу разводки платы (взято с пояснений на китайском сайте), чтобы избежать шумов:
- Плюсовые выходы на колонки от ног 3 и 14 должны идти ПОД корпусом микросхемы (как нарисовано на схеме в приложении)
- Минусовые выходы на колонки НЕ должны идти ПОД корпусом микросхемы, равно как и дорожки от остальных ног (кроме плюсовых входов)
- Шины PVDD и AVDD соединять вместе как можно дальше от корпуса микры.
- Плату желательно делать двухсторонней с заливкой обратной стороны по максимуму общей шиной

Теперь из собственных наблюдений:
- вместо рекомендованных в даташите резисторов в 10К на входах пришлось использовать 91К. С RDA5807M выходит "запредельный" для РAM-ки уровень сигнала и при 10К на входе, на громкости выше 10 попугаев прошивки - РАМ-ка сходила с ума, запиралась так, что резетилась Atmega. :shock:
- При запитке PAM-ки от +5В расположенных вблизи индикатора получал писк в динамиках от динамической индикации. Пришлось "питаться" как можно ближе к разъему питания.

Вот такая "веселая" микросхема.

Ну и набросал схему ее подключения с учетом последней доработки уважаемого WiseLord по переводу PAM8403 в режим Shutdown в стендбае приемника. Электролиты на схеме неправильно нарисовал :oops: С полярностью разберетесь))) минусы конечно на массу))
Изображение
Аватара пользователя
VeryLazyCat
Опытный кот
Сообщения: 832
Зарегистрирован: Пн май 17, 2010 22:21:01
Откуда: Madagaskar

Re: Цифровой приёмник на TEA5767 c часами на DS1307

Сообщение VeryLazyCat »

denvik писал(а):Ну а теперь поделюсь своими наработками по поводу использования PAM8403.

я так понимаю, что Вы купили этот чип и сами разводили под него плату ?
а мне попался такой же унч в сборе, интересно как он будет работать....
denvik
Первый раз сказал Мяу!
Сообщения: 23
Зарегистрирован: Пт окт 31, 2014 12:35:23

Re: Цифровой приёмник на TEA5767 c часами на DS1307

Сообщение denvik »

VeryLazyCat, будет конечно работать-меньше мороки с изготовлением ПП под усилитель, но судя по фото-на плате 12-я нога (Shutdown) подтянута на +5В, а значит, чтобы задействовать отключение усилителя в режиме ожидания силами Меги, придется ее отпаивать или резать перемычку на плате между 12 и 13й ногой.

Ну или пробовать управлять питанием усилителя мегой и p-канальным полевиком, например IRML6402 - держит 3А, для усилителя "за глаза". Типа так (на истину не претендую) :)) :

Изображение

Кроме того, в связке с RDA5807M Вам наверняка придется заменить входные резисторы (на плате 10К) на бОльшие по сопротивлению. Я остановился на 91К. С TEA5767 я не пробовал, поэтому не знаю.
Последний раз редактировалось denvik Вт фев 10, 2015 22:57:53, всего редактировалось 1 раз.
Аватара пользователя
VeryLazyCat
Опытный кот
Сообщения: 832
Зарегистрирован: Пн май 17, 2010 22:21:01
Откуда: Madagaskar

Re: Цифровой приёмник на TEA5767 c часами на DS1307

Сообщение VeryLazyCat »

denvik писал(а): С TEA5767 я не пробовал, поэтому не знаю.

Спасибо за советы, попробуем, у меня как раз ТЕА5767.
denvik
Первый раз сказал Мяу!
Сообщения: 23
Зарегистрирован: Пт окт 31, 2014 12:35:23

Re: Цифровой приёмник на TEA5767 c часами на DS1307

Сообщение denvik »

VeryLazyCat писал(а): у меня как раз ТЕА5767.

А, ну тогда можно ничего не резать на плате)) прошивка с управлением усилителя под RDA5807M заточена)
Аватара пользователя
WiseLord
Друг Кота
Сообщения: 4905
Зарегистрирован: Чт апр 11, 2013 11:19:59
Откуда: Минск
Контактная информация:

Re: Цифровой приёмник на TEA5767 c часами на DS1307

Сообщение WiseLord »

У TEA5767 нет регулировки громкости, поэтому в качестве усилителя нужно что-то с регулировкой громкости. Параметры программного ШИМ "заточены" только под TDA7052A/B.

А от варианта TEA5767/PAM8403 толку мало, без регулировки громости-то. Ну, разве что переменным резистором регулировать - но теряется смысл использования этой схемы с энкодером.
Аватара пользователя
VeryLazyCat
Опытный кот
Сообщения: 832
Зарегистрирован: Пн май 17, 2010 22:21:01
Откуда: Madagaskar

Re: Цифровой приёмник на TEA5767 c часами на DS1307

Сообщение VeryLazyCat »

Понял, Спасибо, значит поищем RDA5807M, а для ТЕА5767 у меня есть парочка TDA7052B.
denvik
Первый раз сказал Мяу!
Сообщения: 23
Зарегистрирован: Пт окт 31, 2014 12:35:23

Re: Цифровой приёмник на TEA5767 c часами на DS1307

Сообщение denvik »

WiseLord, с Вашего позволения попрошу еще один совет.
В собранном мной варианте на RDA5807M присутствует один очень неприятный момент.
Через определенное время после включения (неважно в стендбае или в рабочем режиме) МК теряет связь по шине SDA/SCL с микросхемами часов и приемника, что выражается в 00:00 времени на индикаторе и невозможностью управлять приемником.

Не могу пока поймать закономерность, но проявляется это в течение двух-трех часов после включения.

После переподачи питания все восстанавливается.

Перерыл все платы (у меня их получилось три), все соединения - непропаев и коротышей нет. Обрывов дорожек тоже не выявил.

Осталось грешить на полевики в узле согласования уровней, но как бы они к часам никакого отношения не имеют (или я не прав?). Заменить их есть на что, но смущает достаточно значительный временной промежуток до появления проблемы...

Может подскажете в какую сторону рыть?

Вообще меня такое ощущение, что некий буфер переполняется и МК перестает принимать данные... Конечно может я брежу и проблема у меня с разводкой..

Да, еще. Может это важно - термометр пока не подключал.
Аватара пользователя
WiseLord
Друг Кота
Сообщения: 4905
Зарегистрирован: Чт апр 11, 2013 11:19:59
Откуда: Минск
Контактная информация:

Re: Цифровой приёмник на TEA5767 c часами на DS1307

Сообщение WiseLord »

Даже и не знаю, что бы это могло быть. У себя я такого не наблюдал.

Возможно, имело бы смысл попробовать отключить от шины DS1307 и потестировать прошивку на предмет зависания без часов.

И, наоборот, на ночь, например, отключить тюнер и проверить работу часов - не виснет ли.


А вообще, при ошибках передачи шина I²C виснуть не должна, там у меня есть своего рода защита от этого.
denvik
Первый раз сказал Мяу!
Сообщения: 23
Зарегистрирован: Пт окт 31, 2014 12:35:23

Re: Цифровой приёмник на TEA5767 c часами на DS1307

Сообщение denvik »

Спасибо за совет, попробую, но на мой взляд "виснут" именно часы, так как проблема и в режиме ожидания (когда я так понял тюнер не опрашивается) и в рабочем режиме.
Конечно пороюсь в разводке...

Порылся, таки нашел обрыв дорожки :oops: :oops: :oops: не подтянут резистор на +3В от SCL RDA5807....
Сразу не увидел.. Плата под маской... Вроде "звонился" :oops: Пропаял..

Сейчас стоит в "тесте" - посмотрю как будет вести себя
Ответить

Вернуться в «AVR»