FM-tuner на TEA5757H, ищу единомышленников

Вопросы настройки, программирования, прошивки микроконтроллеров и микросхем программируемой логики
Аватара пользователя
Igor_67
Электрический кот
Сообщения: 1051
Зарегистрирован: Вт окт 21, 2008 11:46:23
Откуда: Барнаул

FM-tuner на TEA5757H, ищу единомышленников

Сообщение Igor_67 »

Мяу, ребятки-котятки!
:)))
Ввиду популярности темы насчет FM-тюнеров с МК управлением, я тоже решил приобщиться к этому вопросу. Имеем следующее:
1. Плата FM-тюнера для ПК на шину ISA (т.к. шина устаревшая и уже нигде не применяется, можно смело расковырять девайс и применить куда надо), в состав которой входит м/с TEA5757H (STR-Self Tuned Radio)
2. МК ATMega 8535
3. ЖК индикатор Winstar WH-1602D (16х2)
4. Мелкосхема RTC DS1307-часики
5. Термодатчик DS18B20
6. Немножко (совсем чуть-чуть) знаний в программировании МК
7. Куча свободного времени
8. Огромное, жгучее желание собрать/спаять все это в кучу
Задача:
Написать программу для того, чтобы правильно рулить TEA5757H, даташит имеется.
Пишу в BasComAVR, т.к. там уже все готовые функции и ничего не надо выдумывать.
Вобщем, выкладываю поект в Протеусе и код для Баскома.
Кого заинтересует, давайте вместе все это сваяем и напишем статью.
Управление м/с часов и датчиком температуры уже работает и все выводится на индикатор (в железе тоже проверено).
Просьба посмотреть код на предмет ошибок и багов. Код не закончен, т.к. в Баскоме мало кто пишет и посоветоваться не с кем, поэтому все криво :))) . Критика принимается любая.
Примерно, алгоритм такой: после инициализации всего, что возможно, выдаем в линию Dat последовательность, синхронизируемую по линии Clk (частота = 300 кГц, это важно!), при активном высоком уровне на линии We. Эта операция запускает на STR автоматический поиск р/станций. Если нашлись работающие радиостанции, то их надо записать в память МК(это еще не реализовано). Или в режиме предустановки считываем частоту + слово конфигурации из МК и отправляем в STR. То есть загружаем заранее известную частоту в TEA5757H.
ТЕА5757 работает по интерфейсу, похожему на SPI, но с некоторыми особенностями:
Линия приема/передачи данных одна, а не две, как у SPI (DATA)
Направление потока данных зависит от сигнала на выводе WRITE-ENABLE. Если он (сигнал) в 1, то происходит запись в сдвиговый регистр, если 0 - чтение
Тактируется сдвиг частотой 300 КГц на выводе BUS-CLOCK
Причем необходимо отслеживать состояние сигнала на выводе MONO/STEREO. Если на нем 1, то необходимо настроить тюнер (нет несущей или слабая), если 0 - все настроено и горит индикатор "STEREO".
Количество передаваемых бит данных: при чтении из STR - 24; при записи в STR - 25
TEA5757H содержит в себе сразу и синтезатор и тюнер и стереодекодер, поэтому больше ничего лишнего лепить не надо - выход звуковой частоты 250мВ - подавай на усилок и готово!
Просьба к заинтересовавшимся: Немного не получается с алгоритмом чтение частоты из МК - сложение с промежуточной - вычисление по таблице из даташита реального значения частоты, предназначенной для отправки в STR - сложение со словом конфигурации - отправка в STR.
Имеется желание еще сюда прикрутить анализатор спектра с выводом на все тот же ЖКИ, например, 10 сек. показываем время, температуру, частоту, и 10 сек. - спектр. И так по кругу.Схема и код уже есть - все работает.
Последний раз редактировалось Igor_67 Сб дек 05, 2009 10:58:32, всего редактировалось 1 раз.
Цапу крутить надо!!! Ку или не ку?
Реклама
Аватара пользователя
Igor_67
Электрический кот
Сообщения: 1051
Зарегистрирован: Вт окт 21, 2008 11:46:23
Откуда: Барнаул

Сообщение Igor_67 »

