Potřeboval bych poradit s následující věcí: Mám maticový RGB LED displej, na kterém je 8x8 RGB diod, tedy 64 červených, 64 zelených a 64 modrých diod. Potřeboval bych tento displej řídit mikrokontrolérem a to pomocí PWM pro každou diodu samostatně(!), tedy aby šlo každou diodu samostatně rozsvěcet a stmívat. Displej má celkem 32 vývodů, 8x společná anoda, 3x8 katoda. Vývody budou k mikrokontroléru připojeny nejspíš pomocí 4 8-bitových posuvných registrů a to asi ještě přes spínací tranzistory. Teď mi jde o to, jak zrealizovat PWM pro každou diodu samostatně..?
Když to fungovalo loni, musí to fungovat letos taky.
Kouknul jsem se na datasheet, ale moc moudrý z toho nejsem. Nedalo by se to zrealizovat jen pomocí posuvných registrů? Mám na mysli, že by se stav každé diody (zapnuto/vypnuto) průběžně aktualizoval s frekvencí třeba 1 kHz (nevím, jestli taková frekvence je dostažitelná) a podle toho jaký by se nastavil poměr signál/střída by se dioda zapínala třeba jen na každý druhý/pátý/desátý interval.
Když to fungovalo loni, musí to fungovat letos taky.
Co je na tom nesrozumitelné? Přiložíš data a hodinovým pulzem zapíšeš. Nastavíš tak řádek a sloupec a dioda v průsečíku bude svítit. Výstupní proud trvale 25mA.
Naposledy upravil(a) serviceman dne 28 lis 2013, 19:30, celkem upraveno 1 x.
Měl bych ještě jeden dotaz k této věci: Řídím maticový displej za pomoci obvodu pro multiplexing (nastavuje řádek) a posuvných registrů (nastavují sloupce). Každý řádek má 8 diod a jejich společná anoda je spínána přes tranzistory (BC327, PNP). Nyní je ale problém v tom, že úbytek napětí na tranzisoru závisí na protékajícím proudu, tedy na počtu svítících diod. Pokud svítí pouze 1 dioda, úbytek napětí je malý a dioda bude svítit víc, než když bude svítit všech 8. Rozdíl není velký, ale jde to poznat. Jak by se do dalo vyřešit? Nechtěl bych to dělat cestou spínání diod jednotlivě, svítily by příliš slabě (1/64 intervalu).
Když to fungovalo loni, musí to fungovat letos taky.
A jaký je proud jednotlivýma LEDkama? Problém bude podle mě v poddimenzovaném tranzistoru. Přecijen v multiplexním ovládání musí být okamžitý proud rozsvícenou diodou mnohem větší než je střední hodnota proudu jednotlivým adiodama. A pokud jeden tranzistor spíná až 8 LEDek, tak například při impulsním proudu 100mA/segment je proud tranzsitorem 100 až 800mA a tam je pak znát úbytek napětí při použití malého tranzistoru BC327.