Descriere generală
Principalele module ale proiectului sunt:
Hardware:
Matricea de leduri 2 culori
Blocul de control al matricii
Interfata de comunicare RS232
3 shiftere 74HC164
Software:
Hardware Design
Software Design
Mi-am propus sa controlez un anumit set de led-uri. Pentru fiecare led trebuie sa activez 2 pini ce apartin matricei 0 respectiv 1 pe anod si catod.
Fiecare din cei 3 shifteri este conectat print-un clock si un pin de date la microcontroller. Pentru a trimite data la shifteri trebui sa am un front de ceas pozitiv, dupa cum se poate observa si în diagrama de semnal a shifterului.
De exemplu : daca pun 1 pe pinul 1 si 0 pe pinul 22 → se va aprinde becul verde pe de linia 1 coloana 5).
Pentru programarea ATMega programele vor fi scrise in limbajul C - folosind compilatorul agr-gcc. Pentru compilare am folosit comanda”
$ avr-gcc -mmcu=atmega16 -Os -g -Wall -o first.elf nume_sursa.c
$ avr-objcopy -j .text -j .data -O ihex first.elf first.hex
Pentru a scrie .hex -ul pe microcontroler am folosit un convertor RS232-USB si am folosit urmatoarea comanda:
$ sudo avrdude -c ponyser -p m16 -P /dev/ttyUSB0 -U flash:w:first.hex
Programarea va fi facuta in doua etape:
Pentru retinerea mesajului ce va fi afisat cel mai probabil voi folosi un vector de caractere dat fiind ca o coloana a matricei are dimensiune 8 (egala cu numarul de biti ai unei variabile de tip char)
Pentru inceput se va seta un timer care sa se activeze la o perioada de timp suficient de mica astfel incat sa poata fi folosita tehnica “persistence of vision”. La fiecare activare a timer-ului se va furniza la iesire pe portul D coloana curenta din cadrul curent al animatiei. Aceasta actiune se va repeta de un numar de ori, dupa care se va trece la urmatorul cadru al animatiei.
Protocolul de comunicare va fi unul de tip stop and wait in care se va trimite o instructiune prin intermediul interfetei seriale, se va astepta raspunsul la instructiune, dupa care se vor putea trimite noi instructiuni.
Rezultate Obţinute (etapa 3)
Concluzii (etapa 3)
Bibliografie/Resurse