Skocz do zawartości

Technika cyfrowa - #7 - sterowanie wyświetlaczem 7-seg.


Komentator

Pomocna odpowiedź

13 godzin temu, jd123 napisał:

ale czy da się tutaj wykorzystać wyjście nr 4 ?

@jd123 Dobre pytanie 🙂 Pierwsza sprawa, co chcesz podać na wyjście układu skoro jest ono... wyjściem 😉 

Spójrz na schemat z dokumentacji - masz też w kursie:

image.thumb.png.d687af4fb31e7b5c6e58b3e752e6f90e.png

Na dole jest nóżka 3 która służy do wygaszenia - sygnał jest negowany i rozprowadzany na bramki przy wyjściach wyświetlacza. Na nóżkę 4 trafia sygnał z 3 bo znowu jest negowany. W nazwie występuje słowo kluczowe "ripple", które oznacza że coś można łączyć w kaskady czyli łącząc kilka układów w kaskadę pinami 3 do 4 (ale osobnych układów) uda Ci się wyłączyć wszystkie.

Może paść pytanie dlaczego tak to wymyślono, skoro można na wszystkie wyświetlacze podać sygnał na pin 4? Nie jest to jednak głupie, bo:

  • jeżeli inny układ steruje wyłączaniem to ma on swoją wydajność (tzw. obciążalność wyjściową "fan-out") i nie możesz z jednego wyjścia wysterować np. 10 innych wejść. Wtedy kaskada ma sens, bo każdy układ wzmacnia sygnał przez to że w środku są 2 bramki tworzące bufor (wzmacnia sygnał ale nie zmienia jego stanu).
  • opóźnienie w propagacji sygnału może być potrzebne. Połączenie w kaskadę powoduje że sygnał rozchodzi się stopniowo z opóźnieniem wnoszonym przez każdą z bramek, czyli w tym przypadku mamy w torze 2 bramki czyli każdy układ opóźnia sygnał o 2 czasy propagacji bramki NOT. To akurat może być wada.
13 godzin temu, jd123 napisał:

Ja podłączyłem do wyjścia 5 rezystor 3,3k i diodę katodą do minusa.

image.thumb.png.08bf0f9566a0f30e8d5083cb4b5c4650.png

No to dobrze podłączyłeś. Jak jesteś zainteresowany tematem to sprawdź jak wygląda wyjście w tym układzie, tzn. jak zrealizowane są te bramki. Coś mi się wydaje że wyjścia są push-pull czyli logiczne 0 zasysa prąd, logiczne 1 podaje prąd i wtedy możesz łączyć jak chcesz. Ale doczytaj, nie jestem pewny, jak działa to ok 🙂 

Jeżeli chcesz sprawdzać przejście jakiegoś bitu w innym przypadku zawsze możesz zbudować układ kombinacyjny z bramek, który wykryje jakiś stan Najlepiej narysuj sobie przebiegi na kilku pinach i sprawdź co chcesz osiągnąć. Przebiegi wyglądają jak te:

image.thumb.png.91991bb456959d23317536525271f2f1.png

Gdzie zegar to u ciebie to co klikasz przyciskiem

Link do komentarza
Share on other sites

Dzięki za wyczerpującą odpowiedź, trochę to zajęło zanim cokolwiek zrozumiałem. Notę wcześniej przeglądałem, ale nie aż tak bardzo szczegółowo. Podsumowując:

1.      Jeśli nie korzystam z innych układów to pin 4 jest nieprzydatny ?

2.      W zadaniu z diodą chodziło mi o to, żeby tylko mignęła w momencie przejścia 9 -> 0, kiedy występuje zbocze narastające, może kiedyś się uda 🙂

Ps. Jeśli się nie mylę to ripple występuje w drugim układzie CD4033, w kursie jest CD4026, 3 i 4 piny to display enable in i out, ale chyba ich zastosowanie jest podobne.

Link do komentarza
Share on other sites

14 godzin temu, jd123 napisał:

    Jeśli nie korzystam z innych układów to pin 4 jest nieprzydatny ?

@jd123 tak, wtedy wisi w powietrzu, jest wyjściem więc może zostać niepodłączony. Wejścia należy do czegoś podłączać.

