 |
www.elektronik.si Forum o elektrotehniki in računalništvu
|
Poglej prejšnjo temo :: Poglej naslednjo temo |
Avtor |
Sporočilo |
igor_k Član

Pridružen-a: Pon 19 Jul 2004 11:44 Prispevkov: 1011 Aktiv.: 4.27 Kraj: Rače
|
Objavljeno: Pet Maj 25, 2012 12:31 pm Naslov sporočila: |
|
|
@gregoral, zdaj si dobro odgovoril, prej pa je delovalo malo zmedeno, ko si govoril o tistem maksimalnem toku in eni diodi. Oprosti.
@xpolhecX, ne poznam zahtev za svetilnost, ne vem kakšne diplay-e uporabljaš in je težko svetovati. Pričakoval sem pač (z ozirom na 9 display-ov), da bodo izhodi iz kontrolerja premalo tokovno zmogljivi, zato sem ti predlagal uln2803 in tranzistorje. Če je 2mA na segment dovolj ne potrebuješ ničesar, samo upore in kontroler, če pa je več pa potrebuješ driverje. |
|
Nazaj na vrh |
|
 |
xpolhecx Član


Pridružen-a: Sre 02 Feb 2011 3:06 Prispevkov: 276 Aktiv.: 1.58
|
Objavljeno: Pet Maj 25, 2012 12:35 pm Naslov sporočila: |
|
|
igor_k je napisal/a: |
Če je 2mA na segment dovolj ne potrebuješ ničesar, samo upore in kontroler, če pa je več pa potrebuješ driverje. |
Super. A nismo ugotovili, da lahko na enem pinu uC spuščam gor 25mA (zakaj 2mA)
High-Current Sink/Source........................................................................................................................................25mA/25 mA
Maximum output current sunk by any I/O pin..........................................................................................................25 mA
Maximum output current sourced by any I/O pin ....................................................................................................25 mA
Maximum current sunk by all ports .......................................................................................................................200 mA
Maximum current sourced by all ports ..................................................................................................................200 mA
Nazadnje urejal/a xpolhecx Pet Maj 25, 2012 12:38 pm; skupaj popravljeno 3 krat |
|
Nazaj na vrh |
|
 |
matjazkariz Član


Pridružen-a: Sre 03 Nov 2004 18:09 Prispevkov: 1026 Aktiv.: 4.33
|
Objavljeno: Pet Maj 25, 2012 12:37 pm Naslov sporočila: |
|
|
Kakšnih 72 uporov? Kakšna 1/72 tina časa?
xpolhecx začni risat shemo novega vezja in bomo sproti na shematiki predebatirali vse hakelce. V mojem prejšnjem postu, ko sem te opozoril na skupno porabo, sem imel v mislih tistih 200mA max toka skozi uC. Če imaš skupno porabo več kot to, potem MORAŠ uporabit neke zunanje driverje. Tistih 25mA na posameznem pinu ne bi smelo biti problem. Kar se tiče multipleksa pa še to; maksimalno število multipleksiranih enot naj ne presega 7! Torej multipleksiraj LED in 7seg ločeno! Tako bo maksimalna obremenitev 8segmentov 7seg displaya + maksimalna poraba iz multipleksa LED (verjetno boš uporabil multipleks 4x5?). Tako potrebuješ 8+7+4+5 izhodov in 8+4 upore.
Torej, nariši shemo. _________________ LP, Matjaž |
|
Nazaj na vrh |
|
 |
gregoral Član

