MIKROSYSTEMY POMIAROWE

Wielkość: px
Rozpocząć pokaz od strony:

Download "MIKROSYSTEMY POMIAROWE"

Transkrypt

1 MIKROSYSTEMY POMIAROWE I PROCESORY SYGNAŁOWE mgr inż. Kazimierz Brydak pok. bud. A 204 lab. bud. A

2 Mikrosystemy (ang. MST - Micro Systems Technology) są to miniaturowe systemy pomiarowe i wykonawcze, integrujące w skali mikro: czujniki pomiarowe, siłowniki, bloki cyfrowego przetwarzania sygnałów i interfejsy cyfrowe. Technologia mikrosystemów należy do rewolucyjnych technologii XXI wieku. Oparta jest najczęściej na mikro mechanicznych strukturach wykonywanych trójwymiarowo na bazie półprzewodnikowych. Umożliwia wykonanie: czujników wielkości fizycznych, chemicznych i biologicznych, mikro siłowników i systemów wykonawczych, elementów optycznych, elementów chemicznych, układów elektronicznych System Pomiarowy Systemem pomiarowym jest zbiór środków technicznych podporządkowanych wspólnemu celowi i ogólnemu algorytmowi działania, przeznaczony do automatycznego uzyskiwania informacji bezpośrednio z obiektu w celu przekształcenia, pomiaru, przetworzenia, utrwalenia i przedstawienia w formie dostosowanej do wykorzystania przez człowieka oraz dla wprowadzenia do zautomatyzowanego urządzenia sterującego. Cyfrowym systemem pomiarowym jest zespół elementów (urządzeń lub bloków funkcjonalnych), współpracujących ze sobą według określonego algorytmu, połączonych układem przesyłania informacji, tzw. systemem interfejsu, przeznaczony do automatycznego uzyskiwania, przetwarzania, rejestracji i prezentacji w pożądanej formie informacji pomiarowych. Mikroprocesorowe Systemy Pomiarowe Podstawowe jednostki funkcjonalne: jednostki wejścia/wyjścia (WE/WY) jednostki pamięci (pamięć instrukcji programu, pamięć danych) jednostki procesorów procesor jednostki centralnej (CPU ang.) szyny systemowe (t.j. szyna adresu, szyna danych, szyna sterująca) szyna adresowa Klawiatura Porty Wejścia Mikro procesor Pamięć Porty Wyjścia Wyświetlacz urządzenia wejścia szyna danych szyna sterująca urządzenia wyjścia Podstawowa architektura systemu mikroprocesorowego

3 Cyfrowe (dwustanowe), wejścia i wyjścia Analogowe wyjścia, (sygnały napięciowe, prądowe) Analogowe wejścia (sygnały napięciowe, prądowe) Analogowe wejścia (sygnały napięciowe, prądowe) Przełączniki, przyciski,... Przetworniki C/A Przetworniki A/C Przetworniki A/C pomocnicze (pomiar zimnych końców termopar) Ogólny schemat mikroprocesorowego systemu pomiarowego Interfejs komunikacyjny (RS232, RS485..) RAM (EEPROM) Mikroprocesor + procesor numeryczny ROM (FLASH ROM) Interfejs sieciowe (ethernet) Myszka Plotter Klawiatura Dysk elastyczne Dysk optyczny R/W Monitor ekranowy (graficzny) Drukarka (laserowa, atram., term.) Jednostki wejścia/wyjścia 8-bitowa wewnętrzna magistrala danych Rejestr sterujący PORT C PORT B PORT A Rejestr statusu Przykładowy układ blokowy interfejsu urządzeń WE/WY cyfrowych dwukierunkowych - dedykowanych w procesie prgramowania trybu pracy jednostki Bufor trzy- stanowy: (tabela stanów) wejście zezwolenie wyjście

4 JEDNOSTKI PAMIĘCI pamięci półprzewodnikowe Pamięć o dostępie swobodnym RAM (random access memory), R/W statyczne (flip-flop), dynamiczne (pojemnościowe) adresowanie pamięci (metody): adresowanie bezpośrednie, adresowanie pośrednie, adresowanie indeksowe, adresowanie rejestrowe, stronicowanie pamięci, hierarchia urządzeń pamięciowych: Pamięć tylko do odczytu - ROM programowane maską (ROM), programowane przez użytkownika (PROM), kasowalne PROM (EPROM), przeprogramowywane elektrycznie (EAROM) AKUMULATOR REJESTRY ROBOCZE PAMIĘĆ PODRĘCZNA RAM / ROM Dyski Twarde (magnetyczne) Dyski Optyczne Pamięci taśmowe (streamer) Dyski elastyczne organizacja wewnętrzna pamięci: monitor ROM, rozszerzenie ROM obszar roboczy klawiatury, displeya, urządzeń peryferyjnych,... podstawowa pamięć RAM, rozszerzona pamięć RAM, obszary wolne, obszary rezerwowane obszary wymiany z innymi urządzeniami np. DMA (direct memory access)

5 Procesor jednostki centralnej: zadania procesora: operacje transferu danych, operacje arytmetyczne, operacje logiczne, operacje skoków, odgałęzień, obsługa stosu, WE/WY, operacje sterowania grupowego, podzespoły procesora: licznik programu, dekoder instrukcji, moduł zegarowy i sterujący, moduł jednostki arytmetyczno-logicznej ALU, zbiór rejestrów roboczych,... mikroprocesory jednoukładowe (zawierające ROM, RAM, WE/WY cyfr. i analogowe, wewn. generator sygn. zegarowych,...) mikroprocesory zorientowane do ściśle wyznaczonych zadań (kontrolery), mikroprocesory bitowo-okrojone ( do prac wielo-sekcyjnych),... przykład architektury mikroprocesora: (uproszczony schemat blokowy zawierający jednostkę ALU, Akumulator, rejestry robocze, szynę danych we, szynę danych wy, moduł zegarowo/sterujący,...)

6 a. Architektura Von Neumanna (pojedyncza pamięć) PAMIĘĆ PROGRAMU I DANYCH SZYNA ADR. SZYNA DANYCH JEDNOSTKA CENTRALNA CPU b. Architektura Harvardzka (podwójna pamięć) PAMIĘĆ PROGRAMU SZYNA ADR. PROGR. CPU SZYNA ADR. DANYCH PAMIĘĆ DANYCH SZYNA PROGR. SZYNA DANYCH c. Architektura super-harvardzka (podwójna pamięć, pamięć podręczna instrukcji, kontroler WE/WY) PAMIĘĆ PROGRAMU SZYNA ADR. PROGR. SZYNA PROGR. CPU instrukcje pam. podręcznej instrukcje i drugorzędne dane SZYNA ADR. DANYCH SZYNA DANYCH PAMIĘĆ DANYCH Kontroler I/O DANE ZEWNĘTRZNE

7 Architektura procesorów Intel 80C51 Przerwania zewnętrzne Kontr. Przerwań 4k ROM 128 RAM Timer 0 Timer 1 We0 We1 CPU Osc Kontr. Magistral Porty WE/WY SIO TxD RxD P0 P2 P1 P3 Adresy/Dane Organizacja pamięci IRQ4 IRQ3 0023H 001BH 80C51 P1 P0 EPROM IRQ2 0013H Reset IRQ1 IRQ0 000BH 0003H 0000H ALE P3 P2 Latch OE ADDR System przerwań (wektor przerwań): Organizacja pamięci programu: Przestrzeń pamięci programu ROM Dołączenie zewnętrznej pamięci programu. Organizacja pamięci programu ROM FLASH/EE (big memory) 0FFFFh Zewn. EPROM obszar kodu programu ładującego producenta obszar kodu programu ładującego użytkownika 2 kb 6 kb 0FFFFh 0F800h 0F7FFh 0E000h 0DFFFh EA=1 Wewn. x kb FLASH/EE 01FFFh EA=0 Zewn. x kb 62kB kodu użytkownika obszar kodu programu użytkownika 56 kb 0000h 0000h PSEN

8 Organizacja pamięci danych 0FFFFFFh 0FFFFFFh Obszar zewnętrznej pamięci danych (24-bit adres) Obszar zewnętrznej pamięci danych (24-bit adres) h h 2 kb wewn. pamięci danych CFG8xx.0=0 CFG8xx.0=1 Model programowy mikrosystemu 62kB reprogr. nieulotnej pamięci programu FLASH/EE Rdzeń 8051/ bajty RAM obszar 128- bajtów rejestrów specjalnych SFR 4 kb reprogr. nieulotnej pamięci danych FLASH/EE 8-kanałowy 12-bitowy przetwornik A/C inne urządzenia peryferyjne: czujnik temp. 2 x 12-bit C/A WDT PSM TIC

9 INSTRUKCJE PROGRAMOWE MIKROPROCESORA I80C51 Tryby adresowania Natychmiastowe (immediate) dotyczy argumentu umieszczonego w kodzie istrukcji (instrukcja z operandem bezpośrednim) Rejestrowe bezpośrednie (register direct) wskazuje jeden z rejestrów procesora jako miejsce operandu (w kodzie instrukcji podawany jest numer tego rejestru) Bezpośredni (direct) związany z adresowaniem danych w pamięci, efektywny adres operandu podany jest bezpośrednio w kodzie instrukcji (bezpośrednio mogą być tylko wewn. pamięć RAM i obszar rejestrów SFR) Rejestrowy pośredni (register indirect) adres komórki pamięci przechowującej dany operand odczytywany jest z rejestru procesora (przy wykorzystaniu rejestrów R0, R1 wybranego banku rejestrów - możliwe adresowanie pamięci RAM wewn. i zewn.) Pośrednie- zawartością rejestru bazowego i indeksowego - do 16-bitowego adresu bazowego (DPTR lub PC) jest dodawana 8-bitowa zawartość akumulatora A. Instrukcje arytmetyczne ADD A,#127 ; adresowanie natychmiastowe ADD a,r7 ; adresowanie rejestrowe bezpośrednie ADD a,7fh ; bezpośrednie ADD ; adresowanie pośrednie

10

11 Przykład mikrokontrolera z przetwornikiem A/C

12 Specjalizowane moduły zegarów/liczników CT0I Int CT1I Int CT2I Int CT2I Int CTI0 CTI1 CTI2 CTI3 CT0 CT1 CT2 CT3 off f osc T2 1/12 Prescaler T2 Licznik przerwanie od 8-bitowego przepełnienia przerwanie od 16- bitowego przepełnienia RT2 T2ER zezwolenie zewn. zerowania magistrala 16-bitowa S S S S S S TG TG STE R R R R R R T T RTE S = set R = reset T = toglle TG = toglle status P4.0 P4.1 P4.2 P4.3 P4.4 P4.5 P4.6 P4.7 Port P4 I/O Port 4 T2 SFR address: COMP Int COMP Int COMP Int CM0 (S) CM1 (R) CM2 (T) TML2 = lower 8 bits TMH2 = higher 8 bits Schemat blokowy układu zegara/licznika 2 mikrokontrolera 80C552 Philips T2 Licznik COMP CM0, CM1, CM2 STE, RTE CT0, CT1, CT2, CT3 CTIi IRQi - zegar licznik 16 bitowy, dostęp 8-bitowy: rejestry TML2, TMH2 - komparator cyfrowy 16-bitowy (1-arg: Licznik L2, 2-arg: rejestr CMi) - rejestry 16 bitowe, dostęp 8-bitowy, CMLi, CMHi - rejestry warunkujące działanie wybranych linii portu P4 na skutek cyfrowej komparacji CMi, - rejestry 16 bitowe, na skutek zdarzenia (opadające zbocze, narastające zbocze sygnału CTiI ) do rejestru wpisywana jest 16-bitowa, bieżąca zawartość, licznika L2 - jednobitowe wskaźniki zdarzenia i - przepełnienie 8 i 16 bitowe licznika L2 Rejestr sterujący zegara/licznika 2 mikrokontrolera 80C552 Philips (TM2CON)

13 Programowane moduły zliczające w pomiarach interwału czasu, okresu i częstotliwości badany sygnał jednobitowy wskaźnik wpisu do rejestru CT0 licznika L2 rejestr CT0 licznika L2 CTI0 CTL0 INT f x CTH0 wewnętrzna 16 bit. magistrala danych f osc =11,0592MHz 1/12 rejestr licznika L2 Dzielnik wstępny 1/2/4/8 T2H T2L PRZERWANIE (INT): 16 bitowe przepełnienie licznika L2 moduł licznika L2 Schemat blokowy struktury układu do pomiaru okresu i częstotliwości przy wykorzystaniu struktury układu licznikowego L2. Bieżący stan licznika L INT14 Przepełnienie licznika L2 Przerwania INT14 Przepełnienie licznika L Sygnał f x Sygnał f osc t Stan licznika L2 rejestrowany N 1 N 2 w rejestrze CT0 (CTH0, CTL0) t długość słowa licznika L2: N (16) 2 Pojemność licznika L2: (65536) Liczba przepełnień licznika L2 (zgłoszonych przerwań od L2): N Nirq Okres sygnału fx (interwał czasu τx): Częstotliwość fx: x osc T T N N N f x 1 T x irq N

14 Program pomiaru okresu (częstotliwości) - PB552 #include <stdio.h> #include <reg552.h> idata union { struct { char hi, lo; } byte; unsigned int word; } N1, N2; idata unsigned N; idata unsigned long LN; static idata unsigned char irq; float Tosc,Tx,Fx; void T2_int() interrupt 14 { irq++; T20V=0; } main() { TM2CON=0x81; CTCON=0x01; Tosc=12.0/ ; EA=1; while (1) { CTI0=0; while (CTI0==0); N1.byte.hi=CTH0; N1.byte.lo=CTL0; /* odbierz wartosc T2 */ } /* oczekujemy na drugie zbocze i zliczamy przepelnienia */ T20V=0; ET2=1; CTI0=0; while (CTI0==0); ET2=0; /* zablokuj zglaszanie przerwan od przepelnien T2 */ N2.byte.hi=CTH0; N2.byte.lo=CTL0; /* odbierz wartosc N2 */ N=N2.word-N1.word; if (N2.word < N1.word) irq--; LN=N+irq*65536L; Tx=LN*Tosc; Fx=1.0/Tx; printf("\nn1=%5u N2=%5u i=%bu", N1.word, N2.word, irq); printf(" N=%8Lu Tx=%.7f Fx=%5.5f", LN, Tx, Fx); irq=0; }

15 Ogólny schemat blokowy przetwornika A/C 80C552 Philips

16 Schemat blokowy modułu przetwornika A/C mikrokontrolera 80C552 Philips Rejestry SFR ADCON ADCH ADC.1 ADC.0 ADEX ADCI ADCS AADR 2 AADR 1 AADR 0 ADC.9 ADC.8 ADC.7 ADC.6 ADC.5 ADC.4 ADC.3 ADC.2 BIT Symbol Funkcja ADCON.7 ADC.1 Pierwszy bit wartości konwersji A/C ADCON.6 ADC.0 Drugi bit wartości konwersji A/C ADCON.5 ADEX Blokada zewnętrznego startu konwersji przez STADC: 0 = konwersja nie może być uruchomiona zewnętrznym sygnałem STADC (pin STADC); 1 = konwersja może być uruchomiona zewnętrznym sygnałem STADC ADCON.4 ADCI Flaga przerwania od przetwornika A/C. Flaga ta jest ustawiana gdy wynik konwersji jest gotowy do odczytu. Flaga musi być zerowana programowo. ADCON.3 ADCS Start i status przetwarzania. Ustawienie tego bitu rozpoczyna konwersję. Musi być on ustawiany programowo lub poprzez zewnętrzny sygnał (pin STADC). Bit ADCS pozostaje 1 w czasie procesu przetwarzania, gdy konwersja zostaje zakończona ADCS zostaje resetowany równocześnie z pojawieniem się przerwania i flagi ADCI. ADCS nie może być zerowany programowo. ADCI ADCS OPERACJA - / / - ADCON.2 ADCON.1 ADCON.0 ADCI ADCS AADR2 AADR1 AADR PRZETWORNIK A/C WOLNY, KONWERSJA MOŻE SIĘ ROZPOCZĄĆ, PRZETWORNIK A/C ZAJĘTY, BLOKADA STARTU NOWEJ KONWERSJI, KONWERSJA ZAKOŃCZONA, BLOKADA STARTU NOWEJ KONWERSJI, Stan nie możliwy. Wybór wejścia analogowego. Bity te kodują binarnie jedno z 8 wejść analogowych portu P5 jako wybrane do procesu konwersji. Mogą być ustawiane tylko gdy ADCI i ADCS są w stanie niskim.

17 Rezultat N dł. słowa przetwornika, AV REF- AV REF+ - napięcia referencyjne przetwornika 2 N V AV in REF AV AV REF REF V in Rezultat N 2 AVREF AVREF AVREF jeżeli: AV REF 0 [ V ] Rezultat V in AV 2 N REF

18 Przykład algorytmu konwersji wyniku przetwarzania A/C przy parametrach: N=10; ; AV REF 0 [ V ] AV REF 2.5 [ V] float Vin, AVRef; AVRef=2.5; Vin=(float)((256*ADCH+(ADCON&0xC0))>>6)*AVRef/1024; Przykład uproszczonego algorytmu konwersji wyniku przetwarzania A/C (bez stosowania arytmetyki liczb zmiennoprzecinkowych), wynik konwersji jest liczbą typu int reprezentującą wartość napięcia wejściowego w [mv] : AV REF 0 [ V ] N=10; ; /* uwaga: (5.12/1024)*1000 = 5 */ AV REF 5.12 [ V ] int Vin; Vin=5*((256*ADCH+(ADCON&0xC0))>>6);

