Politechnika Białostocka Wydział Elektryczny Katedra Automatyki i Elektroniki. Instrukcje do zajęć laboratoryjnych. Laboratorium z przedmiotu:

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

Download "Politechnika Białostocka Wydział Elektryczny Katedra Automatyki i Elektroniki. Instrukcje do zajęć laboratoryjnych. Laboratorium z przedmiotu:"

Transkrypt

1 Politechnika Białostocka Wydział Elektryczny Katedra Automatyki i Elektroniki Instrukcje do zajęć laboratoryjnych Laboratorium z przedmiotu: Systemy wbudowane Kod: ES2C Elektrotechnika studia stacjonarne II stopnia, sem. II specjalność Automatyka Przemysłowa i Technika Mikroprocesorowa Opracował dr inż. Rafał Kociszewski Białystok 2014

2 Program szczegółowy laboratorium 30 godz. Zajęcia wprowadzające (1 godz.) 1. Podstawy programowania mikrokontrolera LPC2148 (2 godz.) 2. Wykorzystanie interfejsu SPI do komunikacji z graficznym wyświetlaczem LCD. (4 godz.) 3. Komunikacja z wykorzystaniem interfejsu USB. (2 godz.) 4. Bezprzewodowa transmisja danych z wykorzystaniem modułu Bluetooth. (4 godz.) 5. Implementacja systemu rozpoznawania kolorów. (6 godz.) 6. Komunikacja z odbiornikiem GPS. (4 godz.) 7. Implementacja systemu operacyjnego czasu rzeczywistego na mikrokontrolerze LPC2148. (2 godz.) 8. Podstawy programowania mikrokontrolerów PSoC. (6 godz.) Zaliczenie zajęć. (1 godz.) Literatura: 1. Ashby R.: Designer's Guide to the Cypress PSoC, Newnes, Augustyn J.: Projektowanie systemów wbudowanych na przykładzie SAM7S z rdzeniem ARM7TDMI. Wyd. IGSMiE PAN, Kraków Barry R.: Using the FreeRTOS Real Time Kernel - a Practical Guide - Standard Edition 4. Borkowski P.: AVR & ARM7. Programowanie mikrokontrolerów dla każdego. Wyd. Helion Bryndza L.: LPC2000 Mikrokontrolery z rdzeniem ARM7. Wyd. BTC Majewski J.: Programowanie mikrokontrolerów LPC2000 w języku C pierwsze kroki. Wyd. BTC Martin T.: The insider s guide to the Philips ARM7-based microcontrollers. Hitex Massa A. J.: Embedded software development with ecos. Prentice Hall Melot N.: Study of an operating system: FreeRTOS. 10. Mielczarek W.: USB. Uniwersalny interfejs szeregowy. Helion Morawski Ł.: Dydaktyczny system uruchomieniowy do testowania aplikacji na mikrokontroler PSoC. Praca dyplomowa, Politechnika Białostocka, Białystok Narkiewicz J.: GPS i inne satelitarne systemy nawigacyjne. WKiŁ Stawski E.: Mikrokontrolery LPC2000 w przykładach. Wyd. BTC BTM220_DataSheet.pdf 15. LPC 214x User manual. Philips Semiconductors LPC214x USB simplified API approach to HID class. NXP B.V (AN10736). 17. PCD x84 pixels matrix LCD controller/driver. Philips Semiconductors

3 Politechnika Białostocka Wydział Elektryczny Katedra Automatyki i Elektroniki Instrukcja do zajęć laboratoryjnych Numer ćwiczenia: 1 Temat: Podstawy programowania mikrokontrolera LPC2148 Laboratorium z przedmiotu: Systemy wbudowane Kod: ES2C Elektrotechnika studia stacjonarne II stopnia, sem. II specjalność Automatyka Przemysłowa i Technika Mikroprocesorowa Opracował dr inż. Rafał Kociszewski Białystok

4 1. Cel ćwiczenia Zapoznanie się z zestawem uruchomieniowym z mikrokontrolerem LPC2148. Poznanie zasad tworzenia projektu w środowisku programowym Keil uvision. Wykonanie prostych operacji na uniwersalnych portach I/O w zakresie sterowania diodami LED oraz obsługi prostej klawiatury. 2. Wprowadzenie Zestaw uruchomieniowy stosowany w laboratorium składa się z uniwersalnej płyty bazowej (ZL9ARM) rysunek 1 oraz modułu diparm (ZL10ARM) rysunek 2 zawierającego 32-bitowy mikrokontroler LPC2148 z rdzeniem ARM7TDMI-S. Moduł ten umieszczony w gniazdach płyty stanowi platformę sprzętową służącą do testowania aplikacji przygotowywanych na mikrokontroler LPC2148. Rys. 1. Wygląd płyty bazowej ZL9ARM oraz jej schemat blokowy (źródło: dokumentacja ZL9ARM; Rys. 2. Wygląd modułu diparm z mikrokontrolerem LPC2148 (źródło: dokumentacja ZL10ARM, 4

5 Podstawowe właściwości ZL9ARM: gniazdo do modułu diparm z mikrokontrolerem LPC213x/214x, gniazdo USB, złącze karty MMC, gniazdo do dołączenia konwertera UART USB, gniazdo alfanumerycznego wyświetlacza LCD o organizacji 2x16 znaków (tryb 4- bitowy), dwa interfejsy RS232, złącze programowania/debuggowania JTAG złącza z wyprowadzonymi liniami portów mikrokontrolera, 8 diod LED, 4 przyciski, przyciski zerowania i przerwania INT1, potencjometryczny zadajnik napięcia wejściowego dla przetwornika A/C, termistor NTC dołączony do wejścia przetwornika A/C, wzmacniacz audio o mocy 600mW (z regulacją głośności), przetwornik piezoakustyczny, zasilanie: USB lub zasilacz sieciowy VDC/VAC, stabilizatory napięcia: 3,3 i 5 V, Cechy mikrokontrolera LPC2148: 32-bitowy rdzeń ARM7TDMI-S, taktowanie sygnałem zegarowym o częstotliwości do 60MHz (dzięki wbudowanej pętli PLL), 512kB programowanej w systemie pamięci programu Flash, 32kB pamięci RAM, USB 2.0, 2 interfejsy UART, 2 interfejsy I2C, 2 interfejsy SPI, dwa 8-kanałowe 10-bitowe przetworniki AC, 10-bitowy przetwornik CA, do 45 linii I/O kompatybilnych z logiką 3,3 V oraz 5 V, możliwość programowania w systemie poprzez interfejs RS232, wbudowany kontroler przerwań, sprzętowy zegar RTC, watchdog, timery o zaawansowanych możliwościach (w tym generacja PWM), system zarządzania pobieraną energią Obsługa linii (portów) I/0 mikrokontrolera LPC2148 Mikrokontroler LPC2148 ma dwa 32-bitowe porty I/O (wejścia-wyjścia) P0 i P1, przy czym port P1 ma wyprowadzone tylko 16 najbardziej znaczących bitów (P P1.32). Wszystkie porty są dwukierunkowe i mają maksymalną wydajność prądową o wartości 45mA. Każdy z pinów ma przypisaną od jednej do czterech funkcji alternatywnych. Przykładowo linia P0.0 jest oznaczona: P0.0/TXD0/PWM1. Można ją zatem skonfigurować jako: uniwersalną linię 5

6 I/O, wyjście TxD interfejsu UART0 albo wyjście sygnału PWM. Za wybór jednej z tych funkcji odpowiadają dwa bity w rejestrze PINSEL0, 1 i 2. Na poniższym rysunku jest przedstawiony sposób wyboru funkcji linii P0.0. GPIO P0.0 TxD0 PWM1 zabronione P0.0/TxD0/PWM1 PINSEL0 1 0 RESET:0x PINSEL0 Oznaczenie Stany Opis 1:0 P GPIO Port TxD0 (UART0) 10 PWM1 11 zabronione Rys. 3. Rejestry PINSEL0, PINSEL1, PINSEL2 umożliwiają wybór funkcji wyprowadzeń LPC2148. każde dwa bity rejestru zawierają kombinację bitów określających przeznaczenie wyprowadzenia Linie portów P0.2, P0.3, P0.11 i P0.14 dla zapewnienia kompatybilności z interfejsem I 2 C mają wyjścia typu otwarty dren i nie są w pełni dwukierunkowe, dlatego w niektórych przypadkach wymagają podłączenia zewnętrznych rezystorów (tzw. podciągających) o wartości kilkunastu kω do plusa napięcia zasilającego. Jeżeli linie portu są skonfigurowane jako wejściowe, port P0 nie ma rezystorów podciągających, natomiast port P1 jest wyposażony w wewnętrzne rezystory o wartości kω. Podczas zerowania mikrokontrolera także zawartość rejestrów PINSEL jest zerowana. Oznacza to, że po włączeniu zasilania i po każdym zerowaniu wszystkie linie I/O działają jako port ogólnego przeznaczenia. W trybie GPIO konfiguracja każdej linii I/O jest zależna od stanu bitów w poniższych rejestrach: Rejestr IO0DIR (port P0) i IO1DIR (port P1) umożliwiają wybór kierunku pracy wybranej linii I/O. Ustawienie bitu w tym rejestrze powoduje, że odpowiadająca mu linia I/O pełni rolę wyjścia, natomiast jego wyzerowanie powoduje, że wybrana linia pełni rolę wejścia. Rejestr IO0PIN oraz IO1PIN umożliwia odczytanie oraz ustawienie stanu wybranej linii I/O. W przypadku, gdy wybrany pin skonfigurowany jest jako wejściowy odczyt tego rejestru jest bezpośrednim odzwierciedleniem stanu sygnałów elektrycznych panujących na tym pinie, natomiast, gdy wybrana linia skonfigurowana jest jako wyjściowa, odczytanie tego rejestru powoduje jednocześnie odczytanie stanu wewnętrznych przerzutników portu i odzwierciedla stan w jakim znajduje się wybrana linia wyjściowa. Zapis do tego rejestru w przypadku gdy wybrana linia skonfigurowana jest jako 6

7 wyjściowa powoduje wystawienie stanów logicznych odzwierciedlających stan rejestru na odpowiednich pinach mikrokontrolera. Rejestr IO0SET oraz IO1SET umożliwia ustawienie wybranych linii I/O w stan wysoki ( 1 ) bez zmiany stanu pozostałych linii. Rejestr IO0CLR oraz IO1CLR umożliwia ustawienie wybranych linii I/O w stan niski ( 0 ) bez zmiany stanu pozostałych linii. Wpisanie 1 na wybranym bicie powoduje wyzerowanie odpowiadającego bitu w porcie I/O. Sterowanie portami I/O mikrokontrolera jest realizowane następująco: aby odczytać zawartość linii wystarczy skonfigurować wybraną linię jako wejściową za pomocą rejestru kierunku IOxDIR, a następnie odczytać stan wybranej linii z rejestru IOxPIN. Natomiast jeżeli chcemy ustawić wybrane linie w odpowiedni stan wystarczy za pomocą rejestru IOxDIR ustawić wybrane linie jako wyjściowe i za pośrednictwem par rejestrów IOxSET, IOxCLR lub IOxPIN ustawić odpowiednie bity. Zastosowanie rejestrów IOxSET i IOxCLR jest bardzo wygodne ponieważ możemy ustawić/skasować wybrane bity portu bez wcześniejszego ich odczytywania. W przypadku, gdy chcemy zmienić całą zawartość danego portu, wygodniej będzie skorzystać z rejestru IOxPIN, który od razu ustawi cały port zgodnie z zawartością rejestru. IO0PIN P0.0 IO0DIR IO0CLR IO0SET PORT P0 Rys. 4. Każda linia I/O jest sterowana za pomocą bitów ulokowanych w czterech rejestrach 7

8 Funkcje pełnione przez poszczególne linie portu P0 są zebrane w poniższej tabeli. Konfiguracja portu P1 jest łatwiejsza, ponieważ jedyną funkcją alternatywną, jaką pełni ten port jest interfejs debugowania (DEBUG) i śledzenia (TRACE), które nie będą wykorzystywane podczas zajęć w laboratorium. 8

9 2.2. Wyświetlacz alfanumeryczny LCD Wykorzystywany w zestawie ZL9ARM wyświetlacz LCD (rysunek 5) jest wyposażony w sterownik HD44780, który komunikuje się z otoczeniem za pomocą równoległej magistrali danych (8- lub 4-bitowej), wyposażonej w trzy sygnały sterujące RS (Register Select), R/W (Read/Write) oraz E (Enable) Rys. 5. Wykorzystywany alfanumeryczny wyświetlacz LCD 2x16 znaków. Układ HD44780 jest od wielu lat jednym z najpopularniejszych sterowników wyświetlaczy alfanumerycznych. Interfejs i funkcjonalność tego układu stanowią nieformalny standard w dziedzinie alfanumerycznych modułów wyświetlających. Sterownik HD44780 ma następujące właściwości: - obsługa matryc znakowych LCD o rozmiarach 5x8 i 5x10 punktów - 4-bitowy lub 8-bitowy interfejs równoległy typu pamięć RAM przechowująca do 80 znaków - pamięć ROM przechowująca 240 szablonów znakowych - pamięć RAM przechowująca do 8 szablonów znakowych zdefiniowanych przez użytkownika - funkcja: kursora, czyszczenia ekranu i przesuwu okna Sterownik wyposażono w cztery rejestry umożliwiające wymianę danych z otoczeniem: - DataWR rejestr przeznaczony do zapisu danych do sterownika - DataRD rejestr przeznaczony do odczytu danych ze sterownika - ControlRD rejestr sterujący i statusu wyświetlacza (do odczytu, status-control) - ControlWR rejestr sterujący (do zapisu, control) O tym, do którego z wymienionych rejestrów nastąpi zapis lub z którego nastąpi odczyt decyduje kombinacja stanów na liniach RS i R/W a zapis i odczyt danych jest synchronizowany za pomocą linii E. Sterowniki HD44780 są wyposażone w dwa rodzaje pamięci: DD (Display Data) i CG (Character Generator), do których użytkownik ma dostęp poprzez rejestry DataRD, DataWR, ControlRD i ControlWR. Pamięć CG składa się z pamięci CG-ROM zawierającej przygotowane przez producenta kody znaków oraz CG-RAM przeznaczonej na kody znaków definiowane przez użytkownika. Sposób adresowania znaków wyświetlanych przez kontroler HD44780 jest przedstawiony na rysunku 2. W pamięci CG-RAM pomiędzy adresami 0x00 i 0x1F znajduje się miejsce na umieszczenie 8 znaków zdefiniowanych przez użytkownika. Kształty tych znaków są definiowane jako matryce o wymiarach 5x8 punktów. Jeżeli wpisane 9

10 kolejno powyżej kody zostaną umieszczone w pamięci CG-RAM od adresu 0x00, to zdefiniowany znak będzie dostępny w tablicy kodów wyświetlacza LCD pod adresem 0x00. Rys. 6. Szablony znakowe zawarte w pamięci CGROM 10

11 Poniżej podano zestawienie możliwych operacji sterownika HD Środowisko uruchomieniowe Keil uvision3 Do przygotowania programów na mikrokontroler LPC2148 jest wykorzystywane środowisko IDE oraz kompilator języka C, dystrybuowane przez firmę Keil. Etapy tworzenia nowego projektu w środowisku Keil uvision3 zostaną przedstawione w poniższych podpunktach. 1. Po kliknięciu w ikonę programu nowy projekt tworzymy po wybraniu w menu opcji Project -> New uvision Project 11

12 2. Po nadaniu nazwy tworzonemu projektowi należy wskazać właściwy mikrokontroler LPC W kolejnym kroku należy potwierdzić dołączenie pliku startowego i przejść do tworzenia pliku wybierając z menu File -> New 12

13 4. Po napisaniu programu (w języku C) należy włączyć opcję do utworzenia pliku.hex (zakładka Output) i poprawnej kompilacji (zakładka Linker) 13

14 2.3. Program Flash Magic Mikrokontrolery z pamięcią Flash są często wyposażone w mechanizmy umożliwiające programowanie jej w systemie, bez konieczności demontowania układu z urządzenia. Taki rodzaj programowania nosi nazwę ISP (In System Programming). W mikrokontrolerach LPC2148 jest użyty booloader, który poprzez interfejs RS-232 pobiera z komputera (port szeregowy COM) dane przeznaczone do wpisania do pamięci Flash. Obsługę transmisji danych (wgrywanie pliku wynikowego.hex) można zrealizować za pomocą bezpłatnego programu Flash Magic. Wygląd głównego okna tego programu wraz z wybranymi opcjami w polu Step1 i Step2 pokazano na poniższym rysunku. Rys. 7. Główne okno programu Flash Magic (po ustawieniu odpowiednich parametrów Step1, Step2 i wskazaniu pliku.hex do załadowania Step3, plik jest ładowany do LPC2148 po kliknięciu przycisku Start) 3. Stanowisko laboratoryjne Komputer PC z zainstalowanym programem narzędziowym Keil uvision3 oraz programem ładującym Flash Magic. Zestaw uruchomieniowy ZL9ARM z modułem diparm z mikrokontrolerem LPC Przebieg ćwiczenia Ćwiczenie jest planowane jako 2-godzinne i obejmuje: Połączenie zestawu uruchomieniowego z komputerem PC za pomocą łącza RS-232. W płytce ZL9ARM korzystamy z gniazda UART0. Przygotowanie programów obsługujących linie we/wy mikrokontrolera LPC2148 w zakresie: a) sterowania diodami LED w tym celu należy na podstawie schematu ideowego zestawu uruchomieniowego zlokalizować linie mikrokontrolera, do których są podłączone diody LED, a następnie uzyskać dowolne efekty świetlne, b) obsługi przetwornika piezoceramicznego do generowania prostych dźwięków, 14

