Elektronika     Analizator stanów logicznych 1 MHz SMD (74HC245)        




Jest to prosty 8-kanałowy analizator stanów logicznych, podłączany do portu równoległego (LPT)
komputera PC. Służy do rejestrowania przebiegu sygnałów cyfrowych, o częstotliwości maksymalnej
1 MHz (rozdzielczość 1.4 us). W praktyce użyteczne pomiary można wykonywać na sygnałach, o czę-
stotliwości do ok. 100 kHz. Takie możliwości wystarczają do amatorskich zastosowań.
Głównym elementem analizatora jest bufor U1, zabezpieczający port LPT przed uszkodzeniem (np. na
skutek podania zbyt wysokiego napięcia wejściowego). Bufor ten jest zasilany bezpośrednio z pinu nr 1
(STROBE) portu równoległego, który ma bardzo małą wydajność prądową (ok. 2 mA). Dlatego jako U1
musi być użyty układ 74HC245 (zasilanie 2-6V) lub 74HCT245 (4.5-5.5V), który w modelowym analiza-
torze pobierał prąd poniżej 10 uA. Rezystory drabinkowe RP1 wymuszają niski stan logiczny na niepo-
dłączonych wejściach pomiarowych analizatora. Zapobiega to pojawianiu się na nich przypadkowych
przebiegów, a także zmniejsza pobór prądu przez układ U1. Wejścia pomiarowe analizatora oraz masa,
są wyprowadzone na standardowe 10-pinowe złącze IDC i powinny być połączone z systemem doce-
lowym przewodami, o długości ok. 30 cm.
Układ zmontowałem na płytce dwustronnej o wymiarach 40x35 mm, na której elementy są montowane
powierzchniowo i przewlekanie (rezystory drabinkowe RP1). Jako małą ciekawostkę dodam, że płytkę
prototypową wykonałem bez trawienia (mini wiertarką z małym frezem).
Analizator współpracuje z programem sterującym The Fabulous Logic Analyzer 0.5.0.

W razie problemów, należy zmienić w BIOS'ie tryb pracy portu równoległego na "Bi-Directional". Sys-
tem Windows XP może sprawdzać co jakiś czas, czy do portu równoległego nie podłączono drukarki.
Sprawdzanie to może powodować nieprawidłową pracę analizatora, podłączonego do tego portu.
Aby wyłączyć ciągłe sprawdzanie portu równoległego, należy zmodyfikować następującą wartość
w rejestrze systemowym:

[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\Parport\Parameters]
"DisableWarmPoll"=dword:00000001


Zmiana ta wymaga ponownego uruchomienia komputera, ale dzięki niej Windows XP sprawdzi obe-
cność drukarki tylko raz, podczas startu systemu (nie wykryje automatycznie drukarki, podłączonej
do portu LPT już po załadowaniu systemu). Aby włączyć ciągłe sprawdzanie portu LPT, należy temu
kluczowi ustawić wartość 0 i zrestartować komputer.

