joi, 21 iulie 2016

Radio FM cu RDA5807 si.. Arduino


   Fata de modulul de radio FM cu integrat TEA5767, cel cu RDA5807 are in plus control digital al volumului in 16 trepte (0 la 15) si ofera informatii RDS transmite de cele mai multe posturi (frecventa, nume post radio, alte informatii), dar se alimenteaza la 3,3V.
   Modulul FM are aceeasi dimensiuni si aceiasi configuratie a pinilor ca si la TEA5767, cu conexiuni la 2mm distanta la care am facut un modul adaptor la pas de 2,54mm:
 
   Desi sunt cateva site-uri cu informatii, m-am oprit la unul rusesc (http://full-chip.net/arduino-proekty/97-cifrovoy-fm-priemnik-na-arduino-i-module-rda5807-s-graficheskim-displeem-i-funkciey-rds.html)
care urmatoarea schema:
   Dupa ce am studiat sketch-ul, am constatat ca are elemente de limba spaniola, asa ca am dat de materialul dupa care s-a inspirat rusul: Arduino Radio RDA5807 con RDS LCD Nokia 3310
   Am incarcat sketch-ul din articolul rusesc, cu mici modificari la conectarea afisajului, schema devenind:
   Am folosit mufa jack sterea de la modulul cu TEA5767 si montajul arata asa:
   Pe ecran am informatiile, functie de meniul in care sunt:
- cautare automata:
- informatii:
- cautare manuala:
- volum (de la 0 la 15):
   Am facut si niste filmulete, fara a conecta un sistem de amplificare audio:
  
   Versiunea optimizata a programului, care afiseaza frecventele mai mici de 100MHz ca 89,5MHz nu 089.5MHz este RDA5807_fmradio_3buttons_ver0.ino.
   Ulterior, am pus si un sistem audio, dupa cum se vede in filmuletul radio FM cu RDA5807 si afisaj de Nokia 5110 (3)
   Am modificat sketch-ul pentru a avea si memorarea frecventei si nivelului volumului, acesta devenind RDA5807_fmradio_3buttons_ver1.ino
   La prima incarcare se activeaza liniile pentru scrierea unor valori initiale:
apoi se dezactiveaza:
   In filmuletul radio FM cu RDA5807 si afisaj de Nokia 5110 (4) se vad noile facilitati:

miercuri, 13 iulie 2016

Radio FM cu TEA5767 si.. Arduino (VI)

   In articolul precedent am folosit o placa de dezvoltare Arduino Mega, dar pentru a putea trece, ulterior, proiectul pe un cablaj separat, am adaptat schema pentru Arduino Uno.
   Schema devine:
   Modificarile se datoreaza modului diferit de pozitionare a anumitor pini "specializati" la Arduino Uno (si derivate):
- pentru comunicatia i2c necesara modului radio cu TEA5767 pinii SDA si SCL sunt A4, respectiv A5
- pentru comunicatia SPI necesara potentiometrului digital dublu MCP4261-502E/P, pinii sunt SCK=D13(SCK), SDO=D12(MISO), SDI=D11(MOSI) si CS=D10(SS).
   Ca si pentru versiunea cu Arduino Mega, am pastrat memorarea frecventei si treapta volumului inainte de oprire, sketch-ul fiind MCP4261_lin_to_log_Nokia5110_2m3.ino.
   Pe ecran, functie de volum, frecventa, nivel semnal pot apare diverse indicatii:
   In filmuletul radio FM cu TEA5767 si volum digital cu afisaj de Nokia 5110 (4) am prezentat cum se "manevreaza" radio-ul si faptul c amemoreaza frecventa si nivelul sonor de la ultima folosire..


marți, 12 iulie 2016

Radio FM cu TEA5767 si... Arduino (V)

   Fata de schemele anterioare de radio cu TEA5767, acum am implementat volum digital, in 16 trecte, dar se pot pune si mai multe sau mai putine...
   Schema de conexiuni e un pic complexa, avand in componenta o placa Arduino Mega, un afisaj de Nokia 5110 cu interfata, un modul radio cu TEA5767 si un potentiometru digital dublu MCP4261-502E/P:
   Sketch-ul folosit este TEA5767_eeprom_i2c_lcdNokia5110_digitalvolume_3m2.ino si permite controlul volumului din 2 taste fara retinere, cautarea inainte si inapoi, memorarea valorii volumului si a ultimei frecvente.
   pe ecran, se pot vedea urmatoarele situatii:
   Am facut si niste filmulete in care se vede mai bine modul de functionare:
radio FM cu TEA5767 si volum digital cu afisaj de Nokia 5110
radio FM cu TEA5767 si volum digital cu afisaj de Nokia 5110 (2)
TEA5767 FM radio with digital volume and Nokia 5110 display

Radio FM cu TEA5767 si... Arduino (IV)

   Intr-un vechi articol din 2013, am conectat un afisaj de Nokia 5110 la radio FM facut cu TEA5767 si o placa Arduino Uno, de data asta am folosit un Arduino Mega pentru a putea implementa usor si un reglaj de volum..

   Schema folosita este:
   Fata de ce am prezentat in vechiul articol, care are urmatoarea prezentare grafica pe ecran:
acum arata asa:
iar modul de functionare este similar, doar ca datele sunt stocate in memoria EEPROM a microcontrolerului de pe placa de dezvoltare (se memoreaza frecventa postului ascultat - sketch: TEA5767_eeprom_i2c_lcdNokia5110_3m1a.ino), dupa cum se vede si in cele 2 filmulete:


luni, 11 iulie 2016

Potentiometru MCP4261 cu variatie logaritmica (2)

   Pentru a putea vedea mai multe informatii despre potentiometrul digital dublu MCP4261-502E/P am inlocuit afisajul alfanumeric LCD1602 cu interfata i2c cu un afisaj de Nokia 5110 (cu controler PCD8544).
   Conform celor testate anterior si prezentate in articolul Afisajul folosit la telefoanele Nokia 5110/3310 si Arduino schema mea de test devine:
   Afisajul meu de Nokia 5110 (controler PVD8544) este montat pe o placuta adaptoare care are pe ea un sistem simplu de reducere a tensiunii de alimentare la cca 3V (pentru a nu conecta din greseala la 5V), rezistentele pentru a putea lucra cu nivele logice de 5V si jumperi pentru aprindere led fundal (initial schema era cu aprindere la 5V, apioi am realizat ca este la masa):
   Revenind la testele cu potentiometrul digital, am modificat sketch-ul, acesta devenind MCP4261_lin_to_log_Nokia5110_2.ino din care se vede cum variaza tensiune de la iesire fata de pozitia cursorului pe un potentiometru:
 
 
 
si am facut 2 filmulete:

apoi am adaugat si tensiunea de iesire a celuilalt potentiometru, observandu-se si mici diferente
dupa cum se vede si in cele 2 filmulete:

   Am facut mici modficari (sketch-ul devenind  MCP4261_lin_to_log_Nokia5110_2m1.ino)pentru a prezenta grafic variatia tensiunii de iesire:
dupa cum se vede si in filmuletele:
   Am facut mici schimbari sa am doar o curba:
   Pentru a fi mai clar, am trasat o variatie liniara si cea a tensiunii de la iesirea potentiometrului, facand modificari in sketc, care devine MCP4261_lin_to_log_Nokia5110_2m3.ino