Zegar Cyfrowy z wyświetlaniem analogowym- sterowanie diodami

Miejsce dobre do dyskusji nad własnymi projektami - pochwal się wszystkim co samodzielnie stworzyłeś.
ODPOWIEDZ
maxxxior
Użytkownik
Posty: 210
Rejestracja: 19 mar 2010, 21:27
Lokalizacja: Skierniewice

Zegar Cyfrowy z wyświetlaniem analogowym- sterowanie diodami

Post autor: maxxxior » 11 lis 2011, 12:17

Witam
Do zrobienia mam Zegar cyfrowy z wyświetlaniem analogowym.Chodzi o to że głównym źródłem projektu będzie Atmega32, godzina będzie wyświetlana normalnie na LCD, a dookoła będzie tarcza z 60 diód i te diody maja zliczać sekundy(zapalać kolejno diody, i jak się zapalą wszystkie, diody gasną, godzina się przestawia o minute, i diody się zapalają kolejno od nowa). I teraz moja prośba, czy moglibyście mi podać jakieś propozycje jak zrobić to sterowanie tymi diodami? i najważniejsze, NIE MOGĄ TO BYĆ GOTOWE PROJEKTY Z EdW czy ze sklepu AVT. Nie mogę po prostu tak sobie zjechać całego gotowego projektu i go oddać. (Ponieważ jest to projekt do szkoły) Chodzi mi główni o sterowanie diodami, jak to się będzie odbywało, i taki ogólny schemat działania tego zegara(co do czego i dlaczego). Nie chodzi mi o to abyście zrobili go za mnie, tylko tak z grubsza powiedzieli jak to ma działać...

Byłbym wdzięczny za jakiekolwiek porady, sugestie

Awatar użytkownika
Ertew
Użytkownik
Posty: 1414
Rejestracja: 03 lip 2005, 10:36
Lokalizacja: Leszno
Kontakt:

Post autor: Ertew » 11 lis 2011, 13:59

Najprostsza elektroniczne ale dość droga opcja to rejestry przesuwne połączone szeregowo.
Na wejście pierwszego podajesz jedynkę, wejścia kolejnych łączysz z ostatnim wyjściem poprzedniego. Do każdego z wyjść rejestrów podłączasz LEDa przez rezystor. Wejścia zegarowe, reset i zatrzask wszystkich rejestrów łączysz razem.

Gdy co sekundę podajesz impuls na wejście zegarowe zaświeca się jedna kolejna dioda LED (nie masz kontroli która, ale na pewno kolejna do chwili aż wszystkie nie zaczną świecić). Po zliczeniu 60 sekund wysyłasz impuls na reset co gasi wszystkie LEDy, następnie znowu impulsy zegarowe.

Dla typowych rejestrów 8-bitowych potrzebujesz aż 8 takich sztuk. Użyte układy nie muszą mieć wejścia zatrzasku (w tej konfiguracji nie będzie on wykorzystany) oraz wejścia reset (wtedy trzeba na wejście podać stan 0 i wysłać 60 impulsów żeby wszystko wyczyścić).

Słowo honoru że pomysł nie został skopiowany z żadnego istniejącego opracowania, nie widziałem niczego podobnego na żadnym schemacie.
Niestety zegarów powstało już wiele i nie mogę zagwarantować że na powyższy pomysł nie wpadł już ktoś wcześniej przy np. zegarze na układach TTL
(widziałem takie zegary w zestawach Jabel i NordElektronik, jednak ich schematów nie analizowałem).

Jony130
Moderator
Posty: 3170
Rejestracja: 11 sie 2005, 16:33
Lokalizacja: wrocław

Post autor: Jony130 » 11 lis 2011, 14:25

Tu jest taki projekt
http://ep.com.pl/files/8931.pdf

maxxxior
Użytkownik
Posty: 210
Rejestracja: 19 mar 2010, 21:27
Lokalizacja: Skierniewice

Post autor: maxxxior » 11 lis 2011, 16:09

Jony130 tylko ja nie mogę oddać gotowego projektu...

Ertew,dzięki za odpowiedź! Napisałeś ze nie mam kontroli która dioda ma zaświecić, po prostu zapala sie kolejna... A jak mógłbym zrealizować ten projekt, abu sterować tymi diodami po mojemu? np żeby zapalała się co druga, w różnych konfiguracjach itd... ?

Awatar użytkownika
tom5555
Użytkownik
Posty: 625
Rejestracja: 23 sty 2008, 1:20
Lokalizacja: Zabrze
Kontakt:

Post autor: tom5555 » 11 lis 2011, 18:16

Najprościej na rejestrach przesuwnych lub ekspanderach I2C (droższa opcja).
Można jeszcze na licznikach Johnsona i diodach (schemat w załączniku). Układ jedynie zapala kolejno diody.
Załączniki
sch1.png

Awatar użytkownika
Ertew
Użytkownik
Posty: 1414
Rejestracja: 03 lip 2005, 10:36
Lokalizacja: Leszno
Kontakt:

Post autor: Ertew » 11 lis 2011, 22:38

Pech, jednak istnieje taka konstrukcja jak opisywałem. Dzięki Jony130 za wskazanie, teraz już wiem że ten pomysł odpada.

