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

Zegar TTL - Nieprawidłowe działanie

03 Maj 2015 14:35 924 6
  • #1 03 Maj 2015 14:35
    2361799
    Użytkownik usunął konto  
  • #3 03 Maj 2015 15:03
    2361799
    Użytkownik usunął konto  
  • #4 03 Maj 2015 18:22
    Steryd3
    Poziom 32  

    No ok- schemat jest. Bardziej zamotanego nie widziałem- jeżeli chcesz nam utrudnić zadanie to jesteś na dobrej drodze. Jeżeli ktoś ma poświęcić swój czas by Ci pomóc to dołóż starań by miał ochotę to robić- mnie już po spojrzeniu na to połowa chęci uleciała.

    Uporządkuj to - niech stanie się czytelny. Symbolu masy nie stosuj tylko raz a postaw ja przy każdej nóżce gdzie ona jest potrzebna. Gdzie to możliwe zastosuj połączenia typu magistralowego. Ciągnięcie 8 połączeń zamiast jednego nie poprawia czytelności. Pojedyncze poprowadź do resetów liczników, do bramek które te liczniki mają poskracać.
    Pewnie to nie jest przyczyna twoich problemów ale do nóżek każdego układu cyfrowego powinien być jak najbliżej dolutowany kondensator bezindukcyjny (niska indukcyjność doprowadzeń) -zazwyczaj jest to 100nF.

    0
  • #5 03 Maj 2015 19:52
    2361799
    Użytkownik usunął konto  
  • Pomocny post
    #6 04 Maj 2015 04:13
    kspro
    Poziom 27  

    Trudno powiedzieć dlaczego liczniki zamiast na 00 przeskakują na 02, ponieważ zrobiłeś kilka kardynalnych błędów.

    Przede wszystkim błędem jest pobudzanie jednocześnie wejść resetujących R0 i ustawiających R9. Do wyzerowania licznika 7490 należy pobudzać tylko wejścia R01 i R02, a wejścia R91 i R92 podłączyć do masy, gdyż wejścia te są dominujące. Oznacza to, że po podaniu jedynek na oba wejścia R91 i R92 licznik ustawia się w stan 9 nawet wtedy, gdy na wejściach R01 i R02 również jest jedynka. Tak więc gdyby skracanie cyklu działało prawidłowo liczniki powinny ustawiać się na 99. Jeśli tego nie robią to dlatego, że skracanie cyklu nie działa jak należy.

    Błędem jest także użycie pojedynczej bramki do kasowania dwóch liczników jednocześnie. Można użyć bramki do skracania cyklu liczników 7490/2/3, ale tylko w obrębie jednego licznika. Jeżeli do zdekodowania wystarczą dwie jedynki, to można posłużyć się wejściami wewnętrznej bramki AND, jakimi są wejścia R01 i R02, w przeciwnym wypadku trzeba użyć dodatkowej zewnętrznej bramki AND. Nie można jednak tak robić, gdy trzeba zresetować jednocześnie więcej liczników, gdyż mogą one mieć nieco różne czasy zadziałania i wolniejszy licznik może nie zdążyć prawidłowo się ustawić. W takim przypadku zalecane jest użycie dodatkowego przerzutnika RS na bramkach, który ustawiany jest po zdekodowaniu właściwej kombinacji wyjść liczników i kasowany wysokim poziomem sygnału zegarowego z wejścia pierwszego licznika. W ten sposób sygnał kasujący trwa prawie pół okresu sygnału zegarowego, a więc wystarczająco długo, żeby wszystkie liczniki zareagowały prawidłowo.

    Ponieważ w tym przypadku kasowane są tylko 2 liczniki jednocześnie, to zamiast przerzutnika RS można spróbować wydłużyć czas propagacji sygnału kasującego dokładając łańcuch kilku bramek za wyjściem bramki dekodującej stan końcowy. Myślę, że 2 bramki powinny wystarczyć, jest to najprostsze co można zrobić, ale powinieneś to wpierw wypróbować na samym liczniku minut albo godzin.

    Twój sposób ręcznego ustawiania liczników za pomocą przycisków jest do niczego, przynajmniej tak jak narysowałeś na schemacie. Nie można niczym, ani przyciskiem ani kondensatorem, zwierać wyjścia bramki do +5V, bo to skutkuje nadmiernym prądem, gdy wyjście bramki jest w stanie niskim, oraz "położeniem" zboczy przebiegu na jej wyjściu. Co prawda nie podałeś wartości RC, ale kondensator musi być raczej spory, rzędu 0.1µF, bo inaczej nie wytłumi drgań, a opornik niezbyt duży, może jakieś 100Ω, bo inaczej nie wymusi poziomu zera logicznego na kilku wejściach TTL jednocześnie. W rezultacie bramka jest nadmiernie obciążona także w stanie wysokim, pewnie jest gorąca i w tej sytuacji aż dziw, że w ogóle coś Ci działało.

    Do ustawiania minut i godzin niezbędne są multipleksery (być może zrobione z bramek), podające na wejścia liczników albo sygnał zegarowy albo sygnał z przycisku, czyli potrzebny jest jeszcze jakiś przełącznik trybu pracy w rodzaju: SET HR, SET MIN, CLOCK. To oczywiście komplikuje projekt, ale nie ma rady. Przy okazji, sam układ RC przy przycisku od "popędzania" godzin i minut nie wystarczy, potrzebna jest jeszcze bramka Schmitta, tak żeby generowane zbocze miało krótkie czasy narastania i opadania.

    Na koniec pozwolę sobie zgadnąć: pewnie nie dałeś kondensatorów 0.1µF blokujących zasilanie przy każdym scalaku? Jeśli nie dałeś, to wszystkiego się można spodziewać, bo układy cyfrowe, zwłaszcza liczniki i przerzutniki, w momencie zmiany stanu gwałtownie szarpią prąd zasilania, tak że bez kondensatorów na opornościach i indukcyjnościach ścieżek powstają szpilki w napięciu zasilającym i w masie, mogące zakłócić pracę sąsiednich układów, a choćby przez przesunięcie poziomów logicznych. Kondensatory blokujące w cyfrówce są obowiązkowe, najlepiej ceramiczne dyskowe lub tak zwane monolityczne, jak na płytach komputerowych (na pewno nie MKT czy inne foliowe). Zazwyczaj wystarcza jeden na dwa układy (oczywiście jeśli są położone blisko siebie), ale przy licznikach nie warto oszczędzać.

    0
  • #7 04 Maj 2015 12:39
    2361799
    Użytkownik usunął konto