19 Przykład algorytmu obsługi wielokanałowego przetwornika A/C z wyzwalaniem sprzętowym serii pomiarów (sygnał wyzwalający STADC przepełnienie 16-bitowe modułu zegara/licznika L2). Obsługa przetwornika, rejestru kontrolno sterującego ADCON w trybie przeglądania, zastosowano również uproszczony sposób konwersji wyników przy zastosowaniu źródła napięcia referencyjnego AVRef=5.12V. Wyniki konwersji przekazywane są kanałem transmisji szeregowej do zewnętrznego odbiornika. /************************************************************* * Moduł: adc_pol.c * Aplikacja: Programu demonstracyjny obsługi przetwornika ADC * mikrokontroler typu: 8xC552 * Obsługa przetwornika w trybie przeglądania * UWAGA: * Kanały są skanowane kolejno po narastającym zboczu sygnału STADC, * Sygnał jest podłączony do P4.7i jest powtarzany z okresem repetycji * co 1.14s. Okres ten jest kontrolowany przez moduł zegara/licznika T2. * Rezultaty przetwarzania przekazywane są kanałem transmisji szeregowej UART. **************************************************************************/ #define ADEX 0x20 #define ADCI 0x10 #define ADCS 0x08 void write_uart (unsigned int *ptr, unsigned int k); void main(void) { unsigned int conversion, result_adc[8]; unsigned char ADC_Channel; S0CON=0x40; /* 8 bits, no parity, 1 STOP bit */ TH1=TL1=0xFD; /* */ PCON=0x80; TMOD=0x20; TR1=1; TM2CON=0x0D; /* źródło sygn. zegarowego T2: osc/96 */ RTE=0x80; /* okres przepełnień: 0.569ms P4.7 zmienia stan na przeciwny co każde 0.569ms ADC konwersja narastającym zboczem sygnału STADC P4.7/STADC: 1.14ms szybkość konwersji */ conversion=0; while (1) { for (ADC_Channel=0; ADC_Channel < 8; ADC_Channel++) { ADCON=0; /* ADCI i ADCS są zerowane */ ADCON=ADC_Channel; /* przed wybraniem numeru kanału ADC */ if (ADC_Channel==0) ADCON=ADEX; /* ADC0: zewnętrzny start konwersji T2 */ else ADCON=ADCON ADCS; /* ADC1..ADC7: programowy start */ while((adcon&adci)==0); /* Czekaj na zakończenie konwersji sprawdzając ADCI */ result_adc[adc_channel]=5*((256*adch+(adcon&0xc0))>>6); /* Oblicz 10 bitowy binarny rezultat przetwarzania dla Uref=5.12V */ } write_uart(&result_adc, conversion++); /* Wyprowadzenie rezulatu do modułu UART */ if (conversion==10000) conversion=0; } }

20 Schemat zastępczy obwodów wejściowych przetwornika A/C Charakterystyka przetwarzania i charakterystyka błędu kwantowania

21

22

23 MIKROKONTROLERY MOTOROLA Architektura 8-bitowa (M68HC05, M68HC08, M68HC11) M68HC05 Family, M68HC08 Family M68HC08 Automotive Family M68HC11 Family Architektura 16-bitowa (HCS12, M68HC12, M68HC16, 56800/E) Architektura 32bitowa 32-Bit (68K/ColdFire, MAC7100, MCORE, PowerPC) Narzędzia programistyczne - MCU Development Tools Mikroprocesory Motorola - MC68HC11A8 Hardware Features 8 Kbytes of ROM 512 Bytes of EEPROM 256 Bytes of RAM (All Saved During Standby) Relocatable to Any 4K Boundary Enhanced 16-Bit Timer System: Four Stage Programmable Prescaler Three Input Capture Functions Five Output Compare Functions 8-Bit Pulse Accumulator Circuit Enhanced NRZ Serial Communications Interface (SCI) Serial Peripheral Interface (SPI) Eight Channel, 8-Bit Analog-to-Digital Converter Real Time Interrupt Circuit Computer Operating Properly (COP) Watchdog System Available in Dual-In-Line or Leaded Chip Carrier Packages

24 Software Features Enhanced M6800/M6801 Instruction Set 16 x 16 Integer and Fractional Divide Features Bit Manipulation WAIT Mode STOP Mode

25

26 PODSTAWOWE PARAMETRY PRZETWORNIKÓW A/C I C/A Metoda przetwarzania A/C Rozdzielczość, Długość słowa kodowego, metoda kodowania Zakres przetwarzania, napięcie referencyjne, maksymalne napięcia wejściowe Liczba kanałów przetwarzania, sposób sprzężenia sygnałów wejściowych Szybkość przetwarzania (próbki/s) Charakterystyka wzmacniaczy wejściowych o impedancja wejściowa (stanu włączenia, stanu wyłączenia, stanu przeciążenia) o prąd polarycji obw. wejściowych o wsp. tłumienia sygnałów współbieżnych CMMR o charakterystyki dynamiczne i czasy ustalania sygn. wejściowych dla poszcz. wzmocnień Rozmiar bufora FIFO Metody wyzwalania Metody transferu danych (DMA, przerwania) System rejestrów kontrolno-sterujących (pamięć) warunki otoczenia (pracy) stabilność (czas wygrzewania,..) błędy przetwarzania o nieliniowość całkowa (ang. integral nonlinearity) o nieliniowość różniczkowa (ang. differential nonlinearity) o przesunięcie zera (ang. offset error) o błąd wzmocnienia (ang. gain error) o stosunek sygnału do szumu (ang. signal to (noise + distortion) ratio ) o dokładność względna (ang. relative accuracy) o czas ustalania napięcia wyjściowego (ang. voltage output settling time) o zakłócenia szpilkowe sygnału wyjściowego (glittch) (ang. digital-to-analog glitch impulse)

27 Podstawowe błędy przetworników A/C i C/A Przetworniki A/C Nieliniowość całkowa (Integral Nonlinearity) : Max odchylenie dowolnego kodu od linii łączącej punkty końcowe charakterystyki przetwarzania przetwornika A/C (określana w bitach, częściach ułamkowych bitów) np. ±0.3LSB) Nieliniowość różniczkowa (Differential Nonlinearity): Największa zmierzona różnica pomiędzy dwoma sąsiednimi poziomami sygnału analogowego przy zmianie słowa kodowego o 1 wyrażona (określana w bitach, częściach ułamkowych bitów) np. ±0.3LSB Przesunięcie zera (Offset Error): Przesunięcie charakterystyki przetwarzania od punktu zerowego przy zerowej wartości sygnału wejściowego (określana w bitach, częściach ułamkowych bitów) np. ±4LSB Błąd wzmocnienia (Gain error): Przesunięcie charakterystyki przetwarzania od końcowego punktu przy sygnale wejściowym pełnego zakresu pomiarowego (po uprzedniej adjustacji przesunięcia zera) (określana w bitach, częściach ułamkowych bitów) np. ±2LSB Stosunek sygnału do szumu (Signal to (Noise + Distortion) Ratio ): Stosunek sygnału do szumu określa się dla sygnału sinusoidalnego o max. amplitudzie, stosunek częstotliwości fali sinusoidalnej do częstotliwości próbkowania powinien być liczbą niewymierną. Teoretyczna wartość stosunku sygnał szum dla N-bitowego przetwornika: Dla N=12 S/N=74dB ( S / N) max (6.02 N 1.76) db Całkowite zniekształcenia harmoniczne (Total Harmonic Distortion)

28 Całkowite zniekształcenia harmoniczne to stosunek sumy wartości średniokwadratowych harmonicznych do sygnału podstawowego. Przetworniki C/A Dokładność względna (Relative Accuracy) Dokładność względna jest mierzona jako max odchylenie punktów charakterystyki przetwarzania od linii prostej przechodzącej przez punkt końcowy charakterystyki przetwarzania C/A, odniesioną do napięcia pełnego zakresu przetwarzania i wyrażona w procentach. Pomiar powinien być dokonywany po przeprowadzeniu adjustacji błędu przesunięcia zera i błędu pełnej skali przetwornika. Czas ustalania napięcia wyjściowego (Voltage Output Settling Time) Jest to wartość czasu upływającego do momentu osiągnięcia specyfikowanego poziomu napięcia wyjściowego na skutek zmiany na wejściu odpowiadającej pełnemu zakresowi. Zakłócenia szpilkowe sygnału wyjściowego (GLITTCH) (Digital-to-Analog Glitch Impulse) Powstają w wyniku stanów przejściowych zmiany słów kodowych. Określane powierzchnią obszaru szpilek w nv/s. Przetwornik C/A U U FS szpilka napięciowa o najw. polu powierzchni t ADuC812 jest wyposażony w dwa 12-bitowe napięciowe przetworniki C/A. Każdy z nich posiada wyjściowy bufor napięciowy typu rail-to-rail (wyjście od szyny do szyny zasilającej) obciążany do wartości 10kΩ/100pF. Każdy niezależnie może pracować w zakresie 0V do V REF (wewnętrzne źródło 2.5V) i 0V do AV DD. Każdy z nich może pracować w trybie 8 lub 12-bitowym. Przetworniki wykorzystują wspólnie jeden rejestr kontrolny DACCON oraz 4 rejestry danych, DAC1H, DAC1L, DAC0H, DAC0L. Mogą pracować w trybie 12-bitowym asynchronicznym w którym wartośc wyjściowa napięcia przetwornika C/A uaktualniana jest po wpisaniu danej do DACL dlatego ważana jest kolejność wpisywania danych, najpierw cz. starsza DACH, a potem, młodsza DACL. DACCON (wartość pocz. 04H, brak adresowania bitowego) MODE RNG1 RNG0 CLR1 CLR0 SYNC PD1 PD0 Alokacja Mnemo Opis bitowa nic bitu DACCON.7 MODE DAC MODE bit umieszcza nadrzędny działający tryb dla obu DACs 1 = 8-bit tryb (pisz 8bitowy do DACxL SFR). 0 = 12-bit tryb.bitowy wybór zakresu DAC1. DACCON.6 RNG1 Bit wyboru zakresu przetwornika. DAC1 1 =DAC1 zakres 0-VDD. 0 = DAC1 zakres 0-VREF. DACCON.5 RNG0 Bit wyboru zakresu przetwornika. DAC0. 1 =DAC0 zakres 0-VDD. 0 = DAC0zakres 0-VREF. DACCON.4 CLR1 Bit zerowania DAC1 0 =DAC1 wyjście wymusza do 0V. 1 = DAC1 wyjście normalne. DACCON.3 CLR0 Bit zerowania DAC0 0 =DAC0 wyjście wymusza do 0V. 1 = DAC0 wyjście normalne. DACCON.2 SYNC Bit uaktualnienia synchronicznego 1 wyjścia przetworników są aktywowane wpisem danej do DACxL. Użytkownik może uaktualniać rejestry DACxL/H podczas SYNC=0. Uaktualnie jednoczesne wyjść nastąpi po wpisaniu do SYNC=1.

29 DACCON.1 PD1 Bit Power-Down 1 = Power-On DAC1. 0 = Power-Off DAC1 DACCON.0 PD0 Bit Power Down. 1 = Power-On DAC0 0 = Power-Off DAC0 Architektura przetwornika C/A zawiera drabinkę rezystancyjną współpracującą ze buforowym wzmacniaczem wyjściowym (funkcjonalny ekwiwalent pokazany jest na rys.). Szczegóły architektury są opatentowane U.S. Patent Number Zasada tej architektury gwarantuje monotoniczność i znakomitą różnicową liniowość. Przykładowy program generatora fali sinusoidalnej przy wykorzystaniu przetwornika C/A i chwilowych wartości amplitudy (1 okres 64 próbki) przechowywanych w pamięci kodu programu #include <stdio.h> #include <ADuC831.h> sbit LED = 0x0B4; void main (void) { unsigned code values[64][2]={{0x07, 0xFF},{0x08, 0xC8},{0x09, 0x8E},{0x0A, 0x51},{0x0B, 0x0F}, {0x0B, 0xC4},{0x0C, 0x71},{0x0D, 0x12},{0x0D, 0xA7},{0x0E, 0x2E}, {0x0E, 0xA5},{0x0F, 0x0D},{0x0F, 0x63},{0x0F, 0xA6},{0x0F, 0xD7}, {0x0F, 0xF5},{0x0F, 0xFF},{0x0F, 0xF5},{0x0F, 0xD7},{0x0F, 0xA6}, {0x0D, 0x12},{0x0C, 0x71},{0x0B, 0xC4},{0x0B, 0x0F},{0x0A, 0x51}, {0x09, 0x8E},{0x08, 0xC8},{0x07, 0xFF},{0x07, 0x36},{0x06, 0x70}, {0x05, 0xAD},{0x04, 0xEF},{0x04, 0x3A},{0x03, 0x8D},{0x02, 0xEC}, {0x02, 0x57},{0x01, 0xD0},{0x01, 0x59},{0x00, 0xF1},{0x00, 0x9B}, {0x00, 0x58},{0x00, 0x27},{0x00, 0x09},{0x00, 0x00},{0x00, 0x09}, {0x00, 0x27},{0x00, 0x58},{0x00, 0x9B},{0x00, 0xF1},{0x01, 0x59}, {0x01, 0xD0},{0x02, 0x57},{0x02, 0xEC},{0x03, 0x8D},{0x04, 0x3A}, {0x04, 0xEF},{0x05, 0xAD},{0x06, 0x70},{0x07, 0x36}};

30 DACCON = 0x0D; //DAC0 on 12-bit Asynchronous DAC0H = 0x08; //DAC0 mid scale DAC0L = 0x00; } while (1) { int i, j; for ( i = 0 ; i < 64; i++) { DAC0H = values[i][0]; DAC0L = values[i][1]; for (j=0; j< 3000; j++) ; /* */ } LED ^= 1; }

31 MIKROKONWERTERY Przetworniki inteligentne smart transducer W ciągu ostatnich 20 lat obserwuje się postęp w dziedzinie czujników inteligentnych. IEEE oraz NIST opracowały normę, która obejmuje funkcje i zasady transmisji sygnału. Przetworniki wykonane zgodnie z normą 1451 są przetwornikami nowej generacji, przystosowanymi do pracy w sieci, o możliwościach niespotykanych w dotychczasowych rozwiązaniach. Są niezależne od rozwiązań konstrukcyjnych sprzętu i sieci. Sygnał cyfrowy zawiera informacje o wartości mierzonej wielkości, jej jednostce SI i symbolu przetwornika, może być także sygnałem sterującym. IEEE Institute of Electrical and Electronics Engineers NIST National Institute of Standards and Technology (dawne National Bureau of Standards - NBS) Termin: czujniki inteligentne?... czy układy pomiarowe zdolne są do podejmowania decyzji? Od czujnika wymaga się znacznie mniej. W j. angielskim takie czujniki nazywane są smart sensors lub inteligent sensors. W roku 1992 prof. Ryszard Jachowicz znając poglądy środowisk metrologów zarówno polskich jak i zachodnich zaproponował na konferencji COE 92 następującą definicję czujnika inteligentnego: Czujnik inteligentny jest elementem pomiarowym przekazującym informację o mierzonej wielkości w postaci cyfrowej, który komunikuje się z zewnętrznym cyfrowym systemem pomiarowym (komputerem) w oparciu o standardowy protokół komunikacji i z użyciem standardowego interfejsu W opracowanej normie IEEE 1451 obejmującej sprzęgi przetworników (Smart Transducer Interface Standard For Sensors And Actuators) przyjęta jest inna definicja, obejmująca wszystkie przetworniki, zarówno czujniki jak i organy wykonawcze lub wzbudzające. Wspólne traktowanie czujników i organów wykonawczych wprowadza nowe podejście do sygnału pomiarowego zgodne z treścią tej normy. Sygnały pomiarowe maja taki sam charakter, co sygnały sterujące, są przesyłane po tych samych magistralach i mogą być użyte do sterowania. POSTĘP W DZIEDZINIE CZUJNIKÓW INTELIGENTNYCH Jednym z pierwszych układów jest produkowany seryjnie czujnik inteligentny Eμ358A. Ma on czujnik pierwotny wykonany w technologii IS-FET zintegrowany ze wzmacniaczem. Różne typy czujników inteligentnych nowszej generacji zawierają obecnie cztery podstawowe układy toru przetwarzania sygnałów: wzmacniacz dopasowujący (kondycjonujący) przetwornik analogowo-cyfrowy mikroprocesor 4-bitowy (8-bitowy) nadajnik transmisji szeregowej Wszystkie części toru pomiarowego można wykonać w jednej strukturze scalonej? Typowy dla początku lat dziewięćdziesiątych czujnik inteligentny zawierał trzy układy scalone: część analogową wraz z przetwornikiem A/C mikroprocesor część cyfrową.

32 Network Rs485 Mikrokomputer Zasilacz Czujnik 1 Czujnik 2 inne czujniki Rys. Łączenie zespołu czujników inteligentnych z wykorzystaniem łącza RS 485 i dodatkowych przewodów zasilających CZUJNIK INTELIGENTNY WEDŁUG NOWEJ NORMY Network capable Application procesor (NCAP) Function block Transducer block Adres logic Smart transducer interface module (STIM) Transducer electronic data sheet (TEDS) A/D converter D/A converter Discrete I/O? Transducer Transducer Transducer Transducer Signal isolator Signal isolator Buffered analog output Buffered analog output Smart sensor per IEEE P 1451 definition (15 july 1996) output Rys. Czujnik inteligentny według IEEE NCAP- sprzęg między czujnikiem a siecią. Moduł sprzęgu czujnika inteligentnego - STIM może zawierać wiele różnych czujników i musi posiadać pamięć nieulotną TEDS zawierającą szczegółowy zapis struktury STIM. NAJWAŻNIEJSZE USTALENIA NORMY Norma obejmuje następujące zagadnienia: P normalizacja programów potrzebnych dla pracy NCAP, między innymi: - współpracy ze STIM - dostępu do TEDS - adresowania - sterowania przesyłaniem informacji - komunikacji między przetwornikami a siecią P normalizacja zarówno sprzętu jak i programów związanych z pracą STIM. Norma rozróżnia następujące typy przetworników w zależności od charakteru ich sygnałów: - czujniki - organy wykonawcze - czujniki kolejności zdarzeń - przetworniki próbkujące (wysyłające serie danych) Standardy sieci komunikacyjnych Ethernet Foundation Fieldbus Lonwork Profibus Interbus-S Universal Serial Bus (USB) CAN-Bus Device-Net WorldFIP

33 P-NET HART AS Realizowane funkcje: - adresowanie - przesyłanie danych - przechowywanie informacji o wszystkich przetwornikach i dostępie do nich - identyfikacja - status - sterowanie całym STIM oraz poszczególnymi torami pomiarowymi - przełączanie - przerwania Inne funkcje (dodatkowe): kalibracja, autokalibracja itp. Oddzielny rozdział jest poświęcony jest pamięci TEDS, która zawiera poza danymi układu także funkcje matematyczne przydatne przy korekcji sygnału. Znormalizowane jest również zasilanie (4,5 5,5 V) (3V), pobór prądu przez STIM (nie więcej niż 75 ma ) oraz złącze między NCAP a STIM (dziewięciostykowe). P komunikację dla systemów rozproszonych P komunikację o charakterze mieszanym, np. przesyłanie niektórych cyfrowych danych dotyczących czujników analogowych. Z rys.3 wynika, że każdy czujnik inteligentny (mogący zawierać w sobie kilka czujników pierwotnych), ma własny, bardzo rozbudowany układ cyfrowy. Jest to oczywiście rozwiązanie nadmiarowe, ale umożliwiające uproszczenie zarówno układów sterujących systemem, jak i szybsze ich działanie. PRZETWARZANIE SYGNAŁÓW W CZUJNIKACH WEDŁUG NOWEJ NORMY Dla wytworzenia sygnału dostosowanego do przesyłania w sieci oraz do wykorzystania przez współpracujące urządzenia niezbędne jest wielokrotne przetwarzanie sygnału. Norma nie stawia warunków na przetwarzanie analogowe, więc na schematach funkcjonalnych nie jest ono wyodrębnione. Kalibracja i korekcja sygnału odbywa się przy użyciu informacji zapisanych w TEDS, a więc korygowany jest sygnał cyfrowy. Przy korekcji sygnału może być wykorzystany sygnał z innego przetwornika. Wyjściowy sygnał pomiarowy zawiera (w/g normy) trzy składniki: wartość wielkości mierzonej jednostkę symbol lub numer porządkowy przetwornika

34 a) Sieć Czujnik Przetwornik A/C TEDS Układ adresujący NCAP b) Wzmacniacz separujący Sieć NCAP Układ adresujący Przetwornik A/C Organ wykonawczy Wielkość wyjściowa (np. prąd, siła, moment obrotowy) Wzmacniacz separujący Rys. Przetwarzanie sygnału w czujnikach inteligentnych a) tor sygnału pomiarowego, b) tor sygnału sterującego Liczba użytych jednocześnie czujników może być bardzo wielka. W przykładzie przedstawionym na rys. zastosowano 16 magistral, przy czym do każdej z nich można przyłączyć 255 czujników. Networked snsor Networked snsor Networked snsor Networked snsor Host procesor Network HUB Networked snsor Networked snsor Networked snsor Bus 1 Bus 2 Bus 3 Host controller Bus16 Networked snsor Networked snsor Networked snsor Rys. System czujników inteligentnych badany w Boeing Commertial Airplan Co.

35 KORZYŚCI Z WPROWADZENIA NORMY Najważniejsze zalety normalizacji w dziedzinie czujników inteligentnych to zwiększenie możliwości ich stosowania, a mianowicie: wykorzystywanie znacznie większej niż dotąd liczby czujników w jednym systemie pomiarowym współpracy między systemami zawierającymi różne czujniki, nawet produkowanych przez różne firmy transmisji na odległość niezależnej od rodzaju sieci stosowania w systemach rozproszonych wykorzystania tych samych sygnałów do sterowania brak zależności pracy systemów od rozwiązań sprzętowych. PODSUMOWANIE Ze względu na stosowane technologie i związaną z tym miniaturyzację czujniki inteligentne, mimo niespotykanych dotąd możliwości, będą miały małe wymiary i względnie niewielką cenę. Sygnały pomiarowe tych czujników będą dostarczały więcej niż dotychczas informacji, ponieważ będą zawierały także jednostkę oraz symbol identyfikacyjny czujnika. Będą mogły być skorygowane ze względu na wielkości wpływowe, możliwa jest również kalibracja. Przydatne są bezpośrednio w układów sterujących. Transmisja danych będzie szybka i niezależna od sieci. Mimo zastosowania techniki cyfrowej, dla użytkowników są dostępne również sygnały analogowe.

36 Mikrokonwerter ADuC812 Rys. Schemat blokowy mikrokowertera ADuC812 CHARAKTERYSTYKA OGÓLNA: Analogowe WE/WY: 8-kanałow, Wysoka dokładnośc przetwarzania 12-Bit C/A Źródło napięcie refencyjnego wewnątrz chpiu, 100 ppm/_c Wysoka prędkośc przetwarzania A/C 200 kprb/s Kontroler DMA wykorzystywany w procesie przetwarzania A/C do zapamiętywania wyników w pamięci RAM 2 x 12-Bit ptrzetworniki C/A z wyjściem napięciowym Wbudowany czujnik temeratury (On-Chip) Pamięć: Pamięć programu: 8K Bytes (On-Chip) Flash/EE Pamięć danych: 640 Bytes (On-Chip) Flash/EE Pamieć danych RAM: 256 Bytes (On-Chip) Pamięć danych zewnętrzna: do 16MB Pamięć programu zewnętrzna: do 64KB Rdzeń systemu kompatybilny 8051 Zegar systemowy: 12 MHz (nominalnie) 16 MHz Max 3 moduły 16-Bit zegar/licznik Port 3 o zwiększonej obciążalności 9 wektorów przerwań, 2 poziomy priorytetów Zasilanie: 3 V lub 5 V Tryby pracy: Normal, Idle, and Power-Down Urządzenia peryferyjne( On-Chip): moduł transmisji szeregowych: UART and SPI Serial I/O 2-Wire (400 khz I2C Compatible) Serial I/O Watchdog Timer Monitor napięcia zasilania

37 Architektura pamięci mikrokonwerterów: Rys.1. Pamięć programu. Rys.2. Pamięć danych Rys.3. Model programowy mikrokonwertera Rys.4. Funkcja przetwarzania (statyczna) Rys.5. Format rezultatu przetwarzania A/C U x = X U N 2 N Równanie przetwarzania przetwornika

38 Podstawowe problemy programowej obsługi przetworników A/C (na przykładzie programowania mikrokonwertera ADuC812) wybrane rejestry sterujące przetwornika A/C ( AduC812) zasady obsługi programowo-sprzętowej przetwornika A/C, programowanie rejestrów specjalnych (SFR) przetwornika dostęp bitowy i bajtowy do rejestrów specjalnych przetwornika programowa inicjalizacja pracy przetwornika A/C podstawowe problemy kalibracji przetworników A/C zasady obsługi programowo-sprzętowej przetworników A/C ADCCON1 MD1 MD0 Tryb aktywowania przetwornika: 0 0 ADC powered down 0 1 ADC normal mode 1 0 ADC powered down if not executing a conversion cycle 1 1 ADC standby if not executing a conversion cycle CK1 CK0 MCLK Dzielnik częstotliwości systemowej (przetwornik wymaga 17 taktów zegara systemowego) AQ1 AQ0 ADC Clks Liczba taktów układu wzmacniacza podtrzymującego sygnał wejściowy (Track-Hold) T2C EXC Bit zezwolenia wyzwalania przetwornika sygnałem przepełnienia zegara/licznika L2 Bit zezwolenia wyzwalania przetwornika zewnętrznym sygnałem CONVST(sygnał aktywny LOW, min. czas utrzymania sygnału > 100ns) ADCCON2 ADCI: bit przerwania przerwornika, sygnalizuje zakończenie konwersji pojedynczej lub bloku DMA DMA: bit zezwala na tryb przetwarzania DMA CCONV: bit zezwolenia na tryb ciągły (continuous) przetwornika SCONV: bit startu pojedynczej konwersji (jest automatycznie kasowany po zakończeniu cyklu konwersji) CS3..CS1: bity wyboru kanału multipleksera, CS3 CS2 CS1 CS0 CH# Temp Sensor DMA STOP ADCCON3 BUSY: status zajętości przetwornika podczas konwersji (automatycznie zerowany po zakończeniu konwersji lub kalibracji)

39 Wewnętrzna struktura przetwornika A/C Wyzwalanie pomiaru przetwornika A/C wyzwalanie programowe wyzwalanie sprzętowe o tryb pracy ciągły o wyzwalanie zewnętrznym źródłem pobudzającym (generator zewn.) o wyzwalanie wewnętrznym źródłem pobudzającym (generator modułu L2) tryby mieszany Systemowa obsługa przetwornika A/C obsługa programowa metodą podglądania stanu rejestrów kontrolnych przetwornika (ang. pooling) obsługa programowa z wykorzystaniem systemu przerwań obsługa programowo-sprzętowa z bezpośrednim przekazywaniem danych do pamięci danych systemu (tryb pracy DMA) Tryb DMA pracy przetwornika prekonfigurowanie zewnętrznej pamięci RAM mikrokonwertera (wstępne inicjowanie zawartości pamięci RAM docelowego transferu danych) Rys. Pamięć przed konwersją A/C Rys. Pamięć po wykonaniu cyklu przetwarzania DMA Rys. Cykl przetwarzania DMA (mikrooperacje procesora)

40 Algorytm obsługi przetwornika w trybie DMA: 1. Wyłącz zasilanie przetwornika (Tryb power down: MD1 i MD0 ustawione na 0 w rejestrze ADCCON1) 2. Adres wskaźnika przesyłanych danychustawić na początek obszaru danych, wskaźnik danych określany jest 24-bitowo w rejestrach DMAL, DMAH i DMAP (DMALmusi być wpisany jako pierwszy, potem kolejno DMAH i DMAP) 3. Przygotowac zewnętrzną pamięć danych...określić numery przetwarzanych kanałów pomiarowych oraz wielkość bloku danych (całkowitą liczbę próbek przetwarzanych sygnałów) 4. Przeprowadzić inicjalizację rejestrów ADC SFRs w następującej kolejności: a. w ADCCON2 ustaw tryb DMA ( MOV ADCCON2, #40H; DMA ) b. w ADCCON1ustaw parametry czasowe konwersji i włącz zasilanie przetwornika c. proces konwersji DMA może być wyzwalany sygnałem startu poj. konwersji, z układu licznika L2 lub sygnałem zewn. Metody programowania pamięci programu FLASH/EE: (1) Serial Downloading (In-Circuit Programming) standardowy port transmisji szeregowej przy wykorzystaniu protokołu HEX Intel, tryb pracy uzyskiwany po sygnale RESET z aktywnym sygnałem PSEN=0, (2) Parallel Programming, tryb analogiczny do programowania klasycznych modułów FLASH lub EEPROM przy wykorzystaniu portów P0, P1 i P2, sygnału ALE (3) User Download Mode (ULOAD), specjalny tryb pracy umożliwiający wykorzystanie własnego protokołu ładowania programów (start z adr. 0E000h). Zabezpieczanie pamięci FLASH/EE, tryby zabezpieczeń: Lock Mode Secure Mode Serial Safe Mode

41 Mikrokontroler analogowy ADuC814 (niski koszt, niewielkie wymiary)

42 // Zaawansowany przyklad obslugi przetwornika A/C z sprzętowym // wyzwalaniem startu przetwarzania z obsługą w trybie DMA #include <ADuC812.h> #include <stdio.h> // predefiniowane symbole ADuC812 #define DMACOUNT 100 // liczba AD odczytow do wykonania #define DMACHAN 0x0 // nr kanału // ZMIENNE DEFINIOWANE W WEWNETRZNEJ PAMIECI RAM idata int xdata *ptr; idata int num; bdata bit C; // SEGMENT PAMIECI ZEWNETRZNE DO PRZESLAN DMA xdata int DMASTART[ DMACOUNT + 1]; // location for DMA results void end_of_adc(void) interrupt 6 { // int_6*8+3 = 51dec = 33hex = ADCI CCONV=0; // stop conversions C=0; } // clear C to indicate DMA done main() { int i; // KONFIGURACJA portu transmisji szeregowej - UART SCON = 0x52; // 8bit, noparity, 1stopbit TMOD = 0x20; // konfiguracja Timer1.. TH1 = 0xFD; //..dla 9600baud.. TR1 = 1; // PRE-KONFIGURACJA zewnetrznej RAM dla DMA w pojedynczym kanale for(i=0; i<dmacount; i++) DMASTART[i]=DMACHAN<<12; DMASTART[i]=0xF000; printf("%cprz ZMiSP\n", 0x0C); for (i=0; i<=dmacount; i++) { if (i % 8 ==0) printf("\n"); printf("[%3d]=%04x ", i, DMASTART[i] ); } // KONFIGURACJA ADC dla konwersji typu DMA... DMAL=(char)(&DMASTART); // adres inicjujacy kanal operacji DMA DMAH=(int)(&DMASTART)>>8; DMAP=0; // koniecznie w takim porzadku: DMAL, DMAH, DMAP) ADCCON1=0x64; // 6.51us conv+acq time [ ] ADCCON2=0x40; // DMA mode EA=1; EADC=1; // globalne zezwolenie obslugi przerwan // zezwolenie obslugi przerwan przetwornika ADC C=1; // czekaj na koniec DMA CCONV=1; // start przetwarzania ADC w trybie "continuous" // Trwa konwersja i przesylanie danych DMA //... kiedy transmisja DMA jest kompletna, przetwornik ADC generuje // przerwanie i zeruje bit C while (C); EA=0; EADC=0; // wynik przetwarzania ADC jest juz dostepny w RAM // wydruk kontrony zawartosci pamieci RAM for(i=0; i<=dmacount; i++) { if (i % 8== 0) printf("\n"); printf("[%3d]=%4d ", i, DMASTART[i] ); } printf("\n"); // wydruk kontrolny w postaci slupka danych for(i=0; i<=dmacount; i++) printf("\n%4d ", DMASTART[i] ); printf("\n"); // procedura mrugania dioda while(1) { for (i=0; i<10000; i++) ; P3 ^= 0x10 ; } } // KONIEC

43 Podstawy akwizycji danych pomiarowych Konfiguracja systemów akwizycji danych Kontroler procesu C/A C/A Proces technolo -giczny A/C A/C System akwizycji danych z przetwarzaniem A/C i C/A w pojedynczych kanałach Adres Kanału Pom. Sygn. zegarowy Kan.1 Wejścia analogowe Kan.M Rejestr Adresu Dekoder adresu Adresu MUX R ON R ON Bufor, PP, Wzm., A/C R L Podstawowe parametry multipleksera: czas kluczowania: 50ns do >1s rezystancja stanu włączenia: 25 do setek rezystancja włączenia modulowana (R ON zmienia się od poziomu sygnału) rezystancja izolacji: 50 do 90 db zabezpieczenia przepięciowe Nowe trendy w konstrukcjach multiplekserów: Trench Isolation gives high speed, latch-up protection, and low-voltage operation ADG511, ADG512, ADG513: +3.3V, +5V, 5V specified Ron < 5V Switching Time: 5V ADG411, ADG412, ADG413: 15V, +12V specified Ron < 15V Switching Time: 15V ADG508F, ADG509F, ADG528F: 15V specified Ron < 300 Switching Time: < 250ns Fault-Protection on Inputs and Outputs Kan.1 Kan.M f we f we f we FDP FDP Sygnał zmiany kanału Sygnał zmiany wzmocnienia MUX t mux t wzm f s SAR A/C (bez PP) t konw mux Sygnał startu konwersji A/C N f s t konw 1 t 2 mux t 2 wzm f we 1 N 2 t konw

44 dla przykładu: jeśli N=12 i t konw=20s to wtedy f we=4hz Skąd to? : Jeżeli przetwornik A/C nie posiada układów próbkująco-pamiętających (PP) to dla zapewnienia dokładności przetwarzania na poziomie 1LSB: V(t) V dv LSB 1 dt max t konw Przy max. amplitudzie sygnału sinusoidalnego zapewniającego przetwarzanie przy pełnej skali 2 N 2 lub 2 N 1 maks. szybkość zmian sygnału wejściowego: dv dt max N 2f 2 1 max fmax Biorąc pod uwagę te dwa równania możemy określić f max, 1 fmax 2 N tkonw Dla przykładu przy t konw=20s (co odpowiada częstości próbkowania 50kPS), i 12-bitowej rozdzielczości przetwornika maks. częstotliwość sygnału wejściowego jest limitowana do 4Hz. t t Modyfikacja układu pomiarowego przez dodanie układu PP (próbkująco-pamiętającego) pozwala zwiększyć zakres dynamiki sygnałów wejściowych. 2 N Ogólnie: t 2 mux t 2 pga dlatego: f s t t akw akw 1 t t konw Kan.1 Kan.M konw f we f we FDP 1 FDP M Sygnał zmiany kanału Sygnał zmiany wzmocnienia MUX t mux dla przykładu: jeśli t akw=1µs, t konw=9µs, wtedy f s=100kps oraz: f we fs 2M PP Próbkuj / Zbieraj t wzm FDP Trzymaj f s Sygnał startu podtrzymania PP t akw A/C t konw Sygnał startu konwersji A/C Próbkuj / Zbieraj N t akw t konw A/C Dane ważne Konwersja A/C Dane ważne Mult/Wzm Zmiana kanału i wzmocn. Stan przejść. Mult./Wzm. 1/f s Typowy diagram czasowy dla systemu akwizycji multipleksowanych danych z użyciem PP

45 Kwantowanie i kodowanie y i y 8 y 7 Q -U FS x 1 y 6 x 2 x 3 x 4 y 5 +U F S x 5 x 6 x 7 x 8 x 9 y 4 x a y 3 y 2 y 1 e=x a-y i Δ=y i-x a Q x 1 x 2 x 3 x 4 x 5 x 6 x 7 x 8 x 9 x a Rys. 1. a) Charakterystyka przejściowa kwantyzatora równomiernego i b) przebieg zmian błędu kwantyzacji y i y 8 y y 7 Q y x 1 x 2 x 3 x 4 x 5 Q -U FS x 6 x 7 x 8 x 9 y 6 y 5 +U FS x a y 6 y y 4 y y 3 y y 2 y y e=x a-y i y 1 y 2 y 3 y 4 y 5 y 6 y 7 y 8 y i x 1 x 2 x 3 x 4 x 5 x 6 x 7 x 8 x 9 x a Rys. 2. a) Charakterystyka przejściowa kwantyzatora równomiernego z przesunięciem, b) przykładowe przypisanie słów kodowych oraz c) przebieg zmian błędu kwantyzacji

46 Proces kwantyzacji wprowadza inherentny, nieunikniony błąd. Założenia i oznaczenia, wprowadzamy: elementarny przedział kwantowania q s sygnał wejściowy U I Przedział jest określony przez liczbę poziomów kwantowania sygnału zależną od liczby bitów N (przy słowie kodowym w q s zapisie dwójkowym). Dla kwantyzatora równomiernego z przesunięciem błąd kwantyzacji nie przekracza wartości Średniokwadratowa wartość błędu kwantowania: q s 2. Można założyć, że wszystkie poziomy nieokreśloności w obszarze kwantowania Ai q s 2 pojawiają się tyle samo razy, co prowadzi do przyjęcia założenia o równomiernej gęstości prawdopodobieństwa w zakresie średniokwadratowej wartości jest równy: qs E d qs 2 Przy przyjętych założeniach wartość średnia tego błędu jest równa zeru. Błąd kwantyzacji można przedstawić jako napięcie błędu kwantyzacji 2 2 e qns E można zapisać jako: Maksymalna międzyszczytowa amplituda sygnału: a dla większej liczby bitów słowa (N>5): e qns q s 2 e qns N N 2 1q s App 2 qs A 2 pp N q s q s 2 do q s 2. Estymator. Wartość skuteczną napięcia błędu kwantyzacji Dla takiej wartości A pp można łatwo określić wartość skuteczną sygnału (dla sinusoidy): S N qs ARMS 2 Wartość stosunku sygnału do szumu można obliczyć jako: S eqns N ARMS Oraz przeliczając tą wartość na skalę decybelową: 2 N 2 N 2 1,5