15 c) obsługi klawiatury 4-przyciskowej w tym celu należy na podstawie schematu ideowego zestawu uruchomieniowego zlokalizować linie mikrokontrolera, do których są podłączone przyciski S1...S4, a następnie zaprogramować układ w ten sposób, aby wciśnięcie dowolnego przycisku uruchamiało efekt świetlny na diodach LED. Szczegóły odnośnie programów ustala prowadzący ćwiczenie. Wynikiem pracy grupy laboratoryjnej są programy na mikrokontroler LPC2148. Wnioski i spostrzeżenia jakie nasunęły się podczas wykonywania ćwiczenia należy zamieścić w sprawozdaniu. 5. Wymagania BHP Warunkiem przystąpienia do realizacji ćwiczenia jest zapoznanie się z obowiązującą w laboratorium instrukcją BHP oraz przestrzeganie zasad w niej zawartych. Konieczne jest także zapoznanie z ogólnymi zasadami pracy przy stanowisku komputerowym. Instrukcje BHP powinny być podane studentom podczas pierwszych zajęć laboratoryjnych i dostępne do wglądu w laboratorium. 6. Sprawozdanie studenckie Sprawozdanie powinno zawierać: cel i zakres ćwiczenia, opis stanowiska badawczego, opis przebiegu ćwiczenia z wyszczególnieniem wykonywanych czynności, algorytm oraz listing opracowanego programu komentarze i wnioski 15

16 Politechnika Białostocka Wydział Elektryczny Katedra Automatyki i Elektroniki Instrukcja do zajęć laboratoryjnych Numer ćwiczenia: 2 Temat: Wykorzystanie interfejsu SPI do komunikacji z graficznym wyświetlaczem LCD Laboratorium z przedmiotu: Systemy wbudowane Kod: ES2C Elektrotechnika studia stacjonarne II stopnia, sem. II specjalność Automatyka Przemysłowa i Technika Mikroprocesorowa Opracował dr inż. Rafał Kociszewski Białystok

17 1. Cel ćwiczenia Zapoznanie się z konfiguracją i wykorzystaniem sprzętowego modułu ADC zaimplementowanego w mikrokontrolerze LPC2148 do pracy w funkcji woltomierza cyfrowego. Zapoznanie się z programową obsługą szeregowego interfejsu SPI do komunikacji mikrokontrolera LPC2148 z graficznym wyświetlaczem LCD ze sterownikiem PCD8544. Wykorzystanie czujnika położenia do realizacji funkcji obrotu obrazu wyświetlanego na wyświetlaczu graficznym LCD. 2. Wprowadzenie 2.1. Moduł ADC W mikrokontrolerach LPC2148 zaimplementowano dwa 10-bitowe przetworniki analogowocyfrowe o czasie konwersji 2.44ms (ok. 410kHz), które noszą nazwy AD0 i AD1. Wyposażono je w multipleksery analogowe (odpowiednio 6- lub 8-wejściowe) o dopuszczalnym zakresie napięć V. Wejścia analogowe są multipleksowane, tzn. w danej chwili tylko jedno z nich może być źródłem sygnału. Wybór aktywnego wejścia następuje poprzez ustawienie rejestru konfiguracyjnego ADnCR. Rejestr ADGSR ma budowę podobną do rejestru ADCR. Rejestr ADGSR umożliwia jednoczesne uruchamianie przetworników AD0 i AD1. Wyniki pomiarów są dostępne w rejestrze ADnDR Każdy kanał pomiarowy ma swój rejestr wyników pomiaru. W rejestrze ADnGDR jest zapisywany zarówno wynik pomiaru jak i numer kanału. Rejestr ADnSTAT zawiera informacje o statusie poszczególnych kanałów pomiarowych, tj, - bit sygnalizujący zgłoszenie przerwania przez ADC - sygnalizacja powstania błędu OVERUN podczas pomiaru - sygnalizacja zakończenia pomiaru bit DONE Rejestr ADnINTEN pozwala na odblokowanie przerwań od poszczególnych kanałów pomiarowych. Rejestr kontrolny ADnCR (rysunek 1) pozwala na konfigurację przetwornika oraz wyznaczenie początku konwersji ADC. Rys. 1. Rejestry ADCR i ADGSR sterujące pracą przetwornika ADC Pierwszym krokiem w konfigurowaniu przetwornika jest ustawienie częstotliwości sygnału taktującego. Przetwornik jest taktowany sygnałem wytwarzanym z sygnału PCLK. 17

18 Częstotliwość PCLK w wyniku podziału musi być mniejsza niż 4.5MHz. Gdy nie jest możliwe dobranie dokładnej wartości można wybrać częstotliwość jak najbliżej wymaganej. Częstotliwość PCLK jest dzielona przez CLKDIV+1 dla uniknięcia dzielenia przez zero. Sygnał zegarowy taktujący przetwornik można zablokować przy użyciu rejestru PDN. Po zerowaniu przetwornik jest wyłączony, zatem oprócz podania sygnału zegarowego należy go wyłączyć, ustawiając 1 na tym bicie. Bity SEL pozwalają wybrać kanały, w których będą wykonywane pomiary. Każdy z kanałów ma w polu SEL przypisany jeden bit odpowiedzialny za jego aktywację. Włączenie trybu BURST wymaga ustawienia bitów CLKS. W tym trybie pracy przetwornik wykonuje ciągłe pomiary w kanale. Pole CLKS określa kompromis pomiędzy prędkością pomiarów wyrażoną w liczbie okresów zegara CLK przetwornika a dokładnością pomiaru w trybie BURST. Pole START pozwala zatrzymać lub rozpocząć konwersję. Użytkownik może spowodować, aby pomiar zapoczątkowało zbocze sygnału na wejściu zewnętrznym CAP0.0 lub CAP0.2 lub na wyjściu MAT0.1 MAT0.3, MAT1.0, MAT1.1. Przetwornik może mierzyć sygnał na wyprowadzeniach zewnętrznych, nawet gdy są skonfigurowane do pracy w trybie GPIO co może obniżać dokładność przetwarzania. Wynik konwersji jest dostępny w polu RESULT rejestrów ADnDR0...7 oraz ADnGDR (w tym rejestrze wynik konwersji jest podawany wraz z numerem kanału). Po zakończeniu przetwarzania bit DONE zostaje ustawiony, co można wykorzystać do wygenerowania przerwania. Jeżeli po zakończeniu pomiaru wartość w polu RESULT nie zostanie odczytana, to zostaje ona utracona, gdyż przetwornik wykona kolejny pomiar i nadpisze ostatnio zmierzoną wartość w polu wynik. Fakt ten jest sygnalizowany ustawieniem bitu OVERRUN. Rys. 2. Rejestry ADGDR oraz ADDR0...7, z których można odczytać wyniki konwersji Przetwornik ADC może pracować w trybie odpytywania oraz w trybie przerwań. Konfiguracja przetwornika do pracy w pierwszym wymienionym trybie jest przedstawiona poniżej. 18

19 #include <lpc214x.h> int main(void) { unsigned val; PINSEL1 = 0x ; AD0CR = 0x ; while(1){ AD0CR = 0x ; do { val = AD0DR1; } while ((val & 0x ) == 0); val = (val >> 6) & 0x3FF); // przetwornik ADO kanal AIN0.1 // 10-bitow, 3MHz // uruchom przetwarzanie //czekanie na koniec przetwarzania //wyluskaj wynik } } 2.2. Interfejs SPI w mikrokontrolerze LPC2148 Mikrokontroler LPC2148 wyposażono w dwa interfejsy SPI (SPI0, SPI1) zgodne ze standardem Serial Peripherial Interface. Mogą one pracować jako master lub slave w pełnym dupleksie (full duplex), a przesyłane dane mają programowaną długość od 8 do 16 bitów. W ramach ćwiczenia laboratoryjnego do współpracy z mikrokontrolera z wyświetlaczem graficznym będzie wykorzystany interfejs SPI0. Na poniższym rysunku przedstawiono możliwe formaty 8-bitowych danych używanych podczas transmisji z wykorzystaniem sprzętowego interfejsu SPI mikrokontrolera LPC2148. Rys. 3. Możliwe formaty danych przesyłanych interfejsem SPI0 Format przesyłanych danych jest określany przez bity CPOL i CPHA rejestru SPI Control Register. 19

20 Warstwa fizyczna interfejsu jest zbudowana z czterech linii: SCK0, SSEL0, MISO0 i MOSI0. Przebieg zegarowy na linii SCK0 jest używany do synchronizacji przesyłania danych. Źródłem sygnału SCK jest zawsze układ master, natomiast slave jest zawsze odbiornikiem SCK. Linie danych MISO0, MOSI0 są jednokierunkowe. Linią MOSI0 są przesyłane dane z układu master do układu slave. Linia MISO0 jest przeznaczona do przesyłania danych z układu slave do układu master. Linia SSEL0 służy do detekcji aktywnego układu slave. Jeżeli do układu master trzeba dołączyć kilka układów slave, to musi on sterować dodatkową liczbą linii SSEL w zależności od tego ile jest układów slave. W trakcie transmisji może być aktywna tylko jedna linia SSEL. Linia P0.7 w LPC2148 zaprogramowana jako SSL0 w trybie slave, musi przejść w stan niski przed rozpoczęciem transferu danych i pozostawać w tym stanie do jego zakończenia. Jeżeli w trakcie transmisji danych SSEL0 przejdzie w stan wysoki, to układ slave przechodzi w stan idle i transmisja zostaje przerwana. Gdy moduł SPI mikrokontrolera jest ustawiony w tryb master, to jego linia SSEL (P0.7) może być zaprogramowana jako wyjściowa (w trybie GPIO) do sterowania SSEL układu slave. Tryb master Programowanie tego trybu należy zacząć od zaprogramowania licznika SPI Counter Register poprzez określenie prędkości transmisji. W tym rejestrze musi być ustawiony bit MSTR oraz podany format transmisji: długość słowa danych (bity BitEnable oraz BITS), kolejność wysyłania bitów (bit LBSF) oraz zależność pomiędzy danymi i fazą sygnału zegarowego (bity CPHA, CPOL). Zapisanie danych do rejestru SPI Data Register rozpoczyna transmisję. Po zakończeniu przesyłania danych jest ustawiany bit SPIF w rejestrze SPI Status Register. Można również odczytać dane odebrane z SPI Data Register w sytuacji, gdy są do odczytania. Bit SPIF jest zerowany po odczytaniu SPI Status Register i wpisaniu nowej danej do SPI Data Register. Tryb slave Praca w tym trybie jest możliwa po wyzerowaniu bitu MSTR w rejestrze SPI Control Register. Podobnie jak w trybie master trzeba ustawić format przesyłanych danych oraz zależność pomiędzy danymi i fazą sygnału zegarowego. Dane przeznaczone do układu master są wpisywane do SPI Data Register. Wpisywanie jest możliwe przy wyzerowanym bicie SPIF. Natomiast dane są gotowe do odczytania gdy bit SPIF zostanie ustawiony Wyświetlacz graficzny ze sterownikiem PCD8544 Wykorzystywany w ćwiczeniu wyświetlacz graficzny (rysunek 1) jest wyposażony w sterownik PCD8544 i jest stosowany między innymi w telefonach komórkowych Nokia 5110/3310. Rys. 4. Wykorzystywana płytka z wyświetlaczem graficznym - widok z przodu oraz z tyłu (źródło: dokumentacja modułu modlcd1, 20

21 Wyświetlacz jest przystosowany do stosowania w systemach zasilanych napięciem +3,3V. Matryca wyświetlacza ma wymiar 48 x 84 pikseli. W trybie graficznym można wyświetlić na niej 14 znaków w 6 liniach. Do sterowania matrycą LCD jest wykorzystywany sterownik PCD8544, którego schemat blokowy przedstawiono na poniższym rysunku. Rys. 5. Schemat blokowy sterownika PCD8544 Właściwości PCD8544: - sterownik matrycy monochromatycznej LCD 48 x 84 (48 wierszy, 84 kolumny) - wbudowana pamięć RAM 48 x 84 b (6 banków po 84 bajty) - wewnętrzny układ generowania napięcia zasilającego matrycę LCD - programowa regulacja kontrastu z programową kompensacją temperaturową - wbudowany wewnętrzny oscylator - szybki interfejs SPI (4 Mb/s) - napięcie zasilania układów logicznych (V dd ): 2,7...3,3 V - zakres temperatur pracy: o C - brak wbudowanego generatora znaków W sterowniku oprócz standardowych linii interfejsu SPI (SDIN dane wejściowe, SCLK linia zegarowa) znajdują się dodatkowe linie: - linia wybory układu SCE (odpowiednik chip select) - linia D/C wyboru przeznaczenia wysyłanych danych: pamięć RAM wyświetlacza rejestr danych ( D/C=1) lub rejestr sterujący ( D/C=0 ), - linia RES zerująca sterownik Transmisja rozpoczyna się od uaktywnienia linii SCE (stan niski). Dane z linii SDIN są wpisywane do rejestru sterownika przy narastającym zboczu zegara SCLK. Jest to istotna informacja, gdyż interfejsy SPI wbudowane w mikrokontrolery mogą pracować w kilku trybach. 21

22 Rys. 6. Przebiegi czasowe podczas przesyłania bajtu danych do wyświetlacza Rys. 7. Przebiegi czasowe podczas przesyłania kilku bajtów do wyświetlacza Po wpisaniu pojedynczego bajtu, sygnał SCE staje się nieaktywny. Sterownik akceptuje wpisywanie bloku bajtów z aktywnym SCE (bez konieczności przechodzenia w stan wysoki tej linii po każdym przesłanym bajcie). Przyspiesza to przesyłanie danych, ale może powodować przekłamania przy większych blokach i dużej prędkości transmisji. Każde opadające zbocze SCE synchronizuje transmisję i jeżeli pojawiają się problemy, to należy zastosować sterowanie tą linia w sposób pokazany na rysunku 3. Zawartość pamięci RAM sterownika PCD8544 można modyfikować poleceniami zapisywania danych w momencie gdy linia D/C jest w stanie wysokim. Pamięć obrazu jest zgrupowana w 6 banków po 84 bajty. Taka organizacja wymusza logiczny podział pola wyświetlacza na 6 wierszy po 84 kolumny. Wiersze są numerowane od 0 do 5, kolumny od 0 do 83. Rys. 8. Organizacja pamięci RAM w sterowniku PCD

23 Podczas wpisywania danej do pamięci należy określić miejsce, w którym banku (zmienna Y) zostanie ona zapisana, a następnie podać numer bajtu w wierszu (zmienna X). Zapisanie całego banku odpowiada wyświetleniu jednego wiersza wyświetlacza. Każdy bajt pamięci RAM jest wyświetlany jako pionowy pasek o wysokości 8 pikseli. Najwyżej położony piksel w pasku odpowiada najmniej znaczącemu bitowi, a najniżej położony piksel odpowiada najbardziej znaczącemu bitowi bajtu pamięci. W standardowym trybie wyświetlania ustawienie bitu w bajcie pamięci odpowiada zapaleniu piksela, zaś wyzerowanie zgaszeniu. Przy wpisywaniu bajtów do pamięci RAM sterownik wykonuje automatyczna inkrementację liczników wierszy i kolumn. Dostępne są dwa tryby automatycznego modyfikowania liczników: pionowy i poziomy. a) b) Rys. 9. Adresowanie pamięci obrazu: pionowe a), poziome b) Tryb pionowy po każdym zapisaniu bajtu do pamięci zwiększa się stan licznika wierszy. Po osiągnięciu maksymalnego numeru wiersza licznik wierszy jest zerowany a licznik kolumn jest zwiększany o jeden. Wysłanie 6 bajtów 0xFF rozpoczynając od wiersza zerowego spowoduje wyświetlenie w pierwszej z lewej kolumny wyświetlacza pionowego paska przez całą wysokość wyświetlacza. Tryb adresowania pionowego jest stosowany przy wpisywaniu pełnoekranowej bitmapy. Tryb poziomy po zapisaniu każdego bajtu jest zwiększany licznik kolumn. Po osiągnięciu maksymalnego numeru kolumny licznik kolumn jest zerowany a licznik wierszy zwiększany o jeden. Tryb adresowania poziomego jest stosowany do wyświetlania tekstu. Tryby adresowania można dowolnie przełączać w trakcie normalnej pracy wyświetlacza i nie ma to żadnego wpływu na prezentowana informację. Sterownik PCD8544 akceptuje dwa zestawy komend: standardowy i rozszerzony. Zestawienie komend oraz funkcje bitów znajdują się w poniższych tabelach. 23

24 Tab. 1. Komendy obsługiwane przez sterownik PCD8544 Komenda Function Set jest przeznaczona do ustawiania wyświetlacza w tryb obniżonego poboru energii, sposobu adresowania pamięci RAM i ustawianiu zestawu komend (normalny/rozszerzony). Komenda Set Vop jest przeznaczona do ustawiania kontrastu wyświetlacza, który zależy od napięcia zasilającego matrycę LCD. Można ustawić 128 wartości. Użyteczny zakres wynosi Komenda Temperature Control umożliwia ustawienie jednej z czterech predefiniowanych charakterystyk kompensacji temperaturowej kontrastu. Do większości zastosowań można stosować współczynnik 2 (TC = 1, TC0 = 0), zaś Bias jest zwykle równy 3. Tab. 2. Funkcje bitów 24

25 Po włączeniu zasilania sterownik PCD8544 wymaga sprzętowego zerowania. Odbywa się to poprzez wymuszenie stanu niskiego na wyprowadzeniu RES przez minimum 100 ns. Ten stan musi wystąpić najpóźniej po 30 ms od włączenia zasilania. Niespełnienie tego warunku grozi uszkodzeniem matrycy wyświetlacza Obroty obrazu Jedną z często spotykanych funkcji w konsumenckich urządzeniach przenośnych jest możliwość obrotu obrazu w zależności od położenia urządzenia. Taki element można między innymi zrealizować za pomocą 6-kierunkowego czujnika położenia FC30. Jest czujnik MEMS, którego rozkład wyprowadzeń jest pokazany na poniższym rysunku. Rys. 10. Widok układu FC30 oraz opis wyprowadzeń Czujnik może być zasilany napięciem z przedziału V. Komunikacja z układem nie wymaga zastosowania żadnego protokołu. W zależności od położenia na wyprowadzeniach PC, LC, SIGN pojawiają się odpowiednie stany logiczne. Kombinacja tych stanów określa jedną z sześciu pozycji. 25

26 Rys. 11. Położenia czujnika FC30 Rys. 12. Stan sygnałów w zależności od orientacji czujnika FC30 3. Stanowisko laboratoryjne 1. Komputer PC z zainstalowanym programem narzędziowym Keil uvision3 oraz programem ładującym Flash Magic. 2. Zestaw uruchomieniowy ZL9ARM z modułem diparm z mikrokontrolerem LPC2148, graficznym wyświetlaczem LCD oraz modułem z czujnikiem położenia FC30. 26

27 4. Przebieg ćwiczenia Ćwiczenie jest planowane jako 4-godzinne i obejmuje: 1. Połączenie zestawu uruchomieniowego z komputerem PC za pomocą łącza RS-232. W zestawie ZL9ARM korzystamy z gniazda UART0. 2. Zapoznanie się z przykładowym programem realizującym obsługę wyświetlacza graficznego w trybie tekstowym i graficznym. Podłączenie mikrokontrolera LPC2148 z wyświetlaczem należy zrealizować według schematu: LPC2148 P0.4 P0.6 P0.8 P0.9 P ,3V + 3,3V 8 - LED 7 - SCLK 6 - SDIN 5 - D /C 4 - SCE 3 - RST 2 - GND 1 - VCC Moduł z wyświetlaczem musi być zasilany napięciem 3.3V. Podłączenie napięcia 5V może trwale uszkodzić moduł. 3. Konfigurację przetwornika ADC do pomiaru napięcia zadawanego za pomocą potencjometru umieszczonego na płytce uruchomieniowej. Wynik pomiaru powinien być widoczny na wyświetlaczu wraz z dodatkową grafiką. 4. Przygotowanie programu realizującego obroty obrazu (np. ramka, sześcian) zgodnie z aktualną orientacją czujnika położenia FC30. Moduł z czujnikiem musi być zasilany napięciem 3.3V. Podłączenie napięcia 5V może trwale uszkodzić moduł. Szczegóły odnośnie programów ustala prowadzący ćwiczenie. Wynikiem pracy grupy laboratoryjne są programy na mikrokontroler LPC2148. Wnioski i spostrzeżenia jakie nasunęły się podczas wykonywania ćwiczenia należy zamieścić w sprawozdaniu. 5. Wymagania BHP Warunkiem przystąpienia do realizacji ćwiczenia jest zapoznanie się z obowiązującą w laboratorium instrukcją BHP oraz przestrzeganie zasad w niej zawartych. Konieczne jest także zapoznanie z ogólnymi zasadami pracy przy stanowisku komputerowym. Instrukcje BHP powinny być podane studentom podczas pierwszych zajęć laboratoryjnych i dostępne do wglądu w laboratorium. 27