Pridružen-a: Pet 24 Nov 2006 9:42 Prispevkov: 688 Aktiv.: 3.04 Kraj: Ljubljana
|
Objavljeno: Pet Maj 25, 2012 12:37 pm Naslov sporočila: |
|
|
@matjazkariz:
- zakaj bi bil maksimum samo 7 elementov?
- misliš da bi bil problem utripanje? (po mojem ne če dovolj hitro preklaplja)
- poznalo bi se le na zmanjšani svetilnosti
- ampak že sedaj ne rabi polne svetilnosti
Ostalo:
- do 25 mA ne rabi tranzistorjev
- če ima dovolj izhodov lahko za vsako vrstico (ali stolpec) uporabi po dva izhoda in ima na voljo 50 mA
- ceneje kot tranzistorji bo verjetno imet več izhodov na procesorčku
- pa še manj dela bo imel (spajka ročno)
Poleg tega pa lahko če ima dovolj tokovne zmogljivosti:
- prižge več elementov v isti vrstici (ali pa stolpcu, pač odvisno kako bo vezje naredil)
- recimo:
011
000
000
pri tem 3x3 primeru se vidi da če lahko hkrati prižiga dva elementa bo potem samo še 1/36 časa da pride čez vse
pri treh elementih hkrati samo še 1/24
če pa da dovolj izhodov samo na vrstice (recimo po tri skupaj ali pa tranzistorje) da lahko hkrati prižge celo vrstico
potem je pa vsaka vrstica prižgana 1/8 časa (če je 8 vrstic), kar pa je že zelo blitu tvojim 7 elementom
LP, Gregor
Nazadnje urejal/a gregoral Pet Maj 25, 2012 1:13 pm; skupaj popravljeno 3 krat |
|
Nazaj na vrh |
|
 |
xpolhecx Član


Pridružen-a: Sre 02 Feb 2011 3:06 Prispevkov: 276 Aktiv.: 1.58
|
Objavljeno: Pet Maj 25, 2012 12:57 pm Naslov sporočila: |
|
|
Jaz sem mislil delat matriko 9x8 tako kot mi je večina svetovala
Nazadnje urejal/a xpolhecx Pet Jun 08, 2012 11:07 pm; skupaj popravljeno 1 krat |
|
Nazaj na vrh |
|
 |
gregoral Član

Pridružen-a: Pet 24 Nov 2006 9:42 Prispevkov: 688 Aktiv.: 3.04 Kraj: Ljubljana
|
Objavljeno: Pet Maj 25, 2012 1:01 pm Naslov sporočila: |
|
|
Po mojem bo ok.
Če bo svetilnost premala "tokovno ojačaj" eno os (vrstico ali stolpec).
če boš lahko prižgal celotno vrstico (9 elementov) potem boš lahko imel 9 krat večjo svetilnost kot če je vedno prižgan samo en elemet.
Kako ojačaš?
a) dva ali tri izhode daš na isto vrstico (nujno moraš potem istočasno prižigat/ugašat vse (2,3) istočasno)
b) na izhod daš tranzistor (samo na vrstico ali pa samo na stolpec)
Pa še to odvisno od tokovnih zahtev ni nujno da ojačaš vse vrstice.
Lahko tudi samo tiste kjer imaš močnejše elemente gor (ledice?).
Samo potem moraš v funkciji ki to prižiga to upoštevat!
Če želiš lahko prideš čez vikend k meni v delavnico in podebatirava in nariševa.
Sem pa iz ljubljane.
Lahko pa tudi po skypu malo podebatirava če želiš: pošlji kontakt na ZS.
LP, Gregor |
|
Nazaj na vrh |
|
 |
igor_k Član

Pridružen-a: Pon 19 Jul 2004 11:44 Prispevkov: 1011 Aktiv.: 4.27 Kraj: Rače
|
Objavljeno: Pet Maj 25, 2012 1:13 pm Naslov sporočila: |
|
|
Ok, malo pomote (me je xpolhecx čisto zmedel s svojimi 72 upori ), tistih 1/72 časa seveda ne drži, ker se diode razporedijo na posamezne vrstice torej lahko govorimo o največ 1/9 časa za posamezno diodo.
Sem mislil, da je 9 display-ov, jih je pa 7, torej, če je svetilnost segmenta pri 3mA dovolj velika, potem ne potrebuješ driverja (tok skozi segment mora biti 3x7=21mA, ker vsak gori samo 1/7 časa, če hočeš doseči enako svetilnost) |
|
Nazaj na vrh |
|
 |
xpolhecx Član


Pridružen-a: Sre 02 Feb 2011 3:06 Prispevkov: 276 Aktiv.: 1.58
|
Objavljeno: Pet Maj 25, 2012 1:14 pm Naslov sporočila: |
|
|
No super. Ta vikend sem odsoten, mogoče pa res kdaj priletim naokrog 
Nazadnje urejal/a xpolhecx Pet Jun 08, 2012 11:07 pm; skupaj popravljeno 1 krat |
|
Nazaj na vrh |
|
 |
gregoral Član