47 S N 6,02N 1, 76dB S N 2 N 1,5 Przyjmując inne rozważania dla przetworników wysokiej rozdzielczości oraz mechanizmy powstawania szumów w torach pomiarowych wynikające również z innych efektów, takich szumy w elementach biernych, rezystorach (szumy Jonsosna) i elementów aktywnych jak np. przełączniki (szumy kt/c). Zakładając zwarcie wejścia ( grounded input ) rozkład szumów jest zbliżony do Gaussowskiego jak na rys. poniżej. Wówczas analiza efektywnej rozdzielczości można przedstawić jako stosunek pełnego zakresu pomiarowego do wartości skutecznej mierzonych szumów.

48 Drift = 10nV/ C INL = 2ppm typ, 15ppm max

49 (liczbowe kody binarne) Reprezentacje cyfrowe wielkości analogowych słowa kodowe A a a a 0 1 N 1 o długości N bitów, przy czym poszczególnym bitom przypisuje się wagi, MSB bit najbardziej znaczący (największa waga) a N-1 LSB bit najmniej znaczący (najmniejsza waga) a 0 UFS napięcie pełnej skali przetwarzania D wartość liczbowa reprezentowana przez słowo kodowe wartość napięcia reprezentowana przez słowo kodowe U a a i 1 0,1, i 0,1, 2, N a). Przy zapisie słowa kodowego z użyciem liczb ułamkowych wagi bitów posiadają wartości: bi 2 1 N i b). Przy zapisie słowa kodowego z użyciem liczb całkowitych wagi bitów posiadają wartości: b 2 Słowo kodowe (wyjściowe słowo przetwornika) a). U a i U FS i D D (w naszych rozważaniach proponuję przyjąć sposób b. ) N 1 i0 b i a i b). U a U 2 FS N D Wagi bitów słowa kodowego a i b i=2i b i= 1 N i kody unipolarne: reprezentacja napięć z przedziału (0, U FS) kody bipolarne: reprezentacja napięć z przedziału (-U FS, +U FS) Kody binarne przetworników A/C naturalny kod binarny kod uzupełnień do dwóch kod binarny przesunięty kod znak-moduł D D D N 1 i0 N 2 i i0 b i a i N 1 i i0 D z a b a b i b a b i N 1 N i0 N 1 N 1 1 i a b a N1 i N 1 1 dla a 1 dla a kody dwójkowo-dziesiętne (dziesiętno-binarne) (BCD, CCD,...) z a N 1 N 1 0 1

50 o pozycyjne o symboliczne Przykład binarnych kodów prostych Wartość reprezentowana przez kod U a U FS U FS Q D U FS 2Q 1 2U FS Q 1 2U FS Naturalny kod binarny Kod uzupełnień do 2 Kod binarny przesunięty Kod znakmoduł a7a6a5a4a3a2a1a0 a7a6a5a4a3a2a1a0 a7a6a5a4a3a2a1a0 a7a6a5a4a3a2a1a U FS Q Q Q 1 2U FS Q 1 2U FS 1 2U FS Q U FS 2Q U FS Q U FS

51 Pomiary wartości DC/RMS DC wartość średnia Poziom DC sygnału analogowego dla sygnału analogowgo RMS wartość skuteczna dla sygnału cyfrowego dla sygnału analogowego dla sygnału cyfrowego FFT transformata Fouriera

52 PRZESYŁANIE SYGNAŁÓW INFORMACYJNYCH, STERUJĄCYCH I PROGRAMUJĄCYCH (w systemach pomiarowych) sygnały informacyjne niosą informację o wielkościach mierzonych, sygnały organizacyjne adresy, rozkazy i sygnały kontrolne systemu pomiarowego. Sygnały w systemach pomiarowych Informacyjne (dane) Organizacyjne (adresy, rozkazy) ANALOGOWE DYSKRETNE Naturalne Standardowe Z rozdziałem częstotliwościowym Z rozdziałem czasowym Kodowe Napięciowe Prądowe Impulsowe Potencjałowe

53 Aplikacje pomiary temperatury Czujniki typu RTD (resistive temperature detectors) zakres pracy (-200 C do +800 C), duża dokładność przykł. RTD Klasy B wg normy IEC: 100Ω±0.12% w 0 C, Klasa A: ±0.15% w 0 C współczynnik temp. zmian rezyst.: R100 R0 100 R 0 gdzie: R 100 rezystancja w 100 C R 0 rezystancja w 0 C α=0,00385 C -1 w normach amerykańskich α=0, Ω/ Ω/ C jako jednostkę podaje się też α [Ω/ Ω/ C] do obliczeń stosuje się wartość dokładną: α = 0, C -1 Konwersja rezystancji na temperaturę: 2 R0 1 A B C 100 R t 3 R t wg Keithley R 3 1 A B C dla temp. > 0 C przyjmuje się wsp. C=0 R t 2 R 1 A B 0 W układach pom. gdzie R t jest określane poprzez I R i U R : I, U R R I R R [ A W układach pom. gdzie R t jest określane bezpośrednio: 0 2 A R t 2U R IRR0 2 A 4BU I R / I R ] A 2 BRt 2B R 4 0 R 0 R 1 wg PN-EN A1+A2 Współczynniki Callendar-Van Duser wielomianu R t=f( ) wsp. Standard temperaturowy A [C -1 ] B[C -2 ] C * [C -3 ] lub [C -4 ] (α) DIN , , , , American 0, , , , ITS-90 0, , , , PN-EN , , , , * dla temp. > 0 C przyjmuje się wsp. C=0 R 0

54 AVDD ADuC83x IEXC1 Źródło prądowe AIN1 R t AIN2 MUX BUF PGA PRIMARY 24-BIT Δ ADC R REF REFIN+ REFIN- External V REF Detect Procedura obliczenia wartości rezystancji R t: W aplikacji ADuC824, ADuc834 R REF=5,62kΩ±0.1% R t DR 2 REF N Równanie Steinhart-Hart a: Termistory 1 A BlnR C ln 3 t R t [ K] gdzie: A, B, C wsp. określone przez producenta IEXEC1 IEXEC2 200µA 200µA P1.2/DAC/IEXC1 P1.3/IEXC/AIN I2PIN I1PIN I2EN I1EN P1.7/DAC/AIN4 1 0 BUF 12-bit DAC P1.4/AIN1 P1.5/AIN2 P1.6/AIN3 AIN1 AIN2 AIN3 AIN4 AIN3 AIN2 AIN2 AIN2 + - BUF PGA Rys. 1. Model programowy obwodów wejściowych mikrokonwertera Σ/Δ.

55 ADSP 2100 Family DSP Microcomputers Ogólne własności: DSP Mikroprocesor z 16-Bitowy arytmetyka stałopozycyjna z własną pamięcią Rozszerzona architektura Harvard-ska z trzema magistralami Niezależne jednostki obliczeniowe: ALU, MAC i Shifter Instrukcje realizowane w 1 cyklu maszynowym, Pamięć RAM lub ROM i RAM danych w chipie mikroprocesora, Zintegrowane urządzenia WE/WY: Porty szeregowe, Zegary/liczniki, Interfejs portu nadrzędnego, Ogólne cechy: Szybkość wykonywania operacji MIPS (30ns cykl instrukcji maszynowej) Oddzielne magistrale dostępu do pamięci programu i pamięci danych, Jednostki Funkcjonalne: Jednostka obliczeniowe: 3 niezależne jednostki: jednostka arytmetyczno/logiczna (ALU), jednostka mnożąca (mulptiplier/accumulator MAC), jednostka przesuwająca: barrel shifter, Generator adresu danych i Sekwencer programu (kolejkowanie instrukcji), dwa dedykowane generatory adresu, sekwencer programu dostarczający adresów dostępu do pamięci zewnętrznej lub wewnętrznej, Pamięć: architektura Hardvard-ska zmodyfikowana z niezależnym dostępem do pamięci danych i pamięci programu (instrukcji) i danych jednocześnie. Porty transmisji szeregowej: Programowany Zegar/licznik: zawiara 8-bitowy preskaler umożliwiający generowanie cyklicznych przerwań, Port interfejsu nadrzędnego Port DMA transfer danych z/do wewnętrznej pamięci (BDMA) oraz IDMA przy wykorzystaniu 16-bitowego multipleksowania adresu i danych transfer do 24-bitowego obszaru pamięci programu, Interfejs analogowy model ADSP-21msp58/59 posiada obwody: ADC, DAC, filtry analogowe i cyfrowe, równoległy interfejs sprzegający z procesorem. Technologia sigma-delta.

56 Ogólny podział procesorów stałoprzecinkowych rodziny ADSP 21XX ADSP-21ES202 ADSP-2141L ADSP-2186M ADSP-2188M ADSP-2185M ADSP-21MOD980 ADSP-2165 ADSP-2166 ADSP-2184 ADSP-2184L ADSP-2189M ADSP-21MOD970 ADSP-2187L ADSP-21MOD870 ADSP-2185L ADSP-2186L ADSP-2185 ADSP-2186 ADSP-2104 ADSP-2104L ADSP-2183 ADSP-2181 ADSP-21msp58 ADSP-2171 ADSP-2173 ADSP-2161 ADSP-2163 ADSP-2164 ADSP-2103 ADSP-2162 ADSP-2115 ADSP-2105 ADSP-2101 ADSP-21ESP202 Procesor mowy z przetwornikiem A/C i C/A SafeNet DSP, system zabezpieczeń na chipie, 16-Bit, 75 MIPS(milion instrukcji na sekundę), 2.5V, 2 szeregowe porty, Host Port, 40 KB RAM 16-bit, 75 MIPS, 2.5v, 2 szeregowe porty, host port, 256 KB RAM 16-bit, 75 MIPS, 2.5v, 2 szeregowe porty, host port, 80 KB RAM DIVA / ADSP-21mod Ports of Voice Over Network Procesor sygnałowy z pamięcią ROM Procesor sygnałowy z pamięcią ROM 16-bit, 40 MIPS, 5v, 2 szeregowe porty, host port, 20KB RAM 16-bit, 40 MIPS, 3.3v, 2 szeregowe porty, host port, 20KB RAM 16-bit, 75 MIPS, 2.5v, 2 szeregowe porty, host port, 192 KB RAM wielo-portowy, internetowy procesor dostepowy 16-bit, 52 MIPS, 3.3v, 2 szeregowe porty, host port, 160 KB RAM 16-bit, pirwszy całkowity, cyfrowy modem na pojedynczym chipie 16-bit, 52 MIPS, 3.3v, 2 szeregowe porty, host port, 80 KB RAM 16-bit, 40 MIPS, 3.3 v, 2 szeregowe porty, host port, 40 KB RAM 16-bit, 33 MIPS, 5 v, 2 szeregowe porty, host port, 80 KB RAM 16-bit, 40 MIPS, 5v, 2 szeregowe porty, host port, 40 KB RAM 16-bit, 20 MIPS, 5v, 2 szeregowe porty 16-bit, 13 MIPS, 3.3v, 2 szeregowe porty 16-bit, 52 MIPS, 3.3 v, 2 szeregowe porty, host port, 80 KB RAM 16-bit, 40 MIPS, 5v, 2 szeregowe porty, host port, 80 KB RAM W pełni zintegrowany pojedynczy chip DSP 16-bit, 33 MIPS, 5v, 2 szeregowe porty, host port 16-bit, 20 MIPS, 3.3v, 2 szeregowe porty, host port Procesor sygnałowy z pamięcią ROM Procesor sygnałowy z pamięcią ROM Procesor sygnałowy z pamięcią ROM 16-bit, 10.2 MIPS, 3.3v, 2 szeregowe porty Procesor sygnałowy z pamięcią ROM 16-bit, 25 MIPS, 5v, 2 szeregowe porty 16-bit, 20 MIPS, 5v, 1 szeregowe porty 16-bit, 25 MIPS, 5v, 2 szeregowe porty

57 Parametry rodziny procesorów. Parametry Pamieć danych RAM 1K 1K 1/2K 1/2K 1K 1/2K 1/2K 1/2K 1/2K Pamięć programu RAM 2K 2K 1K 1K 2K Pamięć programu ROM K 8K 4K 4K Zegar * * * * * * * * * Port szeregowy 0 (wielokanałowy) * * - * * * * * * Port szeregowy 1 * * * * * * * * * Port łączący hosta * Klasa szybkości (czas jednostkowy instrukcji) MHz (76.9ns) - * MHz (76.9ns) * MHz (72.3ns) - - * MHz (60ns) * - - * * MHz (50ns) * - * * * MHz (40ns) * - - * Napięcie zasilania 5V 3.3V 5V 5V 5V 5V 3.3V 5V 3.3V Rodzaj obudowy 68- Pin-ów PGA * wyprowadzeń PLCC * * * * - * * * * 80- wyprowadzeń PQFP * * - * - * * * * 80- wyprowadzeń TQFP * Pin-ów PGA * wyprowadzeń PQFP * Klasy temperatur pracy K techniczne 0 o C do 70 o C * * * * * * * * * B przemysłowe -40 o C do 85 o C * * * * * * * * * T specjalne -55 o C do 125 o C * *

58 Opis końcówek (pinów) procesora (nazwa, ralizowana funkcja, liczba) Nazwa pinu (końcówki) Liczba końcówek Wejście/wy jście (I/O) Funkcja Adress (linie adresu) 14 O Wyjściowe adresy dla pamięci programu, danych i botowalnej Data (linie danych) 24 I/O Dane I/O pinów dla pamięci programu i danych. Wejście tylko dla pamięci bootowalnej, z dwoma sektorami bootującymi użytymi dla adresów pamięci bootowalnej. Linie nieużywanych danych mogą być nie podłączone. 1 I Wejście resetujące procesora RESET IRQ 2 1 I Żądanie zewnętrznego przerwania #2 BR BG 2 PMS DMS BMS RD WR 1 I Zewnętrzne żądanie pobrania danych z szyny 1 O Zewnętrzne żądanie wyprowadzenia danych na szynę 1 O Wybór zewnętrznej pamieci programu 1 O Wybór zewnętrznej pamieci programu 1 O Wybór pamięci butowalnej 1 O Zezwolenie odczytu zewnetrznej pamięci 1 O Zezwolenie zapisu zewnetrznej pamięci MMAP 1 I Wejście wyboru mapy pamieci CLKIN, XTAL 2 I Zegar zewnetrzny lub wewnętrzny CLKOUT 1 O Wyjście zegara procesora V DD GND SPORT0 3 5 I/O SPORT1 5 I/O IRQO Końcowka źrodła zasilania Końcówka masy Końcówki portu szeregowego 0 (TFS0, RFS0, DT0, DR0, SCLK0 ) Końcówki portu szeregowego 1 (TFS1, RFS1, DT1, DR1, SCLK1) (RFS1) 1 I Żądanie zewnętrznego przerwania #0 IRQ 1(TFS1) 1 I Żądanie zewnętrznego przerwania #1 F1(DR1) 1 I Końcowka wejścia flagi F0(DT1) 1 O Końcówka wyjścia flagi FL2-0 (tylko ADSP-2111) 3 O Końcówka wyjścia flgi ogólnego przeznaczenia Port łączący hosta (tylko ADSP-2111) HSEL 1 I Wejście wyboru HIP HACK 1 O Wyjście potwierdzenia HIP HSIZE 1 I 8/16 bitów wybór hosta (0=16 bitów, 1=8bitów) BMODE 1 I Wybór trybu boota (0=standard EPROM butujacy, 1=HIP bootujacy) HMD0 1 I Wybór strobowania szyny (0=RD/WR, 1=RW/DS) HMD1 1 I HIP wybór trybu adresy/dane (0=odseperowanie, 1=multipleksowanie) 1 I HIP strobowanie odczytu lub wybór zapis/odczyt 1 I HIP strobowanie zapisu lub wybor strobowania danych hosta HD15-0/HAD I/O HIP dane lub HIP dane i adresy HA2/ALE 1 I Drugie wejście adresu hoste lub wejście umożliwiające zatrzaskiwanie adresu HRD / HRW HWR / HDS HA1-0/nieużywane 2 I Adres hosta 1 i 0 wejścia

59 Schemat blokowy ADSP-21xx. Generator adresu danych Generator adresu danych Szyna PMA Szyna DMA Rejestr instrukcji Sekwenser programu Pamięć Programu SRAM lub ROM Pamięć Danych SRAM Generator Adresu boota Flagi Tylko ADSP 2111 zegar Szyna adresowa zewnętrzna Szyna PMD Szyna DMD Wymiana szyny Zewnętrzna szyna danych Rejestr wej. Rejestr wyj. Rejestr wej. Rejestr wyj. Rejestr wej. Przesuwnik Rejestr wyj. Szyna R Rejestr transmisji Rejestr odbioru Port szeregowy 0 (nie na ADSP- 2105) Kompansja zespołu obwodów Rej. transmisji Rej. odbioru Port szere Kontrolny port hosta Port danych hosta Port interfejsu zarządzania (tylko ADSP-2111) Zewnętrzna szyna portu hosta Opis ogólny procesorów sygnałowych Dzisiejsze procesory DSP to pojedyncze układy scalone. Podstawowe bloki funkcjonalne tych układów były już znane znacznie wcześniej, ale dopiero na początku lat 80-tych opracowano technologie, dzięki którym stało się możliwe zamknięcie tych skomplikowanych struktur w jednym układzie. Jednym z powodów dużej popularności tych układów jest ich programowalność. Możliwe jest zaprojektowanie urządzenia z wykorzystaniem DSP, które będzie realizowało różne funkcje (w zależności od załadowanego programu) przy niezmiennej konstrukcji sprzętowej. W układach cyfrowych parametrów urządzenia nie psują starzejące się kondensatory lub rezystory o zmieniającej się pod wpływem różnych czynników rezystancji Ponadto procesory DSP mogą być tak zaprogramowane, że same wykryją i skompensują zmiany parametrów analogowych elementów systemu. Niezaprzeczalną zaletą urządzeń opartych na DSP jest ich powtarzalność. Dzięki temu gotowy układ można łatwiej uruchomić (np. w przypadku filtrów cyfrowych praktycznie brak jest operacji strojenia różnych elementów) oraz zapewnić powtarzalność parametrów wejściowych i wyjściowych danego urządzenia. Procesory sygnałowe produkowane są w dwu odmianach: operacji stałoprzecinkowych operacji zmiennoprzecinkowych Zasadniczą zaletą układów zmiennoprzecinkowych jest fakt, że uwalniają one programistę od zwracania uwagi na skalowanie. W układach stałoprzecinkowych użytkownik musi zwracać większą uwagę na ograniczenia systemu liczbowego. W szczególności należy zadbać oto, aby nie przepełniać akumulatora i dbać o precyzję obliczeń. Procesory stałoprzecinkowe są tańsze, wymagają dbałości o skalowanie, częściej programuje się je w asemblerze. DSP zmiennoprzecinkowe są droższe, typowe ich programowanie odbywa się w języku C, a problemy ze skalowaniem nie występują. Procesory stałoprzecinkowe rodzina ADSP-2100 Architektura wszystkich procesorów należących do rodziny ADSP-2100 jest taka sama. Jej trzon stanowią: - jednostka arytmetyczno-logiczna (ALU) - układ mnożąco-akumulujący (MAC) - przesuwnik (barrel shifter) - generatory adresowe