28 6. Sprawozdanie studenckie Sprawozdanie powinno zawierać: cel i zakres ćwiczenia, opis stanowiska badawczego, opis przebiegu ćwiczenia z wyszczególnieniem wykonywanych czynności, listing opracowanego programu komentarze i wnioski 28

29 Politechnika Białostocka Wydział Elektryczny Katedra Automatyki i Elektroniki Instrukcja do zajęć laboratoryjnych Numer ćwiczenia: 3 Temat: Komunikacja z wykorzystaniem interfejsu USB Laboratorium z przedmiotu: Systemy wbudowane Kod: ES2C Elektrotechnika studia stacjonarne II stopnia, sem. II specjalność Automatyka Przemysłowa i Technika Mikroprocesorowa Opracował dr inż. Rafał Kociszewski Białystok

30 1. Cel ćwiczenia Zapoznanie się z podstawami komunikacji komputera PC z mikrokontrolerem LPC2148 za pomocą klasy HID interfejsu USB. 2. Wprowadzenie Interfejs USB (Universal Serial Bus) od pewnego czasu stał się jednym z podstawowych łączy szeregowych komputerów osobistych i przenośnych, zastępując wiele tradycyjnych portów standardowych i specjalizowanych. Jako łącze oferujące kilka rodzajów przekazywania danych (4 typy transferów) i szybkości transmisji, pozwala na podłączanie do komputera urządzeń peryferyjnych o różnych wymaganiach komunikacyjnych i sposobie obsługi. USB został zaprojektowany tak, aby każdy użytkownik komputera mógł z niego łatwo korzystać. Wykrywanie urządzenia w systemie, jego konfiguracja oraz instalacja sterowników urządzenia odbywają się automatycznie. Ze względu na dużą liczbę i zróżnicowanie pod względem zastosowań, urządzenia USB zostały pogrupowane w bardzo ogólne klasy. Podział ten jest oparty o wymogi dotyczące wymiany danych oraz zastosowanie. Przykładowo, klasa Audio jest tworzona przez urządzenia wymagające izochronicznej transmisji danych. W przypadku urządzeń zaliczanych do klasy HID, wymagania dotyczące transferu danych są znacznie mniejsze. Jeżeli urządzenia USB nie można zaklasyfikować do żadnej z istniejących klas, należy zdefiniować wtedy nową, odpowiednią do tego urządzenia klasę oraz stworzyć do niej sterownik. Wszystko musi się odbyć w zgodzie ze specyfikacją USB. Każde urządzenie USB musi przynależeć przynajmniej do jednej klasy. Tak, to nie błąd. Może należeć do kilku klas jednocześnie. Przykładem jest słuchawka telefonu podłączana do portu USB. Posiada ona właściwości zarówno urządzeń klasy HID, Audio oraz Telephony. Klasa HID jest jedną z klas urządzeń zdefiniowanych w standardzie USB. Do klasy HID zaliczane są urządzenia służące głównie do wprowadzania danych do systemu komputerowego. Do tej klasy urządzeń USB należą: klawiatury, myszki, przełączniki, przyciski, suwaki, joysticki, kierownice, pady, czytniki kodów kreskowych, termometry, itp. Urządzenie klasy HID komunikuje się ze sterownikiem klasy HID domyślnie przy pomocy potoku kontrolnego (Control pipe). Dodatkowo, do komunikacji można zdefiniować potok przerwaniowy (Interrupt pipe). Wykorzystanie w komunikacji potoku przerwaniowego spowoduje, że raporty od hosta USB do urządzenia USB będą przesyłane właśnie tym potokiem. Jeżeli nie zostanie zdefiniowany, wtedy raporty wychodzące (Output Reports) będą przesyłane potokiem kontrolnym przy pomocy żądania Set_Report(Output). Potok kontrolny jest wykorzystywany do: - odbierania i odpowiadania na zapytania dotyczące parametrów transmisji oraz typu podłączonego urządzenia; - transmisji danych z urządzenia USB w przypadku otrzymania żądania takiej transmisji (żądanie Get_Report) od sterownika USB; - przesyłania danych przez hosta USB do urządzenia USB. Potok przerwaniowy jest używany do: - przesyłania przez urządzenie USB do hosta USB danych asynchronicznych (czyli nie zostało wysłane do urządzenia USB żądanie Get_Report); 30

31 - transmisji danych, które muszą być przesłane z jak najmniejszym opóźnieniem, do urządzenia USB. Aby urządzenie USB było rozpoznawanie jako urządzenie klasy HID, niezbędne jest zdefiniowanie deskryptora HID. W deskryptorze urządzenia klasy HID jest zdefiniowana obecność i rozmiar innych deskryptorów, które dookreślają cechy urządzenia HID. Najczęściej definiowanymi dodatkowo deskryptorami są: Report descriptor - opisuje sposób organizacji przesyłanych danych, ich ilość oraz czego one dotyczą. Przykładowo może on opisywać pozycję kontrolera, albo stan przycisku. W nim są zawarte informacje na temat, tego czy pozycja kontrolera powinna zostać odbierana przez API myszki, czy też API joystika; Physical descriptor - zawiera informacje na temat części, która manipuluje urządzeniem HID. Deskryptory służące do opisu urządzeń należących do klasy HID można podzielić na dwie kategorie. Pierwsza z nich to deskryptory opisujące standardowe urządzenie USB: Device descriptor zawiera podstawowe informacje na temat urządzenia USB, np. klasa urządzenia USB, subklasa urządzenia USB, identyfikator producenta ( VID ), identyfikator produktu ( PID ), wersja; Configuration descriptor zawiera informacje na temat konfiguracji urządzenia USB (np. sposobu zasilania, maksymalnego poboru prądu), oraz ilości wykorzystywanych przez nie interfejsów. Każdy ze zdefiniowanych interfejsów może działać niezależnie; Interface descriptor zawiera informacje na temat konkretnego interfejsu wykorzystywanego przez urządzenie USB, tj jego klasy i subklasy, rodzaju protokołu, oraz ilości wykorzystywanych endpoint'ów; Endpoint descriptor zawiera informacje na temat konkretnego endpoint'u, tj. jego numeru, kierunku przesyłanych danych, typu, maksymalnego rozmiaru pakietu jaki może zostać przez niego wysłany bądź odebrany; String descriptor zawiera etykiety tekstowe, opisujące poszczególne pola i kolekcje danych. Ten deskryptor jest opcjonalny. Drugą kategorię tworzą deskryptory dedykowane klasie HID: HID descriptor definiuje informacje charakterystyczne dla urządzenia HID, oraz typ i rozmiar deskryptorów podrzędnych, tj. Report descriptor'a, oraz Phisical descriptor'a; Report descriptor zawiera informacje na temat przesyłanych raportów, m.in. typu, rozmiaru, zakresu wartości; Phisical descriptor zawiera informacje na temat części ciała człowieka, która jest odpowiedzialna za interakcje z urządzeniem klasy HID Ten deskryptor jest opcjonalny. Device descriptor dostarcza ogólnych informacji na temat urządzenia USB oraz jego konfiguracji. Urządzenie USB może posiadać tylko jeden Device descriptor. Jeżeli urządzenie USB zgodne ze specyfikacją USB 2.0 ( High Speed ) ma być również kompatybilne ze specyfikacją USB 1.1 ( Full Speed ), może okazać się konieczne (ale nie musi) zdefiniowanie dla trybu wolniejszego ( Full Speed ) odmiennych informacji na jego temat. Realizowane jest to poprzez zdefiniowanie deskryptora Device_qualifier descriptor. 31

32 Configuration descriptor dostarcza informacji na temat konfiguracji urządzenia USB. Urządzenie USB może posiadać kilka takich deskryptorów. W celu ich rozróżnienia każdy Configuration descriptor posiada przypisany mu unikalny indeks. Może przyjąć jedną z wartości z przedziału od 0 do N-1, gdzie N to liczba zdefiniowanych dla urządzenia USB Configuration descriptor'ów. Indeks deskryptora jest przechowywany przez pole bconfigurationvalue. W każdym Configuration descriptor'rze zapisana jest liczba interfejsów (opisywanych przez Interface descriptor'y; musi być zdefiniowany przynajmniej jeden Interface descriptor ) wykorzystywanych w danej konfiguracji. Każdy z interfejsów może działać niezależnie. W przypadku zapytania hosta USB o Configuration descriptor, urządzenie USB musi odesłać w odpowiedzi oprócz Configuration descriptor'a wszystkie powiązane z nim Interface descriptor'y, Endpoint descriptor'y oraz deskryptory charakterystyczne dla danej klas urządzenia USB, bądź producenta. Interface descriptor służy do opisania konkretnego interfejsu wykorzystywanego w danej konfiguracji urządzenia USB. W skład każdej z konfiguracji musi wchodzić przynajmniej jeden interfejs, z kolei Interface descriptor zawiera informacje na temat ilości endpoint'ów, wykorzystywanych przez dany interfejs. Każdy interfejs może wykorzystywać jeden, bądź kilka niezależnych endpoint'ów. Interface descriptor'y są wysyłane do hosta USB jako część odpowiedzi na zapytanie o konkretną konfigurację urządzenia USB (są więc integralną częścią odpowiedniego Configuration descriptor'a ). Każdy endpoint, za wyjątkiem 0 (zwanego też kontrolnym), wykorzystywany przez interfejs USB posiada swój własny deskryptor. Deskryptory endpoint'ów zawsze są zwracane jako część odpowiedzi na zapytanie hosta USB - GetDescriptor(Configuration). W standardzie USB nie ma zdefiniowanego zapytania o Endpoint descriptor'a. Standardowy Endpoint descriptor dostarcza informacji na temat adresu definiowanego endpoint'a, typu transmisji, rodzaju synchronizacji przesyłania danych, przeznaczenia. Adres definiowanego endpoint'u przechowywany jest przez pole bendpointaddress. Jest on zbudowany z numeru logicznego endpoint'a, który jest zakodowany na 4 najmłodszych bitach oraz flagi definiującej kierunek wymiany danych. Za określenie kierunku przepływu informacji odpowiada najstarszy bit. Ustawienie go na 1 informuje że dane są wysyłane przez endpoint'a do hosta USB. Jest on więc dla hosta USB endpoint'em wejściowym, tzw. IN endpoint. W przypadku wyzerowania flagi kierunku, dane wysyłane są przez hosta USB i odbierane przez definiowany endpoint. Flaga kierunku transmisji jest ignorowana dla endpoint'ów kontrolnych. HID descriptor jest charakterystyczny dla urządzeń typu HID. Jego głównym zadaniem jest określenie typów oraz rozmiarów deskryptorów podrzędnych (mianowicie Report descriptor'a oraz Physical descriptor'a). W odróżnieniu od pozostałych deskryptorów, Report descriptor nie ma struktury tabeli zawierającej ściśle określone pola. Nie można więc określić rozmiaru standardowego Report descriptor'a, ponieważ takowy nie istnieje. Zarówno zawartość jak i rozmiar tego deskryptora zależą od struktury raportów, którymi będą przesyłane dane z/do urządzenia typu HID. 32

