[µProjekt] Cyfrowy motyl (monitorowanie sygnałów logicznych)

Projekty użytkowników forum zarówno sprzętowe, jak i związane z programowaniem w dowolnym języku.
Awatar użytkownika
gaweł
Geek
Geek
Posty: 1260
Rejestracja: wtorek 24 sty 2017, 22:05
Lokalizacja: Białystok

[µProjekt] Cyfrowy motyl (monitorowanie sygnałów logicznych)

Postautor: gaweł » poniedziałek 22 sty 2018, 16:00

Cyfrowy motyl* (monitorowanie sygnałów logicznych)
ltra_ilu00.jpg

* pomysłodawcą określenia "Cyfrowy motyl" jest Natasza B.

Nikogo nie trzeba przekonywać, że czasami proste przyrządy diagnostyczne są bardzo pomocne przy uruchamianiu urządzeń zawierających układy cyfrowe lub mikrokontrolery. Często bardzo proste rozwiązania takich przyrządów potrafią dostarczyć nam wiele szczegółów dotyczących działania uruchamianego lub tworzonego urządzenia. Wymagania określone dla przyrządu są następujące:
  • sygnalizacja stanu logicznego,
  • sygnalizacja krótkich impulsów dodatnich,
  • sygnalizacja krótkich impulsów ujemnych.
Pod pojęciem krótkiego impulsu kryje się impuls, którego czas trwania sygnalizowany przez diodę LED, jest zauważalny przez człowieka (impulsy o czasie trwania już od kilkuset mikrosekund). Jako impuls dodatni należy rozumieć impuls o pierwszym zboczu dodatnim (narastającym) oraz impuls ujemny o pierwszym zboczu ujemnym (opadającym), przedstawia to ilustracja 1.
ltra_ilu01.png
Całe urządzenie diagnostyczne zostało pomyślane jako swoista sonda przyłączana do nadzorowanego układu. Elektryczne połączenie tej sondy z układem jest zrealizowane poprzez wielostykowy klips zakładany na układ scalony (ilustracja 2), który może być założony na cyfrowy układ scalony mający obudowę dwurzędową (ilustracja 3). Użyty klips jest przystosowany od obudowy układów scalonych o 16 wyprowadzeniach. Nie oznacza to, że nie może być użyty do innych układów. W przypadku układów o większej liczbie wyprowadzeń należy liczyć się z tym, że klips nie obejmie wszystkich wyprowadzeń. W przypadku układów o mniejszej liczbie wyprowadzeń jedyną przeszkodą użycia klipsu jest ewentualna jego kolizja z elementami zamontowanymi obok nadzorowanego układu scalonego.
ltra_ilu02.jpg
ltra_ilu03.jpg
Kompletny układ diagnostyczny jest powieleniem identycznego rozwiązania do “obsługi” jednego wyprowadzenia. Jednopinowy schemat jest przedstawiony na ilustracji 4.
ltra_ilu04.png
Dioda LED (D1) z rezystorem ograniczającym prąd (R3) jest włączona pomiędzy plus napięcia zasilającego a wyjście bramki EXOR (U1). Włącznik wejściowy (SW1) może odłączyć elektronikę sondy od nadzorowanego układu. Ta możliwość może być w pewnych sytuacjach niezbędna by pracą sondy diagnostycznej nie zakłócać diagnozowanego układu (przykładowo obwody generatora kwarcowego do taktowania mikrokontrolera mogą niepoprawnie pracować). Na drugie wejście bramki jest podany stały sygnał logiczny, który może przyjmować stan logicznej jedynki (jeżeli włącznik SW2 jest otwarty) lub logicznego zera (jeżeli włącznik SW2 jest zamknięty). Sens zastosowania bramki EXOR w układzie pokazanym na ilustracji 4 stanie się jasny po przeanalizowaniu poniższej tabeli:
ltra_ilu05.png
Zauważmy, że jeżeli na wejściu A jest stan logicznego zera, to wyjście Y przyjmuje identyczne stany jak na wejściu B (Y=B dla A=0), oraz jeżeli na wejściu A jest stan logicznej jedynki, to wyjście Y przyjmuje zanegowany stan z wejścia B (Y=NOT B dla A=1). Przy takim spojrzeniu, bramkę EXOR można uważać za programowalny negator. Przy odpowiednim wysterowaniu jednego wejścia bramki EXOR, cała bramka zachowuje się jak negator lub wzmacniacz logiczny.
Operując włącznikiem SW2 (ilustracja 4) można uzyskać świecenie diodą LED dla wejścia INP będącego odpowiednio w stanie logicznej jedynki lub zera. Głównym jednak powodem zastosowania rozwiązania z “programowalnym negatorem” nie jest stworzenie wygody do manipulowania i określania kiedy dioda LED ma świecić a kiedy nie świecić. W stanie statycznym (gdy stan wejścia się nie zmienia lub zmiany są powolne) w gruncie rzeczy jest nie istotne, czy dioda LED ma świecić lub nie. Zarówno świecenie i nieświecenie niesie dokładnie taką samą informację: stan na wejściu jest stały (logiczne zero lub jedynka) i nie ulega zmianie. Problem zaczyna się w sytuacji obserwowania krótkich impulsów dodatnich lub ujemnych (ilustracja 1). Rozpatrzmy następującą sytuację:
włącznik SW1 i SW2 są włączone (bramka EXOR jest wzmacniaczem logicznym sygnału),
na wejściu pojawia się krótki impuls ujemny.
Krótki impuls ujemny oznacza, że na wejściu panuje stan logicznej jedynki i w pewnym momencie stan na chwilę zmienia się na stan logicznego zera i ponownie wraca do stanu logicznej jedynki. Ze względu, że SW2 jest zwarty, bramka EXOR pracuje jako wzmacniacz logiczny, czyli powtarza na wyjściu przebieg sygnału wejściowego. Człowiek widzi ten przebieg jako krótki błysk światła emitowany przez diodę LED. Co będzie działo się w układzie jeżeli na wejście układu zostanie podany krótki impuls dodatni? Dioda LED będzie cały czas świecić i jedynie w momencie zaistnienia impulsu na ułamek sekundy emisja światła zostanie zatrzymana. Okazuje się, że oko ludzkie nie zauważy krótkiej przerwy w świeceniu diody LED (ale bardzo dobrze zauważa pojawienie się błysku). Można o tym się przekonać próbując zaobserwować transmisję jednego znaku przez układ transmisji szeregowej mikrokontrolera (szczególnie jeżeli w transmitowanym bajcie jest dużo jedynek i transmisja jest prowadzona z dużą prędkością). To zjawisko bezwładności oka na zmiany emisji światła jest głównym powodem zastosowania programowalnego negatora (czyli bramki EXOR). Jako efekt uboczny przy obserwowaniu statycznych stanów jest możliwość określenia czy dioda LED ma świecić gdy na wejściu jest stan logicznej jedynki lub logicznego zera.
Kompletny schemat sondy pokazany jest na ilustracji 6 oraz 7.
ltra_ilu06.png
ltra_ilu07.png
Rysunek ścieżek płytki PCB dla strony TOP oraz BOTTOM pokazany jest na ilustracji 8 i 9.
ltra_ilu08.png
ltra_ilu09.png
Położenie poszczególnych elementów pokazane jest na rysunku 10.
ltra_ilu10.png
Zmontowane urządzenie diagnostyczne przedstawiają ilustracje 11 i 12 (w kolejnych fazach powstawania).
ltra_ilu11.jpg
ltra_ilu12.jpg
ltra_ilu13.jpg
Do zasilania układu przewidziane są dwa przewody zakończone odpowiednimi klipsami pozwalającymi na “pożyczkę” napięcia zasilającego nawet z monitorowanego układu scalonego.
ltra_ilu14.jpg
Rozmieszczenie elementów pozwalających na konfigurację pokazane jest na ilustracji 15.
ltra_ilu15.jpg
Przełączniki kanałów (pozwalające odłączyć poszczególne piny sondy od monitorowanych sygnałów) w stanie ON łączą wejścia bramek EXOR z wejściowym klipsem. Włączniki polaryzacji (pozwalające definiować, czy dany kanał pracuje jako wzmacniacz czy jako negator) w stanie ON określają, że dany kanał jest wzmacniaczem (dioda LED świeci jeżeli na wejściu jest stan logicznego zera). Numeracja przełączników włącznika kanałów jest zgodna z numeracją włącznika polaryzacji.
ltra_ilu16.jpg
Użycie tak zbudowanego urządzenia diagnostycznego prezentuje ilustracja 16. W tym zastosowaniu sonda pokazuje stany na mikrokontrolerze AVR AT90S2313. Sam klips jest założony na mikrokontroler tak, że diagnozuje wyprowadzenia 2..9 oraz 12 .. 19 mikrokontrolera (ilustracja 17).
ltra_ilu17.jpg
Jak łatwo zauważyć na wejścia 3 i 4 sondy trafiają wyprowadzenia generatora taktu mikrokontrolera. By nie została zakłócona praca tego generatora, zostały odłączone te wejścia od nadzorowanego układu. Odłączenie to oznacza, że na wejściach bramek EXOR ustalony jest (poprzez odpowiedni rezystor) stan logicznej jedynki. Można za pomocą drugiego przełącznika wyłączyć świecenie diod LED (ilustracja 18).
ltra_ilu18.jpg
Zasilanie sondy w tym przypadku użycia wygląda następująco (ilustracja 19 i 20).
ltra_ilu19.jpg
ltra_ilu20.jpg
Nie masz wymaganych uprawnień, aby zobaczyć pliki załączone do tego posta.