Konfiguracja programu The Fabulous Logic Analyzer 0.5.0
Do prawidłowej pracy analizatora w systemie Windows XP lub nowszym, konieczne jest zainstalowanie sterownika
GiveIO. Służy do tego plik wsadowy "install.bat" z katalogu GiveIO, który znajduje się w archiwum. Natomiast plik
wsadowy "remove.bat" usuwa z systemu sterownik GiveIO. Po instalacji sterownika GiveIO, uruchamiamy program
The Fabulous Logic Analyzer 0.5.0, który nie wymaga instalacji.
W menu "Settings", w podmenu "Port" zaznaczamy pozycję z adresem portu równoległego, do którego jest podłączony
analizator. Większą część okna zajmują (na razie puste), wykresy sygnałów pochodzących z 8-kanałów analizatora.
Na dole okna, w polu "Measuring Time (mm:ss):" wpisujemy lub ustawiamy strzałkami czas, przez jaki program ma
rejestrować sygnały. Suwak "Sampling Rate:" odpowiada za częstotliwość próbkowania (szybkość wykonywania
pomiarów), co bezpośrednio wpływa na maksymalną rozdzielczość wykresów. Jeśli suwak jest ustawiony w skrajnie
lewej pozycji, to rozdzielczość wynosi 28.4 us. Natomiast, jeśli suwak jest ustawiony całkowicie na prawo, to wtedy
wykresy mają maksymalną rozdzielczość 1.4 us.
Pola "Triggering:" służą do wyboru wyzwalającego stanu logicznego dla każdego kanału odzielnie (pole puste = stan
niski, zaznaczone = stan wysoki, nieaktywne = stan dowolny). Dopiero po pojawieniu się tego stanu na danym kanale,
rozpocznie się rejestrowanie sygnałów ze wszystkich kanałów. Jeśli na jednym z kanałów nie pojawi się wybrany stan
logiczny, to rejestracja nie rozpocznie się. Na początek odznaczamy wszystkie te pola, co spowoduje wyzwalanie sta-
nem niskim (na niepodłączonych kanałach analizatora panuje taki właśnie stan).
Aby rozpocząć pomiary naciskamy przycisk "Start" (zielona strzałka zawinięta w prawo) na pasku narzędziowym lub
klawisz [F5]. Pomiary można zatrzymać w dowolnej chwili, naciskając przycisk "Stop" (biały krzyżyk na czerwonym tle)
na pasku narzędziowym lub klawisz [F6]. Po określonym wcześniej czasie (i ewentualnie po pojawieniu się odpowied-
niego stanu logicznego na danym kanale), powinny pojawić się wykresy sygnałów ze wszystkich kanałów. Jeśli wejścia
pomiarowe analizatora nie były do niczego podłączone, to wykres każdego kanału powinien być linią prostą.
Na poniższym rysunku jest przedstawiony zrzut okna programu z wykresami sygnałów TTL o wypełnieniu 50% i często-
tliwościach: 60 kHz (kanał nr 1) i 6 kHz (kanał nr 2) oraz z zaznaczonym obszarem wykresu.
Pomiar czasu w dowolnie zaznaczonym obszarze
wykresu jest bardzo ważną funkcją. Aby wyzna-
czyć początek obszaru zaznaczenia, należy kli-
knąć LPM w dowolnym miejscu wykresu. W polu
"Left Button Marker:" pojawi się czas, jaki upłynął
od początku zarejestrowanego sygnału do zaz-
naczonego punktu początkowego. Aby wyznaczyć
koniec obszaru zaznaczenia, należy kliknąć PPM
w dowolnym miejscu wykresu, ale za punktem po-
czątkowym. W polu "Right Button Marker:" pojawi
się czas, jaki upłynął od początku zarejestrowa-
nego sygnału do zaznaczonego punktu końco-
wego. Wtedy w polu "Difference:" zostanie wy-
świetlony czas trwania obszaru zaznaczonego
na wykresie.
Aby móc dokładnie zaznaczać obszary wykresu
oraz analizować przebiegi sygnałów, trzeba po-
większyć wykres. Do powiększania i pomniejsz-
ania wykresu służą przyciski: "Zoom In" (lupa z
plusem) i "Zoom Out" (lupa z minusem) na pasku
narzędziowym lub klawisze [+] i [-]. Aby wyświe-
tlić wykres w maksymalnej dostępnej rozdzielczo-
ści pomiarowej, należy nacisnąć przycisk "Zoom
Default" (lupa z napisem 1:1) na pasku narzędzio-
wym lub klawisz [F2]. Aby zobaczyć cały wykres zarejestrowanego sygnału w jednym oknie, należy nacisnąć przycisk
"Zoom Fit" (lupa z ramką) na pasku narzędziowym lub klawisz [F3]. Aby zobaczyć tylko zaznaczony na wykresie obszar,
należy nacisnąć przycisk "Zoom to fit markers" (lupa z wykresami) na pasku narzędziowym lub klawisz [F4]. Poza tym
na pasku narzędziowym znajdują się też przyciski do przewijania wykresu: na początek/koniec, o stronę w lewo/prawo
oraz w lewo/prawo.
Program ma też wbudowane dekodery protokołów magistral I2C i SPI, które można włączyć dla dowolnych kanałów.
Aby to zrobić, należy z menu "Protocols" wybrać pozycję "Assign channels...". W nowym oknie, w grupie "Channel Assi-
gnments" za pomocą rozwijalnych list można przyporządkować sygnał sterujący danej magistrali do dowolnego kanału.
Nie można przyporządkować tego samego sygnału sterującego do kilku kanałów jednocześnie. Aby dekodować proto-
kół magistrali I2C, należy dwóm różnym kanałom przyporządkować sygnały "I2C - SDA" i "I2C - SCL". Aby dekodować
protokół magistrali SPI, należy dwóm różnym kanałom przyporządkować sygnały "SPI - SDI/SDO" i "SPI - SCK".
Po dokonaniu ustawień, okno zamykamy naciskając przycisk "OK". Po przyporządkowaniu sygnałów sterujących danej
magistrali, w menu "Protocols" staje się aktywna pozycja "Analyze I2C..." i/lub "Analyze SPI...". Jej wybranie spowoduje
wyświetlenie nowego okna z wynikiem analizy protokołu danej magistrali.
Zarejestrowane przebiegi sygnałów można zapisać w pliku DAT (1 sekunda zajmuje ok. 740 kB) lub wyeksportować do
pliku CSV, np. w celu późniejszej analizy. Służą do tego pozycje odpowiednio: "Save data..." i "Export data..." z menu
"File". Aktualnie widoczny w oknie wykres można zapisać jako obrazek PNG, za pomocą pozycji "Save current plot..."
z menu "File". Zapisane wcześniej pliki DAT, otwiera się za pomocą pozycji "Open data..." z menu "File".


SPIS ELEMENTÓW:

Rezystory:
RP1 - 8x10k
Kondensatory:
C1 - 100n
Układy scalone:
U1 - 74HC245 (SO20DW)
Złącza:
CON1 - DB25M proste (męskie)
CON2 - IDC10M proste (męskie)