Check alle échte Black Friday-deals Ook zo moe van nepaanbiedingen? Wij laten alleen échte deals zien
Toon posts:

16x16 Dot Matrix Display

Pagina: 1
Acties:
  • 171 views sinds 30-01-2008
  • Reageer

Verwijderd

Topicstarter
Hallo,

Ik heb een 16 bij 16 matrix display en vraag me af hoe ik de ledjes moet aansturen.
Moet ik de rijen een voor een hoog maken en dan per rij elke keer de kolommen hoog maken zodat de ledjes gaan branden die ik wil?

Ik heb het hierover: http://nl.farnell.com/jsp...artDetail.jsp?SKU=5014621
Datasheet: http://www.farnell.com/datasheets/46565.pdf

  • teun-v
  • Registratie: Maart 2005
  • Niet online

teun-v

Koffie? ja graag...

Het antwoord is ja, als ik het goed heb heet dat multieplexen. Probeer het verversen van je display in iedergeval op 50 Hz te doen, nog hoger is beter omdat het dan stabieler oogt (vergelijk met je crt monitor op 50 en 100 Hz)

Ook gek op Ovalracen? | Canon EOS 350 D | Canon EF-S 10-22mm F/3.5-4.5 | Sigma 17-70 F/2.8-4.5 DC Macro | Canon EF 70-200 F/2.8L USM | >Blog< |


Verwijderd

Topicstarter
teun-v schreef op vrijdag 15 december 2006 @ 15:09:
Het antwoord is ja, als ik het goed heb heet dat multieplexen. Probeer het verversen van je display in iedergeval op 50 Hz te doen, nog hoger is beter omdat het dan stabieler oogt (vergelijk met je crt monitor op 50 en 100 Hz)
dus heel het display 50 keer per secode afgaan
dus een keer alle rijen afgaan duurt dan 20 ms
na elke rij dus een delay van 20/16=1,25 ms?

  • DuDePrOdUcTiOnS
  • Registratie: Augustus 2001
  • Laatst online: 31-10 13:18
ja, idd.. maar je moet dus niet zowel de rij en de kolom hoog maken van het ledje dat je wilt laten branden, want er moet een spanningsverschil over de led zijn. Anders loopt er geen stroom.

Je kan met bijv een transistor de geselecteerde kolom verbinden met ground. Er zijn wel meerdere mogelijkheden, maar dit is volgens mij zo de meest eenvoudige. :)

www.teamgenie.nl
You raise the blade, you make the change
You re-arrange me till I'm sane
You lock the door, and throw away the key
There's someone in my head but it's not me


  • Lucky Luke 008
  • Registratie: Augustus 2006
  • Laatst online: 30-05-2024
50 Hz is eigenlijk heel erg traag voor multiplexen, meestal zit het ergens op 150kHz...

hoe het werkt? je verbind de rij waarin de led zit die moet oplichten via een weerstand (berekenen als voorschakelweerstand voor 1 LED, dus Uvoeding-Uled=Uweerstand en Uweerstand/Iled=Rweerstand :)
waarbij U = spanning in volts
R= weerstand in Ohm
en I is stroom in Ampere (let op! niet 20 dus, maar 0,02! (voor de meeste led's)
als je geen zin hebt in rekenen dan voed je dat display gewoon met 5-9V en hang je er 470 Ohm voor.
als je dan die rij via die weerstand met de voeding verbind (dmv een transistor) en dan de kolom waarin de led zit die moet oplichten eveneens via een transistor aan de ground hangt, dan licht die led op. Wil je een beeld, dan moet je dat met alle LED's die in je beeld zitten heel snel achter elkaar doen.

Ik ben ooit hier op Tweakers.net een soort toturital tegengekomen voor een bergje gemultiplexde led's (die geloof ik geel waren, en manhattan style (zonder print) aan elkaar zaten, en waren verbonden met een-of-andere atmel-microcontroller, en die een hele hoop grijstinten aankonden)
Dat is hetzelfde principe, dus mischien als je het kunt terugvinden zou je het handig kunnen vinden.

  • brinkdinges
  • Registratie: November 2003
  • Laatst online: 14-10 11:03
Meestal krijgen de ledjes bij multiplexen niet de gewone 20 mA. Als je een 16x16 raster hebt wordt elke rij 1/16e deel van de tijd aangezet. Vaak stuur je dan 16x20 mA door de led, gedurende die 1/16e seconde. Dit even gezegd voor 1Hz, dat voer je dan iets op richting 150kHz he ;)

Dit is dus om te zorgen dat je oog het gevoel krijgt dat de led gewoon aan staat, en niet zachtjes brandt.

Casemod: Cubeleon


  • naftebakje
  • Registratie: Februari 2002
  • Laatst online: 08:44
150kHz is niet nodig, zodra je tegen de 100Hz en hoger zit merk je de flikkeringen absoluut niet meer op (boven 25Hz zie je em niet meer een en uit gaan maar merk je wel dat ie knippert, boven 50Hz zie je een egale helderheid en merk je nog een beetje dat het flikkert, boven 100Hz merk je er niets meer van).

Met brinkdinges hierboven, controleer wel in de datasheet hoeveel stroom de led's maximaal aankunnen.

Als de boer zijn koeien kust, zijn ze jarig wees gerust. Varkens op een landingsbaan, leiden nooit een lang bestaan. Als de boer zich met stront wast, zijn zijn hersens aangetast. Als het hooi is in de schuur, zit het wijf bij den gebuur.


  • brinkdinges
  • Registratie: November 2003
  • Laatst online: 14-10 11:03
naftebakje schreef op zaterdag 16 december 2006 @ 14:19:
Met brinkdinges hierboven, controleer wel in de datasheet hoeveel stroom de led's maximaal aankunnen.
Idd, vergeten te zeggen. Is ook zo zonde als je leds gelijk weer kaduuk gaan ;)