Prawdziwe słowa nie są przyjemne. Przyjemne słowa nie są prawdziwe.
Lao Tse

Awatar użytkownika
tasza
Geek
Geek
Posty: 1082
Rejestracja: czwartek 12 sty 2017, 10:24
Kontaktowanie:

Re: [µProjekt] Cyfrowy motyl (monitorowanie sygnałów logicznych)

Postautor: tasza » poniedziałek 22 sty 2018, 20:31

stare, dobre czasy....
______________________________________________ ____ ___ __ _ _ _ _
Kończysz tworzyć dopiero, gdy umierasz. (Marina Abramović)

Awatar użytkownika
gaweł
Geek
Geek
Posty: 1260
Rejestracja: wtorek 24 sty 2017, 22:05
Lokalizacja: Białystok

Re: [µProjekt] Cyfrowy motyl (monitorowanie sygnałów logicznych)

Postautor: gaweł » poniedziałek 22 sty 2018, 20:49

tasza pisze:stare, dobre czasy....

Skoro jest sporo tematów typu µ-projekty, to postanowiłem odkurzyć swoje drobne i bardzo drobne rozwiązania.

Prawdziwe słowa nie są przyjemne. Przyjemne słowa nie są prawdziwe.
Lao Tse


Wróć do „DIY”

Kto jest online

Użytkownicy przeglądający to forum: Obecnie na forum nie ma żadnego zarejestrowanego użytkownika i 2 gości