- Радио модуль TEA5767 FM
- Обзор радио модуля TEA5767 FM
- Характеристики модуля TEA5767
- Подключение к плате Arduino
- Подключение динамиков к модулю TEA5767
- Пример использования TEA5767
- Часто задаваемые вопросы FAQ
- Рулим китайским FM-радиомодулем на TEA5767. Датагорская библиотека на C
- Содержание / Contents
- ↑ Типы и распиновка модулей на TEA5767
- ↑ 1. Наиболее удобный модуль с полной обвязкой:
- ↑ 2. Обрезанный модуль tt-502x — TEA5767 без кварца:
- ↑ Схема демо-платы для TEA5767
- ↑ Фото моей демо-платы в сборе
- ↑ Управление TEA5767 по I2C шине. Описание регистров на русском
- ↑ Функции датагорской библиотеки для TEA5767
- ↑ Видео
- ↑ Файлы
- ↑ Итого
Радио модуль TEA5767 FM
Товары
Обзор радио модуля TEA5767 FM
Рисунок 1. Модуль TEA5767.
Модуль TEA5767 может работать в режиме поиска радиостанций. Поиск останавливается при нахождении первой станции, имеющей уровень сигнала определенного значения, которое можно изменять. В случае слабого сигнала приемник автоматически переходит в режим моно.
Характеристики модуля TEA5767
Напряжение питания : 5 В;
Диапазон принимаемых частот : 76 – 108 МГц;
Функция поиска радиостанций.
Подключение к плате Arduino
Модуль TEA5767 подключается к плате Arduino по протоколу I2C. Для подключения по протоколу I2C используем 2 вывода Arduino.
Подключим модуль TEA5767 к плате Arduino Uno (по схеме рис. 2) и загрузим скетч I2C-сканера. В мониторе последовательного порта определяем I2C-адрес TEA5767, который равен 0x60.
Рисунок 2. Подключение к плате Arduino.
Рисунок 3. Определение I2C-адреса TEA5767 (скетч I2C-сканер).
Управление модулем осуществляется отправкой команд (5 байт) по протоколу I2C. Модуль так же позволяет читать из него информацию для реализации функции автопоиска и уровня сигнала. В листинге 1 показана настройка радио на определенную частоту.
Подключение динамиков к модулю TEA5767
На выходе УКВ приемника установлена микросхема TDA1308 – звуковой усилитель для наушников. Чтобы подключить к данному разъему динамики и получить громкий звук необходимо использовать усилитель, например показанный на рис. 4.
Рисунок 4. УНЧ для подключения динамиков к модулю TEA5767.
Рисунок 5. Подключение динамиков к модулю TEA5767.
Рисунок 6. Подключение динамиков к модулю TEA5767.
Пример использования TEA5767
Создадим на модуле TEA5767 радиоприемник с поиском доступных радиостанций. Данные о найденной радиостанции будем отображать на экране дисплея, а поиск радиостанций будем осуществлять по нажатии на кнопки (вниз или вверх по частоте).
Нам потребуются следующие компоненты:
Плата Arduino Uno или Nano – 1;
Плата прототипирования – 1;
Модуль FM-радио TEA5767 – 1;
Схема соединения элементов показана на рис. 7.
Рисунок 7. Схема соединений для радиостанции на Arduino и TEA5767.
Приступим к написанию скетча. Для более удобной работы с модулем создана Arduino-библиотека TEA5767. Данные о найденной радиостанции будем отображать на экране LCD WH1602, по нажатии на кнопок будем осуществлять поиск радиостанций вниз или вверх по частоте.
Содержимое скетча показано в листинге 2.
Загружаем скетч на плату Arduino и слушаем радиостанции, кнопками выбираем следующие.
Рисунок 8. Радиостанция в сборе.
Часто задаваемые вопросы FAQ
1. Модуль не находит радиостанции
Проверьте правильность подключения модуля TEA5767 к плате Arduino.
Переместите радиостанцию в зону уверенного приема
2. Недостаточная громкость
Для увеличения громкости используйте УНЧ.
Проверьте правильность подключения усилителя и динамиков к модулю TEA5767.
Рулим китайским FM-радиомодулем на TEA5767. Датагорская библиотека на C
Так вот, для того что бы модуль что-то начал ловить, нужно всего-ничего: подключить модуль в соответствии с распиновкой к усилителю и микроконтроллеру и написать прошивку управления модулем.
Во как, раньше приемники паяли, а теперь пишем!
Содержание / Contents
↑ Типы и распиновка модулей на TEA5767
↑ 1. Наиболее удобный модуль с полной обвязкой:
Этот модуль имеет полукруглые контактные площадки с торцов платы: 5+5 = 10 шт., шаг 2 мм. Я реализовывал управление по I2C шине. Для этого вывод «BUSMODE» подключаем к «земле», вывод «WR» можно не подключать.
↑ 2. Обрезанный модуль tt-502x — TEA5767 без кварца:
Часто нерадивые китайцы высылают этот вариант, вместо описанного выше. Вы сразу поймёте, что вас надули, распаковав бандерольку: на платах нет кварцевого резонатора. Радует то, что эти модули вполне рабочие, хоть и потребуют дополнительных телодвижений. Смотрите расширившуюся схему подключения, прикидывайте дополнительные элементы: часовой кварц, резисторы, конденсаторы. Этот модуль также имеет полукруглые контактные площадки с торцов платы: 4+6 = 10 шт., шаг 2 мм.
Я с таким модулем не работал, но чипы одинаковые, так что моя библиотека должна подойти.
↑ Схема демо-платы для TEA5767
Основные компоненты схемы:
• управляющий микроконтроллер ATmega16
• индикатор знакосинтезирующий 1602 на базе HD44780
• управление на энкодере с кнопкой
↑ Фото моей демо-платы в сборе
↑ Управление TEA5767 по I2C шине. Описание регистров на русском
Когда-то я уже пытался работать с этим модулем, но написать что-то сам я был ещё не в силах, а найти что-то готовое оказалось достаточно сложно.
Вот я и решил, набравшись опыта в C, восполнить этот пробел и написал собственную библиотеку для работы с модулем.
Описание регистров, смысл которых я не понял, оставил без перевода. Так что, уважаемые коллеги, если кто-то более компетентен — пишите, вместе статью допилим.
↑ Функции датагорской библиотеки для TEA5767
Теперь пора рассказать про функции библиотеки, их всего пять.
1) tea5767_write (); — функция записи параметров структуры TEA5767WriteRegister в модуль.
2) tea5767_read (); — функция чтения параметров из модуля в структуру TEA5767ReadRegister.
3) tea5767_calc_write_PLL (uint16_t Value); — функция вычисления значения PLL при частоте кварца 32768 Гц, входной параметр — частота в МГц * 100, пример: tea5767_calc_write_PLL (10300) — вычисление значения PLL для частоты 103,00 МГц.
4) tea5767_init (); — начальная инициализация модуля. Можно и не инициализировать, но так как-то user-frendly, подаёшь питание, а там что-то уже играет. Я записываю следующие стартовые параметры:
5) (uint16_t)tea5767_calc_read_PLL (); — вычисляет значение частоты из регистров PLL для чтения.
В библиотеке значения регистров для записи и чтения хранятся в двух структурах, которые определены в заголовочном файле библиотеки.
Структура данных для записи — TEA5767WriteRegister
Структура данных для чтения — TEA5767ReadRegister
Структуры имеют битовые поля. Сделано это для удобства пользования библиотекой, мне не требуется применять операции сдвига или какие либо маски для установки/сброса конкретного бита. Например, включение режима «MUTE» осуществляется следующим образом: TEA5767WriteRegister.MUTE = 1.
После того, как необходимые параметры установлены, нужно вызвать функцию tea5767_write (), которая запишет всю структуру в модуль.
Также легко можно считать уровень сигнала из модуля: вызываем функцию tea5767_read (), SignalLevel = TEA5767ReadRegister.LEV
Таким же образом доступны почти все параметры.
Исключение составляют значение PLL, которые занимают больше одного байта в структуре. Но нам и не нужно что-либо записывать или считывать из них вручную. Для управления модулем проще будет задавать частоту. Для этого в библиотеке есть специальная функция, которая вычисляет значение PLL для заданной частоты. Также есть функция, которая производит обратное вычисление частоты из значения PLL, считанного из модуля.
Функции для вычисления PLL используют опорную частоту 32768Гц, такой кварц стоит на модуле. Других я не встречал, поэтому в библиотеке я не предусматривал возможности использования другого кварца.
К небольшому сожалению, я не смог реализовать автопоиск станций — не вкурил, как. Поэтому функция автопоиска в библиотеке пока отсутствует. Сожаление небольшое потому, что я живу в зоне неуверенного приема, и даже промышленные образцы приемников не могут поймать все станции, которые у нас вещают. Приходится настраивать вручную.
↑ Видео
↑ Файлы
Библиотеки soft-i2c и TEA5767
▼ Файловый сервис недоступен. Зарегистрируйтесь или авторизуйтесь на сайте.
↑ Итого
В качестве транспорта я использовал стороннюю библиотеку I2C шины. Шина реализована программным образом, мне это удобно потому, что можно подключаться на любые выходы микроконтроллера.
Вот и всё, что я хотел рассказать про мою TEA5767-библиотеку. Думаю, перечисленных функций вполне достаточно для управления FM-модулем. Приглашаю желающих повторить наш учебный проект.
Спасибо за внимание!
Напаяно уже много чего, всего и не припомню.
Всем доброго времени суток!
Предлагаю на Ваш суд обзор на Kit набор для сборки FM — радиоприемника на модуле TEA5767.
Набор приехал в простом пакете.
Внутри еще кучка пакетиков поменьше.
Один из пакетов — это будущий корпус, вырезанный из акрила.
А вот так это все будет выглядеть после сборки, отверстие по центру предполагает установку в него динамика. Мне почему-то такой подход к формированию корпуса не очень понравился, еще до сборки стал думать, как бы облагородить это отверстие для защиты динамика.
Второй пакет — это динамик, производитель накрыл диффузор пластиковой защитой так что при доставке ничего не поломалось.
Диаметр динамика 50 мм. на конце провода установлен разъем.
Ну и третий пакет содержит собственно печатную плату и набор деталей, которые нужно будет запаять на плату.
Плата сделана хорошо, металлизация на совесть припой при сборке лип легко.
Все номиналы элементов нанесены на плату так что сборка не вызывает никаких проблем, хотя инструкция на мой взгляд все равно лишней бы не была, но увы ее нет.
За прием сигнала и его начальную обработку отвечает FM-радио модуль TEA5767
Роль конечного аудио усилителя производитель отдал микросхеме LM386 на ее основе собран выходной усилитель приемника. Причем производитель не поскупился и положил в комплект сразу две микросхемы, хотя в конструкции используется только одна.
Отображение частоты, на которую настроен приемник реализовано на сборке из семисегментных индикаторов.
В конструкции использована динамическая индикация так что для управления потребовались транзисторные ключи, в данной случае это четыре транзистора S9012.
Ну и наконец за общее руководство отвечает микроконтроллер STC89C52RC с заранее прошитой программой.
Для запуска контроллера конечно же нужен кварц.
Ну и небольшая кучка, резисторов и конденсаторов.
А еще антенна, пара кроваток для микросхем, кнопки и разъем питания.
Как обычно первым делом распаял все резисторы, оказалось. Почти все резисторы на 10кОм, но есть пара с другим номиналом так что без мультиметра или таблицы определения номинала по цветовому коду не обойтись.
Следующей проблемой стало размещение части деталей под контроллером. С кварцем и керамическими конденсаторами проблем нет, а вот электролит пришлось класть на бок.
Далее транзисторы и оставшаяся керамика.
Потом дисплей и единственный светодиод который почему-то на плате помечен как D13
Ну и собственно вся плата в сборе, разъем от динамика пришлось откусить потому как производитель забыл положить в набор его ответную часть. Это, кстати, был первый, но не единственный косяк этого набора.
Вторым так сказать косяком стала антенна, а если быть точнее, то ее крепление, ну или полное отсутствие этого самого крепления, как я не искал, так и не нашел в наборе нужного винта,
Пришлось найти вот такую штучку из старых запасов, резьба подошла идеально.
Также решил озаботиться защитой динамика. Там, где нашел винтик для антенны обнаружилась вот такая решетка для кулера.
Немного доработав её напильником и краской из баллончика.
Получил вот такую защитную решетку для динамика. Немного не ровно, но DIY он такой 🙂
Ну и собственно вся конструкция в сборе.
И моя решеточка
Внутри корпуса еще достаточно места вполне можно будет добавить аккумулятор и зарядку, тем более что напряжения питания от 4.5 до 5 вольт.
Первое включение.
За которым сразу последовало небольшое разочарование, о котором стоит рассказать подробнее.
Отображение частоты на индикаторе временное, она показывается около 2-х минут после последнего нажатия на кнопку или после включения радиоприемника и все то время пока светиться индикатор из приемника идет очень и очень сильный фон, который практически полностью заглушает звук самого радио. Как только индикатор гаснет фон сразу превращается и можно вполне наслаждаться музыкой.
Пару слов об управлении, тут все просто красная кнопка это вкл/выкл с фиксацией так что, когда радио выключено оно на самом деле выключено, а это еще один плюс при добавлении к нему аккумулятора.
На настройки частоты радиостанции используются две кнопки, частота меняется с точностью десятых долей мегагерца и с шагом в одну десятую. Автоматического поиска увы нет. За регулировку громкости отвечает переменный резистор на боку приемника.
Видео сборки и тест работы:
Небольшой вывод: если, одним словом, то прикольно. Набор не сложный его реально собрать, не торопясь за пару часов или даже быстрее. Очень понравилось, что сразу в наборе идет корпус, получаешь удовольствие не только от самого процесса сборки, но и от результата получив готовое изделие. Есть и минусы первый из них это опять-таки корпус, с одной стороны хорошо, что пришлось еще немного и напильником поработать, а с другой что мешало сделать вместо того огромного отверстия сразу решетку непонятно, ну и нехватка винтика для антенны, вот вроде бы мелочи, а общую картину портят. Думаю, можно закинуть в корпус 18650 банку, плату зарядки и DC-повышайку и будет нормальный приемник не только для дома. Тем более что прием на улице гораздо лучше, чем в квартире, вот только с фоном нужно разобраться.
Заранее приношу свои извинения за орфографию и грамматику текста, все допущенные ошибки сделаны не специально, а только по незнанию и в связи с несовершенством программ автоматической проверки текстов.
Товар предоставлен для написания обзора магазином. Обзор опубликован в соответствии с п.18 Правил сайта.