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:



Fake ATX cu WT7520

Zilele astea am fost solicitat sa repar si apoi sa modific sursa de mai jos la tensiunea maxima ce o poate scoate. Cred ca e cea mai "...