Proszę bardzo, poniżej przedstawiam schemat sterownika oraz użytej matrycy. Wszystko jest zasilane z napięcia 5V.


Ogólnie to tranzystory PNP sterują wierszami matrycy (a raczej powinny sterować), a rejestr steruje kolumnami. Rezystor na kolumnach został dobrany jako 33ohm ponieważ prąd dla jednego piksela przyjąłem I=20mA, U=5V, spadek dla pojedynczej diody czerwone 2,2V tyle że piksel składa się z dwóch takich diod więc spadek przyjąłem 4,4V. Problemem jest jednak to, że tranzystory nie są dobrze sterowane przez program... Zmieniłem definicje pinów na to aby były sterowane "ZERAMI", ale nic nie pomogło.
#define RowPort PORTD
#define RowDDR DDRD
#define RowPin0 (0 << 0)
#define RowPin1 (0 << 1)
#define RowPin2 (0 << 2)
#define RowPin3 (0 << 3)
#define RowPin4 (0 << 4)
#define RowPin5 (0 << 5)
#define RowPin6 (0 << 6)
#define RowPin7 (0 << 7)
Później robiłem jeszcze kilka innych mniej lub bardziej świadomych operacji na kodzie ale też nic nie pomogło

Układ wpięty bezpośrednio wiersze matrycy=>PortD z mikrokontrolera działa. Tylko jasność jest tak słaba że nawet w nocy ledwo co widać. Związane to jest z ograniczeniem prądowym na porcie atmegi. Dlatego chce zastosować Tranzystory PNP do sterowania anodami na wierszach matrycy...
P.S.
A i tak to wygląda w rzeczywistości... Wstyd trochę pokazywać ze względu na bajzel ale wszystko styka/łączy.