Casemod: Cubeleon


Verwijderd

Topicstarter
In de sheet staat er 5.0V en mijn spanning van de voeding is maar 3.3V
Heb ik eigenlijk wel weerstanden nodig dan? En de transistoren, waarvoor zijn die?
Ik ben een informatica student en weet dus niet veel over electronica :p

edit:

dit staat er:

Absolute Maximum Ratings at TA=25°C
Reverse Voltage: 5.0V
D.C Forward Current Per LED Chip: 30mA
Pulse Current Per LED Chip: 100mA

[ Voor 26% gewijzigd door Verwijderd op 18-12-2006 12:46 ]


  • Zjosh
  • Registratie: November 2004
  • Laatst online: 20-11 12:58
Het is dus de bedoeling dat je 30 mA door zon ledje heen probeert te sturen. Als je het ledje rechtstreeks op de 5v aansluit heb je een probleem, dan gaat hij meer stroom nemen. Dus, daar pak je een weerstandje voor. Je zoekt eerst ergens in de datasheet op wat het spaningsval over de leds. Dan pak je de voedingsspanning en daar tek je de Uled van af. Kom je op een bepaalde spanning uit, ik denk iets van 2 volt (gegokt!!!). Dan wil je weten hoe groot je weerstand moet wezen. Dan deel je die 2volt door 0.03 (30 mA) en kom je op je weerstand uit. Straks wil je alleen ook nog kunnen multiplexen, dus moeten er wat transistors bij. Hiervoor zou ik de meest normale transistortjes nemen, bc547 ofzo. Deze hebben een spannings val van 0.5 volt op zon lage stroom, dus moet je ipv 5 - 3 = 2 iets anders doen, namelijk 5 - 2 - 0.5 = 1.5. Die deel je dan door die 0.03, en je hebt je weerstand. Als dit niet duidelijk is, niet aan gaan beginnen, zoek een electrotechnieker bij jou op school op (ik schat dat je nog op school zit :p ) die dat voro je fabriekt :)

Verwijderd

Topicstarter
Zjosh schreef op maandag 18 december 2006 @ 13:56:
Het is dus de bedoeling dat je 30 mA door zon ledje heen probeert te sturen. Als je het ledje rechtstreeks op de 5v aansluit heb je een probleem, dan gaat hij meer stroom nemen. Dus, daar pak je een weerstandje voor. Je zoekt eerst ergens in de datasheet op wat het spaningsval over de leds. Dan pak je de voedingsspanning en daar tek je de Uled van af. Kom je op een bepaalde spanning uit, ik denk iets van 2 volt (gegokt!!!). Dan wil je weten hoe groot je weerstand moet wezen. Dan deel je die 2volt door 0.03 (30 mA) en kom je op je weerstand uit. Straks wil je alleen ook nog kunnen multiplexen, dus moeten er wat transistors bij. Hiervoor zou ik de meest normale transistortjes nemen, bc547 ofzo. Deze hebben een spannings val van 0.5 volt op zon lage stroom, dus moet je ipv 5 - 3 = 2 iets anders doen, namelijk 5 - 2 - 0.5 = 1.5. Die deel je dan door die 0.03, en je hebt je weerstand. Als dit niet duidelijk is, niet aan gaan beginnen, zoek een electrotechnieker bij jou op school op (ik schat dat je nog op school zit :p ) die dat voro je fabriekt :)
Dus als ik het goed begrijp:

(Uspanning - Uled) / 0.03 = (3.3 - 2.1) / 0.03 = 40 ohm (voor de rijen)
en
(Uspanning - Uled - 0.5) / 0.03 = (3.3 - 2.1 - 0.5) / 0.03 = 23.33 ohm (voor de kolommen)

voor elke rij ----> [40 ohm] ----> led
en
voor elke kolom ----> [bc547] ----> led

omdat ik maar 1 rij tegelijk aan mag zetten, heb ik dus bij de rijen geen transistors nodig
of zit ik helemaal fout :P

edit:
ik heb het de hele tijd over de 2.1V, dat is de typ. forward voltage @20mA
terwijl de max. forward voltage @20mA 2.4V is
welke van de 2 moet ik hebben?

[ Voor 4% gewijzigd door Verwijderd op 18-12-2006 14:30 ]


Verwijderd

Ik ben een informatica student en weet dus niet veel over electronica
Wat moet je dan met een 16 x 16 led display ...

Mijn "recept" :

kolommen: 2 x UDN2981
rijen: 2 x 74HC595 + 2 x ULN2803
uC: ATMega 16 + MAX232 voor serieele communicatie.

Vervolgens kun je met bv een VB programma en de serieele poort leds op de matrix aan/uit zetten.

Verwijderd

Topicstarter
Verwijderd schreef op maandag 18 december 2006 @ 16:54:
[...]


Wat moet je dan met een 16 x 16 led display ...

Mijn "recept" :

kolommen: 2 x UDN2981
rijen: 2 x 74HC595 + 2 x ULN2803
uC: ATMega 16 + MAX232 voor serieele communicatie.

Vervolgens kun je met bv een VB programma en de serieele poort leds op de matrix aan/uit zetten.
ja technische informatica he ;)
een microcontroller heb ik al, de aansturing is geen probleem
mij ging het meer om het aansluiten

  • Zjosh
  • Registratie: November 2004
  • Laatst online: 20-11 12:58
Nu merk ik meteen wel weer dat ik perongeluk een foutje heb begaan :X je hebt natuurlijk 2 transistors nodig om een led te laten branden, 1 om de kolom te selecteren, en 1 om de rij te selecteren. Jammer dat ik niet ff plaatje kan maken om de boel te verduidelijken.

|5v-----weerstand-----tor-----led----tor----|gnd

de eerste tor is om de rij te selecteren, en de 2e om de kolom te selecteren. Het spanningsval over de transistor heb ik trouwens ook maar een beetje uit mn duim gezogen, voor de preciese waarde moet je even in de datasheet kijken.

Verwijderd

Topicstarter
Zjosh schreef op maandag 18 december 2006 @ 19:27:
Nu merk ik meteen wel weer dat ik perongeluk een foutje heb begaan :X je hebt natuurlijk 2 transistors nodig om een led te laten branden, 1 om de kolom te selecteren, en 1 om de rij te selecteren. Jammer dat ik niet ff plaatje kan maken om de boel te verduidelijken.

|5v-----weerstand-----tor-----led----tor----|gnd

de eerste tor is om de rij te selecteren, en de 2e om de kolom te selecteren. Het spanningsval over de transistor heb ik trouwens ook maar een beetje uit mn duim gezogen, voor de preciese waarde moet je even in de datasheet kijken.
ik hoef geen rijen of kolommen te selecteren, ik heb genoeg pins om alles direct aan te kunnen sluiten.

  • Zjosh
  • Registratie: November 2004
  • Laatst online: 20-11 12:58
Je hebt dus 16 + 16 io pins?

In dat geval kan je het zegmaar zo doen,

code:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
Micro controler
__
  |-----[weerstand]----led----|
  |-----[weerstand]----led----|
  |-----[weerstand]----led----|
  |-----[weerstand]----led----|
  |-----[weerstand]----led----|
  |-----[weerstand]----led----|
  |-----[weerstand]----led----|
  |-----[weerstand]----led----|
  |-----[weerstand]----led----|
  |-----[weerstand]----led----|
  |-----[weerstand]----led----|
  |-----[weerstand]----led----|
  |-----[weerstand]----led----|
  |-----[weerstand]----led----|
  |-----[weerstand]----led----|
  |-----[weerstand]----led----|----[tor]----|gnd
__