33 Podstawową jednostką opisującą transmitowane dane jest Item. Zbiór item'ów tworzy natomiast Report descriptor'a. Report descriptor dostarcza informacji na temat transmitowanych danych. Dzięki tym informacją host USB może określić sposób obsługi danych oraz w jaki sposób powinny zostać użyte. Mikrokontroler LPC2148 jest wyposażony w kontroler USB zgodny ze specyfikacją 2.0 Full speed. Kontroler posiada 2 kb podręcznej pamięci RAM (przeznaczonej na bufory Endopointów USB) oraz dodatkowo 8 kb RAM-u wykorzystywanego przy pomocy mechanizmu DMA. Kontroler urządzenia USB w LPC2148 posiada pięć wyprowadzeń: D+ oraz D są właściwymi liniami transmisji danych USB, linia VBUS dostarcza kontrolerowi informacji o obecności napięcia 5 V (po stronie hosta), linia CONNECT oraz UP_LED dzielą jedno fizyczne wyprowadzenie. Rys. 1. Wyprowadzenia kontrolera USB w mikrokontrolerze LPC2148j. Linia CONNECT jest odpowiedzialna za funkcję miękkiego dołączania urządzenia do komputera nadrzędnego. Aby host rozpoczął proces enumeracji (negocjacji połączenia z urządzeniem) linia danych D+ musi być podciągnięta do napięcia zasilającego urządzenia poprzez rezystor 1,5 kω. W przeciwnym przypadku komputer nie zareaguje na fakt włożenia wtyczki do gniazda USB. Rozwiązanie to może być wykorzystane do zasymulowania przez urządzenie wyjęcia i włożenia wtyczki do gniazda hosta (a tym samym wymuszenie procesu enumeracji). Mechanizm ten jest wykorzystywany w przypadku, gdy urządzenie chciałoby zmienić swoją konfigurację USB lub nawet zmienić klasę, jaką eksponuje po podłączeniu do komputera. Jest to powszechnie stosowana praktyka np. w telefonach komórkowych, kiedy to telefon może służyć jako modem (klasa USB Communication Device Class), a po wybraniu odpowiedniej opcji z menu może być widoczny jako urządzenie składujące (Mass Storage). Przełączenie się z jednej klasy do drugiej może w tym przypadku nastąpić bez fizycznego odłączania urządzenia od hosta. Aplikacja dla komputera PC Wykorzystywana podczas zajęć laboratoryjnych aplikacja umożliwia zmianę stanu na liniach P P1.23. W zestawie uruchomieniowym do tych linii są podłączone diody LED. Efektem działania programu będzie zatem zapalanie/gaszenie diod. Oprogramowanie dla komputera PC jest dostępne w dwóch wersjach: napisane w środowisku Visual C++ (po stronie lewej) oraz w środowisku Delphi (po stronie prawej). 33

34 Rys. 2. Widok okna aplikacji dla komputera PC. Deskryptor urządzenia (Device Descriptor) zawiera takie informacje jak wersja standardu USB, numery identyfikujące producenta (Vendor) oraz urządzenie (Product). Te zostaną wykorzystane do połączenia się z urządzeniem USB z poziomu aplikacji uruchomionej na komputerze PC. Numerów tych w zasadzie nie należy modyfikować, gdyż VendorID (VID) jest nadawany członkom organizacji USB-IF (www.usb.org). Numer ProductID (PID) jest określany we własnym zakresie przez posiadacza numeru VID. Oczywiście do zastosowań prywatnych, czy też testów, można przypisać dowolne numery VID i PID, jednak absolutnie nie wolno tego robić w przypadku urządzeń wprowadzanych na rynek. W systemie może pracować kilka urządzeń o identycznych numerach VID i PID, więc nie ma potrzeby ich modyfikacji nawet, jeśli zamierzamy zbudować kilka urządzeń pełniących różne funkcje. Przy poprawnym podłączeniu płytki uruchomieniowej z załadowanym kodem wynikowym do LPC2148 w systemie Windows zostaną zainstalowane sterowniki testowanego urządzenia, które będzie widoczne w systemie jako: Human Interface Devices/HID-compilant device/ USB Human Interface Device. W aplikacji przygotowanej w Delphi w polach Vendor Name, Product Name, Serial Number oraz Interface pojawią się odpowiednio nazwy: NXP Semiconductors, Keil MCB2140 HID, DEMO, HID. 3. Stanowisko laboratoryjne Komputer PC z zainstalowanym programem narzędziowym Keil uvision3 oraz programem ładującym Flash Magic. Zestaw uruchomieniowy ZL9ARM z modułem diparm z mikrokontrolerem LPC2148 oraz wyświetlaczem LCD i klawiaturą matrycową 4x4. 4. Przebieg ćwiczenia Ćwiczenie jest planowane jako 2-godzinne i obejmuje: Połączenie zestawu uruchomieniowego z komputerem PC za pomocą łącza RS232. W płytce ZL9ARM korzystamy z gniazda UART0. Połączenie zestawu uruchomieniowego z komputerem PC za pomocą przewodu USB A/B. 34

35 W płytce ZL9ARM korzystamy z gniazda USB typu B. Zworki JP19 oraz JP20 należy ustawić w pozycji 1-2. W ten sposób linie D+ (DP) oraz D- (DM) zostaną podłączone do portów P0.26 i P0.27 mikrokontrolera LPC2148. Zapoznanie się z gotowym projektem wykorzystującą klasę HID interfejsu USB przygotowaną na mikrokontroler serii LPC214x. Kompilację projektu, wgranie pliku wynikowego.hex do pamięci Flash mikrokontrolera i podłączenie płytki bazowej do komputera PC, a następnie przetestowanie działania aplikacji. Dokonanie modyfikacji projektu zgodnie ze wskazówkami prowadzącego ćwiczenie. Wynikiem pracy grupy laboratoryjnej są programy na mikrokontroler LPC2148. Wnioski i spostrzeżenia jakie nasunęły się podczas wykonywania ćwiczenia należy zamieścić w sprawozdaniu. 5. Wymagania BHP Warunkiem przystąpienia do realizacji ćwiczenia jest zapoznanie się z obowiązującą w laboratorium instrukcją BHP oraz przestrzeganie zasad w niej zawartych. Konieczne jest także zapoznanie z ogólnymi zasadami pracy przy stanowisku komputerowym. Instrukcje BHP powinny być podane studentom podczas pierwszych zajęć laboratoryjnych i dostępne do wglądu w laboratorium. 6. Sprawozdanie studenckie Sprawozdanie powinno zawierać: cel i zakres ćwiczenia, opis stanowiska badawczego, opis przebiegu ćwiczenia z wyszczególnieniem wykonywanych czynności, algorytm oraz listing opracowanego programu komentarze i wnioski 35

36 Politechnika Białostocka Wydział Elektryczny Katedra Automatyki i Elektroniki Instrukcja do zajęć laboratoryjnych Numer ćwiczenia: 4 Temat: Bezprzewodowa transmisja danych z wykorzystaniem modułu Bluetooth Laboratorium z przedmiotu: Systemy wbudowane Kod: ES2C Elektrotechnika studia stacjonarne II stopnia, sem. II specjalność Automatyka Przemysłowa i Technika Mikroprocesorowa Opracował dr inż. Rafał Kociszewski Białystok

37 1. Cel ćwiczenia Zapoznanie się z konfiguracją i wykorzystaniem sprzętowych modułów UART oraz PWM zaimplementowanych w mikrokontrolerze LPC2148. Zapoznanie się z działaniem modułu Bluetooth BTM-222. Wykorzystanie modułu PWM do płynnego sterowania serwomechanizmem HS-422. Realizacja toru transmisji bezprzewodowej do zdalnego sterowania serwomechanizmem. 2. Wprowadzenie 2.1. Moduł UART Interfejsy szeregowe UART (Universal Asynchronous Receiver Transmitter) są standardowym wyposażeniem mikrokontrolerów rodziny LPC2000 i umożliwiają wymianę danych pomiędzy nadajnikiem i odbiornikiem za pomocą dwóch linii sygnałowych Tx i Rx oraz jednego przewodu łączącego potencjały odniesienia (masy). Na wyjściach linii transmisyjnych z mikrokontrolera występują poziomy logiczne zgodne ze standardem TTL-LV, czyli napięcia z zakresu V. W przypadku komunikacji za pomocą UART z urządzeniami zewnętrznymi (np. komputer PC) konieczne jest dodanie konwertera napięciowego (np. MAX3232, MAX232 rysunek 1) zgodnego ze standardem RS C1+ T1IN R1OUT T2IN R2OUT C2+ MAX232 3 C1- T1OUT 14 R1IN 13 T2OUT 7 R2IN 8 VS+ 2 VS- 6 C2-4 Rys. 1. Układ MAX232 5 Typowa ramka danych przesyłana przez UART i schemat blokowy interfejsu RS-232 jest pokazany na rysunku 2. Rys. 2. Ramka danych, poziomy napięcia oraz schemat blokowy interfejsu RS232. Mikrokontroler LPC2148 ma dwa niezależne sterowniki transmisji szeregowej UART0 i UART1. Do dalszego opisu wykorzystany będzie moduł UART0, którego struktura jest przedstawiona na poniższym rysunku. 37

38 Rys. 3. Struktura modułu UART0 Nowością wobec większości standardowych sterowników UART stosowanych w prostszych mikrokontrolerach jest obecność bufora FIFO o długości 16 bajtów, zarówno w nadajniku jak i odbiorniku. Rejestr U0RSR podczas odbierania danych jest wypełniany bit po bicie, na podstawie stanu linii RxD0. Gdy moduł UART0 otrzyma 8 bitów danych, wówczas skompletowany w rejestrze U0RSR bajt jest przekazywany do kolejki FIFO, w której przechowywany jest najwcześniej odebrany bajt. W przypadku, gdy w buforze wejściowym znajduje się więcej niż jeden bajt, odczyt rejestru U0RBR powoduje przesunięcie pozostałych bajtów znajdujących się w buforze tak, że drugi z kolei bajt trafia do U0RBR. Jeżeli rejestr ten nie zawiera nieodczytanego bajtu to bit 0 rejestru U0LSR ma wartość 0. Badanie stanu tego bitu pozwala stwierdzić, czy w buforze wejściowym znajduje się chociaż jeden nieoczytany bajt, który został odebrany przez łącze RS-232.Budowa bufora w nadajniku jest analogiczna. Przed wykorzystaniem modułu UART należy odpowiednio ustalić szybkość transmisji szeregowej. Dokonuje się tego za pomocą pary rejestrów U0DLM i U0DLL tworzących razem 16-bitową liczbę U0DLM:U0DLL. Zapis do tych rejestrów jest możliwy tylko wtedy, gdy bit nr 7 rejestru U0CLR ma wartość 1. Wpływ wartości tych rejestrów na szybkość transmisji jest następujący VPB clock BAUDRATE = 16 Divisor value przy czym: BAUDRATE uzyskana szybkość transmisji VPB clock częstotliwość taktowania układów peryferyjnych (ustalana za pomocą rejestru VPBDIV) Divisor value liczba 16-bitowa ustalana przez parę rejestrów U0DLM:U0DLL Mechanizm ustalania szybkości transmisji jest typowy i podobnie jak w przypadku większości mikrokontrolerów 8-bitowych dzielnik Divisor value musi być liczbą całkowitą. Powoduje to, że przy danej częstotliwości taktowania układów peryferyjnych (VPB clock) nie można w ogólnym przypadku uzyskać wszystkich żądanych szybkości transmisji. Są one obarczone pewnym błędem. 38

39 Przykładowa aplikacja wykorzystująca UART1 mikrokontrolera LPC2148 do wysyłania tekstu jest podana niżej. #include "lpc214x.h" #define baudrate // szybkosc transmisji #define baudratediv /(16*baudrate) // liczba przechowywana przez U1DLM i U1DLL [U0DLM:U1DLL] // odbior danych - jezeli bufor odbiorczy jest pusty // zwracamy 0 - chwilowo brak danych. W przeciwnym przypadku odczytujemy // dana i zwracamy jako wynik funkcji unsigned char uart1_recv(void) { if ((U1LSR & 0x01)==0) return 0; return U1RBR; // przechowuje najwczesniej odebrany bajt } // jezeli w RBR jest to kolejny odczytany powoduje // przesuniecie w kolejce wczesniejszego // wysyla 1 bajt void uart1_send_byte(unsigned char byte) { U1THR = byte; // przechowuje ostatnio zapisany bajt //w buforze nadawczym while(!(u1lsr & 0x20)); } // wysyla ciag znakow void uart1_send(const char *s) { while (*s) { uart1_send_byte(*s++); } } int main(void) { // konfiguracja (inicjalizacja) UART1; PINSEL0 = 0x ; // P0.8 - nadawanie TxD, P0.9 - odbieranie RxD U1FCR = 0x01; // rejest sterujacy bufora FIFO // ustawienie predkosci transmisji U1LCR = 0x80; U1DLL = baudratediv; U1DLM = 0; U1LCR = 0x03; // umozliwienie zapisu do U1DLM i U1DLL // wartosc [U1DLM:U1DLL] // 8 bitow danych, 1 bit stopu, bez kontroli parzystosci } while(1){ uart1_send("*** test UART1 ***\r\n"); } 39

