Prośba o sprawdzenie schematu

Jesli jesteś początkującym elektronikiem, to tu z pewnością znajdziesz pomoc. Miejsce dobre do dyskusji nad podstawami elektroniki w zakresie teorii i praktyki.
Awatar użytkownika
dondu
Użytkownik
Posty: 211
Rejestracja: 24 maja 2005, 9:47
Lokalizacja: Śląskie
Kontakt:

Post autor: dondu » 03 sty 2014, 20:59

Nie o to pytałem, ale ustaliliśmy jedno: Nie rozumiesz na czym polega multipleksowanie wyświetlacza LED ... wytłumaczę Ci więc.

Masz 6 wyświetlaczy, a tylko jeden komplet linii sterujących poszczególnymi diodami (segmentami). W związku z tym musisz przełączać po kolei wyświetlacze, czyli multipleksować.

Skoro musisz przełączać to oznacza, że każdy wyświetlacz będzie się świecił zaledwie 1/6 sekundy. Skoro będzie się świecił przez 1/6 sekundy, to dla ludzkiego oka oznacza to znaczny spadek jego jasności.

Jeżeli więc przepuszczasz przez wybraną diodę jednego z wyświetlaczy zaledwie 20mA, przez 1/6 sekundy, to mniej więcej tak jakbyś przepuszczał przez nią zaledwie 20mA / 6 = 3,3mA.

O to właśnie Ciebie pytałem.
Czy teraz rozumiesz problem Twojego układu?

Co według Ciebie można z tym fantem zrobić? Pisz cokolwiek przyjdzie Ci do głowy.

gawolx20
-
Posty: 11
Rejestracja: 25 gru 2013, 22:09
Lokalizacja: Poznań

Post autor: gawolx20 » 03 sty 2014, 21:23

dondu pisze:Co według Ciebie można z tym fantem zrobić?
Zmniejszyć 6-cio krotnie wartość rezystancji użytych oporników?

Awatar użytkownika
dondu
Użytkownik
Posty: 211
Rejestracja: 24 maja 2005, 9:47
Lokalizacja: Śląskie
Kontakt:

Post autor: dondu » 03 sty 2014, 21:28

Dobry kierunek :-)

... ale niestety oznacza to zwiększenie prądu pinów mikrokontrolera, a one tego nie wytrzymają ponieważ mają ograniczenia, a dodatkowo cały port także ma swoje ograniczenia: http://mikrokontrolery.blogspot.com/201 ... pinow.html
Powinieneś więc ... jakiś pomysł masz?

... ale nr 2 - dioda LED w wyświetlaczu także ma swoje ograniczenia ... należy sprawdzić w ich dokumentacji jakie są w Twoim przypadku, dla pracy impulsowej.

gawolx20
-
Posty: 11
Rejestracja: 25 gru 2013, 22:09
Lokalizacja: Poznań

Post autor: gawolx20 » 03 sty 2014, 22:08

Zastosować jakiś bufor?

Jeśli tak, to trochę słabo, bo już płytkę pcb zamówiłem.

Awatar użytkownika
dondu
Użytkownik
Posty: 211
Rejestracja: 24 maja 2005, 9:47
Lokalizacja: Śląskie
Kontakt:

Post autor: dondu » 03 sty 2014, 22:42

No to będziesz musiał się pogodzić z mniejszą jasnością.
Ale na przyszłość już wiesz w czym rzecz.

A bufor np.: http://www.ti.com/lit/ds/symlink/uln2803a.pdf

gawolx20
-
Posty: 11
Rejestracja: 25 gru 2013, 22:09
Lokalizacja: Poznań

Post autor: gawolx20 » 04 sty 2014, 0:59

hm, zrobiłem taki testowy układ na płytce stykowej z takim efektem: https://vimeo.com/83349900 (3 wyświetlacze tylko z braku miejsca)

faktycznie gdy jest jaśniej to bardzo słabo widać

Natomiast nie do końca rozumiem dlaczego każdy wyświetlacz ma się świecić 1/6s. Programistycznie rozwiązałem to w taki sposób, że jedna zmienna x określa cyfrę jaka w tej chwili jest "nadawana" przez uC (z dużą częstotliwością cyfry się zmieniają), druga zmienna y liczy jaka cyfra powinna wyświetlać się w tej chwili na danym wyświetlaczu, jeśli x==y to załącza się tranzystor na danym wyświetlaczu. Na moje to w ten sposób każdy wyświetlacz świeci się 1/10s.

Awatar użytkownika
dondu
Użytkownik
Posty: 211
Rejestracja: 24 maja 2005, 9:47
Lokalizacja: Śląskie
Kontakt:

Post autor: dondu » 04 sty 2014, 1:06

gawolx20 pisze:Natomiast nie do końca rozumiem dlaczego każdy wyświetlacz ma się świecić 1/6s.
...
Na moje to w ten sposób każdy wyświetlacz świeci się 1/10s.
Jak to policzyłeś? Masz przecież tylko 6 wyświetlaczy. a nie 10.

gawolx20
-
Posty: 11
Rejestracja: 25 gru 2013, 22:09
Lokalizacja: Poznań

Post autor: gawolx20 » 04 sty 2014, 2:02

Nie wiem, może zupełnie o czymś innym mówię niż Ty, ale jeśli będzie miała być wyświetlana np. cyfra 5 to stan na anodzie wyświetlacza będzie taki http://s27.postimg.org/9u51oy44h/jak.jpg (w dziedzinie są cyfry nadawane przez uC), a więc będzie się świecił przez 1/10 okresu

Awatar użytkownika
dondu
Użytkownik
Posty: 211
Rejestracja: 24 maja 2005, 9:47
Lokalizacja: Śląskie
Kontakt:

Post autor: dondu » 04 sty 2014, 8:07

dondu pisze:Masz 6 wyświetlaczy, a tylko jeden komplet linii sterujących poszczególnymi diodami (segmentami). W związku z tym musisz przełączać po kolei wyświetlacze, czyli multipleksować.

Skoro musisz przełączać to oznacza, że każdy wyświetlacz będzie się świecił zaledwie 1/6 sekundy.
- wyświetlacz, to jedna cyfra,
- segment, to jedna dioda w wyświetlaczu,
- przełączanie wyświetlaczy realizujesz liniami PC0-PC5 i zawsze tylko jedna włącza tylko jeden z wyświetlaczy.

Awatar użytkownika
timo66
Moderator
Posty: 1807
Rejestracja: 20 maja 2006, 19:15
Lokalizacja: 66'15" M.a.R.s.
Kontakt:

Post autor: timo66 » 04 sty 2014, 9:44

Moim zdanie błąd polega w nazewnictwie. Tak więc 1/6 ale nie sekundy tylko okresu czasu. Inaczej to ujmując wyświetlenie całej wartości która składa się z sześciu wyświetlaczy wygląda tak, że dla jednego wyświetlacza trwa 1 okres świecenia i 5 okresów w stanie zgaszonym.

Awatar użytkownika
dondu
Użytkownik
Posty: 211
Rejestracja: 24 maja 2005, 9:47
Lokalizacja: Śląskie
Kontakt:

Post autor: dondu » 04 sty 2014, 9:47

Wprowadziłem sekundę, bo tak z reguły łatwiej jest początkującym zrozumieć okres pełnego przemiatania wyświetlaczy.

ODPOWIEDZ