Небольшое примечание: Фузы выставлены так
CKSEL 3...0 = 0011 (внутр. генератор на 4МГц)
SUT 1...0 = 00 (вкл. задержку через BOD)
BODEN = 0 (BOD разрешен)
BODLEVEL = 0 (уровень BOD=4,7В)
EESAVE = 0 (вкл. сохранение EEPROM)
SPIEN = 0 ( последовательное программирование разрешено)
Функции кнопок:
But_minus Alias Pinb.3 -кнопка "-"
But_plus Alias Pinb.2 - кнопка "+"
But_set Alias Pinb.1 - кнопка "SET"
But_mode Alias Pinb.0 - кнопка "MODE" (режим)
Подсветка индикатора выведена на PORTC.6, включается при нажатии на любую кнопку и светится, пока TIMER1 не досчитает до 0.(Light Alias Portc.6)
На эти пины выведены сигналы для управления TEA5757H (STR):
Clk Alias Portc.5 - шина BUS-CLOCK
Dat Alias Portc.4 - шина DATA
We Alias Portc.3 - сигнал WRITE-ENABLE
Stm Alias Portc.2 - сигнал STEREO/MONO
В режиме тюнера (когда все настроено и ничего не редактируется), нажатие кнопки "SET" выводит на индикатор текущую дату на 10 секунд. Можно еще добавить энкодер - в Баскоме это ваще не проблема.
Вот еще на просторах интернета нарыл такую схему (см. вложение), пытался связаться с автором, но, к сожалению, "абонент недоступен" - такого E-mail адреса не существует. :shock:
Цапу крутить надо!!! Ку или не ку?
Реклама
Аватара пользователя
Pavel V.
Мявтор!
Сообщения: 384
Зарегистрирован: Ср май 17, 2006 18:39:01
Откуда: Москва
Контактная информация:

Сообщение Pavel V. »

У меня был готовый исходник для TEA5767/8 на Сях, дома поищу выложу. Тоже в свое время купил две такие микрухи, но так и не собрался плату под нее развести.
Аватара пользователя
Igor_67
Электрический кот
Сообщения: 1051
Зарегистрирован: Вт окт 21, 2008 11:46:23
Откуда: Барнаул

Сообщение Igor_67 »

Ну, на Сях, так на Сях. Выкладывай!
Цапу крутить надо!!! Ку или не ку?
Реклама
Эиком - электронные компоненты и радиодетали
Аватара пользователя
Pavel V.
Мявтор!
Сообщения: 384
Зарегистрирован: Ср май 17, 2006 18:39:01
Откуда: Москва
Контактная информация:

Сообщение Pavel V. »

Нашел тот проект. Выложил здесь. Там куча всего, от даташитов и аппнотов до исходников и фотографий девайса.
Реклама
Аватара пользователя
Igor_67
Электрический кот
Сообщения: 1051
Зарегистрирован: Вт окт 21, 2008 11:46:23
Откуда: Барнаул

Сообщение Igor_67 »

Ну скачалось кое-как. Чего-то скорость сегодня отвратительная (3,85МВ за 18 минут, аффигеть). Спасибо, буду изучать. :tea:
Цапу крутить надо!!! Ку или не ку?
Реклама
Аватара пользователя
Igor_67
Электрический кот
Сообщения: 1051
Зарегистрирован: Вт окт 21, 2008 11:46:23
Откуда: Барнаул

Сообщение Igor_67 »

Мммм-дя! Хорошая подборочка, но это немного не то. ТЕА5767 управляется по интерфейсу I2C, хотя там есть возможность использования такого режима передачи данных, как в ТЕА5757 - по трехпроводной шине, но в данном проекте она не используется. А жаль.
Было бы у ТЕА5757 управление по I2C, ваще проблем бы не было. Но кому-нибудь пригодится и этот проект (кто ваще с нуля начинает собирать тюнер). К тому же там еще и дисплей от Нокиа-3310, а это сейчас так модно - прикручивать дисплеи от сотиков к своим девайсам!!! :)))
Вобщем, все вопросы остаются в силе.
Цапу крутить надо!!! Ку или не ку?
Аватара пользователя
Pavel V.
Мявтор!
Сообщения: 384
Зарегистрирован: Ср май 17, 2006 18:39:01
Откуда: Москва
Контактная информация:

Сообщение Pavel V. »

Igor_67, ой, действительно, я перепутал названия. Этот проект относится к чипам TEA5767/5768 (я купил 5768).

А они в плане обвязки не совместимы? Может перепаять просто?
Аватара пользователя
Igor_67
Электрический кот
Сообщения: 1051
Зарегистрирован: Вт окт 21, 2008 11:46:23
Откуда: Барнаул

Сообщение Igor_67 »

К сожалению не совместимы. На ТЕА5757 кварц на 75МГц, а на ТЕА5767 кварц на 32768 Гц или на 50000Гц, а это две большие разницы. К тому же 5757 - в корпусе TQFP44, 5767 - в корпусе TQFP40. Как же я ее туда лепить буду? На проводках - несерьёзно.
Цапу крутить надо!!! Ку или не ку?
Аватара пользователя
Igor_67
Электрический кот
Сообщения: 1051
Зарегистрирован: Вт окт 21, 2008 11:46:23
Откуда: Барнаул

Сообщение Igor_67 »

Что-то тема заглохла. Или никому не интересно? Тогда хоть бы с кодом помогли... :tea:
Вот нарыл в инете код, язык, вроде как Си. Только это для линукса. Кто поможет переделать код для МК, применительно к моей схеме?
Последний раз редактировалось Igor_67 Сб дек 05, 2009 10:55:03, всего редактировалось 1 раз.
Цапу крутить надо!!! Ку или не ку?
Аватара пользователя
Aheir
Модератор
Сообщения: 4517
Зарегистрирован: Пн апр 03, 2006 11:43:25
Откуда: Санкт - Петербург
Контактная информация:

Сообщение Aheir »

А кто Вас научит длинные листинги оформлять вложением? Отредактируйте свои посты в соответствии с правилами, иначе тема может не только заглохнуть, но и закрыться ненароком... :wink:
Оптимизм х (Опыт + Знания) = const
Аватара пользователя
Igor_67
Электрический кот
Сообщения: 1051
Зарегистрирован: Вт окт 21, 2008 11:46:23
Откуда: Барнаул

Сообщение Igor_67 »

Извиняюсь, все исправил. :oops:
Теперь, к делу. Вобщем, ситуёвина такая: после некоторых танцев с бубном пришлось переписать весь код заново, по другому алгоритму. В Мегу 8535 уже не влезло, пришлось шить в Мегу 16-16PI.
Программа 55% памяти заняла!!! :shock: . И то, еще не все завершено. кнопки оставил три (плюс, минус и выбор). Добавил отображение названий радиостанций и пользовательские символы, им соответствующие (но это на любителя). Схема остается та же, что и была для Меги 8535, по ногам они идентичны. Кнопки плюс и минус прикрутил к прерываниям INT0 и INT1. На PORTC.6 выведен сигнал для включения подсветки индикатора. Выключается по прерыванию TIM1_OVF.
Кнопка "выбор/режим" подключена на PINB.7, на PORTB.0 завел линию DQ от DS18B20. Все входные сигналы, естественно, с внешней подтяжкой на +5В.
Есть одна засада: кнопка "выбор" работает не по прерыванию, а так как в программе довольно много всяких ветвящихся алгоритмов и задержек, она (кнопка) ужасно тормозит. Кто знает, как лучше организовать ее опрос? И еще одно: как при помощи кнопок выставлять нужное время и дату в RTC? Если можно, поподробнее.
Вобщем, выкладываю новый код. Проект Протеуса выкладывать не буду, т.к. схема та же. Достаточно просто изменить подключение кнопок и DS18B20. Всё пока! Все "мягкое" - во вложении.
Цапу крутить надо!!! Ку или не ку?
maiklab
Родился
Сообщения: 11
Зарегистрирован: Вт ноя 03, 2009 18:27:48
Откуда: Молдова

FM-tuner на TEA5757H, ищу единомышленников

Сообщение maiklab »