40 2.3. Moduł PWM Mikrokontroler LPC2148 ma w swej strukturze sprzętowy moduł PWM, którego uproszczony schemat jest pokazany na poniższym rysunku. Rys. 4. Uproszczona struktura PWM mikrokontrolera LPC2148 Głównym elementem modułu PWM jest 32-bitowy układ licznikowy, który jest inkrementowany co PR+1 cykli magistrali VPB (PR jest wartością rejestru PWMPR, sterującego pracą preskalera). Aktualna wartość tego licznika jest przechowywana w rejestrze PWMTC. Licznik PWM współpracuje z zespołem przerzutników RS, służących do sterowania wyjściami PWM1...PWM6. Odpowiednie ustawianie i zerowanie tych przerzutników powoduje, że na tych wyjściach pojawiają się przebiegi PWM. Przerzutniki sterowane są za pomocą wewnętrznych sygnałów Match0...Match6, które są wytwarzane na podstawie porównania stanu licznika PWM (rejestru PWMTC) z wartościami rejestrów referencyjnych PWMMR0...PWMMR6. Aby zapobiec chwilowym zaburzeniom przebiegów PWM spowodowanych zapisaniem nowych danych do tych rejestrów każdy z nich wyposażono w rejestr zatrzaskowy Shadow Register. Nowa wartość każdego z rejestrów jest przepisywana do zatrzasku w momencie wystąpienia sygnału Match0. Aby mogło nastąpić zatrzaśnięcie, musi być zasygnalizowane wpisanie nowej wartości do jednego (lub kilku) z tych rejestrów. Odbywa się to poprzez ustawienie odpowiedniego bitu(lub kilku bitów) rejestru PWMLER. Od wartości rejestrów PWMMR1...PWMMR6 zależy wypełnienie generowanych przebiegów. Ich okres (taki sam dla wszystkich wyjść PWM) typowo jest zależny od wartości rejestru PWMMR0. Czasy trwania okresu i stanów wysokich poszczególnych przebiegów PWM wynoszą 1 PWMNRn ( PWMPR + 1) VPBfreq Moduł PWM mikrokontrolera LPC2148 może pracować w jednym z dwóch trybów wybieranych za pomocą bitów PWMSEL2...6 rejestru PWMPCR: Tryb kontroli położenia pojedynczego zbocza Sygnał Match0 powoduje ustawienie wszystkich przerzutników. Momenty wystąpienia sygnałów Match1...6 względem momentu zerowania licznika (za pomocą Match0) są zależne 40

41 od wartości rejestrów PWMMR W rezultacie na wszystkich aktywnych wyjściach PWM występują przebiegi prostokątne, których zbocze narastające występuje w tym samym momencie (Match0), położenie zbocza opadającego zaś jest indywidualnie kontrolowane za pomocą wartości rejestrów PWMPR Maksymalna liczba tak wytworzonych przebiegów wynosi 6. Rys. 5. Połączenie przerzutników RS w trybie kontroli położenia pojedynczego zbocza Przykładowa konfiguracja modułu PWM mikrokontrolera LPC2148 jest podana niżej. #include <lpc214x.h> #define Okres // wartosc wplywa na okres generowanego przebiegu #define Krok 10 // wartosc wplywa na wypelnienie int main (void) { // PINSEL - rejestr wyboru trybu pracy portu // wybrano kanal PWM5 PINSEL1 =(1<<10); // Zerowanie preskalera. PWMTC jest inkrementowany w kazdym cyklu magistrali VPB // Rozpoczecie zawsze od wartosci rownej zero PWMPR=0x00; // Odblokowanie wybranego kanalu PWM i ustawienie do pracy // w trybie kontroli pojedynczego zbocza PWMPCR=(1<<13); // PWMMRO - rejestr, w ktorym jest zawarty okres przebiegu // W trybie kontroli pojedynczego zbocza jest on taki sam dla // wszytskich aktywnych kanalow PWMMR0 = Okres; PWMMR5 = Okres/Krok; PWMMCR=0x02; //Reset PWMTC (licznika PWM) z PWMMR0 PWMLER=(1<<5); // Zatrzask dla wybranego kanalu PWM PWMTCR=0x02; // Reset PWMTC (licznika PWM) // Odblokowanie licznika, preskalera oraz odblokowanie modulu PWM } PWMTCR=0x09; 41

42 Tryb kontroli położenia obu zboczy Sygnał Match0 jest wykorzystany tylko do zerowania licznika PWM, sygnały Match1...6 sterują zaś parami momentami pojawienia się (względem momentu zerowania licznika) zarówno zboczy narastających jak i opadających. W tym trybie maksymalna liczba wytworzonych przebiegów PWM wynosi 3 (wyjścia PWM2, 4, 6). Rys. 6. Połączenie przerzutników RS w trybie kontroli położenia obu zboczy 2.4. Sterowanie serwomechanizmem Schemat blokowy serwomechanizmu jest pokazany na poniższym rysunku. Rys. 7. Schemat blokowy serwomechanizmu Silnik napędowy - silnik komutatorowy prądu stałego, pracujący w zakresie napięć od 4,8 do 6VDC. Pomimo niewielkich rozmiarów silnik taki wyróżnia się bardzo starannym wykonaniem i bardzo dużą sprawnością. Zastosowanie tego rodzaju silnika jest konieczne, ponieważ serwomechanizm musi pracować z dużą prędkością i jednocześnie wytwarzać duży moment obrotowy. 42

ZL9ARM płytka bazowa dla modułów diparm z mikrokontrolerami LPC213x/214x

ZL9ARM płytka bazowa dla modułów diparm z mikrokontrolerami LPC213x/214x ZL9ARM płytka bazowa dla modułów diparm z mikrokontrolerami LPC213x/214x ZL9ARM Płytka bazowa dla modułów diparm z mikrokontrolerami LPC213x/214x 1 ZL9ARM to uniwersalna płyta bazowa dla modułów diparm

Bardziej szczegółowo

ZL6ARM Zestaw uruchomieniowy dla mikrokontrolerów LPC213x. Tab. 1. Zestawienie najważniejszych parametrów wybranych mikrokontrolerów z rodziny LPC213x

ZL6ARM Zestaw uruchomieniowy dla mikrokontrolerów LPC213x. Tab. 1. Zestawienie najważniejszych parametrów wybranych mikrokontrolerów z rodziny LPC213x ZL6ARM Zestaw uruchomieniowy dla mikrokontrolerów LPC213x (rdzeń ARM7TMDI-S) Kompatybilny z zestawem MCB2130 firmy Keil! Zestaw ZL6ARM opracowano z myślą o elektronikach chcących szybko zaznajomić się

Bardziej szczegółowo

ZL8AVR. Płyta bazowa dla modułów dipavr