60 Jednostki te w dużym stopniu mogą działać niezależnie od siebie. Wewnątrz układu scalonego przestrzeń adresowa danych jest oddzielona od przestrzeni adresowej programu. Na zewnętrz układu scalonego magistrala adresowa jest multipleksowana między adresy komórek pamięci danych i programu. Podobnie magistrala danych jest multipleksowana pomiędzy dane i instrukcje programu. Wszystkie procesory należące do tej rodziny mają przynajmniej niewielką wewnętrzną pamięć danych i programu. W ten sposób zachowuje się zalety struktury typu Harvard przy jednoczesnej niewielkiej liczbie wyprowadzeń. Architektura poszczególnych procesorów rodziny ADSP-2100 jest uzupełniona o dodatkowe jednostki: - zegar, - porty szeregowe przystosowane do współpracy z układem kodeka, - porty do komunikacji z jednostką nadrzędną (HIP) oraz - przetworniki analogowo-cyfrowe i cyfrowo-analogowe. Procesory wyposażone w przetworniki A/C i C/A firma Analog Devices określa angielskim terminem mixed signal processors. Cechą charakterystyczną procesorów rodziny ADSP-2100 są specjalizowane rejestry. Jednostkę arytmetyczno-logiczna - podstawowe operacje wykonywane przez jednostkę arytmetyczno-logiczną to: dodawanie, dodawanie z przeniesieniem, odejmowanie, odejmowanie z uwzględnieniem "pożyczki", zmiana znaku (dopełnienie do dwóch), obliczanie wartości bezwzględnej, operacje logiczne AND, OR, XOR, NOT (dopełnienie do jedności) oraz przesłanie wartości z rejestru wejściowego do rejestru wyjściowego bez wykonywania żądnej operacji oprócz ustawienia flag. Operacje logiczne wykonuje się oddzielnie dla każdego bitu argumentów, natomiast operacje arytmetyczne wykonuje się przy założeniu, że argumenty są liczbami stałoprzecinkowymi w formacie Jednostka arytmetyczno-logiczna wykonuje także podstawowe operacje niezbędne do zrealizowania dzielenia liczb stałoprzecinkowych. Dzielenie o pojedynczej precyzji - dla którego dzielnik jest liczbą 32-bitową, dzielna liczbą 16-bitową, natomiast wynik dzielenia jest 16-bitowy - wymaga wykonania 16 rozkazów. Możliwe jest przy tym zorganizowanie dzielenia tak, aby liczba bitów wyniku była albo mniejsza, albo większa niż 16. Układ mnożąco-akumulujący - podstawowe operacje wykonywane przez układ mnożąco-akumulujący to mnożenie liczb stałoprzecinkowych oraz mnożenie i akumulacja (dodawanie i odejmowanie).charakterystycznymi rejestrami tego układu są rejestr akumulujący MR (40-bitowy) oraz rejestr pośredniczący MF (16-bitowy). Układ mnożąco-akumulujący ma możliwość zaokrąglenia 40-bitowego rezultatu obliczeń do 16 bitów. Zaokrąglony wynik może zostać skierowany do rejestru MF lub MR. W tym ostatnim przypadku liczba 16-bitowa zostanie umieszczona w bitach rejestru MR, natomiast jej znak zostanie ośmiokrotnie powielony w bitach 32-39rejestru MR. Układ przesuwnika - pozawala jednym rozkazem umieścić 16-bitowy argument w dowolnym miejscu 32-bitowego rejestru wyjściowego, włączając w to sytuacje, gdy część argumentu pozostaje poza rejestrem wyjściowym. Daje to łącznie 49 położeń w rejestrze wyjściowym. Znajdowana jest także cecha liczby stałoprzecinkowej lub wspólna cecha dla całej tablicy liczb stałoprzecinkowych. Operacje te pozwalają na efektywne zakodowanie funkcji zamiany liczby stałoprzecinkowej na liczbę zmiennoprzecinkową i odwrotnie. Generatory adresu dostarczają adresów pamięci kiedy pamięć danych jest przesyłana do lub z rejestru wejściowego (wejściowego).każdy generator adresu trzyma ścieżkę do czterech punktów adresowych. Kiedy wskaźnik jest używany do pośredniego adresowania, jest to post-modyfikowanie przez wartość w rejestrze specjalnym. Z dwóch niezależnych generatorów adresu, procesor może generować dwa równoczesne adresy dla podwójnie pobranych argumentów operacji. Rozmiar wartości może być powiązany z każdym wskaźnikiem do implementacji automatycznego adresowania modułu dla buforów cyklicznych. (cecha bufora cyklicznego jest także wykorzystywana przez porty szeregowe do automatycznego transferu danych ). Generator adresu 1 może przesyłać adresy tylko do pamięci programu; zaś generator adresu 2 może przesyłać adresy do obu pamięci programu i danych. Kiedy bit trybu właściwego jest zadany w trybie rejestru stanu (MSTAT), adres wyjściowy generatora adresu1 jest odwracaniem bitu przed rozpoczęciem kierowania na szynę adresową. Ta cech ułatwia adresowanie w radix-2 algorytmu szybkiej transformaty Fouriera. Każdy z tych generatorów ma trzy grupy rejestrów: - rejestry indeksowe I, - rejestry modyfikacji M, - rejestry długości L. Na początku cyklu rozkazowego następuje przesłanie do procesora danych wskazywanych przez rejestr I, natomiast pod koniec tego cyklu wartość rejestru M (może być ujemna) jest dodawana do wartości rejestru I i w nim jest przechowywany wynik działania. Rejestr L wykorzystuje się do adresowania kołowego. W trakcie wykonywania programu instrukcje są pobierane z kolejnych komórek pamięci programu wskazywanych przez licznik rozkazów PC. Każda instrukcja jest wykonywana w jednym cyklu zegarowym. Sekwenser programowy - wykonuje adresy rozkazu do pamięci programu. Sekwenser jest sterowany przez rejestr instrukcji który utrzymuje obieg wykonywanych instrukcji. Rejestr instrukcji wprowadza poziom sygnału przetwarzania potokowego wewnątrz działającego programu. Instrukcje są pobierane i ładowane do rejestru instrukcji podczas jednego cyklu maszynowego, wykonywane podczas następnego cyklu dopóki nie zostanie wcześniej pobrana następna instrukcja. Do

61 zminimalizowania cykli narzutu, sekwenser daje możliwość wykonania skoku jednostkowego, wywołanie programu i powrót w pojedynczym cyklu. Z wewnętrznej pętli licznika i pętli stosu, procesor wykonuje kod pętli zaczynając od zera. Bez wyraźnego rozkazu skoku instrukcje są wymagane do pętli. Szyny - procesory posiadają pięć wewnętrznych szyn. Szyna adresowa pamięci programu (PMA) oraz szyna adresowa pamięci danych (DMA) są używane wewnętrznie do połączeń adresowych z pamięcią programu i danych. Szyna danych pamięci programu (PMD) i szyna danych pamięci danych (DMD) są używane do połączenia danych z przestrzenią adresową. Szyny są połączone wewnątrz pojedynczą zewnętrzną szyną adresową i pojedynczą zewnętrzną szyną danych; BMS, DMS, PMS to sygnały wyboru różnych przestrzeni adresowych. R - szyna pośrednich wyników transferu bezpośrednio pomiędzy różnorodnymi jednostkami liczącymi. Szyna PMA jest 14 bitowa pozwala na 16KB/s połączonych kodów rozkazu i danych. Szyna PMD o szerokości 24- bitów. Szyna DMA ma szerokość 14 bitową pozwalającą rozkazy dostępu 16K słów danych. Szyna DMD o szerokości 16 bitów. Szyna danych DMD dostarcza ścieżkę potrzebną do przesłania zawartości pewnych rejestrów w procesorze do innych rejestrów lub jakiejś komórki pamięci danych w pojedynczym cyklu. Adresowanie pamięci danych możliwe jest poprzez określenie adresu w kodzie rozkazu (adresowanie bezpośrednie) lub z wyjścia generatora adresu danych (adresowanie pośrednie). Dostęp do danych w pamięci programu możliwy jest tylko przy adresowaniu pośrednim. Szyna PMD często może być używana do transferu danych do i z jednostek liczących poprzez ścieżki rozkazu lub vi PMD-DMD wymianę jednostki. Sprzętowy system przerwań - procesory należące do rodziny ADSP-2100 są ponadto wyposażone w sprzętowy system przerwań. Najczęściej jedno z nich (maksymalnie 3) jest przerwaniem zewnętrznym, natomiast pozostałe są generowane przez układy wewnętrzne procesora. Wszystkim przerwaniom w sposób sztywny są przypisane priorytety. Każde z przerwań można przy tym zamaskować, zerując odpowiedni bit w rejestrze maski przerwań IMASK. Kontroler przerwań pozwala procesorowi reagować na przerwania z minimalnym narzutem. Zależą od trzech wejściowych pinów przerwań zewnętrznych,irq0, IRQ1, oraz IRQ2. IRQ2 jest zawsze dostępny jako pin dedykowany; IRQ1 oraz IRQ0 mogą być alternatywnie skonfigurowane jako część szeregowego portu 1. ADSP-21xx często opiera się na przerwaniach wewnętrznych z zegara, portu szeregowego oraz portu interfejsu hosta (tylko ADSP-2111). Przerwania są wewnętrznie priorytetowane oraz indywidualnie maskowane (z wyjątkiem dla RESET który jest niemaskowalny ). Piny wejść IRQx mogą być programowane dla obu poziomów lub czułości brzegowej. Priorytety przerwań dla wszystkich procesorów ADSP-21xx są pokazane w tabeli Źródło przerwania ADSP 2105 Przerwanie, Adresy wektorowe RESET rozpoczęcie pracy IRQ2 0x0004 SPORT1 transmitowanie lub IRQ1 SPORT1 odbiór lub IRQ0 Zegar 0x0000 0x0004 (wysoki priorytet) 0x0010 0x0014 0x0018 (niski priorytet) ADSP-2101/2103/2115/216x RESET rozpoczęcie pracy IRQ2 0x0004 SPORT0 transmitowanie lub IRQ1 SPORT0 odbiór lub IRQ0 0x0000 0x0004 (wysoki priorytet) 0x0008

62 SPORT1 transmitowanie lub IRQ1 SPORT1 odbiór lub IRQ0 Zegar 0x000C 0x0010 0x0014 0x0018 (niski priorytet) ADSP-2111 RESET rozpoczęcie pracy IRQ2 0x0004 HIP zapis z hosta HIP odczyt z hosta SPORT0 transmitowanie lub IRQ1 SPORT0 odbiór lub IRQ0 SPORT1 transmitowanie lub IRQ1 SPORT1 odbiór lub IRQ0 Zegar 0x0000 0x0004 (wysoki priorytet) 0x0008 0x000C 0x0010 0x0014 0x0018 0x001C 0x0020 (niski priorytet) Reset - Zainicjowany sygnał RESET całkowicie resetuje ADSP21-xx. Jeśli zastosowany zostanie sygnał RESET podczas inicjacji załączania, musi być podtrzymany tak długo aż wewnętrzny zegar procesora się ustabilizuje. Jeśli sygnał RESET zastosowany zostanie po czasie załączenia i częstotliwość wejścia zegara się nie zmienia, wewnętrzny zegar procesora kontynuuje pracę i nie wymaga tego czasu stabilizowania. Zegar - każdy z procesorów rodziny ADSP-2100 jest wyposażony w szybki, programowalny licznik-zegar. Np. dla procesora ADSP-2111 taktowanego zegarem o częstotliwości 20 MHz pozwala on odmierzać odcinki czasu do 3,28 ms z rozdzielczością 50 ns lub odcinki czasu 839 ms z rozdzielczością nie mniejszą niż 12,8 ms. Sygnały zegarowe - W ADSP-21xx wejście CLKIN może być sterowane przez reznonator kwarcowy lub przez zewnętrzny sygnał zegarowy TTL-kompatybilny. Wejście CLKIN nie powinno być zatrzymywane lub zmieniana jego częstotliwość podczas wykonywania operacji i nie powinno pracować poniżej sprecyzowanej częstotliwości. Jeśli używa się zewnętrznego zegara, powinna być kompatybilność jego sygnału z prędkością wykonywania się instrukcji. Sygnał powinien być podłączony do wejścia CLKIN; w tym przypadku wejście XTAL musi być odłączone. Ponieważ ADSP-21xx zawierają wewnątrz układu obwód oscylatora, może być używany zewnętrzny rezonator kwarcowy. Rezonator kwarcowy podłącza się pomiedzy piny CLKIN i XTAL, z dwoma kondensatorami podłączonymi do masy.

63 CLKIN XTAL CLKOUT ADSP-21xx Porty szeregowe Wszystkie procesory mają dwa porty szeregowe (SPORT 0, SPORT1) za wyjątkiem ADSP 2105 który posiada tylko port SPORT1. Ich cechy charakterystyczne to: praca w trybie dupleksowym; część nadawcza jest niezależna od części odbiorczej; podwójne buforowanie; część nadawcza (i odbiorcza) ma bufor przechowujący dane przeznaczone do wysłania (lub odbierane) oraz rejestr zamieniający dane z formatu szeregowego na równoległy i odwrotnie; możliwość synchronizacji pracy portu zegarem zewnętrznym; możliwość zmiany długości słowa w granicach od 3 do 16 bitów; dokonywanie w locie dekompresji (kompresji) danych odbieranych (lub przekazywanych) z kodeka; możliwość umieszczania danych w buforze kołowym kosztem jednego cyklu zegarowego, bez przerywania pracy procesora; praca na przerwaniach; nadejście (lub wysyłanie) danych jest sygnalizowane przerwaniem; możliwość realizacji transmisji z podziałem kanału w dziedzinie czasu (system TDM). Porty szeregowe dostarczają całkowitego synchronicznego, szeregowego połączenia z optymalną kompansją w sprzęcie. Jest dostępny duży wybór ramowej lub całoramowej transmisji danych. Każdy SPORT może być generowany wewnętrznym programowalnym zegarem szeregowym lub zewnętrznym zegarem. Każdy port szregowy posiada 5 pinów przesyłających nasępujące sygnały: Nazwa sygnału SCLK RFS TFS DR DT Zegar (wej/wyj) Synchronizacja ram odbioru (wej/wyj) Synchronizacja ram nadawania (wej/wyj) Odbiór szeregowy danych Przekazywanie szeregowe danych HIP - niektóre procesory są wyposażone w port do komunikacji z jednostką nadrzędną HIP (host interface port). Z punktu widzenia procesora jest to zespół rejestrów umieszczonych w przestrzeni adresowej danych, pełniących rolę skrzynki pocztowej pomiędzy procesorem a urządzeniem zewnętrznym pracującym całkowicie asynchronicznie w stosunku do niego. Nadejście

64 komunikatu z urządzenia zewnętrznego sygnalizowane jest przez HIP przerwaniem. Rejestry HIP pozwalają się także zorientować procesorowi czy wysłany na zewnątrz przez niego komunikat został odebrany przez urządzenie zewnętrzne. HIP umożliwia procesorowi nadrzędnemu zresetować procesor sygnałowy, załadować program do jego pamięci i uruchomić go, czyli jest to pełna kontrola pracy procesora DSP. Przetwornik A/C i C/A - procesory DSP analogowo-cyfrowe mają ponadto 16-bitowy przetwornik A/C i 16-bitowy przetwornik C/A. Oba są przetwornikami z przetwarzaniem typu delta-sigma, próbkującymi sygnał z częstotliwością 8 khz. Przetworniki te są uzupełnione o filtry antyaliasingowe oraz filtry odtwarzające. Możliwa jest również programowa zmiana wzmocnienia w torze przetwarzania A/C i C/A. Zwiększenie rozdzielczości i jakości przetworników A/C i C/A powoduje konieczność poprawy dokładności obliczeń algorytmów stosowanych przy cyfrowym przetwarzaniu sygnałów. Wprowadzenie arytmetyki zmiennoprzecinkowej pozwala na uniknięcie kłopotliwego skalowania wyniku przy działaniach stałoprzecinkowych, potrzebnego do zachowania odpowiedniej poprawności wyniku. W przypadku działań stałoprzecinkowych konieczne jest dokładne określenie maksymalnych wartości sygnału wejściowego. Wzrost sygnału wejściowego ponad poziom założony może zaowocować nasycaniem się wyników pośrednich i znacznym wzrostem zniekształceń nieliniowych. Z kolei przy przetwarzaniu niskich sygnałów występuje znaczne zmniejszenie dokładności obliczeń ze względu na kwantyzację, a to powoduje znaczne zmniejszenie stosunku sygnału użytecznego do szumu. Przy zastosowaniu arytmetyki zmiennoprzecinkowej problemy te nie występują, ponieważ liczby zmiennoprzecinkowe ze względu na swoją naturę niejako "automatycznie" dostosowują się do dynamiki sygnału wejściowego, zapewniając praktycznie nieograniczony zakres liniowości oraz dużą dokładność nawet przy małych poziomach sygnału. Dużą korzyścią jest również uproszczenie pisania programów. Programista jest zwolniony od konieczności dostosowywania istniejących algorytmów w celu zapewnienia odpowiedniej dynamiki sygnału w każdym punkcie programu. Wpływa to znacznie na skrócenie czasu pisania programu, a zatem również i na zmniejszenie kosztów poszczególnych zastosowań. Literatura: Analog Devices podręczniki rodzin 21xx i 210xx

65 PMD bus DMD bus Schemat blokowy ALU AX0, AX1 AY0, AY1 AZ AN AC AV AS AQ ALU CI AF AR R bus

