FM радио - TEA5768HL-LCD3310-Mega32
Добавлено: Чт окт 08, 2009 16:43:43
Доброго всем!
Таки дошли хоть чуть чуть руки до соединения все в кучу и получилось - FM радио на основе TEA5768HL-Nokia 3310 LCD-Mega32. Код программы не ахти правильный по всем канонам Си, не судите строго. Ваялось за два дня. До основательной "железки" пока руки не дошли. В планах добавить регулятор тембра по i2c и усилок какой-нить. Понимаю, что таких конструкций пруд пруди, но захотелось сделать чтоб и автопоиск был и автопамять, и еще четко автоматически настраивался (вверх/вниз) на принимаемую станцию, что в принципе и получилось.
Кратко суть подхода при автопоиске - при переборе частоты вверх/вниз анализируются сигнал об уровне принимаемого сигнала (все что выше условной единицы - 8 ) и счетчик ПЧ (ворота 0x36 < if_count < 0x3F)(см. листинг test.c - стр.289, 355 и 374)). Ну и небольшая обвязка с ЖКИ 3310 и кнопочек. (при желании интерфейс и красота меняются на свою фантазию). Схема: TEA5768HL - в стандартном типовом включении (см. даташит) общается по программной i2c ATMega32. ЖКИ 3310 - не привязан к шине SPI AVRMega32, шина релизована программно, т.е. можно использовать любые 4 вывода любого порта I/O Mega32. В принципе, схема включения понятна по листингу "test.c".
Главное - при первом включении после прошивки нажать кнопочку на выводе PIND.0 - автопоиск станций с автоматической записью в ячейки памяти, поиск не остановится пока не найдет 20 любых станций , вот здесь засада!!!! - а вдруг вообще никаких станций нет!!!! будем в цикле бесконечно. Но так как у нас в городе их навалом (19 штук) то поиск хоть что-то да найдет.
Итог - скорость настройки, четкой и строго на частоту станции - очень быстрая, качество принимаемого сигнала для такого миниатюрного решения отличное, даже в режиме стерео. Вдобавок куча настроек в самой TEA5768HL (опять же см. даташит). Если что-то непонятно пишите, помогу (долго я TEA5768 мучил ну и как итог - намучил).
Да, чуть не забыл - все настройки сохраняются в EEPROM.
Как допишу и проверю, выложу прошивку с реализацией меню на основе finite state machine, основа - меню, реализованное в AVR Butterfly.
Как и обещал - выкладываю прошивку с меню, схема прежняя, изменилась только прошивка (опять же не судите строго, стиль программирования, каюсь, не соблюдаю). Все нужные исходники для прошивки с меню лежат в архиве "with_menu.zip"
Таки дошли хоть чуть чуть руки до соединения все в кучу и получилось - FM радио на основе TEA5768HL-Nokia 3310 LCD-Mega32. Код программы не ахти правильный по всем канонам Си, не судите строго. Ваялось за два дня. До основательной "железки" пока руки не дошли. В планах добавить регулятор тембра по i2c и усилок какой-нить. Понимаю, что таких конструкций пруд пруди, но захотелось сделать чтоб и автопоиск был и автопамять, и еще четко автоматически настраивался (вверх/вниз) на принимаемую станцию, что в принципе и получилось.
Кратко суть подхода при автопоиске - при переборе частоты вверх/вниз анализируются сигнал об уровне принимаемого сигнала (все что выше условной единицы - 8 ) и счетчик ПЧ (ворота 0x36 < if_count < 0x3F)(см. листинг test.c - стр.289, 355 и 374)). Ну и небольшая обвязка с ЖКИ 3310 и кнопочек. (при желании интерфейс и красота меняются на свою фантазию). Схема: TEA5768HL - в стандартном типовом включении (см. даташит) общается по программной i2c ATMega32. ЖКИ 3310 - не привязан к шине SPI AVRMega32, шина релизована программно, т.е. можно использовать любые 4 вывода любого порта I/O Mega32. В принципе, схема включения понятна по листингу "test.c".
Главное - при первом включении после прошивки нажать кнопочку на выводе PIND.0 - автопоиск станций с автоматической записью в ячейки памяти, поиск не остановится пока не найдет 20 любых станций , вот здесь засада!!!! - а вдруг вообще никаких станций нет!!!! будем в цикле бесконечно. Но так как у нас в городе их навалом (19 штук) то поиск хоть что-то да найдет.
Итог - скорость настройки, четкой и строго на частоту станции - очень быстрая, качество принимаемого сигнала для такого миниатюрного решения отличное, даже в режиме стерео. Вдобавок куча настроек в самой TEA5768HL (опять же см. даташит). Если что-то непонятно пишите, помогу (долго я TEA5768 мучил ну и как итог - намучил).
Да, чуть не забыл - все настройки сохраняются в EEPROM.
Как допишу и проверю, выложу прошивку с реализацией меню на основе finite state machine, основа - меню, реализованное в AVR Butterfly.
Как и обещал - выкладываю прошивку с меню, схема прежняя, изменилась только прошивка (опять же не судите строго, стиль программирования, каюсь, не соблюдаю). Все нужные исходники для прошивки с меню лежат в архиве "with_menu.zip"