14 godzin temu, jd123 napisał:

Jeśli się nie mylę to ripple występuje w drugim układzie CD4033, w kursie jest CD4026, 3 i 4 piny to display enable in i out, ale chyba ich zastosowanie jest podobne.

W sumie ciekawe, nie zauważyłem że inaczej się nazywają. Określenie ripple pojawia się często i odnosi się do układów które są w kaskadzie więc np. jakbyś robił układ dodający 2 liczby bit po bicie, to będą mieć sygnał "ripple" carry out który będzie przenosił nadmiarową jedynkę.

14 godzin temu, jd123 napisał:

w momencie przejścia 9 -> 0, kiedy występuje zbocze narastające,

Kiedyś też się zastanawiałem jak się sprawdza czy wystąpiło zbocze, ale to nie takie proste. Najłatwiej będzie jak zbudujesz układ, który wykryje tę sytuację:

image.thumb.png.816a0ab4a78cddead205c45b7753a844.png

Czyli jeżeli na wyjściu masz same 0 to znaczy że ostatnio była 9. Patrzysz też na zegar i tylko jest stan wysoki - wtedy uzyskasz impuls o długości połowy zegara, który możesz do czegoś użyć.

Jak zbudować taki układ? Tu się kłaniają tabilice Karnough lub prościej: mam 1 na clk i 4 zera i chce tylko w tej sytuacji 1 na wyjsciu. Czyli robię bramkę and o 5 wejściach, podłączam do niej clk, a te 4 zera przez bramki not. Nie masz bramki and o 5 wejściach, połącz 4 bramki and i zrobione. Trzeba tylko upewnić się że nie ma wyścigów... ale to temat na później

 

Może to Ci się przyda, szkoda że nie udało mi się tego dokończyć mam gdzieś szkic w wordzie z tablicami Karnough 😕 

Link do komentarza
Share on other sites

Kolejny raz dzięki za szybką odpowiedź, przyglądałem się przebiegom i dokładnie tę sytuację co jest zaznaczona chciałem wykryć. Próbowałem z generatorem monostabilnym na podstawie NE555, tylko że działa przy liczbach od 0 do 4, czyli gdy jest 1 na wyjściu nr 5 carry out. Nie rozumiem jak zliczyć cztery zera jeśli na wyjściu będzie ciągle zero ? Chyba, żeby liczyć taktowanie zegara, czyli kliknięcia przycisku ? Cóż, może kiedyś się uda, przyszedł nareszcie czas na Arduino. Kurs Układy logiczne - aktualnie pierwszy rozdział czytam, drugi na weekend. Pozdrawiam

  • Lubię! 1
Link do komentarza
Share on other sites

Zarejestruj się lub zaloguj, aby ukryć tę reklamę.
Zarejestruj się lub zaloguj, aby ukryć tę reklamę.

jlcpcb.jpg

jlcpcb.jpg

Produkcja i montaż PCB - wybierz sprawdzone PCBWay!
   • Darmowe płytki dla studentów i projektów non-profit
   • Tylko 5$ za 10 prototypów PCB w 24 godziny
   • Usługa projektowania PCB na zlecenie
   • Montaż PCB od 30$ + bezpłatna dostawa i szablony
   • Darmowe narzędzie do podglądu plików Gerber
Zobacz również » Film z fabryki PCBWay

Złożony układ:

IMG_20220420_200333391.thumb.jpg.1bd305a5d031ddd1cf8c1b7d4f05277e.jpg

  1. Efekt działania układu:
  • Cyfra pojawiająca się po włączeniu zasilania: jeden
  • Moment w którym następuje zwiększenie wyświetlanej wartości: po zwolnieniu przycisku
  • Moment w którym następuje reset wyświetlanej wartości: w trakcie wciskania przycisku
  • Reakcja układu na przycisk po wyjęciu kondensatora C1: losowe liczby
  • Lubię! 1
Link do komentarza
Share on other sites

Działający wyświetlacz:

Podłączono jeden kondensator zamiast 3 - wg zdjęć układu.