66 \

67 RDZEŃ PROCESORA DAG1 adresowanie tylko DM możliwość odwracania bitów DAG2 adresowanie DM i PM możliwość pośrednich odgałęzień I0 L0 M0 I4 L4 M4 I1 L1 M1 I5 L5 M5 I2 L2 M2 I6 L6 M6 I3 L3 M ALU I7 L7 M MAC AX0 AX1 AY0 AY1 MX0 MX1 MY0 MY1 AR AF MR0 MR1 MR2 MF SHIFTER PM<->DM SI SE SB 8 PX SR1 SR0 SEKWENCER PROGRAMU 18 LOOP STACK 4 18 OWRCNTR CNTR COUNT STACK ICNTL IFC 18 PC STACK IMASK MSTAT ASTAT 8 8 STATUS STACK * SSTAT

68 Podstawowe cechy procesorów sygnałowych: równoległe mnożenie z akumulacją, wykonywane w jednym cyklu, generatory adresu ze specjalizowanymi trybami, wydajny zestaw instrukcji z jednocyklowymi równoległymi operacjami matematycznymi i przesłań w pamięci oraz sprawną realizacją pętli, zintegrowany z procesorem moduł DMA i wewnętrzną pamięcią RAM dla jednoczesnych operacji wykonywanych przez CPU i układy we/wy. Generalny podział procesorów sygnałowych dokonuje się na kategorie: procesory stałoprzecinkowe (ang. fixed-point DSP) procesory zmiennoprzecinkowe (ang. floating-point DSP) Rdzeń procesora składa się z: szyn adresowych, szyn danych, kontrolera programu, jednostki generacji adresu (AGU), jednostki arytmetyczno-logicznej danych (ALU), interfejsu do emulacji PAMIĘĆ PROGRAMU 16/32K x ZEGAR CLKIN Adres pamięci programu Dane pamięci programu ADSP CLKOUT Adres pamięci danych Dane pamięci danych RESET HALT TRAP IRQ BR BG Adres Dane Adres Dane PAMIĘĆ DANYCH 16K x 16 PERYFERIA Rys. Zmodyfikowana architektura Harvard na przykładzie ADSP-2100

69 Transfer Danych GENERETOR ADRESU DANYCH - DAG Generatory adresu danych DAG są jednostkami zaprojektowanymi do generowania adresów pośrednich w celu wskazania danych w pamięci. Operują na danych 14-bitowych. Każda jednostka posiada 3 różne typy rejestrów: I (rejstry indeksowe): zawierają bieżący adres, M (rejestry modyfikujące): zawierają różnicę pomiędzy bieżącym i następnym adresem, L (rejestry długości): zawierają rozmiar bufora cyklicznego (dla zapewnienia normalnego liniowego adresowania ustawiane są na 0). Każda jednostka DAG zawiera po 4 rejestry każdego typu, numerowane od 0 do 3 dla DAG1 i od 4 do 7 dla DAG2. Rejestry L i I są niezależne, dla przykładu DM(I0,M2) jest prawidłowe, lecz rejestr L jest przydzielony do korespondującego z nim rejestru I. Adresowanie pośrednie: Procesory rodziny ADSP-2100 wykorzystują dwa tryby adresowania: bezpośrednie i pośrednie. Adresowanie pośrednie jest realizowane przy wykorzystaniu rejestru I (indeksowego) i rejestru M (modyfikującego). Rejestr L podczas adresowania liniowego musi być ustawiony na 0. Przykład liniowego adresownia pośredniego: I3=0x3800; M2=0; L3=0; AX0=DM(I3,M2); Poniższy przykład używa zmiennych pamięciowych i wskaźników adresowych:.var/dm/ram addr_ptr; {zmienna do przechowywania adresu dostępu } I3=DM(addr_ptr); {I3 załaduj przy użyciu adresowania bezpośredniego} L3=0; {zabroń adresowania cyklicznego, adresowanie liniowe} M1=0; {nie stosuj modyfikacji z I3} AX0=DM(I3,M1); {AX0 załaduj adresując pośrednio} Bufory cykliczne (adresowanie modulo) Bufory cykliczne wykorzystują automatyczną implementację generowania adresów modulo dla dostępu do buforów cykliczmnych. Do obliczenie kolejnego adresu wykorzystuje się następujące informacje: bieżącą lokację, przechowywaną w rejestrze I (bez znaku unsigned), wartość modyfikującą, przechowywaną w rejestrze M (ze znakiem signed), długość bufora, przechowywaną w rejestrze L (bez znaku unsigned), bazowy adres bufora. Następny adres jest obliczany zgodnie z wyrażeniem: Nast. Adres ( I M B) Modulo( L) B gdzie: I = bieżący adres, M = modyfikacja adresu (ze znakiem), B = adres bazowy, L = długość bufora M + I = zmodyfikowany adres przy ograniczeniu warunkiem, że M L. Adres bazowy bufora cyklicznego o długości L jest 2 n lub wielokrotnością 2 n oraz ograniczeniu: Przykład: I0=5, M0=1, L0=3, adres bazowy B=4. (I0+M0-B) mod L0 + B = (5+1-4) mod = 6 Kolejne generowane adresy podlegają sekwencji: 5, 6, 4, 5, 6, 4,... Dla M0=-1 (tzn. 0x3FFF) I0 generuje kolene wartości: 5, 4, 6, 5, 4, 6, 5,... n n 2 1 L 2.

70 Odwracanie bitów adresowych: Logika odwracania bitów adresowych jest w pierwszym rzędzie stosowana w algorytmach FFT i polega na zmianie porządku bitów w słowie adresowym (jak na rysunku). Odwracanie bitów możliwe jest tylko w jednostce DAG1. porządek normalny porządek odwrócony Odwracanie bitów jest przeprowadzane przez zezwolenie/zabronienie odpowiedniego bitu stattusowego rejestru MSTAT. Kiedy jest zezwolone, to wszystkie adresy generowane przy użyciu rejestrów indeksowych I0-3 posiadają na wyjściu odwrócone bity. Jest również możliwe odwracanie bitów przy szerokości mniejszej niż 14 przy wykorzystaniu rejestru M (patrz modyfikacja Butterfly rozdz.6. Jednowymiarowa FFT Digital Signal Processing...) Programowanie dostępu danych Tablice deklarowane są przykładowo dyrektywą:.var/dm coeffficients[128]; Deklaracja taka rezerwuje tablicę 128 elementów 16-bitowych w pamięci danych (DM). Operatory specjalne: ^ i % odnoszą się odpowiednio do adresu zmiennej i do jej długości. I0=^coefficients; {wskażnik adresu bufora} L0=0; {rejestr L ustaw na 0} MX0=DM(I0,M0); {załaduj MX0 z bufora} alternatywnie: MX0=DM(coefficients); Inicjalizacja tablicy może odbywać się przy wykorzystaniu dyrektywy assemblera:.init coefficients: <nazwa_pliku.dat> Obsługa bufora cyklicznego:.var/dm/circ coefficients[128]; L0=%coefficients; {długość bufora cyklicznego} I0=^coefficients; {wskaźnik na adres pierwszego elementu bufora} M0=1; { zwiększ o 1 lokalizację za każdym razem]... MX0=DM(I0,M0); {załaduj MX0 z bufora} MX0=DM(I0,M0); ZAMIANA MAGISTRAL PMD DMD SPECJALNA JEDNOSTKA PMD-DMD REALIZUJE POŁĄCZENIE POMIĘDZY MAGISTRALĄ PAMIĘCI DANYCH (DMD) A PAMIĘCIĄ PROGRAMU (PMD). PONIEWAŻ MAGISTRALA PMD JEST 24-BITOWA, A MAGISTRALA DMD JEST 16-BITOWA, DANE NIE MOGĄ BYĆ TRANSMITOWANE BEZPOŚREDNIO, LECZ PRZY WYKORZYSTANIU WEWNĘTRZNEGO REJESTRU PX. PM(I4,M4)=AR; Dane z rejestru AR (poprzez magistralę DMB) zostaną przesłane do lokacji w pamięci programu PMD. przykład: AR=1234 H, PX=00 H, PM(I4,M4)= H SI=PM(I4,M4); Dane z pamięci programu PM(I4,M4) przesyłane są do rejestru SI (rej. wejściowy jednostki przesuwającej). np. PM(I4,M4)=1F2C3D H, po operacji SI=1F2C H a PX=3D H.

71

72 Rys. Zestawienie wybranych rodzin procesorów Analog Devices Rys. Wewnętrzna architektura ADSP-2100

Systemy. Pomiarowe Wielkości Fizycznych. Materiały do wykładu cz II. mikrosys@prz.edu.pl www.prz.edu.pl/~mikrosys

Systemy. Pomiarowe Wielkości Fizycznych. Materiały do wykładu cz II. mikrosys@prz.edu.pl www.prz.edu.pl/~mikrosys e-mail: www: mikrosys@prz.edu.pl www.prz.edu.pl/~mikrosys Systemy μp Pomiarowe Wielkości Fizycznych wykład cz.i 5 godz. prof. dr hab inż. Adam Kowalczyk bud. A pok 206 wykład cz.ii 5 godz. mgr inż. Kazimierz

Bardziej szczegółowo

Wstęp...9. 1. Architektura... 13

Wstęp...9. 1. Architektura... 13 Spis treści 3 Wstęp...9 1. Architektura... 13 1.1. Schemat blokowy...14 1.2. Pamięć programu...15 1.3. Cykl maszynowy...16 1.4. Licznik rozkazów...17 1.5. Stos...18 1.6. Modyfikowanie i odtwarzanie zawartości

Bardziej szczegółowo

ĆWICZENIE. TEMAT: OBSŁUGA PRZETWORNIKA A/C W ukontrolerze 80C535 KEILuVISON

ĆWICZENIE. TEMAT: OBSŁUGA PRZETWORNIKA A/C W ukontrolerze 80C535 KEILuVISON ĆWICZENIE TEMAT: OBSŁUGA PRZETWORNIKA A/C W ukontrolerze 80C535 KEILuVISON Wiadomości wstępne: Wszystkie sygnały analogowe, które mają być przetwarzane w systemach mikroprocesorowych są próbkowane, kwantowane

Bardziej szczegółowo

Ćw. 10 Badanie toru przetwarzania C/A w mikrokontrolerach analogowych

Ćw. 10 Badanie toru przetwarzania C/A w mikrokontrolerach analogowych Ćw. 10 Badanie toru przetwarzania C/A w mikrokontrolerach analogowych (ADuC824 lub ADuC834) Problemy teoretyczne: Podstawy architektury mikrokontrolerów i mikrokonwerterów pamięć programu, pamięć danych,

Bardziej szczegółowo

LEKCJA TEMAT: Zasada działania komputera.

LEKCJA TEMAT: Zasada działania komputera. LEKCJA TEMAT: Zasada działania komputera. 1. Ogólna budowa komputera Rys. Ogólna budowa komputera. 2. Komputer składa się z czterech głównych składników: procesor (jednostka centralna, CPU) steruje działaniem

Bardziej szczegółowo

PRZETWORNIK ADC w mikrokontrolerach Atmega16-32

PRZETWORNIK ADC w mikrokontrolerach Atmega16-32 Zachodniopomorski Uniwersytet Technologiczny WYDZIAŁ ELEKTRYCZNY Katedra Inżynierii Systemów, Sygnałów i Elektroniki LABORATORIUM TECHNIKA MIKROPROCESOROWA PRZETWORNIK ADC w mikrokontrolerach Atmega16-32

Bardziej szczegółowo

2. PORTY WEJŚCIA/WYJŚCIA (I/O)

2. PORTY WEJŚCIA/WYJŚCIA (I/O) 2. PORTY WEJŚCIA/WYJŚCIA (I/O) 2.1 WPROWADZENIE Porty I/O mogą pracować w kilku trybach: - przesyłanie cyfrowych danych wejściowych i wyjściowych a także dla wybrane wyprowadzenia: - generacja przerwania

Bardziej szczegółowo

Struktura i działanie jednostki centralnej

Struktura i działanie jednostki centralnej Struktura i działanie jednostki centralnej ALU Jednostka sterująca Rejestry Zadania procesora: Pobieranie rozkazów; Interpretowanie rozkazów; Pobieranie danych Przetwarzanie danych Zapisywanie danych magistrala

Bardziej szczegółowo

Zastosowanie procesorów AVR firmy ATMEL w cyfrowych pomiarach częstotliwości

Zastosowanie procesorów AVR firmy ATMEL w cyfrowych pomiarach częstotliwości Politechnika Lubelska Wydział Elektrotechniki i Informatyki PRACA DYPLOMOWA MAGISTERSKA Zastosowanie procesorów AVR firmy ATMEL w cyfrowych pomiarach częstotliwości Marcin Narel Promotor: dr inż. Eligiusz

Bardziej szczegółowo

MIKROPROCESORY architektura i programowanie

MIKROPROCESORY architektura i programowanie Systematyczny przegląd. (CISC) SFR umieszczane są w wewnętrznej pamięci danych (80H 0FFH). Adresowanie wyłącznie bezpośrednie. Rejestry o adresach podzielnych przez 8 są też dostępne bitowo. Adres n-tego

Bardziej szczegółowo

Przetworniki A/C. Ryszard J. Barczyński, 2010 2015 Materiały dydaktyczne do użytku wewnętrznego

Przetworniki A/C. Ryszard J. Barczyński, 2010 2015 Materiały dydaktyczne do użytku wewnętrznego Przetworniki A/C Ryszard J. Barczyński, 2010 2015 Materiały dydaktyczne do użytku wewnętrznego Parametry przetworników analogowo cyfrowych Podstawowe parametry przetworników wpływające na ich dokładność

Bardziej szczegółowo

E-TRONIX Sterownik Uniwersalny SU 1.2

E-TRONIX Sterownik Uniwersalny SU 1.2 Obudowa. Obudowa umożliwia montaż sterownika na szynie DIN. Na panelu sterownika znajduje się wyświetlacz LCD 16x2, sygnalizacja LED stanu wejść cyfrowych (LED IN) i wyjść logicznych (LED OUT) oraz klawiatura

Bardziej szczegółowo

Temat: Pamięci. Programowalne struktury logiczne.

Temat: Pamięci. Programowalne struktury logiczne. Temat: Pamięci. Programowalne struktury logiczne. 1. Pamięci są układami służącymi do przechowywania informacji w postaci ciągu słów bitowych. Wykonuje się jako układy o bardzo dużym stopniu scalenia w

Bardziej szczegółowo

interfejs szeregowy wyświetlaczy do systemów PLC

interfejs szeregowy wyświetlaczy do systemów PLC LDN SBCD interfejs szeregowy wyświetlaczy do systemów PLC SEM 08.2003 Str. 1/5 SBCD interfejs szeregowy wyświetlaczy do systemów PLC INSTRUKCJA OBSŁUGI Charakterystyka Interfejs SBCD w wyświetlaczach cyfrowych

Bardziej szczegółowo

4 Transmisja szeregowa na przykładzie komunikacji dwukierunkowej z komputerem PC, obsługa wyświetlacza LCD.

4 Transmisja szeregowa na przykładzie komunikacji dwukierunkowej z komputerem PC, obsługa wyświetlacza LCD. 13 4 Transmisja szeregowa na przykładzie komunikacji dwukierunkowej z komputerem PC, obsługa wyświetlacza LCD. Zagadnienia do przygotowania: - budowa i działanie interfejsu szeregowego UART, - tryby pracy,

Bardziej szczegółowo

Organizacja pamięci VRAM monitora znakowego. 1. Tryb pracy automatycznej

Organizacja pamięci VRAM monitora znakowego. 1. Tryb pracy automatycznej Struktura stanowiska laboratoryjnego Na rysunku 1.1 pokazano strukturę stanowiska laboratoryjnego Z80 z interfejsem częstościomierza- czasomierz PFL 21/22. Rys.1.1. Struktura stanowiska. Interfejs częstościomierza

Bardziej szczegółowo

Architektura systemu komputerowego

Architektura systemu komputerowego Zakres przedmiotu 1. Wstęp do systemów mikroprocesorowych. 2. Współpraca procesora z pamięcią. Pamięci półprzewodnikowe. 3. Architektura systemów mikroprocesorowych. 4. Współpraca procesora z urządzeniami

Bardziej szczegółowo

Spis treúci. Księgarnia PWN: Krzysztof Wojtuszkiewicz - Urządzenia techniki komputerowej. Cz. 1. Przedmowa... 9. Wstęp... 11

Spis treúci. Księgarnia PWN: Krzysztof Wojtuszkiewicz - Urządzenia techniki komputerowej. Cz. 1. Przedmowa... 9. Wstęp... 11 Księgarnia PWN: Krzysztof Wojtuszkiewicz - Urządzenia techniki komputerowej. Cz. 1 Spis treúci Przedmowa... 9 Wstęp... 11 1. Komputer PC od zewnątrz... 13 1.1. Elementy zestawu komputerowego... 13 1.2.

Bardziej szczegółowo

projekt przetwornika inteligentnego do pomiaru wysokości i prędkości pionowej BSP podczas fazy lądowania;

projekt przetwornika inteligentnego do pomiaru wysokości i prędkości pionowej BSP podczas fazy lądowania; PRZYGOTOWAŁ: KIEROWNIK PRACY: MICHAŁ ŁABOWSKI dr inż. ZDZISŁAW ROCHALA projekt przetwornika inteligentnego do pomiaru wysokości i prędkości pionowej BSP podczas fazy lądowania; dokładny pomiar wysokości

Bardziej szczegółowo

Przetworniki AC i CA

Przetworniki AC i CA KATEDRA INFORMATYKI Wydział EAIiE AGH Laboratorium Techniki Mikroprocesorowej Ćwiczenie 4 Przetworniki AC i CA Cel ćwiczenia Celem ćwiczenia jest poznanie budowy i zasady działania wybranych rodzajów przetworników

Bardziej szczegółowo

Systemy wbudowane Mikrokontrolery

Systemy wbudowane Mikrokontrolery Systemy wbudowane Mikrokontrolery Budowa i cechy mikrokontrolerów Architektura mikrokontrolerów rodziny AVR 1 Czym jest mikrokontroler? Mikrokontroler jest systemem komputerowym implementowanym w pojedynczym

Bardziej szczegółowo

Architektura komputerów

Architektura komputerów Architektura komputerów Wykład 12 Jan Kazimirski 1 Magistrale systemowe 2 Magistrale Magistrala medium łączące dwa lub więcej urządzeń Sygnał przesyłany magistralą może być odbierany przez wiele urządzeń

Bardziej szczegółowo

Opis funkcjonalny i architektura. Modu³ sterownika mikroprocesorowego KM535

