FM STEREO на модуле TEA5767 с LCD 3310

Вопросы и замечания по статьям и схемам, представленным на нашем сайте

При поддержке РадиоКОТструктор.ру


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

Re: FM STEREO на модуле TEA5767 с LCD 3310

Сообщение WiseLord »

Что-то не совсем понятно, как этот транзистор может работать в роли конвертера. В смысле, как он обеспечит двунаправленную работу с I²C.
Аватара пользователя
dt_andrew
Мявтор!
Сообщения: 2057
Зарегистрирован: Чт ноя 30, 2006 12:27:46
Откуда: Челябинск

Re: FM STEREO на модуле TEA5767 с LCD 3310

Сообщение dt_andrew »

работает и при том очень хорошо
http://avrproject.ru/publ/poleznaja_inf ... t/4-1-0-65
Nike_com
Родился
Сообщения: 4
Зарегистрирован: Ср фев 23, 2011 18:50:09
Откуда: Ростов-на-Дону

Re: FM STEREO на модуле TEA5767 с LCD 3310

Сообщение Nike_com »

у меня вопрос к автору сего творения, а можно ли скрестить воедино его творение и вот это. К сожалению мои знания в электронике и программировании позволяют только повторять конструкции.
brx
Родился
Сообщения: 7
Зарегистрирован: Вс апр 13, 2014 13:21:10

Re: FM STEREO на модуле TEA5767 с LCD 3310

Сообщение brx »

dt_andrew писал(а):никаким потенциометром проверить нельзя BUS_ENABLE - выбор протокола обмена
SPI или I2C

Уважаемые знатоки! Подскажите, пожалуйста, каким образом посмотреть есть ли на модуле TEA5767 в наличии и правильный ли этот самый обмен SPI или I2C? Возможно ли с помощью осцилографа или ещё каким способом и какие должны быть значения? Хотел в этой ветке выложить подробности проблемы, но модераторы перенесли в тему ремонта, а там пока тихо, может не все интересующиеся этим устройством туда заглядывают... Вот суть проблеммы: http://radiokot.ru/forum/viewtopic.php?f=32&t=102899. Заранее благодарен.
salang
Грызет канифоль
Сообщения: 273
Зарегистрирован: Вт янв 18, 2011 19:32:48
Откуда: Мск

Re: FM STEREO на модуле TEA5767 с LCD 3310

Сообщение salang »

модуль на RDA5807 c соответствующим подключением будет работать с этой программой или надо изменять ее?
Аватара пользователя
dt_andrew
Мявтор!
Сообщения: 2057
Зарегистрирован: Чт ноя 30, 2006 12:27:46
Откуда: Челябинск

Re: FM STEREO на модуле TEA5767 с LCD 3310

Сообщение dt_andrew »

если это RDA5807P то будет работать как 5767 без всяких переделок в режиме совместимости
если с другой буквой то надо переделывать прогу
salang
Грызет канифоль
Сообщения: 273
Зарегистрирован: Вт янв 18, 2011 19:32:48
Откуда: Мск

Re: FM STEREO на модуле TEA5767 с LCD 3310

Сообщение salang »

забыл уточнить 5807M, с P уже остались только готовые платы приемников. А большой объем переделки? RDS вывести на ЖК трудоемко?
Аватара пользователя
dt_andrew
Мявтор!
Сообщения: 2057
Зарегистрирован: Чт ноя 30, 2006 12:27:46
Откуда: Челябинск

Re: FM STEREO на модуле TEA5767 с LCD 3310

Сообщение dt_andrew »

уже месяца 2 бьюсь с 5807М
управление в корне отличается от 5807P
с плохой антенной об РДС можно забыть хотя на звук вроде все чисто играет
тоесть этот проект не годится
переделки огромные
по сути новый проект
salang
Грызет канифоль
Сообщения: 273
Зарегистрирован: Вт янв 18, 2011 19:32:48
Откуда: Мск

Re: FM STEREO на модуле TEA5767 с LCD 3310

Сообщение salang »

в этой конструкции понравился тачскрин, больше сходу не нашел аналогичного. А готовый стоит несмешно: http://www.ebay.com/itm/Uniden-Home-Pat ... 258d2b930a
eduardo
Нашел транзистор. Понюхал.
Сообщения: 171
Зарегистрирован: Вс июн 17, 2012 16:32:42

Re: FM STEREO на модуле TEA5767 с LCD 3310

Сообщение eduardo »

Здравствуйте dt-andrew. Я решил собрать цифровое радио на ТЕА 5767,но не знаю как работать с этим модулем.ДШ есть но на
английском из которого я мало что понял.(в школе мне преподавали немецкий).В частности в ДШ не показана карта памяти и
непонятно по каким адресам находятся те или иные регистры,куда что записывать/читать :dont_know: ??? Может подскажете какой алгоритм работы по I2C.Пишу на Си в CV AVR.Знаю только,что С0-для записи данных,С1-для чтения и что данные для настройки
приёма берутся из регистра PLL ,но этот регистр 14-битный.А как передать 14-битное число,если шина поддерживает только
8-ми битные данные? спасибо.
Аватара пользователя
dt_andrew
Мявтор!
Сообщения: 2057
Зарегистрирован: Чт ноя 30, 2006 12:27:46
Откуда: Челябинск

