• Skip to primary navigation
  • Skip to main content
  • Skip to primary sidebar
  • Skip to secondary sidebar
  • Skip to footer

У Павла!

  • Контроллеры
    • Arduino
      • Приборы
      • Музыка
      • Проекты Arduino
      • Уроки Arduino
      • Игры на Arduino
      • Роботы на Ардуино
      • FLProg
    • Одноплатные ПК
      • Orange pi
      • Raspberry pi
        • Raspberry pi pico
        • Raspberry pi server
        • Проекты Raspberry pi
    • ESP
      • ESP8266
        • NodeMCU
      • ESP32
      • M5stack
    • Другие контроллеры
      • STM32
  • Умный дом
    • Home Assistant
      • Автоматизации
    • Tuya
    • Bluetooth
    • ESPHome
    • Frigate
    • Telegram
    • Яндекс
  • ЧПУ
  • 3d печать
  • Об авторе

TEA5767. Делаем Fm Radio на Arduino.

4 февраля, 2017

Для этого нам понадобится:

TEA5767: http://ali.ski/5kmDOO

 

Скетч: https://yadi.sk/d/mpoiVteF33wMEz
Библиотека TEA5767: https://yadi.sk/d/XtjemqVy33wMbj

Библиотека для Button: https://yadi.sk/d/-WspeGopGnshCA
Даташит:https://yadi.sk/i/K7Uh7nW133wMjf

Прежде чем приступить к материалу, я Вас попрошу, если нравится то, что я делаю и хотите следить за моей деятельностью, то рекомендую подписаться на мой телеграмм канал: https://t.me/ypavla
Там я публикую новости о вышедших видео, статьях и разные устройства для умного дома и не только показываю.
Спасибо за внимание, теперь продолжим.

 

В данном примере рассмотрим реализацию FM радио на ардуино с помощью специального датчика TEA5767.

Данный датчик подключается к Arduino по шине i2c.

Сам даташит датчика выложен по ссылке приведенной выше, можете скачать и ознакомиться с возможностями данного датчика.

Схема подключения всех компонентов приведена в начале статьи.

После подключения всех компонентов по схеме необходимо скопировать программный код приведенный ниже и вставить его в программу Arduino IDE и загрузить этот программный код в саму плату Arduino.

#include <TEA5767.h>
// from https://github.com/andykarpov/TEA5767
#include <Wire.h>
#include <Button.h>
// from http://arduino-info.wikispaces.com/HAL-LibrariesUpdates
#include <LiquidCrystal_I2C.h>
LiquidCrystal_I2C lcd(0x27,16,2); // adress is 0x20 for LCD16x2
// adapted sketch by niq_ro from http://nicuflorica.blogspot.ro
// version 2.0

TEA5767 Radio;
double old_frequency;
double frequency;
int search_mode = 0;
int search_direction;
unsigned long last_pressed;

Button btn_forward(11, INPUT);
Button btn_backward(12, INPUT);

void setup() { 
 Wire.begin();
 Radio.init();
 Radio.set_frequency(101.2); 
 Serial.begin(9600);
 lcd.init();
 lcd.backlight(); //backlight is now ON
 lcd.begin(16,2);
 lcd.clear();
}

void loop() {

unsigned char buf[5];
 int stereo;
 int signal_level;
 double current_freq;
 unsigned long current_millis = millis();

 if (Radio.read_status(buf) == 1) {
 current_freq = floor (Radio.frequency_available (buf) / 100000 + .5) / 10;
 stereo = Radio.stereo(buf);
 signal_level = Radio.signal_level(buf);
 lcd.setCursor(0,0);
 lcd.print("FM: "); lcd.print(current_freq);
 lcd.print("MHz ");
 lcd.setCursor(0,1);
 if (stereo) lcd.print("STEREO "); else lcd.print("MONO ");
 lcd.print(signal_level);
 lcd.print("/15 ");
 }

 if (search_mode == 1) {
 if (Radio.process_search (buf, search_direction) == 1) {
 search_mode = 0;
 }
 }

 if (btn_forward.isPressed()) {
 last_pressed = current_millis;
 search_mode = 1;
 search_direction = TEA5767_SEARCH_DIR_UP;
 Radio.search_up(buf);
 delay(500);
 }

 if (btn_backward.isPressed()) {
 last_pressed = current_millis;
 search_mode = 1;
 search_direction = TEA5767_SEARCH_DIR_DOWN;
 Radio.search_down(buf);
 delay(500);
 } 
 delay(100);
}

Скетч:https://yadi.sk/d/NdwWVh5Hf-P8pw

Демонстрация работы данной программы можно увидеть в видео приведенном в конце статьи.

Видео:

Primary Sidebar

Поиск

Новые записи

  • Автоматизация перезагрузки устройства по команде Ping.
  • Разблокирование и добавление шлюза Xiaomi gateway 3 в Home Assistant для управления Bluetooth устройствами из экосистемы Xiaomi Home (mihome)
  • Интеграция для локального управления (без интернета) ик пультом Tuya работающим по wifi из Home Assistant
  • Транслируем показания с Уличного Bluetooth Датчика температуры по BTHome на дисплей датчика температуры XIaomi LYWSD03MMC
  • Заставляем Bluetooth датчики температуры tuya и xiaomi отправлять данные по Zigbee в Home Assistant.

Официальный YouTube Канал M5Stack:

Подписывайтесь на Телеграм канал

https://t.me/ypavla

Подписаться на YouTube!

Secondary Sidebar




Подписывайтесь на Telegram Канал!

У Павла!

Footer

Copyright_У Павла! © 2025 ·