아두이노

TEA5767 모듈을 사용한 아두이노 라디오

TEA5767는 표준 FM 스튜디오 및 다중 기능 라디오 수신기 IC입니다. 이 IC는 FM 라디오 수신기를 구축하는 데 사용됩니다. 주요 기능은 다음과 같습니다:

  1. FM 수신: TEA5767은 76MHz에서 108MHz까지의 FM 라디오 주파수를 수신할 수 있습니다. 이를 통해 다양한 라디오 스테이션을 수신할 수 있습니다.
  2. 오디오 출력: TEA5767은 오디오 출력을 위한 내부 오디오 앰프를 포함하고 있습니다. 이를 통해 스피커 또는 헤드폰에 연결하여 음악을 듣거나 오디오를 출력할 수 있습니다.
  3. I2C 인터페이스: TEA5767은 I2C (Inter-Integrated Circuit) 인터페이스를 통해 제어됩니다. 이를 통해 마이크로컨트롤러 또는 다른 주변 장치에서 TEA5767을 제어할 수 있습니다.
  4. 자동 검색 및 저장: TEA5767은 자동으로 라디오 주파수를 검색하고 저장할 수 있는 기능을 제공합니다. 이를 통해 사용자가 쉽게 라디오 스테이션을 찾고 저장할 수 있습니다.
  5. 주파수 제어: TEA5767은 소프트웨어를 통해 주파수를 제어할 수 있습니다. 이를 통해 사용자가 원하는 주파수로 라디오를 조정할 수 있습니다.

이러한 기능을 활용하여 TEA5767를 사용하면 간단하고 효율적인 FM 라디오 수신기를 구축할 수 있습니다.

#include <Wire.h>
#include <TEA5767Radio.h>
#include <LiquidCrystal_I2C.h>  // LCE패널 함수 선언

unsigned char frequencyH = 0;
unsigned char frequencyL = 0;
unsigned int frequencyB;

double frequency = 0;
LiquidCrystal_I2C lcd (0x27,16,2);   

void setup()
{
  lcd.init();           // LCD 초기화
  lcd.backlight();      // LCD 뒷 전등 켬
  Wire.begin();
  frequency = 88.7; //starting frequency
  setFrequency();
  Serial.begin(9600);
  Serial.println(frequency);
}

void loop()
{
  if(Serial.available()) {
    int rc = Serial.read();
    if(rc == '+' && frequency <= 108.0) {
      frequency += 0.1;
      setFrequency();
      Serial.println(frequency);
    } else if(rc == '-' && frequency >= 88.0) {
      frequency -= 0.1;
      setFrequency();
      Serial.println(frequency);
    } 
  }

  // LCD의 커서를 첫번째 열에 첫번째행으로 설정     
  lcd.setCursor(0, 0);

  // 측정된 주파수 값을 LCD에현시
  lcd.print("RADIO FM:");
  lcd.print(frequency);     //주파수
  lcd.print("Hz");
}

void setFrequency()
{
  frequencyB = 4 * (frequency * 1000000 + 225000) / 32768;
  frequencyH = frequencyB >> 8;
  frequencyL = frequencyB & 0XFF;
  delay(100);
  Wire.beginTransmission(0x60);
  Wire.write(frequencyH);
  Wire.write(frequencyL);
  Wire.write(0xB0);
  Wire.write(0x10);
  Wire.write((byte)0x00);
  Wire.endTransmission();
  delay(100);  
}

 

답글 남기기

이메일 주소는 공개되지 않습니다. 필수 필드는 *로 표시됩니다