Do lepszego sterowania LEDami (z kontrolą każdej jednej sztuki) możesz zastosować układy 4094 połączone kaskadowo (np. jak na rys. 4 z tej strony: https://elportal.pl/index.php?module=Con ... y&ceid=117 ). Przez wejście Data podajesz stan kolejnych diód, CLK to zegar dla danych. Po wysłaniu stanu 60 ledów do rejestru przesównego, impulsem na STRobe przenosisz te stany na wyjścia. OutputEnable możesz podłączyć pod PWM i tak sterować jasnością.

Przykładowe ekspandery na I2C jak proponuje tom5555 masz tutaj: https://elportal.pl/index.php?module=Con ... y&ceid=145

keruseykaryu

Post autor: keruseykaryu » 12 lis 2011, 8:47

Skoro kolega ma ATMEGA32 gdzie ma cztery wolne porty, to czemu forsujecie rozwiązania statyczne, a nie dynamiczne? Ma 60 ledów a dwa porty już mogą przemiatać 64 ledy. Pożyczy jeszcze 4 piny z kolejnego portu i ma 60 ledów sekundowych i 4 cyfry wyświetlacza. Na klawiury i inne błachostki zostanie mu ho, ho.

maxxxior
Użytkownik
Posty: 210
Rejestracja: 19 mar 2010, 21:27
Lokalizacja: Skierniewice

Post autor: maxxxior » 12 lis 2011, 12:44

keruseykaryu pisze:to czemu forsujecie rozwiązania statyczne, a nie dynamiczne? Ma 60 ledów a dwa porty już mogą przemiatać 64 ledy. .
o jakie dokladnie rozwiązanie Ci chodzi? przy pomocy rejestrów przeuwnych? myślałem zastosować 74hc595... co wy na to?

maxxxior
Użytkownik
Posty: 210
Rejestracja: 19 mar 2010, 21:27
Lokalizacja: Skierniewice

Post autor: maxxxior » 12 lis 2011, 12:46

keruseykaryu pisze: Pożyczy jeszcze 4 piny z kolejnego portu i ma 60 ledów sekundowych i 4 cyfry wyświetlacza.
rozumiem że chodzi ci o te 4 piny którymi będę sterował wyświetlaczami segmentowymi za pomocą tranzystorów?

keruseykaryu

Post autor: keruseykaryu » 12 lis 2011, 18:13

maxxxior pisze:o jakie dokladnie rozwiązanie Ci chodzi?
Multipleksowanie. Matryca 8x8 diod. Zawsze świeci tylko 8 diod i pobiera tyle prądu co kot napłakał. Ty sobie policz ile będzie brało te 60 doid jak się wszystkie będą świecić.
Rejestr przesuwny robisz programowy i przerwaniu przemiatasz go na diody.
maxxxior pisze:myślałem zastosować 74hc595... co wy na to?
Rozwiązania statyczne są o kant ... rozbić.
maxxxior pisze:rozumiem że chodzi ci o te 4 piny którymi będę sterował wyświetlaczami segmentowymi za pomocą tranzystorów?
I dodatkowo 8 tranzystorów co będą sterować paczkami diod.

maxxxior
Użytkownik
Posty: 210
Rejestracja: 19 mar 2010, 21:27
Lokalizacja: Skierniewice

Post autor: maxxxior » 12 lis 2011, 18:43

Multipleksowanie. Matryca 8x8 diod. Zawsze świeci tylko 8 diod i pobiera tyle prądu co kot napłakał. Ty sobie policz ile będzie brało te 60 doid jak się wszystkie będą świecić.
mógłbyś podać jakiś schemat poglądowy jak by mialo to wyglądać? bo nie za bardzo rozumiem... Skoro mówisz że rozwiązania statczne są do bani to czemu napisałeś o rejestrze przesuwnym? i dlaczego zastosowanie 74hc595 nie jest dobre?
Rejestr przesuwny robisz programowy i przerwaniu przemiatasz go na diody.
z tym też za bardzo nie wiem co zrobić.

A, i czy na kwarcu w atmega32, moge odmierzyć dokładnie sekunde? czy zastosować inny zewnętrzny kwarc?

keruseykaryu

Post autor: keruseykaryu » 12 lis 2011, 21:47

maxxxior pisze:Skoro mówisz że rozwiązania statczne są do bani to czemu napisałeś o rejestrze przesuwnym?
Nie zjadaj słów: PROGRAMOWYM rejestrze przesuwnym.
maxxxior pisze:i dlaczego zastosowanie 74hc595 nie jest dobre?
Bo dalej będzie to miało na celu wyświetlanie statycznie. Czyli jak 59 sekund to wszystkie diody świecą i żrą prądu z 500mA.
A, i czy na kwarcu w atmega32, moge odmierzyć dokładnie sekunde? czy zastosować inny zewnętrzny kwarc?
A wiemy jaki go masz? Nie. Zatem najpierw dane wejściowe a potem wyjściowe.
z tym też za bardzo nie wiem co zrobić.
Czyli w ogóle jesteś zielony z tego. Chyba czas na poznanie najpierw jakiś podstaw, a nie rzucać się na bardziej skomplikowany projekt.
maxxxior pisze:mógłbyś podać jakiś schemat poglądowy jak by mialo to wyglądać?
Nie ma buforów, ale te wykombinujesz.
Załączniki
Przechwytywanie.JPG
Ostatnio zmieniony 12 lis 2011, 22:12 przez keruseykaryu, łącznie zmieniany 1 raz.

ODPOWIEDZ