Re: FM STEREO на модуле TEA5767 с LCD 3310

Сообщение dt_andrew »

не знаю какие даташиты вы смотрите
в нем все есть
например этот
http://www.voti.nl/docs/TEA5767.pdf

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

лучшая библиотека я считаю это
https://github.com/andykarpov/TEA5767
или эта
https://github.com/RodLophus/TEA5767_Radio
хоть они под Ардуино, но это голый язык Си
на GitHub есть есть еще масса примеров, и простых и сложных
Вложения
fm_module.h
(4.55 КБ) 665 скачиваний
Аватара пользователя
WiseLord
Друг Кота
Сообщения: 4905
Зарегистрирован: Чт апр 11, 2013 11:19:59
Откуда: Минск
Контактная информация:

Re: FM STEREO на модуле TEA5767 с LCD 3310

Сообщение WiseLord »

dt_andrew писал(а):уже месяца 2 бьюсь с 5807М
управление в корне отличается от 5807P
с плохой антенной об РДС можно забыть хотя на звук вроде все чисто играет
Кстати, какие-то результаты по RDS у Вас уже есть?

Сам я сильно не разбирался пока с протоколом. Так, базовую поддержку на приём для своего проекта добавил. Но тоже сложилось впечатление, что для RDS нужны уж очень хорошие условия приёма, ибо в считываемых регистрах RDS (вывожу их содержимое на экранчик в целях отладки) наблюдается какая-то свистопляска.
Аватара пользователя
dt_andrew
Мявтор!
Сообщения: 2057
Зарегистрирован: Чт ноя 30, 2006 12:27:46
Откуда: Челябинск

Re: FM STEREO на модуле TEA5767 с LCD 3310

Сообщение dt_andrew »

с балее менее приличной антенной вполне нормально показывает
и еще много от самой станции зависит
некоторые не поддерживают стандарт и все гонят под одной группой
приходиться применять разный алгоритм перекодировки
Аватара пользователя
Xatrix
Сверлит текстолит когтями
Сообщения: 1296
Зарегистрирован: Ср мар 10, 2010 22:28:34
Откуда: Запад Беларуси

Re: FM STEREO на модуле TEA5767 с LCD 3310

Сообщение Xatrix »

Есть вопрос по одной функции:

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

void send_freq(void)
{
if (valid_freq())
{
  senddata[0] = 0xB0;
  senddata[1] = 0x2A;
  senddata[2] = 0x00;
  senddata[3] = 0x1E;
  senddata[4] = 0x00;
  PLLfreq = 4 * (freq - 225000L) / 32768L;
  senddata[0] = ((PLLfreq >> 8) & 0x3F);
  senddata[1] = (PLLfreq & 0xFF);
  MUTE_OFF;
} else {
  MUTE_ON;
}
tea5768_write();
_delay_ms(60);
}

Зачем в начале писать данные в массив senddata в ячейку 0 и 1, если они тут же переписываются в конце функции? И только потом пересылаются в микру...
Изображение
Изображение
LamaK
Родился
Сообщения: 8
Зарегистрирован: Сб апр 05, 2014 12:05:18

Re: FM STEREO на модуле TEA5767 с LCD 3310

Сообщение LamaK »

Всем доброго дня!
Собираю приемник на TEA5767 + ATTiny2313A (работа от встроенного генератора 8 МГц, с разными вариантами фьюза CKDIV8). Взял за основу исходники из этой темы, выкинул все лишнее, оставил буквально отладочный кусок кода, который позволяет при включении проинициализировать приемник с дефолтной частотой 101.2 МГц.
В коде все вроде бы работает, а вот с железом проблемы. Для того, чтобы узнать ответ девайса из функции
Спойлер

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

unsigned char i2c_write(unsigned char data)
{
   register unsigned char bit = 0;
   
   for(bit=0; bit<=7; bit++)
   {
      if( data & 0x80 )
      {
         SDA_1();
      }
      else
      {
         SDA_0();
      }
      SCL_1();
      delay(I2C_DELAY);
      SCL_0();
      delay(I2C_DELAY);
      data = (data<<1);
   }
   
   RELEASE_I2C_BUS();
   delay(I2C_DELAY);
   
   if ( bit_is_clear(I2C_SDA_PIN_REG, SDA_PIN) )
   {
      SCL_0();
      delay(I2C_DELAY);
   }   
   else
   {
      delay(I2C_TIMEOUT);
      
      if( bit_is_clear(I2C_SDA_PIN_REG, SDA_PIN) )
      {
         SCL_0();
         delay(I2C_DELAY);
      }
      else
      {
         return(I2C_ERROR_DEVICE_NOT_RESPONDING);
      }
   }
      
   if( bit_is_clear(I2C_SDA_PIN_REG, SDA_PIN) )
   {
      delay(I2C_TIMEOUT);
         
      if( bit_is_clear(I2C_SDA_PIN_REG, SDA_PIN) )
      {
         return(I2C_ERROR_DEVICE_BUSY);
      }
   }
   return(I2C_NO_ERROR);
   
}


