Analizator stanów logicznych na LPT

analizator_stanow_logicznych_1Najlepszy przyjaciel w elektronice cyfrowej – analizator (rejestrator) stanów logicznych. Pomoże rozwiązać problemy z wszelaką komunikacją urządzeń, I2C, SPI, RS232, 1WIRE, czy też własnego protokołu. Skończ z bezsensownymi poprawkami programu „na ślepo”. To najtańsza z najtańszych wersja takiego analizatora logicznego – wtyczka LPT, bufor 74xx245, i trochę przewodu – reszta to aplikacja na PC.

Układ wykonany na podstawie tej strony, można pobrać stamtąd też aplikację na PC. Cały analizator stanowi układ wejściowy portu LPT, próbki nie są w żaden sposób buforowane tak jak w przypadku lepszych analizatorów, ale odbierane i zapisywane w czasie rzeczywistym. Pomimo tego uzyskujemy do miliona próbek na sekundę z 8 kanałów jednocześnie, co już samo w sobie jest niezłym wynikiem i bez problemu podejrzymy „co w trawie piszczy” nawet w bardziej skomplikowanych układach. Bufor 74xx245 ochrania port LPT przed ewentualnymi przepięciami. Zasilanie bufora pobierane jest z linii STROBE portu, niestety linia ta ma bardzo małą wydajność prądową (od ok. 250uA do ok. 2mA)… Rodzaj bufora ma znaczenie, wersje LS czy F pobierają nawet do 90mA w stanie „nic nierobienia”, więc aby takich użyć należy przeciąć ścieżkę pinu STROBE i doprowadzić własne zasilanie, np. z układu mierzonego lub dorobić wtyczkę USB i potrzebne napięcie poierać z portu USB. Zastosowanie bufora w wersji HC obniży pobór prądu do minimum i umożliwi zasilanie z pinu STROBE. Dioda kontrolna zasilana poprzez rezystor 10K co także obniża pobór prądu, ale należy się tutaj upewnić że bufor dostanie przynajmniej 3V (dla HC, dla wersji LS 4.7V) przy wszystkich liniach w stanie L. W przypadku gdy ten warunek nie zostanie spełniony całość trzeba zasilić z zewnętrznego źródła. Prawdę mówiąc to bufor można całkowicie pominąć i przewody podpiąć bezpośrednio do portu, ale należy pamiętać że port nie będzie w jakikolwiek sposób zabezpieczony przed przepięciami itp, w razie uszkodzenia czeka nas wymiana płyty głównej. Układ nie jest w żaden sposób odizolowany galwanicznie od komputera, nie zachowując ostrożności możesz uszkodzić sobie port LPT lub płytę główną! Izolację galwaniczną można wykonać przy pomocy transoptorów, ale pamiętaj że te muszą być dostatecznie szybkie – no i też trzeba je jakoś zasilić. Przewód nie powinien być zbyt długi, ja zastosowałem taśmę IDC 10 żyłową o długości około metra. Nie polecam stosowania dłuższego przewodu, bowiem pojemności pasożytnicze pomiędzy jego żyłami skutecznie zaczną utrudniać pomiary przy wyższych prędkościach. Aby uniknąć odbić pomiędzy żyłami można zastosować szerszą taśmę, i pomiędzy każdą żyłą z sygnałem puścić żyłę dołączoną do masy. Zakończenia przewodów dowolne, można użyć tzw. chwytaków pobierczych, nie są one drogie. Ja będę używał analizatora w układach prototypowych z wykorzystaniem płytki stykowej, więc przewody sygnałowe zakończyłem szpilkami, tzw. pinhead’ami. Można je też ponumerować, ale raczej jest to zbędne, po prostu zapamiętamy że pierwszy kanał jest przy przewodzie masy a ostatni przy przewodzie zasilania. Żyły masy i zasilania zakończyłem zwykłymi krokodylkami.

W internecie można znaleźć sporo aplikacji takiego analizatora obsługujących port LPT – przykładowo bardzo dobry i niezwykle prosty w obsłudze The Fabulous Logic Analyzer (także w dziale download). Jeśli nie posiadasz w komputerze portu LPT, cóż sprawa się komplikuje, z konwertera usb-lpt nie skorzystasz bo będzie zbyt wolny, potrzebujesz czegoś co już buforuje próbki – przykładowo świetny analizator wykonujący do 4 milionów próbek na sekundę na 4 kanałach – Scanalogic, oparty na AVR Atmega16 i konwerterze usb-rs232.

Zobacz też: Uniwersalna Płytka Analizatora Logicznego

POBIERZ – pliki projektu eagle 5.4.0, schemat i płytka w PDF i PNG, w czterech wariantach.


.

5.00 avg. rating (96% score) - 1 vote

Jeden komentarz

  1. Czy można użyć układu 74hc125 ?

Dodaj komentarz

Twój adres email nie zostanie opublikowany. Pola, których wypełnienie jest wymagane, są oznaczone symbolem *

Proszę pozostawić te dwa pola tak jak są: