Jika Anda menyukai radio FM, maka seperti anda harus mencoba modul TEA5767 Radio FM Stereo ini pada Arduino. Modul ini ditandai dengan konsumsi daya yang rendah, dan lagu ke frekuensi FM dari 76 sampai 108 MHz. Ini memiliki dua P2 (3.5mm) konektor, satu untuk koneksi antena, dan satu untuk koneksi speaker.
Modul TEA5767 FM radio stereo dikendalikan oleh IC TEA5767 ( datasheet ) . komunikasi dibuat dengan Arduino antarmuka I2C hanya menggunakan dua pin. Arduino Uno, pin antarmuka I2C adalah analog pin 4 (SDA) dan 5 (SCL). Mega Arduino pin 20 (SDA) dan 21 (SCL). Sirkuit FM Arduino dengan TEA5767 Untuk menguji modul ini, kita akan membuat sebuah radio FM dengan bahan berikut :
- Arduino Uno
- TEA5767 modul Radio FM
- Layar LCD 16x2
- modul I2C untuk tampilan LCD
- Potensiometer 10 K untuk frekuensi / penyesuaian tala
Sayangnya modul ini tidak memiliki kontrol volume, tetapi kita dapat menghubungkan output audio ke amplifier atau membuat kontrol volume sederhana dengan menggunakan pot. Hanya untuk pengujian, menggunakan headset biasa atau sistem speaker dengan konektor P2.
Menghubungkan komponen seperti diagram di bawah ini. Bagi mereka yang tidak akrab dengan menggunakan modul I2C dengan Arduino, saya sarankan membaca tutorial Cara untuk menggunakan modul I2C dengan layar LCD :
Untuk program ini, kami akan menggunakan library LiquidCrystal_I2C ( Download ) dan TEA5767Radio ( Download ). Unzip file dan mengubah nama folder LiquidCrystal untuk LiquidCrystalI2C salin ke folder library Arduino Ide. Mengubah nama folder mencegah agar program bentrok dengan LiquidCrystal library yang sudah ada didalam IDE. Salin folder TEA5767Radio, simpan ke folder library Ide.
Dalam program ini, kami membaca nilai pot pada port analog A0 dan mengkonversi nilai membaca dengan frekuensi antara 87,5 dan 108. Frekuensi ini digunakan untuk menyetel radio, melalui perintah radio.setFrequency () sejalan 47 program :
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 | // Program: Radio FM modul TEA5767 // Penulis: Arduino dan Co #include <Wire.h> # include <TEA5767Radio.h> # include <LiquidCrystal_I2C.h> TEA5767Radio radio TEA5767Radio = (); double frekuensi = 87,5 ; double frequencia_ant = 87,5 ; LCD LiquidCrystal_I2C ( 0x27 , 2 , 1 , 0 , 4 , 5 , 6 , 7 , 3 , positif); void setup () { Serial.begin ( 9600 ); Wire.begin (); // Informasi Awal lcd.begin ( 16 , 2 ); lcd.setCursor ( 0 , 0 ); lcd.print ( "Arduino FM Radio" ); Serial.println ( "Arduino FM Radio" ); } void loop () { // Membaca informasi dari potensiometer int valor_pot = analogRead (A0); // Hitung frekuensi baru frekuensi = (( ganda ) valor_pot * ( 108.0 - 87,5 )) / 1024,0 + 87,5 ; frekuensi = (( int ) (frekuensi * 10 )) / 10,0 ; // Jika frekuensi berubah, efek perubahan dan // menampilkan informasi baru pada layar jika (frequencia_ant! = Frekuensi) { lcd.setCursor ( 0 , 1 ); lcd.print ( "Freq" ); lcd.setCursor ( 6 , 1 ); lcd.print ( "MHz" ); lcd.setCursor ( 6 , 1 ); lcd.print (frekuensi, 1 ); Serial.print ( "Frekuensi" ); Serial.println (frekuensi); radio.setFrequency (frekuensi); frekuensi = frequencia_ant; } } |
Setiap kali pot diaktifkan, radio disetel ke frekuensi baru dan nilai-nilai diperbarui baik di layar LCD dan monitor serial. Untuk mengontrol garis, Anda juga dapat menggunakan tombol (push-button), atau bahkan encoder.
ganda itu apa ya gan?
BalasHapusmenyambung ke layarnya mana ya?
BalasHapuskalau frekuensinya dari 76 ?trs menampilkan sinyal dan stereo bagaimana gan?
BalasHapusGanda itu maksudnya apa gan?.error di script ganda seperti string ..
BalasHapusganda mungkin maksudnya double, jenis data di C.
BalasHapuske translate otomatis mungkin
Hapusyang if aja ketranslate jadi "jika" :v