Elektroda.pl
Elektroda.pl
X
Relpol przekaźniki
Proszę, dodaj wyjątek dla www.elektroda.pl do Adblock.
Dzięki temu, że oglądasz reklamy, wspierasz portal i użytkowników.

Efektowny zegar z diod LED na pcf8583 i atmega8

ElektroTME 21 Lut 2010 19:02 42280 67
  • Efektowny zegar z diod LED na pcf8583 i atmega8


    Witam,
    chciałbym pokazać wam dopiero co skończony zegar oparty na uC Atmega8L oraz pcf8583.
    Zegar pięknie prezentuje się wieczorem oraz w nocy.
    Wyświetlacz to 6 cyfr 7segmentowych, każdy segment składa się z 5 diod (5mm) w kolorze czerwonym (może to niezbyt czytelnie wygląda w dzień, ale obudowa jak i zegar powstały z materiałów które miałem pod ręką, zamierzam ją trochę zmodyfikować).
    Cyfry są wysokości ok 10 cm, obudowa z aluminiowych kątowników i białej płyty pcb grubości 4mm.

    Schemat płytki bazowej:
    Efektowny zegar z diod LED na pcf8583 i atmega8

    Na schemacie nie ma tranzystorów sterujących cyframi i segmentami dlatego że ja pod lutowałem je pod segmenty, widać to na zdjęciach.

    Zdjęcia:
    Efektowny zegar z diod LED na pcf8583 i atmega8 Efektowny zegar z diod LED na pcf8583 i atmega8 Efektowny zegar z diod LED na pcf8583 i atmega8 Efektowny zegar z diod LED na pcf8583 i atmega8 Efektowny zegar z diod LED na pcf8583 i atmega8 Efektowny zegar z diod LED na pcf8583 i atmega8 Efektowny zegar z diod LED na pcf8583 i atmega8 Efektowny zegar z diod LED na pcf8583 i atmega8 Efektowny zegar z diod LED na pcf8583 i atmega8 Efektowny zegar z diod LED na pcf8583 i atmega8 Efektowny zegar z diod LED na pcf8583 i atmega8 Efektowny zegar z diod LED na pcf8583 i atmega8 Efektowny zegar z diod LED na pcf8583 i atmega8 Efektowny zegar z diod LED na pcf8583 i atmega8 Efektowny zegar z diod LED na pcf8583 i atmega8 Efektowny zegar z diod LED na pcf8583 i atmega8 Efektowny zegar z diod LED na pcf8583 i atmega8 Efektowny zegar z diod LED na pcf8583 i atmega8 Efektowny zegar z diod LED na pcf8583 i atmega8 Efektowny zegar z diod LED na pcf8583 i atmega8

    Co do programu, prosty napisany w bascomie, na filmie poniżej można zobaczyć jego działanie.


    Link


    Proszę o opinie, dobre, złe, wasze opinie, wasze pomysły rozwiązania tego układu lub też sugestie co można zmienić/dodać do projektu.

    Pliki:

    Fajne! Ranking DIY
    Potrafisz napisać podobny artykuł? Wyślij do mnie a otrzymasz kartę SD 64GB.
    O autorze
    ElektroTME
    Poziom 14  
    Offline 
    Specjalizuje się w: atmegi
    ElektroTME napisał 158 postów o ocenie 70, pomógł 14 razy. Jest z nami od 2008 roku.
  • Relpol przekaźniki
  • #2
    zgierzman
    Poziom 22  
    ElektroTME napisał:
    (może to niezbyt czytelnie wygląda w dzień, ale obudowa jak i zegar powstały z materiałów które miałem pod ręką, zamierzam ją trochę zmodyfikować)

    Rzeczywiście, po ciemku prezentuje się fajnie, w świetle słabiej, a w jasny dzień może być problem z czytelnością. Kawałek czerwonej plexi (dostaniesz z grosze w firmach zajmujących się np. reklamą, i jeszcze przytną na wymiar) załatwi sprawę.
  • Relpol przekaźniki
  • #3
    ElektroTME
    Poziom 14  
    W sumie racja (u mnie w sklepie mam taką czerwoną folię), myślałem też o czarnej siateczce, takiej jaka jest na głośnikach, fajnie to wygląda, ale może za bardzo przyciemniać. Nad obudową jeszcze pomyślę. :P
  • #4
    zgierzman
    Poziom 22  
    ElektroTME napisał:
    myślałem też o czarnej siateczce, takiej jaka jest na głośnikach, fajnie to wygląda, ale może za bardzo przyciemniać.

    O, to fajny pomysł jest. Tylko skąd dostać coś takiego?
    Przy okazji zakładania filtra tą białą płytę wymieniłbym lub pomalował na jakiś ciemny kolor - szary/czarny, lub czerwony... Jak zostawisz białą, to pomimo filtra nadal będzie ją widać. Nie bez przyczyny wyświetlacze LED mają czoło pomalowane na szaro, tak, że kolor podobny jest do niezapalonego segmentu.
  • #5
    ElektroTME
    Poziom 14  
    Wiem, jak wierciłem otwory pod diody to nie miałem nic innego, siateczkę od głośników wezmę, mam stare dwa od Unitry, głośniki się posypały, a siateczki są jeszcze w miarę, i jak je dam to nawet płyty bym nie musiał zmieniać, bo sprawdzałem, nie ma różnicy miedzy zgaszoną diodą, a białą płytą.
  • #6
    edekk
    Poziom 26  
    Miałem podobny zegar na MC1206 ,który pokazywał przez 8 sek. godzinę ,a następnie datę przez 2 sekundy.Wkurzające było to jak w nocy człowiek się zbudził i patrzał która jest godzina , a tam datę pokazywało:D Po tygodniu usunąłem datę i pokazuje mi tylko godzinę.:D Jeśli chodzi o twoją konstrukcje to daje 5/5
  • #7
    ElektroTME
    Poziom 14  
    Ja mam godzinę przez ok 9,5s a datę 2,5 Mnie na razie to nie denerwuje, poza tym jeżeli dwukropki nie migają to wiem że to data jest wyświetlana ;)
  • #8
    Uszol 1990
    Poziom 29  
    ile całość pobiera pradu ?
    max - czyli gdy świecą sie same 88:88:88
    i średnio jak jest wyświetlana godzina
    pozdrawiam
  • #9
    Raven33
    Poziom 9  
    Witam, bardzo interesujący projekt, a mam pytanie czy masz zamiar rozwijać go o jakieś nowe funkcje? Np dodanie budzika, jakąś sygnalizację dźwiękową, czy to było by w tym projekcie zbędne?
  • #10
    Manio95
    Poziom 21  
    Na filmiku widać jak te segmenty mrugają i jest to chyba trochę "nie przyjemnie dla oka".
    Ale projekt mi się podoba :)
  • #11
    maciej_333
    Poziom 34  
    Z tego co widzę, to diody są połączone równolegle bez rezystorów. Nie wolno tak robić, bo każda dioda ma jakiś rozrzut napięcia progowego. W rezultacie świecenie będzie nierównomierne.
  • #12
    manekinen
    Poziom 29  
    Widze że dałeś stały 33pF przy RTC, jak z dokładnością? Mogłeś dać jakiś 18pF i do tego trymerek to zawsze można podregulować bo prędzej czy później się rozjedzie. Bardzo fajnie zrobione nastawianie czasu, ale chociaż wsad mógłbyś dać za darmochę ;)

    Funkcja budzenia faktycznie by się przydała do pełni szczęścia.
  • #13
    wlw_wl
    Poziom 38  
    Ładnie wydziergane PCB, ale ohydne kable te szare przy goldpinach :wink: (te cynoglutki...)
    Ciekawie się prezentuje po ciemku.
    Minus taki, że moim skromnym zdaniem Mega8 do takiego zadania to armata na muchy, ale wiadomo, nie opłaca się kombinować. Sądząc po rozrzucie elementów na płytce i tak nie martwiłeś się o miejsce :)
    Gdybyś był mniej doświadczonym użytkownikiem powiedziałbym "Bardzo fajnie, tak trzymać!" ale tak to powiem tylko "No ciekawie" ;)

    Co do funkcji budzenia to proponuję prądem :D
  • #14
    Pandora417
    Poziom 10  
    Bardzo mi się podoba, a co do płytki to dlaczego w pdf jest inna od tej co na zdjęciu ?
  • #15
    Karol966
    Poziom 30  
    Cytat:
    Co do programu, prosty napisany w bascomie,


    No zapewne jest prosty a wręcz banalny więc dlaczego aż 3 pkt sobie za niego życzysz? :P

    Co do krytyki - jak już ktoś wspomniał widać multipleksowanie. Może pomyśl nad wyświetlaniem statycznym. Mógłbyś to zrealizować na ekspanderach (z tego co pamiętam PCF8785) bądź też na zwykłych rejestrach SIPO (chyba 74LS164). Koszt 80gr/szt
  • #16
    ElektroTME
    Poziom 14  
    Ale dużo pytań i uwag, to mi się podoba.
    To może zacznę od początku:

    Uszol 1990:
    Gdy tylko zachwycony kolega odda mi zegar(jest w trakcie testowania) to zmodyfikuję kod i pomierzę te wartości o które prosiłeś.

    Raven33:
    W tym projekcie budzik lub też sygnalizacja dźwiękowa jest zbędna.
    W późniejszym okresie(do następnych zegarów) planuję dołożyć cyfrowy czujnik temperatury, (może budzik), wyświetlanie dnia tygodnia.

    Manio95 i Karol966:
    Jak wiecie panowie, przy kręceniu filmu aparat rejestruje klatki z jakąś tam częstotliwością, można także zauważyć że cyfry nie migają podczas ustawiania godziny, w rzeczywistości nie widać migania, nawet w nocy.
    Wykorzystałem multipleksowanie, cyfry straciły na jasności, więc w następnych tak dużych zegarach zastosuję jakiś układ, aby pozbyć się multipleksacji, jaki? jeszcze nie obadałem tego ;p

    maciej_333:
    Szczerze nie miałem pojęcia, że nie wolno tych diod tak łączyć, dałem tam tylko po 1 rezystorze między tranzystor a segment i nie widzę różnicy w jasności poszczególnych diod/segmentów.

    manekinen:
    Tak dałem tam na stałe 33pF, dlatego że nie maiłem trymera, po drugie zegar i tak będzie przestawiany 2 razy na rok, więc mam nadzieję że się aż za bardzo nie rozjedzie. W przyszłych korektach programu planuję uwzględnić czas zimowy i letni i jego automatyczną zmianę(tego chyba pcf nie ma, i jeszcze nie wiem jak to zrobię, ale próbować zawsze można).

    wlw_wl:
    Wiem, co do cynoglutków, przyznaję nie przyłożyłem się, ale to z tego względu że testy wyświetlacza robiłem na stykówce, potem płytka, tak na szybko chciałem sprawdzić czy działa. W najbliższym czasie jak tylko zegar wróci z "testów" kolegi zajmę się glutkami, założę im fajne termokurczliwe koszulki ;p
    Mega8 została tam wrzucona dlatego, że akurat miałem ich kilka w szufladzie.
    A gdybym chciał później coś zmienić/dołożyć funkcje, łatwiej przerobić kod niż schemat :P Poza tym planuję, jak już wspomniałem, dorzucić cyfrowy termometr.
    Co do budzenia, można w przyszłym zegarko-budziku dołożyć jakieś wyjście np z przekaźnika, żeby załączał jakąś syrenę, lub coś innego, ale prądem raczej bym się nie chciał budzić :P

    Pandora417:
    Co do rozbieżności wzoru płytek i schematu, miałem awarię laptopa i część projektu robiłem na stacjonarnym, potem kopiowałem projekt na lapa, były 3 wersje płytki, dlatego mogło mi się coś pomieszać, sprawdzę dokładnie i podmienię na poprawny plik.
    EDIT: Już pliki się zgadzają ;p (w pliku untitled.sch oprócz schematu z atmegą jest niedokończony schemat z diodami, powstał tylko w celu wydrukowania maski z diodami dla otworów w pcb, - wiecie o co mi chodzi :P)

    Karol966:
    Co do kodu, jest on jeszcze w fazie ulepszania, a do tej pory zastosowałem w nim kilka ciekawych rzeczy, jak przygasanie segmentów, przyśpieszanie dodawania godzin/min/sek itd. Myślę że gdyby ktoś chciał zapożyczyć sobie fragment, to 3pkt to nie majątek. Jeżeli któryś z was nie ma żadnych punktów, proszę o kontakt na PW.

    Pozdrawiam
  • #17
    manekinen
    Poziom 29  
    Automatyczna zmiana czasu nie jest taka prosta, musiałbyś liczyć dni tygodnia bo jak wiesz czas się zmienia w niedzielę. Ale skoro zaimplementowałeś już obsługę lat przystępnych to nie będzie problemu. A nic nie wspomniałeś o regulacji jasności diod, może warto dać jakiś fotorezystor/fototranzystor który by na noc jasność zmniejszał bo pewnie daje trochę po oczach. A multipleksowane jest jak najbardziej ok, po to się tak robi żeby nie podnosić kosztów i powiększać płytki o dodatkowe układy - zegar jest dla naszych oczu a nie dla oka kamery ;)
  • #18
    ElektroTME
    Poziom 14  
    Z tym fotorezystorem też myślałem, ale zapomniałem napisać, to też jest dobry pomysł. Oczywiście uwzględnię to dopiero w kolejnym zegarku, nawet gdyby ten zegar to miał to i tak nikt by z tego nie skorzystał. W pomieszczeniu w którym ma być zamontowany jest zawsze tak samo jasno. A po godzinach pracy nikogo nie będzie żeby na niego spojrzeć :P (ewentualnie programowo dodam kod wyłączający zegar po godzinach pracy, ale jeszcze muszę to uzgodnić :P)
  • #19
    Pandora417
    Poziom 10  
    ElektroTME napisał:

    Już pliki się zgadzają ;p (w pliku untitled.sch oprócz schematu z atmegą jest niedokończony schemat z diodami, powstał tylko w celu wydrukowania maski z diodami dla otworów w pcb, - wiecie o co mi chodzi :P)


    Dzięki pomogłeś mi wziąłem się do pracy tego zegareczka :)
    A czy podał byś tabele z elementami które użyłeś? Cena jest zbędna.
    Oraz dodam jeszcze możesz podać dokończony schemat połączenia diod.
    Bardzo mi pomożesz jeżeli to wszystko zrobisz, wręcz jestem gotów oferować ci punkty.
    Pozdrawiam
  • #20
    wlw_wl
    Poziom 38  
    Ja też jestem zdania, że jak masz procek pod ręką i w dodatku go znasz i lubisz to możesz na nim zrobić nawet migającą diodę. Tutaj jednak zawsze znajdzie się ktoś, kto napisze "a można było na bramkach/układach TTL/tranzystorach/lampach".

    Co do multipleksowania, zgadzam się z Karol966, osobiście też wolę robić nie-multipleksowane wyświetlacze. Podpinasz sobie na 3 pinach pod Atmegę rejestry CD4094 (74HC595) i na wyświetlaczu wyświetla się na raz wszystko i nie oszukujesz oczu mruganiem :D Jest to dużo łatwiejsze niż się wydaje, jeśli chcesz to odezwij się na PW, pomogę kodem i schematem :)
  • #21
    Pandora417
    Poziom 10  
    Te elementu mogą już od paść :P od tego bardzo bym prosił o dokładny schemat połączeń diod z rezystorami oraz tranzystorami
  • #22
    ElektroTME
    Poziom 14  
    Przepraszam, ale mam awarię komputera, może jutro uda mi się to zrobić, proszę nie tracić zapału oi chęci do zrobienia zegara.
    Pozdrawiam
  • #23
    p_zag
    Poziom 14  
    Witam,
    kiedyś wykonałem podobny zegarek, ale pisałem go w języku C. Jest to zegarek z wyświetlaczami 1calowymi LED(SA10-21GWA) i układem PCF8583 współpracującym z mikroprocesorem Atmega8 oraz układami PCF8574AP na szynie TWI(i2c). Posiada generator PWM (regulacja stopnia świecenia wyświetlaczy LED). Radził bym też, o ile nie masz zastosować układ Watchdog'a (to taki niezależny układ, który w razie zawieszenia się procesora sam go po pewnym czasie(np. 250 milisekund) resetuje ).
    Co do zegara PCF8583 to kondensator (nóżka 1 i 8 PCF8583) decyduje o spieszeniu lub spóźnianiu się zegara. I tak bez tego kondensatora mój zegar spieszył się 18 sekund na dobę. Wlutowałem więc kondensator 10pF - spóźniał mi się 2 sekundy na dobę (czyli mój cel był pomiędzy brakiem kondensatora, a kondensatorem 10pF). I tak metodą dobrań kondensatorów doszedłem do 8,2pF z odchyłką 1 do 2 sekund na tydzień!, co mnie zupełnie satysfakcjonuje. A kwarc to zwyczajnym standardowy kwarc zegarkowy.
    https://www.elektroda.pl/rtvforum/topic1338039.html
    Jeżeli przeanalizowanie mojego zegara okazało by się za trudne to ta strona trochę pomorze
    https://www.elektroda.pl/rtvforum/viewtopic.php?t=1427945&highlight=
    Życzę owocnych prac przy budowie twojego zegara
    Piotr
  • #24
    virtuoz
    Poziom 12  
    skoro mówicie o multiplexowaniu, nie wystarczyło by do każdego segmetu diód dodac równolegle kondensator, który by stabilizował miganie, oczywiscie tak dobrany, aby zmiana cyfry nie trwała zbyt długo?
  • #25
    smith_dgr
    Poziom 12  
    przyciemnienie można wykonać z (tylko nie wiem dokładnie jak to nazwać)...
    Otóż:
    kolorowy monitor crt,
    z bezpiecznej odległości obtłukujemy szyjkę, jakimś prętem np, sztachetą bądż innym narzędziem,
    gdy już będzie bez gazu młotkiem po kawałku tłuczemy szkło, (okulary ochronne, rękawice, płaszcz ... -BHP),
    musimy robić to delikatnie - szczególnie jeśli będziemy tłukli przód...
    Ale do czego zmierzam:
    Wewnątrz kolorowych TV, monitorów itd jest mikrosiatka stalowa, która bardzo ładnie przyciemnia mocne światło (do drzwiczek kominka bardzo ładnie się nadaje)
    najlepiej jakbyś znalazł jakiś duży TV i nie uszkodził tej siatki przy wyciąganiu
    wówczas masz na cały zegar przesłonę. A jak nie, to kilka CRT i po zabawie.
    Można ją wyginać jak kartkę papieru (nie jest nawet chyba wiele grubsza) i pozaginać na ramki z drutu 2mm.

    Najpierw musiałbyś wydrzeć jedną sztukę i przyjrzeć się jak to wygląda z tym światłem diód - TEST.
  • #26
    areczek5s
    Poziom 12  
    witam. chciałem sobie zrobić ten zegar i mam pytanie: czemu w załączniku "pliki do bascoma" są trzy pliki? który mam wgrać? .hex .bas czy .bin ?
    odrazu mówię że jestem początkujący. i jeszcze chciałbym się dowiedzieć jak mam ustawić fuse bity jeśli wgrywam to za pomocą pony prog?.

    a teraz pytanie do autora : mógłbyś podać wykaz elementów?
  • #27
    ElektroTME
    Poziom 14  
    wlw_wl:
    Właśnie, warto spróbować następnym razem zrobić na rejestrach, wszystkiego trzeba próbować :P

    Pandora417:
    Spis elementów:
    - atmega8L(lub atmega8 - 16PU)
    - podstawka dil28
    - pcf8583
    - podstawka dil 8
    - kwarc zegarkowy 32.768kHz (w każdym prostym zegarku jest taki)
    - stabilizator 7805T
    - gniazdo Power Jack (możesz sobie zrobić na złączkach ark)
    - 2 diody 1N4148
    - gniazdo pod baterie od biosa 3V + bateria (możesz równie dobrze podłączyć 2 paluszki)
    - 3x rezystor 10k
    - 1000uF elektrolit
    - 2x 100nF
    - 1x 33pF
    - 20x goldpin męski + 20x goldpin żeński
    - 6x tranzystor BC548B
    - 8x tranzystor BC557B
    - 8x rezystor 330 Ohm
    - 214 diod led
    - obudowa, ja zrobiłem ją z białej pcb, ale ine polecam akurat białego koloru, chyba że zakupisz mleczne diody(zapewne będą droższe).

    p_zag:
    Twój projekt przyda mi się do kolejnego zegarka, dzięki za podsunięcie tematu :D

    smith_dgr:
    Co do siatki z TV, dobry pomysł, nie wiem czy użyję go do tego projektu, ale na pewno sprawdzę jak za siatką będą wyglądały lampy Nixie, następny zegarek chyba z lamp będzie :P

    Co do kondków przy wyświetlaczach, będę musiał to potestować, ale chyba już nie na tym wyświetlaczu, a na moim dwunasto znakowym wyświetlaczu swojego czasu: (sory za jakość, wtedy nie posiadałem nic poza kamerką internetową)

    Link


    areczek5s:
    Plik *.bas to kod źródłowy, plik *.hex to plik wynikowy który musisz wgrać do uC. A fusy ustaw na wewnętrzny oscylator 8MHz.


    Plik z dokończonym schematem diod i tranzystorów:
  • #28
    areczek5s
    Poziom 12  
    a jakim programem otworzyć ten "dokończony schemat"?
  • #29
    ElektroTME
    Poziom 14  
    Plik ze schematem otworzysz w programie Eagle (u mnie wersja 5.6.0), jeżeli nie masz tego programu, to możesz pobrać schematy w pdf'ie dostępne w paczce poniżej.
  • #30
    Pandora417
    Poziom 10  
    Ciekawi mnie jeszcze jedno jakie napięcie z zasilacza idzie do płytki i ten kondensator elektrolityczny może być na 16V. Przedni panel już zrobiłem wstawiam zdjęcia w raz z miarką.Wykonałem go ze sklejki, zabejcowałem na czarno i wstawiłem czerwone ledy.
    Efektowny zegar z diod LED na pcf8583 i atmega8 Efektowny zegar z diod LED na pcf8583 i atmega8 Efektowny zegar z diod LED na pcf8583 i atmega8