luni, 12 februarie 2018

Radio cu RDA5807 pe OLED I2C

La solicitarea unui prieten am pornind de la articolul anterior si am adaptat codul initial pentru afisare pe display OLED I2C. Urmeaza a fi ascuns intr-un radio decedat.
Am renuntat la afisarea canalului in favoarea unei dimensiuni mai mari pentru frecventa.
Din informatiile oferite de functia RDS am renuntat la afisarea orei pentru ca nu am gasit nici un post de radio care sa transmita ora actualizata.
Restul a ramas cam la fel, adica la apasarea butonului meniu trecem din acord automat, in manual, si apoi in reglaj volum.
Schema cu utilizare cu oled devine:
Eu am folosit un arduino micro pe care l-am alimentat la 3,3V
Codul actualizat este pe github, impreuna cu biblioteca lui RDA5807 care este utila in aceast caz doar pentru functionarea functiei de RDS. Partea initiala de cod pentru RDS nu am reusit s-o adaptez pentru o afisare corespunzatoare. 

Imagini de la teste:
 Pe display in dreapta sus am afisat nivelul semnalui receptionat. Ca antena acum are un fir de circa 10cm
 Deoarece m-a secat breadboard-ul utilizat (pene de contact) am procedat la lipirea firelor de conexiune
Update:
Confom unor observatii library-ul folosit era setat pe 128/32, motiv pentru care afiseaza elativ ciudat.
Deci fisierul Adafruit_SSD1306.h trebuie editat  sa arate astfel:
/*=========================================================================
    SSD1306 Displays
    -----------------------------------------------------------------------
    The driver is used in multiple displays (128x64, 128x32, etc.).
    Select the appropriate display below to create an appropriately
    sized framebuffer, etc.

    SSD1306_128_64  128x64 pixel display

    SSD1306_128_32  128x32 pixel display

    SSD1306_96_16

    -----------------------------------------------------------------------*/
   #define SSD1306_128_64
  // #define SSD1306_128_32
 // #define SSD1306_96_16
/*=========================================================================*/
Insa in aceasta situatie codul devine prea mare (110%). asa ca m-am mobilizat si am adaptat codul scris initial pentru RDS ocazie cu care am renuntat la biblioteca RDA5807 pe care am folosit-oinitial doar pentru functia RDS. Astfel am reusit sa compilez codul pentru arduino micro.
"Design-ul" a devenit:



4 comentarii:

  1. RDA5807 stie sa functioneze intre 50 MHz si 115 MHz. Poti te rog sa imi spui cum sa modific programul incat sa mearga intre cele doua extreme 50 - 115 MHz? Multumesc.
    Daniel danielromila@gmail.com VE7LCG

    RăspundețiȘtergere
    Răspunsuri
    1. Salut
      Datele de catalog afirma altceva:
      "Support worldwide frequency band - 76 -108 MHz"
      http://www.i-biznes.com/datasheets/RDA/RDA5807P_1.0.pdf

      Ștergere
    2. Modulul radio RDA5807 folosit de tine nu are circuitul integrat de care imi spui (RDA5807P - varianta corecta este RDA5807M).

      Fisa de catalog a circuitului integrat folosit in modul este RDA5807M, si poate fi gasita la:http://cxem.net/tuner/files/tuner84_RDA5807M_datasheet_v1.pdf

      Fisa declara ca RDA5807M merge intre 50-115 MHz. Fisa data de tine este de la alt circuit integrat, care este si in alt fel de capsula.

      Multumesc.

      Daniel VE7LCG

      Ștergere
    3. cind voi mai prinde un modul din asta voi studia si acest aspect.

      Ștergere

Radio cu TEA5767 cu afisare pe TFT 1,44" si reglaj de volum

Am pornit de la un p roiect mai vechi  care a fost adaptat dupa informatiile gasite pe blogul unui neamt , la care am adaptat din nou afisa...