я сваял простейшую мигалку из светодиода, которая подряд выдает серию миганий по результатам работы
Спойлер

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

void LED_blink(unsigned char res[6])
{
   unsigned char j, i = 0;
   
   DDRA = 0xFF;
   
   PORTA = 0x00;
   
   for (i = 0; i<6 ; i++)
   {
      for (j = 0; j < res[i]; j++)
      {
         PORTA = 1 << PORTA0;
         _delay_ms(250);
         PORTA = 0 << PORTA0;
         _delay_ms(250);
      }
   _delay_ms(1000);
   }
   
   return;
}

Вызывается она из функции tea5767_write().
Так вот, каждый раз светодиод возвращает на всю передачу по 1 миганию (т.е. I2C_ERROR_DEVICE_BUSY), иногда бывает 2 (device, соответственно, not responding). Куда копать?

Да, на всякий - код main()
Спойлер

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

   _delay_ms(5000);
   senddata[0] = 0xB0;
   senddata[1] = 0x2A;
   senddata[2] = 0x00;
   senddata[3] = 0x1E;
   senddata[4] = 0x00;
   
   MUTE_OFF;
   freq = 105700000;
   PLLfreq = 4 * (freq - 225000L) / 32768L;
   senddata[0] = ((PLLfreq >> 8) & 0x3F);
   senddata[1] = (PLLfreq & 0xFF);
   
   _delay_ms(5000);
      
   
    while(1)
    {
        //TODO:: Please write your application code       
    }


p.s. все собрано на соплях и проводах, болтается, но в наушниках появляется шипение при включении - не шипение помех, а легкий фоновый шум.
LamaK
Родился
Сообщения: 8
Зарегистрирован: Сб апр 05, 2014 12:05:18

Re: FM STEREO на модуле TEA5767 с LCD 3310

Сообщение LamaK »

Не поставил подтягивающие резисторы :) поправил код светодиода, когда возвращается 0 (т.е. NO ERROR), он мигает 3 раза быстро. Теперь байты отправляются, светодиод мигает, что все дошло без ошибок, но в наушниках та же тишина. Дохлый модуль?

Пропайка разъема миниджек решила проблему :D
Аватара пользователя
eess9
Вымогатель припоя
Сообщения: 672
Зарегистрирован: Ср фев 29, 2012 01:58:32
Откуда: Харьков, Украина

Re: FM STEREO на модуле TEA5767 с LCD 3310

Сообщение eess9 »

Уважаемые коты! Подскажите пожалуйста. Купил у китайцев TEA5767 без часового кварца. Такой как описывал уважаемый sherik на предыдущей странице http://radiokot.ru/forum/viewtopic.php?p=1778887#p1778887. Собрал на плате. Из TEA5767 по I2C я читаю 5 регистров без проблем. Начал программить ей частоты, не работает. Грешу на тактирование модуля, т.к. I2C должен быть асинхронный. Запитал так как на схеме в прикрепленном файле. Не работает. Выпаял ей кварц и подал 32768Гц от DS1338. Не работает. Вопрос: кто запускал такой модуль как правильно на него подать тактирование. А то не очень понятно где ошибка(и) в железе или в софте.
Вложения
IMG_9445 copy.jpg
(134.89 КБ) 753 скачивания
scheme.JPG
(58.64 КБ) 625 скачиваний
Аватара пользователя
dt_andrew
Мявтор!
Сообщения: 2057
Зарегистрирован: Чт ноя 30, 2006 12:27:46
Откуда: Челябинск

Re: FM STEREO на модуле TEA5767 с LCD 3310

Сообщение dt_andrew »

а BUS_ENABLE на земле
Аватара пользователя
eess9
Вымогатель припоя
Сообщения: 672
Зарегистрирован: Ср фев 29, 2012 01:58:32
Откуда: Харьков, Украина

Re: FM STEREO на модуле TEA5767 с LCD 3310

Сообщение eess9 »

В даташите есть такая фраза
Before any READ or WRITE operation the pin BUSENABLE has to be HIGH for at least 10 ms.
. Поэтому по умолчанию на земле, за 15мксек до сигнала СТАРТ на линии подымаю в 1, делаю операции на шине I2C, жду 15мксек и сажу в 0.
Аватара пользователя
dt_andrew
Мявтор!
Сообщения: 2057
Зарегистрирован: Чт ноя 30, 2006 12:27:46
Откуда: Челябинск

Re: FM STEREO на модуле TEA5767 с LCD 3310

Сообщение dt_andrew »

во всех проектах этот вывод всегда на земле
Ответить

Вернуться в «Статьи»