Opis funkcjonalny i architektura. Modu³ sterownika mikroprocesorowego KM535 Opis funkcjonalny i architektura Modu³ sterownika mikroprocesorowego KM535 Modu³ KM535 jest uniwersalnym systemem mikroprocesorowym do pracy we wszelkiego rodzaju systemach steruj¹cych. Zastosowanie modu³u

Bardziej szczegółowo

Mikrokontroler AVR ATmega32 - wykład 9

Mikrokontroler AVR ATmega32 - wykład 9 SWB - Mikrokontroler AVR ATmega32 - wykład 9 asz 1 Mikrokontroler AVR ATmega32 - wykład 9 Adam Szmigielski aszmigie@pjwstk.edu.pl SWB - Mikrokontroler AVR ATmega32 - wykład 9 asz 2 CechyµC ATmega32 1.

Bardziej szczegółowo

Szkolenia specjalistyczne

Szkolenia specjalistyczne Szkolenia specjalistyczne AGENDA Programowanie mikrokontrolerów w języku C na przykładzie STM32F103ZE z rdzeniem Cortex-M3 GRYFTEC Embedded Systems ul. Niedziałkowskiego 24 71-410 Szczecin info@gryftec.com

Bardziej szczegółowo

Struktura i funkcjonowanie komputera pamięć komputerowa, hierarchia pamięci pamięć podręczna. System operacyjny. Zarządzanie procesami

Struktura i funkcjonowanie komputera pamięć komputerowa, hierarchia pamięci pamięć podręczna. System operacyjny. Zarządzanie procesami Rok akademicki 2015/2016, Wykład nr 6 2/21 Plan wykładu nr 6 Informatyka 1 Politechnika Białostocka - Wydział Elektryczny Elektrotechnika, semestr II, studia niestacjonarne I stopnia Rok akademicki 2015/2016

Bardziej szczegółowo

Opis czytnika TRD-FLAT CLASSIC ver. 1.1. Naścienny czytnik transponderów UNIQUE w płaskiej obudowie

Opis czytnika TRD-FLAT CLASSIC ver. 1.1. Naścienny czytnik transponderów UNIQUE w płaskiej obudowie TRD-FLAT CLASSIC Naścienny czytnik transponderów UNIQUE w płaskiej obudowie Podstawowe cechy : zasilanie od 3V do 6V 4 formaty danych wyjściowych POWER LED w kolorze żółtym czerwono-zielony READY LED sterowany

Bardziej szczegółowo

SAIA PROGRAMOWALNY STEROWNIK PLC

SAIA PROGRAMOWALNY STEROWNIK PLC SAIA PROGRAMOWALNY STEROWNIK PLC SAIA BURGESS ELECTRONICS SABUR Sp. z. o. o. ul. Drużynowa 3A 02 950 Warszwa tel. (022) 844 75 20 fax. (022) 844 36 39 SAIA 1 @KEMOR SPIS TREŚCI 1. KABEL K111 KABEL DO PROGRAMOWANIA

Bardziej szczegółowo

Programowanie sterowników PLC wprowadzenie

Programowanie sterowników PLC wprowadzenie Programowanie sterowników PLC wprowadzenie Zakład Teorii Maszyn i Automatyki Katedra Podstaw Techniki Felin p.110 http://ztmia.ar.lublin.pl/sips waldemar.samociuk@up.lublin,pl Sterowniki programowalne

Bardziej szczegółowo

DTR PICIO v1.0. 1. Przeznaczenie. 2. Gabaryty. 3. Układ złącz

DTR PICIO v1.0. 1. Przeznaczenie. 2. Gabaryty. 3. Układ złącz DTR PICIO v1.0 1. Przeznaczenie Moduł PICIO jest uniwersalnym modułem 8 wejść cyfrowych, 8 wyjść cyfrowych i 8 wejść analogowych. Głównym elementem modułu jest procesor PIC18F4680. Izolowane galwanicznie

Bardziej szczegółowo

Konfigurator Modbus. Instrukcja obsługi programu Konfigurator Modbus. wyprodukowano dla

Konfigurator Modbus. Instrukcja obsługi programu Konfigurator Modbus. wyprodukowano dla Wersja 1.1 29.04.2013 wyprodukowano dla 1. Instalacja oprogramowania 1.1. Wymagania systemowe Wspierane systemy operacyjne (zarówno w wersji 32 i 64 bitowej): Windows XP Windows Vista Windows 7 Windows

Bardziej szczegółowo

Start Bity Bit Stop 1 Bit 0 1 2 3 4 5 6 7 Par. 1 2. Rys. 1

Start Bity Bit Stop 1 Bit 0 1 2 3 4 5 6 7 Par. 1 2. Rys. 1 Temat: Obsługa portu komunikacji szeregowej RS232 w systemie STRC51. Ćwiczenie 2. (sd) 1.Wprowadzenie do komunikacji szeregowej RS232 Systemy bazujące na procesorach C51 mogą komunikować się za pomocą

Bardziej szczegółowo

Opracował: Jan Front

Opracował: Jan Front Opracował: Jan Front Sterownik PLC PLC (Programowalny Sterownik Logiczny) (ang. Programmable Logic Controller) mikroprocesorowe urządzenie sterujące układami automatyki. PLC wykonuje w sposób cykliczny

Bardziej szczegółowo

ĆWICZENIE nr 3. Badanie podstawowych parametrów metrologicznych przetworników analogowo-cyfrowych

ĆWICZENIE nr 3. Badanie podstawowych parametrów metrologicznych przetworników analogowo-cyfrowych Politechnika Łódzka Katedra Przyrządów Półprzewodnikowych i Optoelektronicznych WWW.DSOD.PL LABORATORIUM METROLOGII ELEKTRONICZNEJ ĆWICZENIE nr 3 Badanie podstawowych parametrów metrologicznych przetworników

Bardziej szczegółowo

Programowanie mikrokontrolerów AVR z rodziny ATmega.

Programowanie mikrokontrolerów AVR z rodziny ATmega. Programowanie mikrokontrolerów AVR z rodziny ATmega. Materiały pomocnicze Jakub Malewicz jakub.malewicz@pwr.wroc.pl Wszelkie prawa zastrzeżone. Kopiowanie w całości lub w częściach bez zgody i wiedzy autora

Bardziej szczegółowo

STM32Butterfly2. Zestaw uruchomieniowy dla mikrokontrolerów STM32F107

STM32Butterfly2. Zestaw uruchomieniowy dla mikrokontrolerów STM32F107 Zestaw uruchomieniowy dla mikrokontrolerów STM32F107 STM32Butterfly2 Zestaw STM32Butterfly2 jest platformą sprzętową pozwalającą poznać i przetestować możliwości mikrokontrolerów z rodziny STM32 Connectivity

Bardziej szczegółowo

Układy czasowo-licznikowe w systemach mikroprocesorowych

Układy czasowo-licznikowe w systemach mikroprocesorowych Układy czasowo-licznikowe w systemach mikroprocesorowych 1 W każdym systemie mikroprocesorowym znajduje zastosowanie układ czasowy lub układ licznikowy Liczba liczników stosowanych w systemie i ich długość

Bardziej szczegółowo

dokument DOK 02-05-12 wersja 1.0 www.arskam.com

dokument DOK 02-05-12 wersja 1.0 www.arskam.com ARS3-RA v.1.0 mikro kod sterownika 8 Linii I/O ze zdalną transmisją kanałem radiowym lub poprzez port UART. Kod przeznaczony dla sprzętu opartego o projekt referencyjny DOK 01-05-12. Opis programowania

Bardziej szczegółowo

HC541 8-bitowy bufor jednokierunkowy HC245 8-bitowy bufor dwukierunkowy HC244 dwa 4-bitowe bufory jednokierunkowe

HC541 8-bitowy bufor jednokierunkowy HC245 8-bitowy bufor dwukierunkowy HC244 dwa 4-bitowe bufory jednokierunkowe Bufory (BUFFER) Bufory stosuje się po to by: - zwiększyć obciążalność magistrali - chronić układ wysokiej skali integracji - sterować przepływem danych HC541 8-bitowy bufor jednokierunkowy HC245 8-bitowy

Bardziej szczegółowo

Zagadnienia zaliczeniowe z przedmiotu Układy i systemy mikroprocesorowe elektronika i telekomunikacja, stacjonarne zawodowe

Zagadnienia zaliczeniowe z przedmiotu Układy i systemy mikroprocesorowe elektronika i telekomunikacja, stacjonarne zawodowe Zagadnienia zaliczeniowe z przedmiotu Układy i systemy mikroprocesorowe elektronika i telekomunikacja, stacjonarne zawodowe System mikroprocesorowy 1. Przedstaw schemat blokowy systemu mikroprocesorowego.

Bardziej szczegółowo

1. Podstawowe wiadomości...9. 2. Możliwości sprzętowe... 17. 3. Połączenia elektryczne... 25. 4. Elementy funkcjonalne programów...

1. Podstawowe wiadomości...9. 2. Możliwości sprzętowe... 17. 3. Połączenia elektryczne... 25. 4. Elementy funkcjonalne programów... Spis treści 3 1. Podstawowe wiadomości...9 1.1. Sterowniki podstawowe wiadomości...10 1.2. Do czego służy LOGO!?...12 1.3. Czym wyróżnia się LOGO!?...12 1.4. Pierwszy program w 5 minut...13 Oświetlenie

Bardziej szczegółowo

IMPLEMENTATION OF THE SPECTRUM ANALYZER ON MICROCONTROLLER WITH ARM7 CORE IMPLEMENTACJA ANALIZATORA WIDMA NA MIKROKONTROLERZE Z RDZENIEM ARM7

IMPLEMENTATION OF THE SPECTRUM ANALYZER ON MICROCONTROLLER WITH ARM7 CORE IMPLEMENTACJA ANALIZATORA WIDMA NA MIKROKONTROLERZE Z RDZENIEM ARM7 Łukasz Deńca V rok Koło Techniki Cyfrowej dr inż. Wojciech Mysiński opiekun naukowy IMPLEMENTATION OF THE SPECTRUM ANALYZER ON MICROCONTROLLER WITH ARM7 CORE IMPLEMENTACJA ANALIZATORA WIDMA NA MIKROKONTROLERZE

Bardziej szczegółowo

Budowa komputera. Magistrala. Procesor Pamięć Układy I/O

Budowa komputera. Magistrala. Procesor Pamięć Układy I/O Budowa komputera Magistrala Procesor Pamięć Układy I/O 1 Procesor to CPU (Central Processing Unit) centralny układ elektroniczny realizujący przetwarzanie informacji Zmiana stanu tranzystorów wewnątrz

Bardziej szczegółowo

NX700 PLC www.atcontrol.pl

NX700 PLC www.atcontrol.pl NX700 PLC NX700 Podstawowe cechy Rozszerzalność, niezawodność i łatwość w integracji Szybki procesor - zastosowanie technologii ASIC pozwala wykonywać CPU proste instrukcje z prędkością 0,2 us/1 krok Modyfikacja

Bardziej szczegółowo

SigmaDSP - zestaw uruchomieniowy dla procesora ADAU1701. SigmaDSP - zestaw uruchomieniowy dla procesora ADAU1701.

SigmaDSP - zestaw uruchomieniowy dla procesora ADAU1701. SigmaDSP - zestaw uruchomieniowy dla procesora ADAU1701. SigmaDSP - zestaw uruchomieniowy. SigmaDSP jest niedrogim zestawem uruchomieniowym dla procesora DSP ADAU1701 z rodziny SigmaDSP firmy Analog Devices, który wraz z programatorem USBi i darmowym środowiskiem

Bardziej szczegółowo

Urządzenia zewnętrzne

Urządzenia zewnętrzne Urządzenia zewnętrzne SZYNA ADRESOWA SZYNA DANYCH SZYNA STEROWANIA ZEGAR PROCESOR PAMIĘC UKŁADY WE/WY Centralna jednostka przetw arzająca (CPU) DANE PROGRAMY WYNIKI... URZ. ZEWN. MO NITORY, DRUKARKI, CZYTNIKI,...

Bardziej szczegółowo

Adresowanie obiektów. Adresowanie bitów. Adresowanie bajtów i słów. Adresowanie bajtów i słów. Adresowanie timerów i liczników. Adresowanie timerów

Adresowanie obiektów. Adresowanie bitów. Adresowanie bajtów i słów. Adresowanie bajtów i słów. Adresowanie timerów i liczników. Adresowanie timerów Adresowanie obiektów Bit - stan pojedynczego sygnału - wejście lub wyjście dyskretne, bit pamięci Bajt - 8 bitów - wartość od -128 do +127 Słowo - 16 bitów - wartość od -32768 do 32767 -wejście lub wyjście

Bardziej szczegółowo

Architektura Systemów Komputerowych. Bezpośredni dostęp do pamięci Realizacja zależności czasowych

Architektura Systemów Komputerowych. Bezpośredni dostęp do pamięci Realizacja zależności czasowych Architektura Systemów Komputerowych Bezpośredni dostęp do pamięci Realizacja zależności czasowych 1 Bezpośredni dostęp do pamięci Bezpośredni dostęp do pamięci (ang: direct memory access - DMA) to transfer

Bardziej szczegółowo

NX70 PLC www.atcontrol.pl

NX70 PLC www.atcontrol.pl NX70 PLC NX70 Właściwości Rozszerzalność, niezawodność i łatwość w integracji Szybki procesor - zastosowanie technologii ASIC pozwala wykonywać CPU proste instrukcje z prędkością 0,2 us/1 krok Modyfikacja

Bardziej szczegółowo

Kurs Podstawowy S7. Spis treści. Dzień 1

Kurs Podstawowy S7. Spis treści. Dzień 1 Spis treści Dzień 1 I System SIMATIC S7 - wprowadzenie (wersja 1401) I-3 Rodzina sterowników programowalnych SIMATIC S7 firmy SIEMENS I-4 Dostępne moduły i ich funkcje I-5 Jednostki centralne I-6 Podstawowe

Bardziej szczegółowo

POLITECHNIKA WARSZAWSKA Wydział Elektryczny Instytut Elektroenergetyki Zakład Elektrowni i Gospodarki Elektroenergetycznej

POLITECHNIKA WARSZAWSKA Wydział Elektryczny Instytut Elektroenergetyki Zakład Elektrowni i Gospodarki Elektroenergetycznej POLITECHNIKA WARSZAWSKA Wydział Elektryczny Instytut Elektroenergetyki Zakład Elektrowni i Gospodarki Elektroenergetycznej INSTRUKCJA DO ĆWICZENIA Kalibracja kanału pomiarowego 1. Wstęp W systemach sterowania

Bardziej szczegółowo

Szczegółowy Opis Przedmiotu Zamówienia: Zestaw do badania cyfrowych układów logicznych

Szczegółowy Opis Przedmiotu Zamówienia: Zestaw do badania cyfrowych układów logicznych ZP/UR/46/203 Zał. nr a do siwz Szczegółowy Opis Przedmiotu Zamówienia: Zestaw do badania cyfrowych układów logicznych Przedmiot zamówienia obejmuje następujące elementy: L.p. Nazwa Ilość. Zestawienie komputera

Bardziej szczegółowo

RS485 MODBUS Module 6TE

RS485 MODBUS Module 6TE Wersja 1.4 15.10.2012 wyprodukowano dla Dziękujemy za wybór naszego produktu. Niniejsza instrukcja ułatwi Państwu prawidłową obsługę i poprawną eksploatację opisywanego urządzenia. Informacje zawarte w

Bardziej szczegółowo

PowerLab 4/35 z systemem LabChart Pro

PowerLab 4/35 z systemem LabChart Pro PowerLab 4/35 z systemem LabChart Pro ADInstrument. Systemy akwizycji danych i zestawy edukacyjne. Opis urządzenia PL3504/P PowerLab 4/35 to wysokowydajny system akwizycji danych odpowiedni do szerokiej

Bardziej szczegółowo

Rejestratory Sił, Naprężeń.

Rejestratory Sił, Naprężeń. JAS Projektowanie Systemów Komputerowych Rejestratory Sił, Naprężeń. 2012-01-04 2 Zawartość Typy rejestratorów.... 4 Tryby pracy.... 4 Obsługa programu.... 5 Menu główne programu.... 7 Pliki.... 7 Typ

Bardziej szczegółowo

TECHNIKA MIKROPROCESOROWA

TECHNIKA MIKROPROCESOROWA LABORATORIUM TECHNIKA MIKROPROCESOROWA Port transmisji szeregowej USART ATmega Opracował: Tomasz Miłosławski 1. Cel ćwiczenia Celem ćwiczenia jest zapoznanie się ze sposobami komunikacji mikrokontrolera

Bardziej szczegółowo

3GHz (opcja 6GHz) Cyfrowy Analizator Widma GA4063

3GHz (opcja 6GHz) Cyfrowy Analizator Widma GA4063 Cyfrowy Analizator Widma GA4063 3GHz (opcja 6GHz) Wysoka kla sa pomiarowa Duże możliwości pomiarowo -funkcjonalne Wysoka s tabi lność Łatwy w użyc iu GUI Małe wymiary, lekki, przenośny Opis produktu GA4063

Bardziej szczegółowo

Ogólne przeznaczenie i możliwości interfejsu sieciowego przepływomierza UniEMP-05 z protokołem MODBUS. (05.2011)

Ogólne przeznaczenie i możliwości interfejsu sieciowego przepływomierza UniEMP-05 z protokołem MODBUS. (05.2011) Ogólne przeznaczenie i możliwości interfejsu sieciowego przepływomierza UniEMP-05 z protokołem MODBUS. (05.2011) Interfejs sieciowy umożliwia przyłączenie jednego lub więcej przepływomierzy do wspólnej

Bardziej szczegółowo

Cyfrowy rejestrator parametrów lotu dla bezzałogowych statków powietrznych. Autor: Tomasz Gluziński

Cyfrowy rejestrator parametrów lotu dla bezzałogowych statków powietrznych. Autor: Tomasz Gluziński Cyfrowy rejestrator parametrów lotu dla bezzałogowych statków powietrznych Autor: Tomasz Gluziński Bezzałogowe Statki Powietrzne W dzisiejszych czasach jedną z najbardziej dynamicznie rozwijających się

Bardziej szczegółowo

RS485 MODBUS Module 6TE

RS485 MODBUS Module 6TE Wersja 1.4 15.10.2012 Dystrybutor Dziękujemy za wybór naszego produktu. Niniejsza instrukcja ułatwi Państwu prawidłową obsługę i poprawną eksploatację opisywanego urządzenia. Informacje zawarte w niniejszej

Bardziej szczegółowo