Na zdjęciu poniżej zaznaczyłem pola zajęte przez microswitch. Lewy i prawy dolny otwór dla microswitcha kolidują odpowiednio z rezystorem oraz zworką.

Schowek01.thumb.jpg.eb97da620619e0a185c4908836440a53.jpg

Wobec tego rezystor wstawiłem o jedno pole niżej microswitcha a zworkę po skosie. 

microswitch.thumb.jpg.4f4b0e12674a275613cb923ca0a6600e.jpg

Chyba że to się da jakoś inaczej rozwiązać.

Edytowano przez miro88
  • Lubię! 1
Link do komentarza
Share on other sites

Układy złożone, działają. Zrobiłem też zadanie dodatkowe do wyświetlacza:

Dodatkowo:

  • wyjście carry out z led : działa. 
  • wyłączanie przyciskiem wyświetlacza: działa
  • blokowanie naliczania: działa
  • zliczanie podłączonym kontaktronem z magnesem. 

Kurs zakończony.
 

IMG_20220901_160724.jpg

Edytowano przez RakietowyKim
  • Lubię! 1
Link do komentarza
Share on other sites

Witam!

Złożyłem układ lecz po załączeniu wyświetlacz pokazuje zero i nie następuje żadna reakcja przycisków.

Zastanawiam się co może być przyczyną. Układ składałem przy pomocy schematu. Porównując ze zdjęciami

zastanawiał mnie brak 2 kondensatorów. Może powinienem je usunąć? Albo rozważam uszkodzenie scalaka, w czasie składania układu gąbka z licznikami

spadła mi na podłogę - czy mogę zweryfikować poprawność działania?

Poniżej mój układ, może ktoś zaproponuje co można zmienić:

20221222_223804.thumb.jpg.f3637418c410448c0f3eaa7e92edff2a.jpg

edit: Już działa. Problemem był przycisk resetu - przewód był prowadzony do 15ki przed przyciskiem, przez co siłą rzeczy licznik był nieustannie resetowany😁 - przewód jest już za przyciskiem i działa jak trzeba. Jednakże za każdym razem gdy włączam układ nabija mi licznik. Nie jestem pewien czy tak powinien się zachowywać licznik. Pozdrawiam.

Edytowano przez Maciek_S
Znalazłem rozwiązanie.
  • Lubię! 1
Link do komentarza
Share on other sites

8 godzin temu, Maciek_S napisał:

edit: Już działa

Szybko poszło, dobra robota 🙂 Jeśli po włączeniu zasilania na wyświetlaczu widoczna jest wartość "1" to jest to poprawne zachowanie układu.

Link do komentarza
Share on other sites

@Cuby_92_, moje podejrzenie padłoby na te bardzo rozciągnięte rezystory, że mogą nie dawać rady mieć dobrego kontaktu z płytką, a skoro masz ładne zwory do płytki stykowej, to może je wykorzystać, a rezystory posadzić bez takiego wyginania? A co najmniej sobie sprawdź z jednym z tych segmentów przy 3, czy jak wsadzisz "wysoko" rezystor i pociągniesz do niego przewód, to czy przypadkiem nie będzie świecił.

Edytowano przez trainee
Link do komentarza
Share on other sites

Dołącz do dyskusji, napisz odpowiedź!

Jeśli masz już konto to zaloguj się teraz, aby opublikować wiadomość jako Ty. Możesz też napisać teraz i zarejestrować się później.
Uwaga: wgrywanie zdjęć i załączników dostępne jest po zalogowaniu!

Anonim
Dołącz do dyskusji! Kliknij i zacznij pisać...

×   Wklejony jako tekst z formatowaniem.   Przywróć formatowanie

  Dozwolonych jest tylko 75 emoji.

×   Twój link będzie automatycznie osadzony.   Wyświetlać jako link

×   Twoja poprzednia zawartość została przywrócona.   Wyczyść edytor

×   Nie możesz wkleić zdjęć bezpośrednio. Prześlij lub wstaw obrazy z adresu URL.

×
×
  • Utwórz nowe...

Ważne informacje

Ta strona używa ciasteczek (cookies), dzięki którym może działać lepiej. Więcej na ten temat znajdziesz w Polityce Prywatności.