In-Circuit Spy ICS32sx – wielofunkcyjne urządzenie kontrolno-pomiarowe

 

 

 

 

Filozofowie zadają sobie pytanie: „Co było pierwsze? Jajko, czy kura?” Elektronicy do zbudowania jednego urządzenia potrzebują dwóch innych. A jak radzono sobie z tym problemem na początku? Na szczęście współcześni inżynierowie mają ten etap już za sobą, a przy konstruowania nowych urządzeń mogą przebierać w ofertach najróżniejszych systemów wspomagania projektowania. Przedstawiamy In-Circuit Spy ICS32sx, urządzenie, które może okazać się ciekawą, a przy tym dość nietypową pomocą dla elektroników-konstruktorów.

In-Circuit Spy ICS32sx to wielofunkcyjne, jak nazywa je producent, urządzenie kontrolno-pomiarowe. Już sama nazwa sugeruje różnorodność zastosowań. ICS32sx może być wykorzystywany z zaimplementowanymi przez producenta funkcjami użytkowymi, ale nawet średnio zaawansowani elektronicy będą z pewnością potrafili dodawać własne procedury, nadając urządzeniu własne, indywidualne cechy.

In-Circuit Spy ICS32sx stanowi złożony system mikroprocesorowy oparty na mikrokontrolerze LPC1248 i układzie FPGA XC35400 pełniącym funkcję podobną do chipsetów stosowanych na płytach komputerowych. System jest taktowany przebiegiem zegarowym o częstotliwości ustawianej w zakresie od 6 do 200 MHz, wytwarzanym przez scalony generator ICS307 zamontowany na płycie. Każdy z dostępnych dla użytkownika czterech 8-bitowych portów we/wy jest buforowany układami 74LVC245AD, podobnie są zabezpieczone linie sterujące. System zawiera ponadto statyczną pamięć RAM 2 MB, interfejs USB oparty na układzie firmy FTDI oraz interfejs RS232 pracujący z szybkością 115200 b/s. Na płycie tylnej umieszczono dwa gniazda USB, ponieważ są one wykorzystywane również do zasilania urządzenia. Dzięki temu zmniejszono obciążenie pojedynczego gniazda. Funkcje ICS32sx mogą być rozszerzane przez dołączanie opcjonalnych modułów. Schemat blokowy ICS32sx przedstawiono na rys. 1.

 

Rys. 1. Schemat blokowy In-Circuit Spy ICS32sx

Rys. 1. Schemat blokowy In-Circuit Spy ICS32sx

 

 

Urządzenie ma bardzo efektownie wyglądającą, metalową obudowę, dobrze przy tym ekranującą wzajemnie elektronikę i otoczenie. Jest to istotne, ze względu na obecność w ICS32sx bardzo szybkich sygnałów cyfrowych, które mogą wprowadzać dość poważne zakłócenia elektromagnetyczne. Na panelu czołowym znajdują się cztery gniazda typu IDC wyprowadzające porty we/wy systemu mikroprocesorowego. Jest też gniazdo portu kontrolnego. Funkcje niektórych pinów tego portu zmieniają się w zależności od wykorzystywanej aplikacji. Na wyposażeniu ICS32sx znajduje się 9 kabelków pomiarowych, zakładanych na wybrane piny gniazda, są też 4 wiązki zakończone wtykiem IDC. Nad gniazdami umieszczono 6 diod świecących sygnalizujących zasilanie urządzenia oraz stan realizowanych w danej chwili operacji. Na tylnej ściance umieszczono gniazda interfejsów komunikacyjnych (USB i RS232), gniazdo opcjonalnego zasilania zewnętrznego i gniazdo konfiguracyjne. Dokładne opisy poszczególnych gniazd można znaleźć w elektronicznej dokumentacji urządzenia dostarczanej na pendrivie, jednak bardzo przydatne w praktyce, szczególnie w początkowym okresie wykorzystywania ICS32sx, są wydrukowane i zalaminowane ściągawki formatu A6.