Pridružen-a: Pet 24 Nov 2006 9:42 Prispevkov: 688 Aktiv.: 3.04 Kraj: Ljubljana
|
Objavljeno: Pet Maj 25, 2012 1:26 pm Naslov sporočila: |
|
|
@xpolhecx:
sem te dodal na skype-u
@igor_k:
- če bo naenkrat v vrstici lahko prižgan samo en element si kar prav razmišljal o 1/72
- to je seveda verjetno premalo časa
- tudi če poveča tok verjetno ne bo šlo, ker bi ga moral povečat za faktor 72, kar je pa verjetno že čez omejitev diode/segmenta
- rešitev je v tem da naenkrat prižiga najmaj po dva ali tri elemente
- še lažje pa če lahko prižge po celo vrstico
Torej (probližni izračuni, ker svetilnost verjetno ni linearna s tokom):
- če imaš sedaj 5% svetilnosti boš enako dosegel pri multipleksiranju 1/20 časa na polni svetilnosti
- če imaš sedaj 10% svetilnosti boš enako dosegel pri multipleksiranju 1/10 časa na polni svetilnosti
- če imaš sedaj 30% svetilnosti boš enako dosegel pri multipleksiranju 1/3 časa na polni svetilnosti
- iz tega izveš koliko vrstic/stolpcev boš rabil
LP, Gregor |
|
Nazaj na vrh |
|
 |
matjazkariz Član


Pridružen-a: Sre 03 Nov 2004 18:09 Prispevkov: 1026 Aktiv.: 4.33
|
Objavljeno: Pet Maj 25, 2012 2:46 pm Naslov sporočila: |
|
|
Prvo je potrebno določiti skupno porabo. Še ni bilo raziskano od kje tistih 530mA. Če skupna poraba na LED ne bo znašala več kot 200mA potem poskusi.
V kolikor nameravaš nastavljati svetilnost za vse hkrati, potem lahko poskusiš multipleksirat 9x8 in nastaviš približno enako svetilnost med posameznimi LED z upori. Težava, ki jo vidim, je v tem, da boš moral imeti pri tej konfiguraciji različne LED v isti sekvenci. Različne LED pa potrebujejo za isto svetilnost drugačen upor. To je en drawback pri tej konfiguraciji. Glede na to, da poleg drivanja LED, imaš zraven še handlanje USB rutin, je potrebno razmisliti, kako prioritizirati procese. Lahko se zgodi, da se ti bo prikaz občasno zakolcal in toliko bolj bo to opazno, ko imaš mnogo sekvenc v multipleksingu. Če boš delal še softversko dimanje, potem bo čas posameznega cikla še daljši... _________________ LP, Matjaž |
|
Nazaj na vrh |
|
 |
gregoral Član

Pridružen-a: Pet 24 Nov 2006 9:42 Prispevkov: 688 Aktiv.: 3.04 Kraj: Ljubljana
|
Objavljeno: Pet Maj 25, 2012 4:52 pm Naslov sporočila: |
|
|
@matjazkariz:
- delno se strinjam, ne pa z vsem
Prvo je potrebno določiti skupno porabo. Še ni bilo raziskano od kje tistih 530mA.
Se strinjam.
Če skupna poraba na LED ne bo znašala več kot 200mA potem poskusi.
Če element porabi 50mA jih naenkrat lahko prižge 4, če manj potem tudi več.
Težava, ki jo vidim, je v tem, da boš moral imeti pri tej konfiguraciji različne LED v isti sekvenci.
Na pol se strinajm, treba bo pogledat kaj se da naredit.
Recimo:
Koda: |
1K----S1---S2---S3---S4
| | | |
1K----S5---S6---S7---S8
| | | |
100R--L1---L2---L3---L4
| | | |
50R---L5---L6---L7---L8
| | | |
0R 0R 50R 50R
|
V taki konfiguraciji je kar nekaj kombinacij z upori.
Pri segmentih (S1-S8) tistih 50R ne vpliva prav veliko, (če pa že se da kompenzirat z dolžino impulza).
Pri Ledicah imamo pa 2x150R, 4x100R, in 2x50R torej tri različne vrednosti uporov za različne led diode.
Pri večjem polju se da bit še bolj kreativen.
Če boš delal še softversko dimanje, potem bo čas posameznega cikla še daljši...
Jaz bi prej rekel da krajši, ker se prej prestavimo na naslednjo vrstico / diodo.
Drugo:
- tudi če prižigamo po celo vrstico naenkrat imamo lahko za različne elemente v vrstici različno dolge imulze.
- le naslednjo vrstico bomo "osvežili" šele ko poteče najdaljši imulz
LP, Gregor |
|
Nazaj na vrh |
|
 |