ZL8AVR. Płyta bazowa dla modułów dipavr ZL8AVR Płyta bazowa dla modułów dipavr Zestaw ZL8AVR to płyta bazowa dla modułów dipavr (np. ZL7AVR z mikrokontrolerem ATmega128 lub ZL12AVR z mikrokontrolerem ATmega16. Wyposażono ją w wiele klasycznych

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

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

Wydział Elektryczny. Katedra Automatyki i Elektroniki. Instrukcja. do ćwiczeń laboratoryjnych z przedmiotu: SYSTEMY CYFROWE 1.

Wydział Elektryczny. Katedra Automatyki i Elektroniki. Instrukcja. do ćwiczeń laboratoryjnych z przedmiotu: SYSTEMY CYFROWE 1. Politechnika Białostocka Wydział Elektryczny Katedra Automatyki i Elektroniki Instrukcja do ćwiczeń laboratoryjnych z przedmiotu: SYSTEMY CYFROWE 1 PAMIĘCI SZEREGOWE EEPROM Ćwiczenie 3 Opracował: dr inŝ.

Bardziej szczegółowo

ZL15AVR. Zestaw uruchomieniowy dla mikrokontrolerów ATmega32

ZL15AVR. Zestaw uruchomieniowy dla mikrokontrolerów ATmega32 ZL15AVR Zestaw uruchomieniowy dla mikrokontrolerów ATmega32 ZL15AVR jest uniwersalnym zestawem uruchomieniowym dla mikrokontrolerów ATmega32 (oraz innych w obudowie 40-wyprowadzeniowej). Dzięki wyposażeniu

Bardziej szczegółowo

ZL29ARM. Zestaw uruchomieniowy dla mikrokontrolerów STM32F107

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

Bardziej szczegółowo

ZL9AVR. Płyta bazowa dla modułów ZL7AVR (ATmega128) i ZL1ETH (RTL8019)

ZL9AVR. Płyta bazowa dla modułów ZL7AVR (ATmega128) i ZL1ETH (RTL8019) ZL9AVR Płyta bazowa dla modułów ZL7AVR (ATmega128) i ZL1ETH (RTL8019) ZL9AVR to płyta bazowa umożliwiająca wykonywanie różnorodnych eksperymentów związanych z zastosowaniem mikrokontrolerów AVR w aplikacjach

Bardziej szczegółowo

LITEcompLPC1114. Zestaw ewaluacyjny z mikrokontrolerem LPC1114 (Cortex-M0) Sponsorzy:

LITEcompLPC1114. Zestaw ewaluacyjny z mikrokontrolerem LPC1114 (Cortex-M0) Sponsorzy: LITEcompLPC1114 Zestaw ewaluacyjny z mikrokontrolerem LPC1114 (Cortex-M0) Bezpłatny zestaw dla Czytelników książki Mikrokontrolery LPC1100. Pierwsze kroki LITEcompLPC1114 jest doskonałą platformą mikrokontrolerową

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

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

STM32 Butterfly. Zestaw uruchomieniowy dla mikrokontrolerów STM32F107

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

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

Uniwersalny zestaw uruchomieniowy dla mikrokontrolerów AVR

Uniwersalny zestaw uruchomieniowy dla mikrokontrolerów AVR Uniwersalny zestaw uruchomieniowy dla mikrokontrolerów AVR ZL10AVR Zestaw ZL10AVR umożliwia wszechstronne przetestowanie aplikacji wykonanych z wykorzystaniem mikrokontrolerów z rodziny AVR (ATtiny, ATmega,

Bardziej szczegółowo

AVREVB1. Zestaw uruchomieniowy dla mikrokontrolerów AVR. Zestawy uruchomieniowe www.evboards.eu

AVREVB1. Zestaw uruchomieniowy dla mikrokontrolerów AVR. Zestawy uruchomieniowe www.evboards.eu AVREVB1 Zestaw uruchomieniowy dla mikrokontrolerów AVR. 1 Zestaw AVREVB1 umożliwia szybkie zapoznanie się z bardzo popularną rodziną mikrokontrolerów AVR w obudowach 40-to wyprowadzeniowych DIP (układy

Bardziej szczegółowo

ZL4PIC uniwersalny zestaw uruchomieniowy dla mikrokontrolerów PIC (v.1.0) Uniwersalny zestaw uruchomieniowy dla mikrokontrolerów PIC

ZL4PIC uniwersalny zestaw uruchomieniowy dla mikrokontrolerów PIC (v.1.0) Uniwersalny zestaw uruchomieniowy dla mikrokontrolerów PIC 1 ZL4PIC Uniwersalny zestaw uruchomieniowy dla mikrokontrolerów PIC Zestaw jest przeznaczony dla elektroników zajmujących się aplikacjami mikrokontrolerów PIC. Jest on przystosowany do współpracy z mikrokontrolerami

Bardziej szczegółowo

ZL6PLD zestaw uruchomieniowy dla układów FPGA z rodziny Spartan 3 firmy Xilinx

ZL6PLD zestaw uruchomieniowy dla układów FPGA z rodziny Spartan 3 firmy Xilinx ZL6PLD Zestaw uruchomieniowy dla układów FPGA z rodziny Spartan 3 firmy Xilinx 1 ZL6PLD jest zestawem uruchomieniowym dla układów FPGA z rodziny Spartan 3 firmy Xilinx. Oprócz układu PLD o dużych zasobach

Bardziej szczegółowo

Ćwiczenie 5 Zegar czasu rzeczywistego na mikrokontrolerze AT90S8515

Ćwiczenie 5 Zegar czasu rzeczywistego na mikrokontrolerze AT90S8515 Laboratorium Techniki Mikroprocesorowej Informatyka studia dzienne Ćwiczenie 5 Zegar czasu rzeczywistego na mikrokontrolerze AT90S8515 Cel ćwiczenia Celem ćwiczenia jest poznanie możliwości nowoczesnych

Bardziej szczegółowo

Politechnika Białostocka

Politechnika Białostocka Politechnika Białostocka Wydział Elektryczny Katedra Automatyki i Elektroniki Kod przedmiotu: TS1C 622 388 Instrukcja do ćwiczeń laboratoryjnych z przedmiotu: Elektronika samochodowa Temat: Programowanie

Bardziej szczegółowo

MODBUS RTU wersja M1.14 protokół komunikacyjny wyświetlaczy LDN

MODBUS RTU wersja M1.14 protokół komunikacyjny wyświetlaczy LDN MODBUS RTU wersja M1.14 protokół komunikacyjny do wyświetlaczy SEM 04.2010 Str. 1/5 MODBUS RTU wersja M1.14 protokół komunikacyjny wyświetlaczy LDN W wyświetlaczach LDN protokół MODBUS RTU wykorzystywany

Bardziej szczegółowo

Wizualizacja stanu czujników robota mobilnego. Sprawozdanie z wykonania projektu.

Wizualizacja stanu czujników robota mobilnego. Sprawozdanie z wykonania projektu. Wizualizacja stanu czujników robota mobilnego. Sprawozdanie z wykonania projektu. Maciek Słomka 4 czerwca 2006 1 Celprojektu. Celem projektu było zbudowanie modułu umożliwiającego wizualizację stanu czujnikó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

USB interface in 8-bit microcontrollers PIC18F family manufactured by Microchip.

USB interface in 8-bit microcontrollers PIC18F family manufactured by Microchip. 1 Mateusz Klimkowski IV rok Koło Naukowe Techniki Cyfrowej dr inż. Wojciech Mysiński opiekun naukowy USB interface in 8-bit microcontrollers PIC18F family manufactured by Microchip. Interfejs USB w 8-bitowych

Bardziej szczegółowo

Programowalne Układy Cyfrowe Laboratorium

Programowalne Układy Cyfrowe Laboratorium Zdjęcie opracowanej na potrzeby prowadzenia laboratorium płytki przedstawiono na Rys.1. i oznaczono na nim najważniejsze elementy: 1) Zasilacz i programator. 2) Układ logiki programowalnej firmy XILINX

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

ADVANCE ELECTRONIC. Instrukcja obsługi aplikacji. Modbus konfigurator. Modbus konfigurator. wersja 1.1

ADVANCE ELECTRONIC. Instrukcja obsługi aplikacji. Modbus konfigurator. Modbus konfigurator. wersja 1.1 Instrukcja obsługi aplikacji 1 1./ instalacja aplikacji. Aplikacja służy do zarządzania, konfigurowania i testowania modułów firmy Advance Electronic wyposażonych w RS485 pracujących w trybie half-duplex.

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

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

Instrukcja obsługi programatora AVR Prog USB v2

Instrukcja obsługi programatora AVR Prog USB v2 Instrukcja obsługi programatora AVR Prog USB v2 Instrukcja obsługi programatora AVR Prog USB v2, STK500 v2 www.and-tech.pl Strona 1 Zawartość Instrukcja obsługi programatora AVR Prog USB v2, STK500 v2

Bardziej szczegółowo

Instrukcja użytkownika ARSoft-WZ1

Instrukcja użytkownika ARSoft-WZ1 05-090 Raszyn, ul Gałczyńskiego 6 tel (+48) 22 101-27-31, 22 853-48-56 automatyka@apar.pl www.apar.pl Instrukcja użytkownika ARSoft-WZ1 wersja 3.x 1. Opis Aplikacja ARSOFT-WZ1 umożliwia konfigurację i

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

Obługa czujników do robota śledzącego linie. Michał Wendland 171628 15 czerwca 2011

Obługa czujników do robota śledzącego linie. Michał Wendland 171628 15 czerwca 2011 Obługa czujników do robota śledzącego linie. Michał Wendland 171628 15 czerwca 2011 1 Spis treści 1 Charakterystyka projektu. 3 2 Schematy układów elektronicznych. 3 2.1 Moduł czujników.................................

Bardziej szczegółowo

Sterownik Spid Pant 8 i Ant 8. Podręcznik użytkowania

Sterownik Spid Pant 8 i Ant 8. Podręcznik użytkowania Sterownik Spid Pant 8 i Ant 8 Podręcznik użytkowania Spis treści Spis treści...2 Wprowadzenie...3 Komplet...3 Dane techniczne...3 Panel sterujący...4 Panel tylny...5 Obsługa sterownika...6 Zmiana trybu

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

Komunikacja w mikrokontrolerach Laboratorium

Komunikacja w mikrokontrolerach Laboratorium Laboratorium Ćwiczenie 2 Magistrala UART Program ćwiczenia: konfiguracja transmisji danych między komputerem PC a mikrokontrolerem przy użyciu magistrali UART. Zagadnienia do przygotowania: podstawy programowania

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

Katedra Metrologii i Systemów Elektronicznych. Interfejs USB

Katedra Metrologii i Systemów Elektronicznych. Interfejs USB Interfejs USB Założenia USB Łatwość dołączenia do PC urządzeń peryferyjnych; Umożliwienie dołączania nowych klas urządzeń, które zwiększają możliwości PC. Niski koszt uzyskania szybkości transmisji do

Bardziej szczegółowo

1. Opis. 2. Wymagania sprzętowe:

1. Opis. 2. Wymagania sprzętowe: 1. Opis Aplikacja ARSOFT-WZ2 umożliwia konfigurację, wizualizację i rejestrację danych pomiarowych urządzeń produkcji APAR wyposażonych w interfejs komunikacyjny RS232/485 oraz protokół MODBUS-RTU. Aktualny

Bardziej szczegółowo

OPTIMA PC v2.2.1. Program konfiguracyjny dla cyfrowych paneli domofonowy serii OPTIMA 255 2011 ELFON. Instrukcja obsługi. Rev 1

OPTIMA PC v2.2.1. Program konfiguracyjny dla cyfrowych paneli domofonowy serii OPTIMA 255 2011 ELFON. Instrukcja obsługi. Rev 1 OPTIMA PC v2.2.1 Program konfiguracyjny dla cyfrowych paneli domofonowy serii OPTIMA 255 Instrukcja obsługi Rev 1 2011 ELFON Wprowadzenie OPTIMA PC jest programem, który w wygodny sposób umożliwia konfigurację

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

Instrukcja obsługi programatora AVR Prog USB v2

Instrukcja obsługi programatora AVR Prog USB v2 Instrukcja obsługi programatora AVR Prog USB v2 Instrukcja obsługi programatora AVR Prog USB v2, STK500 v2 Strona 1 Zawartość 1. Instalacja... 3 2. Instalacja sterowników w trybie HID.... 3 3. Programowanie

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

Kod produktu: MP01611

Kod produktu: MP01611 CZYTNIK RFID ZE ZINTEGROWANĄ ANTENĄ, WYJŚCIE RS232 (TTL) Moduł stanowi tani i prosty w zastosowaniu czytnik RFID dla transponderów UNIQUE 125kHz, umożliwiający szybkie konstruowanie urządzeń do bezstykowej

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

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

RSD Uniwersalny rejestrator danych Zaprojektowany do pracy w przemyśle

RSD Uniwersalny rejestrator danych Zaprojektowany do pracy w przemyśle Uniwersalny rejestrator danych pochodzących z portu szeregowego RS 232 Uniwersalny rejestrator danych Zaprojektowany do pracy w przemyśle - UNIWERSALNY REJESTRATOR DANYCH Max. 35 GB pamięci! to nowoczesne

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

Zestaw Startowy EvB. Więcej informacji na stronie: http://and-tech.pl/zestaw-evb-5-1/

Zestaw Startowy EvB. Więcej informacji na stronie: http://and-tech.pl/zestaw-evb-5-1/ Zestaw Startowy EvB Zestaw startowy EvB 5.1 z mikrokontrolerem ATMega32 jest jednym z najbardziej rozbudowanych zestawów dostępnych na rynku. Został zaprojektowany nie tylko z myślą o początkujących adeptach

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

THP-100 su Obsługa oprogramowania oraz instrukcja wzorcowania

THP-100 su Obsługa oprogramowania oraz instrukcja wzorcowania THP-100 su Obsługa oprogramowania oraz instrukcja wzorcowania Spis treści Konfiguracja programu...3 Odczyt pomiarów...4 Wzorcowanie...6 Edycja ręczna...7 Edycja automatyczna...7 Konfiguracja...10 Konfiguracja

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

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

1. Cel ćwiczenia. 2. Podłączenia urządzeń zewnętrznych w sterowniku VersaMax Micro

1. Cel ćwiczenia. 2. Podłączenia urządzeń zewnętrznych w sterowniku VersaMax Micro 1. Cel ćwiczenia Celem ćwiczenia jest zaprojektowanie sterowania układem pozycjonowania z wykorzystaniem sterownika VersaMax Micro oraz silnika krokowego. Do algorytmu pozycjonowania wykorzystać licznik

Bardziej szczegółowo

Przemysłowy odtwarzacz plików MP3

Przemysłowy odtwarzacz plików MP3 Przemysłowy odtwarzacz plików MP3 WWW.DIGINN.EU Spis treści 1. Opis odtwarzacza MP3... 3 2. Wyprowadzenia odtwarzacza... 4 2.1 Wymiary płytki... 6 4. Tryby pracy... 8 5. Podłączanie MP3 Playera... 9 6.

Bardziej szczegółowo

Tytuł: Instrukcja obsługi Modułu Komunikacji internetowej MKi-sm TK / 3001 / 016 / 002. Wersja wykonania : wersja oprogramowania v.1.

Tytuł: Instrukcja obsługi Modułu Komunikacji internetowej MKi-sm TK / 3001 / 016 / 002. Wersja wykonania : wersja oprogramowania v.1. Zakład Elektronicznych Urządzeń Pomiarowych POZYTON sp. z o. o. 42-200 Częstochowa ul. Staszica 8 p o z y t o n tel. : (034) 361-38-32, 366-44-95, 364-88-82, 364-87-50, 364-87-82, 364-87-62 tel./fax: (034)

Bardziej szczegółowo

Instrukcja MM-717 Tarnów 2010

Instrukcja MM-717 Tarnów 2010 Instrukcja MM-717 Tarnów 2010 Przeznaczenie modułu komunikacyjnego MM-717. Moduł komunikacyjny MM-717 służy do realizacji transmisji z wykorzystaniem GPRS pomiędzy systemami nadrzędnymi (systemami SCADA)

Bardziej szczegółowo

Karta katalogowa JAZZ OPLC JZ10-11-PT15/JZ10-J-PT15. 3 wejścia cyfrowe, 3 wejścia analogowe/cyfrowe, 3 wejścia PT1000/NI1000

Karta katalogowa JAZZ OPLC JZ10-11-PT15/JZ10-J-PT15. 3 wejścia cyfrowe, 3 wejścia analogowe/cyfrowe, 3 wejścia PT1000/NI1000 Karta katalogowa JAZZ OPLC JZ10-11-PT15/JZ10-J-PT15 3 wejścia cyfrowe, 3 wejścia analogowe/cyfrowe, 3 wejścia PT1000/NI1000 5 wyjść przekaźnikowych, 1 wyjście tranzystorowe pnp/npn Specyfikacja techniczna

Bardziej szczegółowo

Wydział Elektryczny. Katedra Telekomunikacji i Aparatury Elektronicznej. Konstrukcje i Technologie w Aparaturze Elektronicznej.

Wydział Elektryczny. Katedra Telekomunikacji i Aparatury Elektronicznej. Konstrukcje i Technologie w Aparaturze Elektronicznej. Politechnika Białostocka Wydział Elektryczny Katedra Telekomunikacji i Aparatury Elektronicznej Konstrukcje i Technologie w Aparaturze Elektronicznej Ćwiczenie nr 4 Temat: Sterowanie sekwencyjne wyświetlaczem

Bardziej szczegółowo

IIPW_SML3_680 (Z80) przewodnik do ćwiczeń laboratoryjnych

IIPW_SML3_680 (Z80) przewodnik do ćwiczeń laboratoryjnych IIPW_SML3_680 (Z80) przewodnik do ćwiczeń laboratoryjnych wrzesieo 2010 UWAGA: Moduł jest zasilany napięciem do 3.3V i nie może współpracowad z wyjściami układów zasilanych z wyższych napięd. Do pracy

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

RPTC CONTROLLER (v1.11) STEROWNIK PRZEMIENNIKA RADIOWEGO OBSŁUGA KOMUNIKATÓW GŁOSOWYCH OBSŁUGA KOMUNIKATÓW IDCW OPCJONALNY MODUŁ GSM

RPTC CONTROLLER (v1.11) STEROWNIK PRZEMIENNIKA RADIOWEGO OBSŁUGA KOMUNIKATÓW GŁOSOWYCH OBSŁUGA KOMUNIKATÓW IDCW OPCJONALNY MODUŁ GSM RPTC CONTROLLER (v1.11) STEROWNIK PRZEMIENNIKA RADIOWEGO OBSŁUGA KOMUNIKATÓW GŁOSOWYCH OBSŁUGA KOMUNIKATÓW IDCW OPCJONALNY MODUŁ GSM Instrukcja użytkownika Instrukcja oprogramowania konfiguracyjnego Designer:

Bardziej szczegółowo

Programowanie mikrokontrolerów. 15 stycznia 2008

Programowanie mikrokontrolerów. 15 stycznia 2008 Programowanie mikrokontrolerów Marcin Engel Marcin Peczarski 15 stycznia 2008 RS232 Jeden z najstarszych interfejsów szeregowych Pierwotne przeznaczenie to łączenie terminali znakowych z komputerem, często

Bardziej szczegółowo

Wydział Elektryczny. Katedra Automatyki i Elektroniki. Instrukcja do ćwiczeń laboratoryjnych z przedmiotu: TECHNIKA CYFROWA 2 TS1C300 020

Wydział Elektryczny. Katedra Automatyki i Elektroniki. Instrukcja do ćwiczeń laboratoryjnych z przedmiotu: TECHNIKA CYFROWA 2 TS1C300 020 Politechnika Białostocka Wydział Elektryczny Katedra Automatyki i Elektroniki Instrukcja do ćwiczeń laboratoryjnych z przedmiotu: TEHNIKA YFOWA 2 T1300 020 Ćwiczenie Nr 6 EALIZAJA FUNKJI EJETOWYH W TUKTUAH

Bardziej szczegółowo

1.10 MODUŁY KOMUNIKACYJNE

1.10 MODUŁY KOMUNIKACYJNE ASTOR GE INTELLIGENT PLATFORMS - VERSAMAX NANO/MICRO 1.10 MODUŁY KOMUNIKACYJNE IC200SET001 konwerter łącza RS (RS232 lub RS485) na Ethernet (10/100Mbit), obsługiwane protokoły: SRTP, Modbus TCP IC200USB001

Bardziej szczegółowo

Modułowy programowalny przekaźnik czasowy firmy Aniro.

Modułowy programowalny przekaźnik czasowy firmy Aniro. Modułowy programowalny przekaźnik czasowy firmy Aniro. Rynek sterowników programowalnych Sterowniki programowalne PLC od wielu lat są podstawowymi systemami stosowanymi w praktyce przemysłowej i stały

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

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

Przystawka oscyloskopowa z analizatorem stanów logicznych. Seria DSO-29xxA&B. Skrócona instrukcja użytkownika

Przystawka oscyloskopowa z analizatorem stanów logicznych. Seria DSO-29xxA&B. Skrócona instrukcja użytkownika Przystawka oscyloskopowa z analizatorem stanów logicznych Seria DSO-29xxA&B Skrócona instrukcja użytkownika Zawartość zestawu: Przystawka DSO-29XXA lub DSO-29XXB Moduł analizatora stanów logicznych Sondy

Bardziej szczegółowo

1.1 Co to jest USBasp?... 3 1.2 Parametry techniczne... 3 1.3 Obsługiwane procesory... 3 1.4 Zawartość zestawu... 4

1.1 Co to jest USBasp?... 3 1.2 Parametry techniczne... 3 1.3 Obsługiwane procesory... 3 1.4 Zawartość zestawu... 4 2012 Programator AVR USBasp Instrukcja obsługi 2012-02-11 2 SPIS TREŚCI 1. WSTĘP... 3 1.1 Co to jest USBasp?... 3 1.2 Parametry techniczne... 3 1.3 Obsługiwane procesory... 3 1.4 Zawartość zestawu... 4

Bardziej szczegółowo

Konwerter DAN485-MDIP

Konwerter DAN485-MDIP Konwerter DAN485-MDIP KONWERTER DAN485-MDIP służy do zamiany standardu komunikacyjnego z RS232 na RS485 (lub RS422). Dzięki niemu możliwe jest transmitowanie danych na większe odległości (do 1200m) niż

Bardziej szczegółowo

Systemy uruchomieniowe

Systemy uruchomieniowe Systemy uruchomieniowe Przemysław ZAKRZEWSKI Systemy uruchomieniowe (1) 1 Środki wspomagające uruchamianie systemów mikroprocesorowych Symulator mikroprocesora Analizator stanów logicznych Systemy uruchomieniowe:

Bardziej szczegółowo

JAZZ OPLC JZ20-R10 i JZ20-R16

JAZZ OPLC JZ20-R10 i JZ20-R16 Karta katalogowa JAZZ OPLC i W dokumencie znajduje się specyfikacja Unitronics Jazz Micro-OPLC oraz. Dodatkowe informacje znajdują się na płycie instalacyjnej CD Unitronics i w bibliotece technicznej na

Bardziej szczegółowo

Instrukcja obsługi programatora AVR Prog USB v2

Instrukcja obsługi programatora AVR Prog USB v2 Instrukcja obsługi programatora AVR Prog USB v2 Strona 1 Spis treści 1. Instalacja...3 2. Instalacja sterowników w trybie HID....3 3. Programowanie w trybie HID...4 4. Instalacja w trybie COM....5 5. Programowanie

Bardziej szczegółowo

ISBN. Copyright by Wydawnictwo BTC Legionowo 2010

ISBN. Copyright by Wydawnictwo BTC Legionowo 2010 Książka jest praktycznym przewodnikiem po rodzinie mikrokontrolerów LPC2000 (rdzeń ARM7TDMI) oraz sposobach ich programowania w języku C. Omówiono w niej zarówno budowę i działanie bloków peryferyjnych,

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

INSTRUKCJA PANEL STERUJĄCY MT-5

INSTRUKCJA PANEL STERUJĄCY MT-5 INSTRUKCJA PANEL STERUJĄCY MT-5 Panel sterujący MT-5 miernik cyfrowy z wyświetlaczem LCD. Wskazuje informacje systemu, oznaczenia wykrytych błędów i aktualne parametry pracy. Duże i czytelne symbole i

Bardziej szczegółowo

Konfiguracja i programowanie sterownika GE Fanuc VersaMax z modelem procesu przepływów i mieszania cieczy. Przebieg ćwiczenia

Konfiguracja i programowanie sterownika GE Fanuc VersaMax z modelem procesu przepływów i mieszania cieczy. Przebieg ćwiczenia Ćwiczenie VI LABORATORIUM MECHATRONIKI IEPiM Konfiguracja i programowanie sterownika GE Fanuc VersaMax z modelem procesu przepływów i mieszania cieczy Przebieg ćwiczenia 1. Rozpoznać elementy modelu układu

Bardziej szczegółowo

Instrukcja obsługi programatora AVR Prog USB v2

Instrukcja obsługi programatora AVR Prog USB v2 Instrukcja obsługi programatora AVR Prog USB v2 Instrukcja obsługi programatora AVR Prog USB v2, STK500 v2 www.and-tech.pl Strona 1 Zawartość Instrukcja obsługi programatora AVR Prog USB v2, STK500 v2

Bardziej szczegółowo

ZL1MSP430 Zestaw startowy dla mikrokontrolerów MSP430F11xx/11xxA ZL1MSP430

ZL1MSP430 Zestaw startowy dla mikrokontrolerów MSP430F11xx/11xxA ZL1MSP430 ZL1MSP430 Zestaw startowy dla mikrokontrolerów MSP430F11xx/11xxA ZL1MSP430 Zestaw startowy dla mikrokontrolerów MSP430F11xx/11xxA Mikrokontrolery z rodziny MSP430 słyną z niewielkiego poboru mocy i możliwości

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

Electronic Infosystems

Electronic Infosystems Department of Optoelectronics and Electronic Systems Faculty of Electronics, Telecommunications and Informatics Gdansk University of Technology Electronic Infosystems Microserver TCP/IP with CS8900A Ethernet

Bardziej szczegółowo

Konfiguracja parametrów pozycjonowania GPS 09.05.2008 1/5

Konfiguracja parametrów pozycjonowania GPS 09.05.2008 1/5 Konfiguracja parametrów pozycjonowania GPS 09.05.2008 1/5 Format złożonego polecenia konfigurującego system pozycjonowania GPS SPY-DOG SAT ProSafe-Flota -KGPS A a B b C c D d E e F f G g H h I i J j K

Bardziej szczegółowo

Karta katalogowa JAZZ OPLC JZ10-11-UN20/JZ10-J-UN20. 9 wejść cyfrowych, 2 wejścia analogowe/cyfrowe, 1 wejście analogowe, 1 wejście PT100/Termoparowe

Karta katalogowa JAZZ OPLC JZ10-11-UN20/JZ10-J-UN20. 9 wejść cyfrowych, 2 wejścia analogowe/cyfrowe, 1 wejście analogowe, 1 wejście PT100/Termoparowe Karta katalogowa JAZZ OPLC JZ10-11-UN20/JZ10-J-UN20 9 wejść cyfrowych, 2 wejścia analogowe/cyfrowe, 1 wejście analogowe, 1 wejście PT100/Termoparowe 5 wyjść przekaźnikowych, 2 wyjścia tranzystorowe pnp

Bardziej szczegółowo

Modem Bluetooth MBL-232/UK

Modem Bluetooth MBL-232/UK Modem Bluetooth MBL-232/UK Dziękujemy za wybór naszego produktu. Niniejsza instrukcja pomoże państwu w prawidłowym podłączeniu urządzenia, uruchomieniu, oraz umożliwi prawidłowe z niego korzystanie. Przed

Bardziej szczegółowo

1. Cel ćwiczenia. Celem ćwiczenia jest zestawienie połączenia pomiędzy dwoma sterownikami PLC za pomocą protokołu Modbus RTU.

1. Cel ćwiczenia. Celem ćwiczenia jest zestawienie połączenia pomiędzy dwoma sterownikami PLC za pomocą protokołu Modbus RTU. 1. Cel ćwiczenia Celem ćwiczenia jest zestawienie połączenia pomiędzy dwoma sterownikami PLC za pomocą protokołu Modbus RTU. 2. Porty szeregowe w sterowniku VersaMax Micro Obydwa porty szeregowe sterownika

Bardziej szczegółowo

MikloBit ul. Cyprysowa 7/5 43-600 Jaworzno. www.miklobit.com support@miklobit.com. JTAG + ISP dla AVR. rev. 1.1 2006.03.

MikloBit ul. Cyprysowa 7/5 43-600 Jaworzno. www.miklobit.com support@miklobit.com. JTAG + ISP dla AVR. rev. 1.1 2006.03. MikloBit ul. Cyprysowa 7/5 43-600 Jaworzno www.miklobit.com support@miklobit.com JTAG + ISP dla AVR rev. 1.1 2006.03.10 Spis treści 1.Wprowadzenie... 3 2.Interfejs JTAG... 4 2.1.Złącze interfejsu JTAG...

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

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

Interfejs USB-RS485 KOD: INTUR. v.1.0. Zastępuje wydanie: 2 z dnia 19.12.2012

Interfejs USB-RS485 KOD: INTUR. v.1.0. Zastępuje wydanie: 2 z dnia 19.12.2012 Interfejs USB-RS485 v.1.0 KOD: PL Wydanie: 3 z dnia 05.12.2013 Zastępuje wydanie: 2 z dnia 19.12.2012 SPIS TREŚCI 1. Opis ogólny.... 3 2. Instalacja interfejsu w systemie operacyjnym.... 4 3. Przyłączenie

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

Vinculum scalony host USB

Vinculum scalony host USB Vinculum scalony host USB Układy USB firmy FTDI zdobyły w ciągu ostatnich kilku lat dużą popularność głównie dzięki łatwości ich stosowania i dostępności sterowników. Firma ta może pochwalić się kolejnym

Bardziej szczegółowo

ARS3-MODEM dokumentacja modemu radiowego do lokalnej transmisji danych w wolnych pasmach 433MHz i 868MHz

ARS3-MODEM dokumentacja modemu radiowego do lokalnej transmisji danych w wolnych pasmach 433MHz i 868MHz ARS3-MODEM dokumentacja modemu radiowego do lokalnej transmisji danych w wolnych pasmach 433MHz i 868MHz dokument DOK 04-05-12 wersja 1.0 arskam.com www.arskam.com 1 firma ARIES Warszawa Polska 1. Zastosowania

Bardziej szczegółowo

Płyta uruchomieniowa EBX51

Płyta uruchomieniowa EBX51 Dariusz Kozak ZESTAW URUCHOMIENIOWY MIKROKOMPUTERÓW JEDNOUKŁADOWYCH MCS-51 ZUX51 Płyta uruchomieniowa EBX51 INSTRUKCJA OBSŁUGI Wszystkie prawa zastrzeżone Kopiowanie, powielanie i rozpowszechnianie w jakiejkolwiek

Bardziej szczegółowo

Instrukcja obsługi. PROGRAMATOR dualavr. redflu Tarnów

Instrukcja obsługi. PROGRAMATOR dualavr. redflu Tarnów 2008 Instrukcja obsługi PROGRAMATOR dualavr redflu Tarnów 1. Instalacja. Do podłączenia programatora z PC wykorzystywany jest przewód USB A-B (często spotykany przy drukarkach). Zalecane jest wykorzystanie

Bardziej szczegółowo

High Speed USB 2.0 Development Board

High Speed USB 2.0 Development Board High Speed USB 2.0 Development Board Instrukcja użytkownika. wersja 0.1 Autor: Łukasz Krzak Spis treści. 1. Opis układu 1.1. Widok płytki 1.2. Diagram przepływu informacji 2. Konfiguracja układu. 2.1.

Bardziej szczegółowo

Ćwiczenia z S7-1200. S7-1200 jako Profinet-IO Controller. FAQ Marzec 2012

Ćwiczenia z S7-1200. S7-1200 jako Profinet-IO Controller. FAQ Marzec 2012 Ćwiczenia z S7-1200 S7-1200 jako Profinet-IO Controller FAQ Marzec 2012 Spis treści 1 Opis zagadnienie poruszanego w ćwiczeniu. 3 1.1 Wykaz urządzeń..... 3 2 KONFIGURACJA S7-1200 PLC.. 4 2.1 Nowy projekt.

Bardziej szczegółowo