Igor_67
Почитал тему, но схемы так и не увидел.
На фото индикатор выглядит прилично.
Поковырялся в старых платах от мобилок и нашол TEA5757H.
Сам не программигую, но на МК изделия повторяю.
С удовольствием повторил бы на TEA5757H+ATvega8+ЖКИ,
без температуры и градусника (таскать провода с улицы по квартире
не хочется).
Спасибо.
Вложения
TEA5757.jpg
TEA5757.jpg
(181 КБ) 1420 скачиваний
TEA5757(1).jpg
Мобила
(71.82 КБ) 1860 скачиваний
Аватара пользователя
ibiza11
Поставщик валерьянки для Кота
Сообщения: 1900
Зарегистрирован: Сб фев 21, 2009 13:11:40
Откуда: Москва

Re: FM-tuner на TEA5757H, ищу единомышленников

Сообщение ibiza11 »

maiklab писал(а):Поковырялся в старых платах от мобилок и нашол TEA5757H.
В какой мобиле она используется?
Ставим плюсы: )
Аватара пользователя
Igor_67
Электрический кот
Сообщения: 1051
Зарегистрирован: Вт окт 21, 2008 11:46:23
Откуда: Барнаул

Сообщение Igor_67 »

но схемы так и не увидел.

Прикреплен же проект в протеусе - это и есть схема!
Цапу крутить надо!!! Ку или не ку?
maiklab
Родился
Сообщения: 11
Зарегистрирован: Вт ноя 03, 2009 18:27:48
Откуда: Молдова

Сообщение maiklab »

ibiza11

Мне просто попалась плата, вот фото обратной стороны
Вложения
TEA5757(2).jpg
TEA5757(2).jpg
(149.6 КБ) 1450 скачиваний
Аватара пользователя
Igor_67
Электрический кот
Сообщения: 1051
Зарегистрирован: Вт окт 21, 2008 11:46:23
Откуда: Барнаул

Сообщение Igor_67 »

Ну так как насчет помочь с кодом? С меня пиво!!! :beer:
Цапу крутить надо!!! Ку или не ку?
Аватара пользователя
MATAFIXXX
Первый раз сказал Мяу!
Сообщения: 32
Зарегистрирован: Сб янв 17, 2009 17:50:33
Откуда: дети берутся?
Контактная информация:

Re: FM-tuner на TEA5757H, ищу единомышленников

Сообщение MATAFIXXX »

:o я тоже хочу такое сделать! У меня тюнер компутерный гемтек псфм-001 валяется,дров на хрюху под него нету,только 98 и 2000 окна её тянут. Все говорят выбрось,но рука не поднимается. К сожалению программирование для меня очень непонятная штука,только на уровне-запись,чтение МК,если у вас чего получится с теа5757н то приступлю к повторению :)))
Заземление придумали трусы!
Адронный Паяльник
Аватара пользователя
MATAFIXXX
Первый раз сказал Мяу!
Сообщения: 32
Зарегистрирован: Сб янв 17, 2009 17:50:33
Откуда: дети берутся?
Контактная информация:

Re: FM-tuner на TEA5757H, ищу единомышленников

Сообщение MATAFIXXX »

:? мда,рано обрадовался.... последнее сообщение январь 2010 , а не 2011 :cry:
Значит всё просто заглохло у всех
Заземление придумали трусы!
Адронный Паяльник
Аватара пользователя
shurikss123
Грызет канифоль
Сообщения: 271
Зарегистрирован: Пн окт 25, 2010 20:47:04
Откуда: Казахстан, Астана

Re: FM-tuner на TEA5757H, ищу единомышленников

Сообщение shurikss123 »

Есть такое у меня и плата которая в начале поста, и микруху выпаял немного поковыряв на самой плате добился неких результатов, а вот куда дел их не помню, можете кстате посмотреть в сторону готовых модулей которые стоят в автомагнитолах я на ней как раз и делаю счас усилитель на 4 вход. канала 1 из которых FM-тюнер(нарыл на один модуль инфу здесь http://monitor.net.ru/forum/sony-cdx-xxxxx-processor-info-346823.html впринципе работает практически так же как и 5757 тока в готовом исполнении), так что вариантов много, и еще температура хорошо, но почему все поголовно берут один и тот же датчик? часы тоже от туда МК может и сама работать как часы (или к примеру взять ds12887) Как вам?
Изображение
Мастер на все руки, кручу, кручу, кручу и матерюсь
Повелитель паяльной станции, лома, и пинцета!!!
Закрыто

Вернуться в «Микроконтроллеры и ПЛИС»