en dan is elke led zegmaar een kolom. Het transistor gedeelte moet je ook nog 16x uitvoeren voor
alle andere verbindingen kolomen.

[ Voor 100% gewijzigd door Zjosh op 19-12-2006 13:19 ]


Verwijderd

Topicstarter
Zjosh schreef op dinsdag 19 december 2006 @ 13:13:
Je hebt dus 16 + 16 io pins?

In dat geval kan je het zegmaar zo doen,

code:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
Micro controler
__
  |-----[weerstand]----led----|
  |-----[weerstand]----led----|
  |-----[weerstand]----led----|
  |-----[weerstand]----led----|
  |-----[weerstand]----led----|
  |-----[weerstand]----led----|
  |-----[weerstand]----led----|
  |-----[weerstand]----led----|
  |-----[weerstand]----led----|
  |-----[weerstand]----led----|
  |-----[weerstand]----led----|
  |-----[weerstand]----led----|
  |-----[weerstand]----led----|
  |-----[weerstand]----led----|
  |-----[weerstand]----led----|
  |-----[weerstand]----led----|----[tor]----|gnd
__


en dan is elke led zegmaar een kolom. Het transistor gedeelte moet je ook nog 16x uitvoeren voor
alle andere verbindingen kolomen.
ja aan zoiets zat ik ook te denken.
klopt het dat de transistoren erbij moeten omdat er per kolom meerdere ledjes aan moeten kunnen en dus de stroom versterkt moet worden?

en in mijn geval, kunnen de rijen en kolommen toch ook omgewisseld worden, althans dat bedoelen ze toch in de datasheet met anode row en cathode row?

tenslotte: moet er een spanningsverschil zijn tussen een rij en een kolom (per led gezien)?

[ Voor 10% gewijzigd door Verwijderd op 19-12-2006 13:39 ]


  • Zjosh
  • Registratie: November 2004
  • Laatst online: 20-11 12:58
Rij en kolom horen idd omgewisseld :p ik heb alleen ff vluchtig door de datasheet gekeken. Die transistor moet daar omdat je anders alle leds in 1 keer aan zet van de hele rij + dat je microcontroler dat waarschijnlijk niet kan trekken op 1 pin. Zo kan je van 1 kolom alle leds afzonderlijk aanzetten.

Moet je natuurlijk voor die andere kolommen net zo doen, maar dat leek me wel logisch.

Verwijderd

Topicstarter
Zjosh schreef op dinsdag 19 december 2006 @ 15:57:
Rij en kolom horen idd omgewisseld :p ik heb alleen ff vluchtig door de datasheet gekeken. Die transistor moet daar omdat je anders alle leds in 1 keer aan zet van de hele rij + dat je microcontroler dat waarschijnlijk niet kan trekken op 1 pin. Zo kan je van 1 kolom alle leds afzonderlijk aanzetten.

Moet je natuurlijk voor die andere kolommen net zo doen, maar dat leek me wel logisch.
wat ik bedoelde was dat er eigenlijk geen rijen en kolommen zijn :p
het maakt volgens mij niet uit wat je kiest, of is dat niet zo?

  • Paul
  • Registratie: September 2000
  • Laatst online: 13:03
Verwijderd schreef op dinsdag 19 december 2006 @ 16:08:
[...]

wat ik bedoelde was dat er eigenlijk geen rijen en kolommen zijn :p
het maakt volgens mij niet uit wat je kiest, of is dat niet zo?
Jawel, er zijn wel rijen en kolommen.

Zet maar op alle anodes +5V (met een 470 Ohm weerstandje per anode), op alle cathodes gnd. Als het goed is, branden dan alle 256 ledjes.
In het volgende verhaalte zijn rij en kolom uitwiseelbaar, net als anode en cathode :P)

Haal nu een willekeurige pin los en zie: er gaat 1 rij uit. Haal je op 1 na alle anodes los, dan brandt er dus nog maar 1 rij. Haal je vervolgens een voor een de cathodes los, dan gaan er steed minder ledjes branden, tot er nog maar 1 brand en je nog maar 2 draadjes hebt aangesloten.

"Your life is yours alone. Rise up and live it." - Richard Rahl
Rhàshan - Aditu Sunlock


  • Stefos
  • Registratie: April 2003
  • Laatst online: 29-09 16:12
Verwijderd schreef op maandag 18 december 2006 @ 17:18:
[...]

ja technische informatica he ;)
een microcontroller heb ik al, de aansturing is geen probleem
mij ging het meer om het aansluiten
hmm, avans in den bosch? of enorm veel toeval ;)
Pagina: 1