Page 1 of 1

Digital photo frame with Arduino MEGA and 3.5-inch TFT screen

Posted: 10 Apr 2022 16:24
by Levy
Cum scrie in titlul acestui topic, astazi ne vom ocupa de realizarea unei rame foto digitale, intr-un mod cat se poate de simplu.

- In scopul realizarii acestuia, am folosit un Arduino Mega 2560 R3, cumparat de la Optimus Digital(nu fac reclama magazinului, doar mentionez locurile de unde am cumparat componentele !)

Image

- Un ecran TFT de 3.5 inchi, care este conceput special pentru a fi introdus in headerele de pe Arduino MEGA, astfel ocolim folosirea a unui numar destul de mare de conductoare pentru conectarea ecranului de microcontroler. Ecranul TFT a fost cumparat de pe [url]=https://www.aliexpress.com/item/32609807497.htmlAliExpress[/url].

Image

Acest ecran, ca de altfel majoritatea de acest fel, este echipat si cu un modul cititor de card SD, care din cate am citit prin descrierea librariei folosite, cu aceasta librarie ar functiona doar cu un Arduino Mega, desi acest ecran se poate conecta si la alte microcontrolere, chiar daca este creat special pentru Arduino Mega.

Image

Image

Acest ecran foloseste driverele ILI9486. Acest lucru este bine de stiut, pentru ca am cautat vre-o doua ore rezolvarea problemei de afisare a scrisului pe ecran, care-mi aparea oglindit indiferent de ce as fi facut.

Image

Chiar scrie acest lucru pe spatele ecranului ! :haha: Dar daca citeam asta, nu mai pierdeam vremea cautand aiurea pe Google ! :haha:

- Si un card SD, care sa fie formatat cu un sistem de fisiere FAT. Nu am idee ce dimensiune maxima de card SD suporta cititorul de card de pe ecranul TFT de 3.5 inchi.
Pentru a ocoli problemele de necompatibilitate cu cardul SD si cititor, eu am folosit unul de 4Gb, Abia l-am mai gasit printre lucrurile vechi abandonate ! :haha:

Image

Pentru a putea afisa imaginile de pe cardul SD pe ecranul de 3.5 inchi, pentru prima data, trebuie sa formatam cardul SD in format de fisiere FAT (FAT16).
Al doilea pas, va fi pregatirea fisierelor BMP. Imaginile trebuie sa fie intoarse 90*, astfel incat partea stanga a imaginii sa fie in sus, iar imaginea astfel salvata sa aiba rezolutia de 320x480 pixeli, si imaginea poate fi de 24 de biti.

Image

Imaginea astfel obtinuta va avea 451 kb.

Image

Da, este o diferenta afisata, intre ce afiseaza explorerul in fereastra si ce afiseaza acelasi explorer la proprietatile fisierului. Dar asta doar Microsoft stie de ce este asa... :haha: :haha:

De exemplu, o imagine pregatita pentru a putea fi afisata de acest ecran dupa ce l-am inclinat la 90* si i-am redus rezolutia la rezolutia ecranului, arata cam asa

Image

Imaginea este din exemplele din libraria folosita in acest exemplu.

Si daca am ajuns la librarie. Am descarcat libraria necesara de aici. In arhiva sint si exemple cu felul in care se poate folosi aceasta librarie.
Acolo gasiti si codul cu ajutorul caruia se pot afisa imaginile de pe cardul SD.

Codul pe care l-am folosit eu este acelasi din librarii, cu mentiunea ca am adaugat inca cateva fisiere, astfel incat sa se poata afisa 10 imagini, in codul initial se puteau afisa maxim 4 imagini, si-l puteti descarca de pe pastebin.

Pentru a putea afisa mai multe imagini, trebuie sa modificati FILE_NUMBER din cod

Image

in acest caz acesta este setat la 10 fisiere

si sa adaugati numele fiecarui fisier care va fi afisat

Image

In acest caz pentru simplitate s-a mers pe aceste nume de fisiere.

Un scurt video cu rezultatele

phpBB [video]


Ce vreau sa mai mentionez, este ca imaginea este foarte clara, culorile si foarte bune, doar ca in videoclip, camera telefonului cu care a fost filmat acest videoclip , a intampinat dificultati destul de mari. Dungile, interferentele etc... care se vad pe ecran, nu sint vizibile cu ochiul liber. Imaginea este foarte clara, camera nu a redat corect ce se vede in realitate.

Montajul este foarte simplu de realizat, nefiind necesara cunostinte prea elaborate, practic se infige ecranul in headerele Arduino, bineinteles cu cardul SD pregatit si infipt in spatele ecranului, aici as vrea sa va atrag atentia, trebuie introdus bine de tot, pana simtit ca trece cardul de un mic hop, altfel veti avea surpriza sa nu recunoasca cardul etc, si veti cauta in partea software o problema care nu are nici o legatura cu softwareul. Spun asta din experienta :haha: Am formatat de cateva ori cardul, inainte sa realizez ca de fapt cardul nu a fost impins corect in cititorul de carduri.

Spor la bricolat !