In-Circuit Spy ICS32sx jest urządzeniem, do którego trzeba się trochę przyzwyczaić. Do jego pełnego, świadomego wykorzystania przydatna może okazać się wiedza o mikrokontrolerach i układach FPGA oraz umiejętność ich programowania. Użytkownicy znający język C i VHDL będą mieli zatem ułatwione zadanie. W instrukcji podano narzędzia typu Open Source, zalecane do tworzenia własnych aplikacji, ale nie są one oczywiście obowiązkowe. Każdy programista może wykorzystywać preferowane przez siebie środowiska programistyczne.

ICS32sx pracuje z dwoma interfejsami: konsolowym (podstawowym) i graficznym. Interfejs graficzny został zaimplementowany jako nakładka, ze względu na znaczne ułatwienie obsługi urządzenia – chyba wielu Czytelników pamięta uciążliwość pracy na komputerach wyposażonych tylko w system operacyjny DOS. Ponadto, tego typu interfejs ma większość programów inżynierskich dostarczanych przez różnych producentów. Użytkownicy przyzwyczaili się zatem do takiego sposobu pracy i trudno się temu dziwić. Interfejs konsolowy jest natomiast zwykle stosowany przy pracy ICS32sx w systemach zautomatyzowanych. Możliwa jest zdalna komunikacja z urządzeniem, a nawet kilkoma urządzeniami, poprzez aplikacje Serwera i Klienta pracujące na komputerze, wykorzystujące protokół TCP/IP. Taki rodzaj pracy umożliwia zbieranie danych nawet z punktów znacznie oddalonych od lokalizacji urządzenia. Choć koncepcja Klient – Serwer jest wykorzystywana nawet przy pracy lokalnej, to użytkownik zwykle tego nie odczuwa.

Konfiguracja domyślna

In-Circuit Spy ICS32sx, jako uniwersalne urządzenie kontrolno-pomiarowe może być wykorzystywane na różne sposoby, w zależności od tego, jak zostanie oprogramowany mikrokontroler i z jakim programem komputerowym będzie on współpracował. Aktualnie producent dostarcza standardowo dwie gotowe do użycia aplikacje. Są to: 32-bitowy analizator stanów logicznych i częstościomierz/okresomierz dla przebiegów cyfrowych. Zapowiadane są jednak kolejne rozszerzenia, pierwszym z nich będzie wirtualny ekran. Wszystkie aplikacje są wliczone w cenę urządzenia. Uruchomienie każdego z programów powoduje dynamiczne przeprogramowanie mikrokontrolera i układu FPGA konieczne do odpowiedniego skonfigurowania systemu. Użytkownik zwykle nawet nie zauważa tego procesu.

Analizator stanów logicznych

Nie można wykluczyć, że In-Circuit Spy ICS32sx będzie kupowany pod kątem którejś z dostępnych aplikacji. Analizator stanów logicznych wydaje się dość atrakcyjną propozycją, tym bardziej, że jego parametry i niektóre cechy użytkowe są na dobrym poziomie.

In-Circuit Spy ICS32sx wykorzystywany jako analizator stanów logicznych udostępnia aż 32 cyfrowe kanały pomiarowe. W każdym z nich można zapisać 512 kpróbek. Układ pomiarowy jest taktowany przebiegiem zegarowym o częstotliwości ustawianej w zakresie od 6 do 200 MHz z dodatkowym podzielnikiem od 1:1 do 1:65536. Minimalna częstotliwość próbkowania jest zatem równa ok. 91,6 Hz, ale całkowity czas zapełniania bufora wynosi wówczas aż 5726,6 sekundy, czyli ok. półtorej godziny. Niestety, w oprogramowaniu nie przewidziano wymuszonego zakończenia rejestracji. Istnieje wprawdzie przycisk Abort, ale jego naciśnięcie zatrzymuje tylko proces pomiarowy bez zobrazowania stanu buforów w chwili przerwania pomiaru.

Wszystkie wejścia analizatora są przystosowane do logiki 3 V, ale tolerują poziomy 5 V i 2,5 V. Jeśli zachodzi konieczność pomiarów urządzeń pracujących z innymi standardami, konieczne jest stosowanie odpowiednich translatorów poziomów.

O autorze