matjazkariz Član


Pridružen-a: Sre 03 Nov 2004 18:09 Prispevkov: 1026 Aktiv.: 4.33
|
Objavljeno: Pet Maj 25, 2012 6:48 pm Naslov sporočila: |
|
|
gregoral je napisal/a: |
Če boš delal še softversko dimanje, potem bo čas posameznega cikla še daljši...
Jaz bi prej rekel da krajši, ker se prej prestavimo na naslednjo vrstico / diodo.
|
No, saj zdaj že rinemo v finese, ampak tu se ne strinjam. Če se prej prestaviš v naslednjo vrstico, si samo pohitril ciklanje skozi sekvence. Za dimanje moraš pri konstantnem času sekvence znotraj te sekvence poskrbeti, da se LED ugasnejo brez, da preskočiš na naslednjo sekvenco. Se pravi, da je potrebno čas znotraj ene sekvence razdeliti na n razdelkov in znotraj sekvence šteti, kdaj LED ugasniti. Če želiš dovolj dobro resolucijo nastavljanja osvetlitve, to potegne zadaj tudi bolj obremenjen procesor.
Primer:
Če sekvence preklapljamo na 10ms in imamo 8 sekvenc se celoten prikaz posodablja z 12,5Hz. Tu smo že na meji. Če bo manj se bo opazil flickering. Se pravi podaljševanje sekvenc niti ni možno.
Recimo, da bi radi svetilnost krmilili 8 bitno. To je 256 razdelkov. 10ms/256 = 39us. Glavna zanka pri enem povprečnem programu, ki nima kaj dosti delat, traja okrog 20us pri 20MHz taktu. Tu bo za dimanje absolutno potrebno uporabljat interrupt na ločenem timerju, ker v main loopu tega preprosto ne gre handlat. Vprašanje pa je koliko resourcev je porabljenih s strani USB komunikacije. Bi moral pogledat Microchipov USB stack. Tesno bo. _________________ LP, Matjaž |
|
Nazaj na vrh |
|
 |
gregoral Član

Pridružen-a: Pet 24 Nov 2006 9:42 Prispevkov: 688 Aktiv.: 3.04 Kraj: Ljubljana
|
Objavljeno: Pet Maj 25, 2012 7:07 pm Naslov sporočila: |
|
|
S tem se pa že bolj strinjam.
Mogoč4e bo res na tesno. |
|
Nazaj na vrh |
|
 |
xpolhecx Član


Pridružen-a: Sre 02 Feb 2011 3:06 Prispevkov: 276 Aktiv.: 1.58
|
Objavljeno: Pet Maj 25, 2012 7:11 pm Naslov sporočila: |
|
|
Že vidim kak se bom veselo zajbaval drugi teden  |
|
Nazaj na vrh |
|
 |
gregoral Član

Pridružen-a: Pet 24 Nov 2006 9:42 Prispevkov: 688 Aktiv.: 3.04 Kraj: Ljubljana
|
Objavljeno: Pet Maj 25, 2012 7:16 pm Naslov sporočila: |
|
|
Po drugi strani pa saj ni nujno narest 8x9.
Na voljo je (če sem prav razumel) 23 izhodov.
Imamo pa 72 elementov.
To lahko naredimo tudi kot 4x19 (=76).
Torej 4 vrstice (+ 4 tranzistorji zaradi tokovne omejitve) x 19 stolpcev.
Frekvenca se tako podvoji ker je pol manj vrstic.
LP, Gregor |
|
Nazaj na vrh |
|
 |
|
|
Ne, ne moreš dodajati novih tem v tem forumu Ne, ne moreš odgovarjati na teme v tem forumu Ne, ne moreš urejati svojih prispevkov v tem forumu Ne, ne moreš brisati svojih prispevkov v tem forumu Ne ne moreš glasovati v anketi v tem forumu Ne, ne moreš pripeti datotek v tem forumu Ne, ne moreš povleči datotek v tem forumu
|
Uptime: 492 dni
Powered by phpBB © 2001, 2005 phpBB Group
|