Dupa cum scrie in titlu, ne vom ocupa de salvarea datelor in EEPROM, pentru mine este prima incercare.
Ideea mi-a venit saptamana trecuta, cand avand de lucru cu niste proiectoare RGB, care erau comandate de telecomenzi cu infrarosu, am avut neplacuta surpriza, ca dupa pornire aceste proiectoare intotdeauna porneau pe culoarea rosie, dupa care culorile erau complet aleatorii. Cu asa ceva, era destul de greu de proiectat culorile drapelului Ukrainei pe o cladire. Deci explicat mai detaliat, dupa ce se setau culorile la fiecare proiector in parte, dupa ce decuplai tensiunea si porneau proiectoarele, nu mai aveai drapelul, ci culori in ordine aleatoare, porneau pe rosu, dupa care lua lucorile la rand. In primul rand nu era o culoare statica (se schimbau continuu) iar in al doilea rand nu memora ultima culoare, sau o culoare memorata pe care o doreai, astfel incat sa poti proiecta ce culori vrei pe pereti.
M-am gandit ca nu poate fi atat de complicata memorarea culorii a nuantei si a luminozitatii proiectorului, si pentru asta am incercat sa fac asta in Arduinoi in loc de proiectoare, pentru teste am folosit o bucata de banda WS2812B la 5V, ramasa din alt proiect. Mai multe detalii despre acel priect aici. Dar sa revenim la oile noastre, adica la ledurile noastre.
Schema electrica o puteti vedea aici:
Iar codul pe care l-am incarcat in Arduino i-l puteti gasi aici, sau in descrierea videoclipului.
Un videoclip scurt cu functionarea acestui mic montaj.
Necesar pentru o realizare rapida a acestuia aveti nevoie de:
- un breadboard
- un modul sursa de alimentare 5V pentru arduino
- un arduino nano sau un alt microcontroled compatibil
- un senzor de infrarosu
- o telecomanda in infrarosu
- o bucata de banda led WS2812B la 5V, eu am avut doar 39 de leduri pe sir
- cateva fire, pentru conexiuni
Montajul este de dificultate minima, astfel cred ca orice incepator i-l poate realiza, intr-un timp relativ scurt, si cu investitii minime.
Se poate folosi orice telecomada cu infrarosu, insa in cazul folosirii unei alte telecomenzi decat cea din acest video, va fi necesara capturarea cheilor in consola seriala, este inclusa si aceea parte in codul acestui montaj, si inlocuirea tastelor din acest cod cu cele pe care le vreti de la telecomanda diferita.
Spor la bricolat !
Cum salvam date in EEPROM si cum le citim si utlilizam
- Levy
- Gold User
- Posts: 1581
- Joined: 02 Oct 2013 15:07
- Location: ABSURDISTAN
Cum salvam date in EEPROM si cum le citim si utlilizam
Dacă ai tăiat și ultimul copac, ai otrăvit și ultimul râu și ai prins și ultimul pește, ai să fi uimit să constați că banii nu sunt comestibili !
- delta2k2
- Site Admin
- Posts: 1990
- Joined: 11 Sep 2013 15:18
- Location: Over the rainbow ...
Re: Cum salvam date in EEPROM si cum le citim si utlilizam
Doar o completare privind EEPROM size:
ATmega328P are 1024 bytes
ATmega168 and ATmega8 are 512 bytes
ATmega1280 and ATmega2560 are 4 KB (4096 bytes)
Deci, atenție la ce adresă scrieți datele.
ATmega328P are 1024 bytes
ATmega168 and ATmega8 are 512 bytes
ATmega1280 and ATmega2560 are 4 KB (4096 bytes)
Deci, atenție la ce adresă scrieți datele.
- Levy
- Gold User
- Posts: 1581
- Joined: 02 Oct 2013 15:07
- Location: ABSURDISTAN
Re: Cum salvam date in EEPROM si cum le citim si utlilizam
In acest caz a fost folosit un arduino nano cu un microcontroler ATmega328P.
ATENTIE !!!
In acest video si in documentatie, a intervenit o eroare !
Pentru ca schema electrica am facut-o in tinkercad, sirul de leduri adresabile, are terminalele desenate in tinkercad in mod cu totul altfel decat sint ele dispuse in realitate !
Nu stiu daca in realitate exista sir de leduri care sa aiba conexiunile in acest fel.
In realitate, sirul de leduri, cel putin pe care-l am acum la dispozitie, are conexiunile in acest fel
Care dupa cum vedeti, este complet diferit de cea din tinkercad !
Deci, daca vreti sa faceti acest test, atentie la ce scrie pe banda led pe care o aveti la dispozitie, si conectati corect
GND la GND,
+5V la +5V
si pinul de control, la pinul digital definit in softwareul incarcat in arduino.
ATENTIE !!!
In acest video si in documentatie, a intervenit o eroare !
Pentru ca schema electrica am facut-o in tinkercad, sirul de leduri adresabile, are terminalele desenate in tinkercad in mod cu totul altfel decat sint ele dispuse in realitate !
Nu stiu daca in realitate exista sir de leduri care sa aiba conexiunile in acest fel.
In realitate, sirul de leduri, cel putin pe care-l am acum la dispozitie, are conexiunile in acest fel
Care dupa cum vedeti, este complet diferit de cea din tinkercad !
Deci, daca vreti sa faceti acest test, atentie la ce scrie pe banda led pe care o aveti la dispozitie, si conectati corect
GND la GND,
+5V la +5V
si pinul de control, la pinul digital definit in softwareul incarcat in arduino.
Dacă ai tăiat și ultimul copac, ai otrăvit și ultimul râu și ai prins și ultimul pește, ai să fi uimit să constați că banii nu sunt comestibili !
- Levy
- Gold User
- Posts: 1581
- Joined: 02 Oct 2013 15:07
- Location: ABSURDISTAN
Re: Cum salvam date in EEPROM si cum le citim si utlilizam
Ca o curiozitate, am sa pun si preturile componentelor, care au fost cumparate acum cateva luni, si deja nu le mai gasim la asemenea preturi, nici macar pe AliExpress.
Dacă ai tăiat și ultimul copac, ai otrăvit și ultimul râu și ai prins și ultimul pește, ai să fi uimit să constați că banii nu sunt comestibili !
Who is online
Users browsing this forum: No registered users and 32 guests