Architektura Systemów Komputerowych. Transmisja szeregowa danych Standardy magistral szeregowych

Architektura Systemów Komputerowych. Transmisja szeregowa danych Standardy magistral szeregowych Architektura Systemów Komputerowych Transmisja szeregowa danych Standardy magistral szeregowych 1 Transmisja szeregowa Idea transmisji szeregowej synchronicznej DOUT Rejestr przesuwny DIN CLK DIN Rejestr

Bardziej szczegółowo

Politechnika Warszawska

Politechnika Warszawska Politechnika Warszawska Wydział Elektryczny Laboratorium Podstaw Techniki Mikroprocesorowej Skrypt do ćwiczenia M.43 Obliczanie wartości średniej oraz amplitudy z próbek sygnału język C .Część teoretyczna

Bardziej szczegółowo

Interfejs analogowy LDN-...-AN

Interfejs analogowy LDN-...-AN Batorego 18 sem@sem.pl 22 825 88 52 02-591 Warszawa www.sem.pl 22 825 84 51 Interfejs analogowy do wyświetlaczy cyfrowych LDN-...-AN zakresy pomiarowe: 0-10V; 0-20mA (4-20mA) Załącznik do instrukcji obsługi

Bardziej szczegółowo

Systemy mikroprocesorowe. Literatura podręcznikowa. Przedmioty związane. Przykłady systemów wbudowanych. Pojęcie systemu wbudowanego embedded system

Systemy mikroprocesorowe. Literatura podręcznikowa. Przedmioty związane. Przykłady systemów wbudowanych. Pojęcie systemu wbudowanego embedded system Systemy mikroprocesorowe dr inŝ. Stefan Brock pok. 627, hala 22B/3 (PP) Stefan.Brock@put.poznan.pl Stefan.Brock@gmail.com rozliczenie dwa kolokwia w trakcie wykładu dr inŝ. Stefan Brock 2008/2009 1 Literatura

Bardziej szczegółowo

Procesory. Schemat budowy procesora

Procesory. Schemat budowy procesora Procesory Procesor jednostka centralna (CPU Central Processing Unit) to sekwencyjne urządzenie cyfrowe którego zadaniem jest wykonywanie rozkazów i sterowanie pracą wszystkich pozostałych bloków systemu

Bardziej szczegółowo

Kurs Elektroniki. Część 5 - Mikrokontrolery. www.knr.meil.pw.edu.pl 1/26

Kurs Elektroniki. Część 5 - Mikrokontrolery. www.knr.meil.pw.edu.pl 1/26 Kurs Elektroniki Część 5 - Mikrokontrolery. www.knr.meil.pw.edu.pl 1/26 Mikrokontroler - autonomiczny i użyteczny system mikroprocesorowy, który do swego działania wymaga minimalnej liczby elementów dodatkowych.

Bardziej szczegółowo

Enkoder magnetyczny AS5040.

Enkoder magnetyczny AS5040. Enkoder magnetyczny AS5040. Edgar Ostrowski Jan Kędzierski www.konar.ict.pwr.wroc.pl Wrocław, 28.01.2007 1 Spis treści 1 Wstęp... 3 2 Opis wyjść... 4 3 Tryby pracy... 4 3.1 Tryb wyjść kwadraturowych...

Bardziej szczegółowo

ĆWICZENIE 5. TEMAT: OBSŁUGA PORTU SZEREGOWEGO W PAKIECIE KEILuVISON WYSYŁANIE PORTEM SZEREGOWYM

ĆWICZENIE 5. TEMAT: OBSŁUGA PORTU SZEREGOWEGO W PAKIECIE KEILuVISON WYSYŁANIE PORTEM SZEREGOWYM ĆWICZENIE 5 TEMAT: OBSŁUGA PORTU SZEREGOWEGO W PAKIECIE KEILuVISON WYSYŁANIE PORTEM SZEREGOWYM Wiadomości wstępne: Port szeregowy może pracować w czterech trybach. Tryby różnią się między sobą liczbą bitów

Bardziej szczegółowo

Budowa komputera. Magistrala. Procesor Pamięć Układy I/O

Budowa komputera. Magistrala. Procesor Pamięć Układy I/O Budowa komputera Magistrala Procesor Pamięć Układy I/O 1 Procesor to CPU (Central Processing Unit) centralny układ elektroniczny realizujący przetwarzanie informacji Zmiana stanu tranzystorów wewnątrz

Bardziej szczegółowo

Wybrane bloki i magistrale komputerów osobistych (PC) Opracował: Grzegorz Cygan 2010 r. CEZ Stalowa Wola

Wybrane bloki i magistrale komputerów osobistych (PC) Opracował: Grzegorz Cygan 2010 r. CEZ Stalowa Wola Wybrane bloki i magistrale komputerów osobistych (PC) Opracował: Grzegorz Cygan 2010 r. CEZ Stalowa Wola Ogólny schemat komputera Jak widać wszystkie bloki (CPU, RAM oraz I/O) dołączone są do wspólnych

Bardziej szczegółowo

RS485 MODBUS Module 8AI

RS485 MODBUS Module 8AI Wersja 1.4 15.04.2013 wyprodukowano dla Dziękujemy za wybór naszego produktu. Niniejsza instrukcja ułatwi Państwu prawidłową obsługę i poprawną eksploatację opisywanego urządzenia. Informacje zawarte w

Bardziej szczegółowo

Systemy wbudowane. Paweł Pełczyński ppelczynski@swspiz.pl

Systemy wbudowane. Paweł Pełczyński ppelczynski@swspiz.pl Systemy wbudowane Paweł Pełczyński ppelczynski@swspiz.pl 1 Program przedmiotu Wprowadzenie definicja, zastosowania, projektowanie systemów wbudowanych Mikrokontrolery AVR Programowanie mikrokontrolerów

Bardziej szczegółowo

Podstawy elektroniki i metrologii

Podstawy elektroniki i metrologii Politechnika Gdańska WYDZIAŁ ELEKTRONIKI TELEKOMUNIKACJI I INFORMATYKI Katedra Metrologii i Optoelektroniki Podstawy elektroniki i metrologii Studia I stopnia kier. Informatyka semestr 2 Ilustracje do

Bardziej szczegółowo

Porty wejścia/wyjścia w układach mikroprocesorowych i w mikrokontrolerach

Porty wejścia/wyjścia w układach mikroprocesorowych i w mikrokontrolerach 0-- Porty wejścia/wyjścia w układach mikroprocesorowych i w mikrokontrolerach Semestr zimowy 0/0, WIEiK-PK Porty wejścia-wyjścia Input/Output ports Podstawowy układ peryferyjny port wejścia-wyjścia do

Bardziej szczegółowo

LSPY-21 LISTWOWY MODUŁ WYJŚĆ ANALOGOWYCH DOKUMENTACJA TECHNICZNO-RUCHOWA. Wrocław, październik 2003 r.

LSPY-21 LISTWOWY MODUŁ WYJŚĆ ANALOGOWYCH DOKUMENTACJA TECHNICZNO-RUCHOWA. Wrocław, październik 2003 r. LISTWOWY MODUŁ WYJŚĆ ANALOGOWYCH DOKUMENTACJA TECHNICZNO-RUCHOWA Wrocław, październik 2003 r. 50-305 WROCŁAW TEL./FAX (+71) 373-52-27 ul. S.JARACZA 57-57A TEL. 0-602-62-32-71 str.2 SPIS TREŚCI 1.OPIS TECHNICZNY...3

Bardziej szczegółowo

Zestaw 1 1. Rodzaje ruchu punktu materialnego i metody ich opisu. 2. Mikrokontrolery architektura, zastosowania. 3. Silniki krokowe budowa, zasada działania, sterowanie pracą. Zestaw 2 1. Na czym polega

Bardziej szczegółowo

FP-401 LICZNIK PRZEPŁYWU Z REJESTRACJĄ WYNIKÓW

FP-401 LICZNIK PRZEPŁYWU Z REJESTRACJĄ WYNIKÓW FP-401 LICZNIK PRZEPŁYWU Z REJESTRACJĄ WYNIKÓW 2 wejścia analogowe 2 wejścia typu PULS 2 kanały obliczeniowe 4 półprzewodnikowe wyjścia przekaźnikowe funkcje alarmowo-sterujące Opcjonalne wyjście analogowe

Bardziej szczegółowo

Terminal TR01. Terminal jest przeznaczony do montażu naściennego w czystych i suchych pomieszczeniach.

Terminal TR01. Terminal jest przeznaczony do montażu naściennego w czystych i suchych pomieszczeniach. Terminal TR01 Terminal jest m, umożliwiającym odczyt i zmianę nastaw parametrów, stanów wejść i wyjść współpracujących z nim urządzeń automatycznej regulacji wyposażonych w port komunikacyjny lub i obsługujących

Bardziej szczegółowo

Architektura komputerów

Architektura komputerów Architektura komputerów Tydzień 9 Pamięć operacyjna Właściwości pamięci Położenie Pojemność Jednostka transferu Sposób dostępu Wydajność Rodzaj fizyczny Własności fizyczne Organizacja Położenie pamięci

Bardziej szczegółowo

Podstawy techniki cyfrowej i mikroprocesorowej II. Urządzenia wejścia-wyjścia

Podstawy techniki cyfrowej i mikroprocesorowej II. Urządzenia wejścia-wyjścia Podstawy techniki cyfrowej i mikroprocesorowej II Urządzenia wejścia-wyjścia Tomasz Piasecki magistrala procesor pamięć wejście wyjście W systemie mikroprocesorowym CPU może współpracować za pośrednictwem

Bardziej szczegółowo

Architektura przetworników A/C. Adam Drózd

Architektura przetworników A/C. Adam Drózd Architektura przetworników A/C Adam Drózd Rozdział 1 Architektura przetworników A/C Rozwój techniki cyfrowej spowodował opacownie wielu zasad działania i praktycznych rozwiązań przetworników analogowo

Bardziej szczegółowo

RS485 MODBUS Module 8I8O

RS485 MODBUS Module 8I8O Wersja 2.2 12.01.2014 wyprodukowano dla Dziękujemy za wybór naszego produktu. Niniejsza instrukcja ułatwi Państwu prawidłową obsługę i poprawną eksploatację opisywanego urządzenia. Informacje zawarte w

Bardziej szczegółowo

Systemy wbudowane. Uniwersytet Łódzki Wydział Fizyki i Informatyki Stosowanej. Witold Kozłowski

Systemy wbudowane. Uniwersytet Łódzki Wydział Fizyki i Informatyki Stosowanej. Witold Kozłowski Uniwersytet Łódzki Wydział Fizyki i Informatyki Stosowanej Systemy wbudowane Witold Kozłowski Zakład Fizyki i Technologii Struktur Nanometrowych 90-236 Łódź, Pomorska 149/153 https://std2.phys.uni.lodz.pl/mikroprocesory/

Bardziej szczegółowo

WYŚWIETLACZE, ALARMY, TIMERY, LICZNIKI

WYŚWIETLACZE, ALARMY, TIMERY, LICZNIKI WYŚWIETLACZE, ALARMY, TIMERY, LICZNIKI 1. Mikroprocesorowe wyświetlacze / alarmy W pełni konfigurowalne Wejścia dla temperatury, ciśnienia, siły, prądu zmiennego, napięcia, częstotliwości W pełni konfigurowalne

Bardziej szczegółowo

MCAR Robot mobilny z procesorem AVR Atmega32

MCAR Robot mobilny z procesorem AVR Atmega32 MCAR Robot mobilny z procesorem AVR Atmega32 Opis techniczny Jakub Kuryło kl. III Ti Zespół Szkół Zawodowych nr. 1 Ul. Tysiąclecia 3, 08-530 Dęblin e-mail: jkurylo92@gmail.com 1 Spis treści 1. Wstęp..

Bardziej szczegółowo

Wykład 2. Mikrokontrolery z rdzeniami ARM

Wykład 2. Mikrokontrolery z rdzeniami ARM Wykład 2 Źródło problemu 2 Wstęp Architektura ARM (Advanced RISC Machine, pierwotnie Acorn RISC Machine) jest 32-bitową architekturą (modelem programowym) procesorów typu RISC. Różne wersje procesorów

Bardziej szczegółowo

PROGRAM TESTOWY LCWIN.EXE OPIS DZIAŁANIA I INSTRUKCJA UŻYTKOWNIKA

PROGRAM TESTOWY LCWIN.EXE OPIS DZIAŁANIA I INSTRUKCJA UŻYTKOWNIKA EGMONT INSTRUMENTS PROGRAM TESTOWY LCWIN.EXE OPIS DZIAŁANIA I INSTRUKCJA UŻYTKOWNIKA EGMONT INSTRUMENTS tel. (0-22) 823-30-17, 668-69-75 02-304 Warszawa, Aleje Jerozolimskie 141/90 fax (0-22) 659-26-11

Bardziej szczegółowo

RS485 MODBUS Module 16RO

RS485 MODBUS Module 16RO Wersja 1.0 2.12.2014 wyprodukowano dla Dziękujemy za wybór naszego produktu. Niniejsza instrukcja ułatwi Państwu prawidłową obsługę i poprawną eksploatację opisywanego urządzenia. Informacje zawarte w

Bardziej szczegółowo

Biomonitoring system kontroli jakości wody

Biomonitoring system kontroli jakości wody FIRMA INNOWACYJNO -WDROŻENIOWA ul. Źródlana 8, Koszyce Małe 33-111 Koszyce Wielkie tel.: 0146210029, 0146360117, 608465631 faks: 0146210029, 0146360117 mail: biuro@elbit.edu.pl www.elbit.edu.pl Biomonitoring

Bardziej szczegółowo

MS360-LPM. wersja 1.09 (wersja robocza) Dokumentacja użytkownika

MS360-LPM. wersja 1.09 (wersja robocza) Dokumentacja użytkownika MS360-LPM wersja 1.09 (wersja robocza) Dokumentacja użytkownika Białystok 2011 Podstawy Komunikacja z multiczujnikiem MS360-LPM dostępna jest za pomocą transmisji szeregowej EIA-485 (wcześniej RS-485)

Bardziej szczegółowo

Trójfazowy licznik energii elektrycznej

Trójfazowy licznik energii elektrycznej Dane techniczne www.sbc-support.com Trójfazowy licznik energii elektrycznej z interfejsem S-Bus, pomiar półpośredni Liczniki energii elektrycznej ze zintegrowanym interfejsem S-Bus umożliwiają odczyt wszystkich

Bardziej szczegółowo

2. Format danych i zaimplementowane funkcje MODBUS

2. Format danych i zaimplementowane funkcje MODBUS SIC184 Protokół MODBUS-RTU (v1.10) Spis treści 1. Informacje wstępne... 1 2. Format danych i zaimplementowane funkcje MODBUS... 1 3. Opis rejestrów i funkcji... 2 3.1 Odczyt stanu wejść/wyjść... 2 3.2

Bardziej szczegółowo

Opis Ogólny ----------------------------------------------------------------------------------------------1. OPIS INTERFEJSU POMIAROWEGO AL154SAV5.

Opis Ogólny ----------------------------------------------------------------------------------------------1. OPIS INTERFEJSU POMIAROWEGO AL154SAV5. ----------------------------------------------------------------------------------------------1. OPIS INTERFEJSU POMIAROWEGO AL154SAV5.K Przyrząd umożliwia pomiar, przesłanie do komputer oraz pamiętanie

Bardziej szczegółowo

Programowanie mikrokontrolerów AVR

Programowanie mikrokontrolerów AVR Programowanie mikrokontrolerów AVR Czym jest mikrokontroler? Mikrokontroler jest małym komputerem podłączanym do układów elektronicznych. Pamięć RAM/ROM CPU wykonuje program Układy I/O Komunikacje ze światem

Bardziej szczegółowo

Inż. Kamil Kujawski Inż. Krzysztof Krefta. Wykład w ramach zajęć Akademia ETI

Inż. Kamil Kujawski Inż. Krzysztof Krefta. Wykład w ramach zajęć Akademia ETI Inż. Kamil Kujawski Inż. Krzysztof Krefta Wykład w ramach zajęć Akademia ETI Metody programowania Assembler Język C BASCOM Assembler kod maszynowy Zalety: Najbardziej efektywny Intencje programisty są

Bardziej szczegółowo

Politechnika Białostocka Wydział Elektryczny

Politechnika Białostocka Wydział Elektryczny Politechnika Białostocka Wydział Elektryczny Katedra Automatyki i Elektroniki Instrukcja do ćwiczeń laboratoryjnych z przedmiotu: SYSTEMY CYFROWE 1 SZEREGOWE PRZETWORNIKI A/C - C/A Ćwiczenie 5 Opracował:

Bardziej szczegółowo

2. Zawartość dokumentacji. 1. Strona tytułowa. 2. Zawartość dokumentacji. 3. Spis rysunków. 4. Opis instalacji kontroli dostępu. 3.

2. Zawartość dokumentacji. 1. Strona tytułowa. 2. Zawartość dokumentacji. 3. Spis rysunków. 4. Opis instalacji kontroli dostępu. 3. 2. Zawartość dokumentacji 1. Strona tytułowa. 2. Zawartość dokumentacji. 3. Spis rysunków. 4. Opis instalacji kontroli dostępu. 3. Spis rysunków Rys nr 1 schemat instalacji KD Piwnica Rys nr 2 schemat

Bardziej szczegółowo

Lista tematów na kolokwium z wykładu z Techniki Cyfrowej w roku ak. 2013/2014

Lista tematów na kolokwium z wykładu z Techniki Cyfrowej w roku ak. 2013/2014 Lista tematów na kolokwium z wykładu z Techniki Cyfrowej w roku ak. 2013/2014 Temat 1. Algebra Boole a i bramki 1). Podać przykład dowolnego prawa lub tożsamości, które jest spełnione w algebrze Boole

Bardziej szczegółowo

Mikrosystemy Pomiarowe i Procesory Sygnałowe

Mikrosystemy Pomiarowe i Procesory Sygnałowe WYKAZ ĆWICZEŃ LABORATORYJNYCH Mikrosystemy Pomiarowe i Procesory Sygnałowe ET-DI 1. Omówienie zasad pracy w laboratorium. Wprowadzenie do obsługi minimodułów bazujących na mikrokontrolerach typu PB-552,

Bardziej szczegółowo

Sterowniki Programowalne (SP)

Sterowniki Programowalne (SP) Sterowniki Programowalne (SP) Wybrane aspekty procesu tworzenia oprogramowania dla sterownika PLC Podstawy języka funkcjonalnych schematów blokowych (FBD) Politechnika Gdańska Wydział Elektrotechniki i

Bardziej szczegółowo