RGB Leddisplay
RGB Leddisplay
Jahapp... då va schemat för min rgb leddisplay klar, ska etsa det så fort jag får tid, tänkte bara slänga upp det här för att se om det är nått ni har några sympunkter på saker som behövs ändras...
(Varning för stor bild)
http://skogalund.no-ip.com/~detraw/rgb_leds.bmp
Jag tänkte tända en led i taget, jag hoppas att atmega128:an är snabb nog att gå igenom alla 18 led utan att det ser ut som de blinkar, tänkte köra den på 16MHz. Jag vet att man skulle kunna multiplexa (eller vad det nu heter) för att slippa använda upp så många I/O pinnar, men eftersom den ända ytmonterade AVRen jag hade hemma var en mega128 och den har tillräckligt med I/O pinnar så sket jag i det
Så vad tror ni, verkar schemat bra?
Tackar /Daniel
(Varning för stor bild)
http://skogalund.no-ip.com/~detraw/rgb_leds.bmp
Jag tänkte tända en led i taget, jag hoppas att atmega128:an är snabb nog att gå igenom alla 18 led utan att det ser ut som de blinkar, tänkte köra den på 16MHz. Jag vet att man skulle kunna multiplexa (eller vad det nu heter) för att slippa använda upp så många I/O pinnar, men eftersom den ända ytmonterade AVRen jag hade hemma var en mega128 och den har tillräckligt med I/O pinnar så sket jag i det
Så vad tror ni, verkar schemat bra?
Tackar /Daniel
När du har lysdioderna i en matris och bara ska ha varje lysdiod tänd 1/18 av tiden så måste du ha ganska hög ström, brukar väl stå ca 100mA toppström i databladen. Jag tror inte din ATmega gillar att leverera 100mA på en pinne ?
En idé kan vara att tända alla gröna samtidigt, sedan blå och sedan röda. Då behöver du bara 1/3 av tiden för varje diod och kan sänka strömmen lite. Sedan kan du sätta tre små npn transistorer på pinne 30, 31 respektive 32 på avr:en. En annan fördel är att du då kan justera tiden för varje färg individuellt, jag antar att blå lyser lite svagare till exempel ?
Bara en idé som sagt, kan funka
En idé kan vara att tända alla gröna samtidigt, sedan blå och sedan röda. Då behöver du bara 1/3 av tiden för varje diod och kan sänka strömmen lite. Sedan kan du sätta tre små npn transistorer på pinne 30, 31 respektive 32 på avr:en. En annan fördel är att du då kan justera tiden för varje färg individuellt, jag antar att blå lyser lite svagare till exempel ?
Bara en idé som sagt, kan funka
aj det va som fan... då gäller det att lägga på tre stycken transistorer....
Jag tänkte först ha det så att man tände en färg för sig, men kom fram till att jag då inte kan ha olika färger på varje leds då, vill ju kunna trycka ut t ex rosa (hmm föresten kan man få en rgb led att lysa rosa?) på första dioden och sen gul på den andra osv...
Om jag ska ha kvar som jag har nu och kunna tända varje led inviduellt, visst behöver jag fortfarande bara tre transistorer, en på varje "färg" pinne på AVRen?
Tackar /Daniel
Jag tänkte först ha det så att man tände en färg för sig, men kom fram till att jag då inte kan ha olika färger på varje leds då, vill ju kunna trycka ut t ex rosa (hmm föresten kan man få en rgb led att lysa rosa?) på första dioden och sen gul på den andra osv...
Om jag ska ha kvar som jag har nu och kunna tända varje led inviduellt, visst behöver jag fortfarande bara tre transistorer, en på varje "färg" pinne på AVRen?
Tackar /Daniel
just fasen, hmm det hade jag missat helt... Men om alla leds ska tända sin t ex blåa led olika lånd tid blir det inte lättare i koden då att tända varje led för sig, hmm kanske det inte är, har väl inte vaknat än... Men om jag sätter på tre npn transistorer så borde jag väl senare kunna välja om jag ska tända en eller flera leds på samma gång?
Tackar /Daniel
Tackar /Daniel
Här kommer då det nya schemat, visst var det så här du menade? några andra saker jag borde se över innan jag etsar det?
(stor bild igen)
http://skogalund.no-ip.com/~detraw/rgb_leds2.bmp
Tackar /Daniel
EDIT: lad till länken till schemat
(stor bild igen)
http://skogalund.no-ip.com/~detraw/rgb_leds2.bmp
Tackar /Daniel
EDIT: lad till länken till schemat
Jag har inget datablad till ledsen, men 100mA verkar väl rimligt, då behöver jag alltså en transistor på minst 0.5W (5V * 0.1A) hittade denna: 71-312-95 (den är på 1W)
Aha ok så då behöver jag alltså 2 motstånd för varje färg.. alltså ett på 4V (inte 5V?) / 0.1A * 100 = 40 * 100 = 4000ohm, hehe bra gissat på 4kOhm strombom
Tackar /Daniel
Aha ok så då behöver jag alltså 2 motstånd för varje färg.. alltså ett på 4V (inte 5V?) / 0.1A * 100 = 40 * 100 = 4000ohm, hehe bra gissat på 4kOhm strombom
Tackar /Daniel
Transistorns effektförlust = spänningsfallet över transistorn gånger strömmen genom den. Resten av effektförlusten hamnar i lysdioden och (antagligen mest) i motståndet som begränsar strömmen genom lysdioden. Tillsammans
blir detta 1W när trissan är på, men det är den väll inte hela tiden ? Momentent kan alla inblandade komponenter klara en högre effekt, bara de får "vila" imellanåt...
blir detta 1W när trissan är på, men det är den väll inte hela tiden ? Momentent kan alla inblandade komponenter klara en högre effekt, bara de får "vila" imellanåt...
kanon
Jag hittade ett datablad till ett par andra ytmonterade rgb leds på elfa, men det borde väl va ungefär samma som för mina, där står det för den blåa diode t ex Peak Forward Current(Duty 1/10 @ 1kHz) = 70mA... Det betyder väl att man kan mata den med max 70mA om man pulsar den i 1kHz och har den tänd 1 period och släckt 9 perioder??
Så hur mycket ska man mata de med? och hur snabbt borde man uppdatera de? 100Hz som strombom sa, eller ska man göra det i 1kHz?
Oavsett om man först tänder den röda leden i varje LED och sen den gröna osv.. eller om man först tänder röd, sen grön, sen blå i den första och sen tar den andra, tar det väl lika lång tid?
Jag hittade ett datablad till ett par andra ytmonterade rgb leds på elfa, men det borde väl va ungefär samma som för mina, där står det för den blåa diode t ex Peak Forward Current(Duty 1/10 @ 1kHz) = 70mA... Det betyder väl att man kan mata den med max 70mA om man pulsar den i 1kHz och har den tänd 1 period och släckt 9 perioder??
Så hur mycket ska man mata de med? och hur snabbt borde man uppdatera de? 100Hz som strombom sa, eller ska man göra det i 1kHz?
Oavsett om man först tänder den röda leden i varje LED och sen den gröna osv.. eller om man först tänder röd, sen grön, sen blå i den första och sen tar den andra, tar det väl lika lång tid?
Angående effekten i transistorn: den äkommer att vara ca: 20mWpeak!
När transistorn är på är det typ 0,2V över den vid 100mA: 100mA * 0,2V = 0,02W.
Det är därför switch-mode regleringar är så populära:
Läge 1: Transistor helt på, massor av ström: Vce = 0, Ic = 10A == 0W.
Läge 2: Transistor helt av, massor med spänning: Vce = 50V, Ic = 0A == 0W.
OK, visst finns det förluster med i bilden men det är ganska nära.
Så det är inte frågan om spänningen över transistorn när den är av, det är frågan om spänningen över transistorn när den är på när man ska räkna Watt.
När transistorn är på är det typ 0,2V över den vid 100mA: 100mA * 0,2V = 0,02W.
Det är därför switch-mode regleringar är så populära:
Läge 1: Transistor helt på, massor av ström: Vce = 0, Ic = 10A == 0W.
Läge 2: Transistor helt av, massor med spänning: Vce = 50V, Ic = 0A == 0W.
OK, visst finns det förluster med i bilden men det är ganska nära.
Så det är inte frågan om spänningen över transistorn när den är av, det är frågan om spänningen över transistorn när den är på när man ska räkna Watt.