logo elektroda
logo elektroda
X
logo elektroda
Adblock/uBlockOrigin/AdGuard mogą powodować znikanie niektórych postów z powodu nowej reguły.

Zegarek binarny na matrycy LED

mlassota 03 Maj 2012 13:19 13066 25
  • Zegarek binarny na matrycy LED
    Witam szanownych Kolegów.

    Po dość długim czasie o poprzedniej prezentacji tego tematu i po nieszczęśliwym wypadku poprzedniej wersji zegarka powstała wersja 2.0. Wersja 1.0 oparta była o zwykłe led ułożone w kolumny i sterowane przez Atmega8 oraz RTC DS1307. Niestety podczas robienia porządku na biurku pomyliłem wtyczki i zegarek dostał 12V miast 5V - co było przyczynkiem do modernizacji.

    Tą wersję oparłem na matrycy LED LM-58A23-CC, procesor ATtiny2313 oraz RTC DS1307. Wszystko - poza matrycą w technologii SMD.
    Schemat:
    Zegarek binarny na matrycy LED
    Kolejność pinów na schemacie odpowiada wyprowadzeniom matrycy
    Jako, że od wersji 1,0 minęło trochę czasu doszlifowałem co nieco moją znajomość Bascoma i kod zmniejszył się z 5,7kB do 1,87kB w wersji prezentowanej.

    Zegarek wyświetla godzinę w formacie kodu BCD co moim zdaniem znacznie przyspiesza odczyt.
    Zegarek umożliwia wyświetlanie w "kilku trybach".
    1. Czysty standardowy BCD
    2. BCD z podświetlaniem pola bajtu o intensywności 1
    3. BCD z podświetlaniem pola bajtu o intensywności 2
    4. BCD z podświetlaniem pola bajtu o intensywności 3
    5. BCD z podświetlaniem pola bajtu o intensywności 4
    6. BCD z podświetlaniem pola bajtu o intensywności 5 - bardzo jasne podświetlenie
    7. BCD w odwrotnej logice zapalona = 0 zgaszona = 1
    Całość oczywiście multipleksowana z częstotliwością ok 1kHz

    Płytka - nie jest majstersztykiem projektowym ale da się ją wykonać w warunkach domowych - nie ma żadnych przelotek pod układami.
    Niestety nie posiadam zdjęć z budowy bo nie myślałem o prezentowaniu tego zegarka ale...

    W załączniku plik schematu w Eagle, wsad do ATtiny oraz moja niezbyt profesjonalna ale sprawdzona i działająca płytka

    Miłego oglądania
    Zegarek binarny na matrycy LEDZegarek binarny na matrycy LEDZegarek binarny na matrycy LEDZegarek binarny na matrycy LEDZegarek binarny na matrycy LED
    Zegarek binarny na matrycy LEDZegarek binarny na matrycy LEDZegarek binarny na matrycy LEDZegarek binarny na matrycy LEDZegarek binarny na matrycy LED



    Załączniki:
    • Zegar binarny_mlassota.rar (36.49 KB) Musisz być zalogowany, aby pobrać ten załącznik.

    Fajne? Ranking DIY
    O autorze
    mlassota
    Poziom 18  
    Offline 
    Specjalizuje się w: mgr farm.
    mlassota napisał 372 postów o ocenie 85, pomógł 11 razy. Mieszka w mieście Włocławek. Jest z nami od 2008 roku.
  • #2 10856443
    MrDarkenRahl
    Poziom 13  
    Posty: 129
    Ocena: 7
    Wybacz za moje pytanie, ale tak właściwie jak odczytuje się tutaj godzinę? Sam pomysł bardzo mi się podoba - zastanawiam się, czy samemu nie zrobić tego układu, ale pierwsze w ogóle muszę wiedzieć, jak odczytać godzinę :D.
    Pozdrawiam
  • #3 10856484
    mlassota
    Poziom 18  
    Posty: 372
    Pomógł: 11
    Ocena: 85
    1 rząd - dziesiątki godzin
    2 rząd jedności godzin

    3 rząd dziesiątki minut
    4 rząd jedności minut

    5 rząd dziesiątki sekund
    6 rząd jedności sekund

    a w rzędzie po kolei od góry
    dioda nr
    1 = 1
    2 = 2
    3 = 4
    4 = 8

    i sumujesz np dioda 2 i 3 = 6 a np 1 i 4 = 9. z tytułowego obrazka : 1 2 1 7 3 4 czyli 12:17:34
  • #4 10856649
    Longer1989
    Poziom 24  
    Posty: 799
    Pomógł: 17
    Ocena: 52
    Która godzina? Czekaj muszę policzyć xD
    A tak serio to ładnie koledze wyszło. Nie miałeś problemów z wysterowaniem matrycy? Kiedyś miałem podobną (jak nie taką samą) również z tme, i w żaden sposób nie zgadzały mi się piny z noty z tymi w matrycy. Trzeba było samemu dochodzić.
  • #5 10856885
    nilder
    Poziom 16  
    Posty: 262
    Pomógł: 5
    Ocena: 30
    Fajnie się prezentuje. Jaki pobór prądu całego układu?
  • #6 10856959
    mlassota
    Poziom 18  
    Posty: 372
    Pomógł: 11
    Ocena: 85
    Piny tej konkretnej matrycy były zgodne z notą. Także nie miałem problemów. Troszkę się obawiałem czy nie zostaną jakieś duszki przy takim szybkim multipleksowaniu ale nie. Jedności sekund są zapalane portem B.7 (a porty od B.0 do B.4 wysyłają wartość bajtu - dokładnie 5/8 - na diody) więc musiałem w całym programie ustawić go jako wejście a tylko na czas wyświetlenia jedności sekund ustawić jako wyjście bo inaczej był widoczny malutki duszek na ostatnim rzędzie

    Co do prądu to w stresie czyli 4 diody w rzędzie pobiera 12mA - bezpiecznik jest 50mA - to wynik nauczki z podłączeniem zbyt wysokiego napięcia. Tu dioda Zenera - 3 W i bezpiecznik polimerowy 50mA zabezpieczają układ w sposób dobry.
  • #7 10857230
    wlw_wl
    Poziom 38  
    Posty: 4327
    Pomógł: 208
    Ocena: 148
    Mnie podoba się wpasowanie płytki bezpośrednio w/za matrycę, dopasowanie do jej wyprowadzeń.
    Trochę mniej podoba mi się termoglut :)

    I jeszcze na koniec się przyczepię, "technologia SMT", podobnie jak "dioda LED" czy "siła SEM", to masło maślane, więc albo po prostu SMT albo "technologia SMD" ;)
  • #8 10857368
    mlassota
    Poziom 18  
    Posty: 372
    Pomógł: 11
    Ocena: 85
    wlw_wl napisał:
    I jeszcze na koniec się przyczepię, "technologia SMT", podobnie jak "dioda LED" czy "siła SEM", to masło maślane, więc albo po prostu SMT albo "technologia SMD" ;)


    Poprawiłem - na diody uważałem ale SMT się wkradło miało być tak jak jest :)

    I jeszcze jedna rzecz nie opisana powyżej. Całość chodzi na wewnętrzny RC 8MHz - czyli trzeba tylko wyłączyć dzielenie zegara przez 8.
  • #9 10858234
    motykami
    Poziom 18  
    Posty: 320
    Pomógł: 29
    Ocena: 530
    Elektrooonik napisał:
    Wewnętrzny RC jak na układ zegara to dość kiepski pomysł - godzina szybko Ci się rozjedzie.


    A co ma sposób taktowania procesora wspólnego z rozjeżdżaniem się godziny ??

    Autor projektu zastosował RTC (zegar czasu rzeczywistego) DS1307 i to tylko i wyłącznie od niego zależy dokładność odmierzania czasu, procesor nie ma tu nic do rzeczy.
  • #10 10858434
    jousto
    Poziom 17  
    Posty: 186
    Pomógł: 14
    Ocena: 51
    A ja polecę autorowi tego projektu kurs tworzenia schematów bo ten przedstawiony powyżej ma wiele do życzenia (w kwestii jego czytelności): Link oraz Link
  • #11 10859141
    superhiro2
    Poziom 15  
    Posty: 201
    jousto napisał:
    A ja polecę autorowi tego projektu kurs tworzenia schematów bo ten przedstawiony powyżej ma wiele do życzenia (w kwestii jego czytelności): KURS MIREKK36 CZ I oraz KURS MIREKK36 CZ II


    Nie tylko schemat jest laurką. Płytka woła o pomste. Jak można ustawi grid 1mils minimum to 12.5 mils a naprawde w szczególnych przypadkach urzywałem 6.25mils ale tego nie polecam. Ścierzki prowadzone byle jak. Oj, oj, a nie mozna bylo posiedziec z 10 minut więcej. Tak dla schematu i płytki.

    Raczej nikomu nie polecam kopiowanie tej plytki.
  • #12 10859238
    mlassota
    Poziom 18  
    Posty: 372
    Pomógł: 11
    Ocena: 85
    jousto napisał:
    A ja polecę autorowi tego projektu kurs tworzenia schematów bo ten przedstawiony powyżej ma wiele do życzenia (w kwestii jego czytelności): Link oraz Link

    superhiro2 napisał:
    Nie tylko schemat jest laurką. Płytka woła o pomste. Jak można ustawi grid 1mils minimum to 12.5 mils a naprawde w szczególnych przypadkach urzywałem 6.25mils ale tego nie polecam. Ścierzki prowadzone byle jak. Oj, oj, a nie mozna bylo posiedziec z 10 minut więcej. Tak dla schematu i płytki.

    Raczej nikomu nie polecam kopiowanie tej plytki.


    Widzę że zaczyna się czepianie schematu płytki...
    Schematy i płytki projektować potrafię - patrz na link na początku tematu
    Tylko nieraz nie warto lub po prostu się nie chce
    Schemat rysowany na szybko żeby było - płytka też raczej na sztukę - zastanawiałem się czy ją w ogóle udostępniać ale...
    Gwarantuję że działa bez żadnych przeróbek. Co do siaki że 1 mils... a w czym to przeszkadza? Siatka nie warunkuje odległości między ścieżkami. Można sobie ustawić nawet i 50 mils tylko jak podłączysz wtedy piny np. Mega8?

    Płytkę wykonałem termotransferem i bez problemu polutowałem. Nie ma na niej złącza do programowania bo nie uważałem go za konieczne Założenia były dwa: ma zmieścić sie za matrycą i ma być na już... Oba wykonane.

    Jak patrzyłem na inne zegarki binarne to zwykle są one na Mega8 a ten na Tiny2313
    sam zegarek wszedł by nawet do Tiny13 ale nie ma wystarczającej ilości portów.

    Jeśli chodzi o kopiowanie projektu... Zawsze to fajniej samemu zrobić - większa satysfakcja
    Pozdrawiam
  • #13 10859333
    netotron
    Poziom 26  
    Posty: 773
    Pomógł: 86
    Ocena: 57
    Witam
    Rozumiem że rząd to u Ciebie kolumna?

    pozdrawaiam
  • #14 10859380
    mlassota
    Poziom 18  
    Posty: 372
    Pomógł: 11
    Ocena: 85
    netotron napisał:
    Witam
    Rozumiem że rząd to u Ciebie kolumna?

    pozdrawaiam


    Tak oczywiście :) Matryce zwykle pracują w odwrotnej pozycji i może stąd utkwił mi rząd... Ale tak oczywiście masz rację błąd w opisie :)
  • #15 10859611
    superhiro2
    Poziom 15  
    Posty: 201
    Grid możesz mieć nawet 12.5mils nie mylić z calami i nawet możesz wtedy poprowadzić ścieżki miedź padami uC.
  • #16 10862474
    Matt_x89
    Poziom 12  
    Posty: 50
    Ocena: 196
    Witam.

    Świetnie że kolega zdecydował się na zaprezentowanie swojego zegarka. Gratuluję bardzo dobrej optymalizacji kodu, według mnie to świadczy o dobrej umiejętności programowania :)

    Co do projektu płytki to nie mam nic do zarzucenia, płytka jest mała i bez uciążliwych przelotek do lutowania. Chcę przypomnieć, że wykonanie bardzo dopracowanej płytki zajmuje troszkę czasu, a jak każdy z nas mamy też inne obowiązki. Kolega mlassota udostępnił pliki projektowe więc każdy może dostosować elektronikę zegarka do własnych potrzeb.

    Płytka jest bezbłędnie zaprojektowana i mamy tu oryginalność co bardzo cenię :)


    Pozdrawiam wszystkich forumowiczów.
  • #17 10865533
    narasta
    Poziom 21  
    Posty: 597
    Pomógł: 7
    Ocena: 219
    Projekt zacny ale...

    Polutowałeś to SMD jakbyś chciał a nie mógł... Zdecydowanie za dużo cyny jak na SMD. Bardzo przydatna jest pasta lutownicza - nawet taka najtańsza - smarujesz całą płytkę, bierzesz cynę np. 0,5mm i starasz się dać minimalne ilości cyny. Jeżeli nałoży Ci się już za dużo, to odsysasz odsysaczem albo licem - Lico to z resztą wyjątkowo sprytny diabeł :P

    Obudowa masakryczna - wiesz, że da się kupić gotowe w elektroniku...

    Na ile starcza kondensator podtrzymujący?
  • #18 10876083
    raffiki
    Poziom 14  
    Posty: 137
    Pomógł: 1
    Ocena: 287
    Zegarek całkiem fajny. Jedynie gdzie widzę dużą ilość cyny to przy pinach matrycy więc to nic dziwnego, są dość blisko więc pewnie się "podlały". Jedyne na co zwróciłem uwagę w opisie to "podświetlanie bajtu". Masz tam 8x 4 bity. Sąsiadujące kolumny nie nazwał bym jednym bajtem (i sądzę, że w programie każda kolumna też jest osobnym bajtem). To nie jest negatywna uwaga tylko jakoś tak mi się pomyślało.

    Skoro masz to na biurku przydało by się sterowanie jasnością, ciężko na takiej małej płytce upchnąć, ale jak by zrobić dwuwarstwową można by się pokusić o MBI5029 i fotorezystor do ADC. Dość fajny efekt wychodzi.

    Co do obudowy, najgorsze za tobą, front (gotowa matryca) jest idealny. Resztę już łatwo wykonać.
  • #19 10876336
    mlassota
    Poziom 18  
    Posty: 372
    Pomógł: 11
    Ocena: 85
    Witam

    Podświetlenie jest 3 x 2x4 bity czyli 3 bajty... o ile dobrze liczę
    Każda pojedyncza liczba mieści się w 1/2 bajtu bo liczymy max do 9
    Czyli 2 x 1/2 bajtu czyli 1 bajt x 3 liczby :)

    Co do obudowy... Nie miało jej być :)
    Jak kupie folie do przyciemniania szyb (a jest to w planach) zrobię z pleksi 4mm ukośny stojak... ale to jeszcze...

    Tiny2313 nie ma ADC na pokładzie a myślałem nad tym - mam jeszcze około 10% wolego miejsca więc może uzależnię jasność od godziny... ale to już może kiedyś.
    Dawanie ADC na I2C - bo ta szyna jest wykorzystywana przez RTC... troszkę za dużo kombinowania ale pomysł fajny - może kiedyś.


    Co do cyny przy matrycy - można było pewnie dać mniej ale tak wyszło - teraz jest polakierowane i nie będę jej odsysał bo tak na prawdę nie przeszkadza.
    Z resztą nawet w kupowanym sprzęcie luty nieraz wyglądają jak to bym ja lutował...

    MBI to fajne układy ale chyba szkoda by ich było do takiego mrugadełka. Na MBI kopiowałem kiedyś projekt zegarka widmowego... tam sprawowały się świetnie

    Dzięki za opinię
    Obudowę z czasem poprawię a wykorzystanie matrycy miało właśnie uwolnić mnie od robienia "frontu"

    Kondensator wystarcza spokojnie na tydzień bez zasilania - jak dla mnie wystarczająco.

    Pozdrawiam
    ML
  • #20 10876504
    narasta
    Poziom 21  
    Posty: 597
    Pomógł: 7
    Ocena: 219
    wow - tydzień to sporo - zawsze mnie zastanawiało czy samorozładowanie takiego superkondensatora go nie przerośnie - dobrze wiedzieć :)

    Jeśli chodzi o cynę - nikt nie mówi, że ma to wyglądać tak jak kupowanym sprzęcie - zadaj sobie pytanie - czy chcesz być chińczykiem czy profesjonalistą w swojej dziedzinie? :) Pisząc o cynie miałem na myśli tylko elementy SMD.

    A swoją drogą - osobiście wolę używać atmegi 8 - mniejsza obudowa smd więcej pamięci i ADC. Ale co kto potrzebuje :) Attiny jest ogromne w tym SOPie :/
  • #21 10876714
    mlassota
    Poziom 18  
    Posty: 372
    Pomógł: 11
    Ocena: 85
    Kondensator ma 0,33F - pewnie czas zależy np. od wilgotności powietrza ale po tygodniu wyłącznie napięcie na nim było 2,1V przy nominalnym 2,7 a RTC w/g noty wymaga od 2,0 ale przy 1,4 spokojnie chodzi - testowałem :)

    Co do bycia dobry w swojej dziedzinie... Jestem farmaceutą i na codziennie pracuje w aptece więc...

    Jak spojrzysz na projekt LED CUBE to zobaczysz że jak ma być ładnie polutowane to jest :) Tu miło być... po prostu miało być :) Cynę używam 0,25mm. Past i topników nie lubię (choć mam) bo ciężko zmywają się w IPA. Używam kalafonii w IPA i rezultaty nie są złe.
    Dlaczego Tiny: bo miałem i nie wiedziałem co z nim zrobić a portów było w sam raz, a po drugie program wszedł akurat w niego. Wielkość obudowy... fakt Wolę SSOP ale nie robią tego w takiej a tu dało radę - zmieścił się...
  • #22 10879386
    MichalRo
    Poziom 10  
    Posty: 41
    mlassota napisał:
    1 rząd - dziesiątki godzin
    2 rząd jedności godzin

    3 rząd dziesiątki minut
    4 rząd jedności minut

    5 rząd dziesiątki sekund
    6 rząd jedności sekund

    a w rzędzie po kolei od góry
    dioda nr
    1 = 1
    2 = 2
    3 = 4
    4 = 8

    i sumujesz np dioda 2 i 3 = 6 a np 1 i 4 = 9. z tytułowego obrazka : 1 2 1 7 3 4 czyli 12:17:34


    a żeby było 3?
  • #23 10879435
    MrDarkenRahl
    Poziom 13  
    Posty: 129
    Ocena: 7
    yyyy, o ile dobrze pamiętam z przedszkola 1+2=3, czyli 2 zapalone diody od góry to trzy.
  • #24 10879440
    Fengus
    Poziom 13  
    Posty: 136
    Ocena: 2
    żeby było 3 musi się palić dioda 1 i 2 w tej samej kolumnie
  • #25 10879533
    MichalRo
    Poziom 10  
    Posty: 41
    Źle zrozumialem, bo sumowalem diody i ogolnie ma sie zapalic 2 i 1 a ja myslalem, ze 2,3,1 :)
  • #26 10907334
    ilonaz19
    Poziom 11  
    Posty: 5
    Ocena: 3
    Kolego mlassota Mam prośbę może byś wrzucił to w pliku .bas chciałam porównać jakich przerwań użyłeś w swoim projekcie :) pozdrawiam

Podsumowanie tematu

✨ W dyskusji poruszono temat zegarka binarnego na matrycy LED, który został zmodernizowany do wersji 2.0. Użytkownik opisał, że nowa wersja oparta jest na matrycy LED LM-58A23-CC, procesorze ATtiny2313 oraz RTC DS1307. Zegarek wyświetla czas w formacie BCD, co przyspiesza odczyt. Uczestnicy dyskusji zadawali pytania dotyczące odczytu godziny, poboru prądu oraz problemów z lutowaniem elementów SMD. Wskazano również na konieczność poprawy schematu oraz jakości wykonania płytki. Użytkownik podzielił się informacjami na temat optymalizacji kodu, który zmniejszył się z 5,7 kB do 1,87 kB. Wspomniano o zastosowaniu kondensatora podtrzymującego oraz o możliwościach dalszej optymalizacji projektu.
Podsumowanie wygenerowane przez AI na podstawie treści dyskusji.
REKLAMA