Aplikacje Systemów Wbudowanych



Podobne dokumenty
1. Instalacja modułu w systemie Windows.

TM PROGRAM TERMINALA RS232 DLA MULTIPLEKSERA 8XRS232 / ETHERNET 10BASE-T

Podstawy programowania, Poniedziałek , 8-10 Projekt, część 1

SIECI KOMPUTEROWE I TECHNOLOGIE INTERNETOWE

1.Wstęp. 2.Generowanie systemu w EDK

Instytut Teleinformatyki

SYSTEMY CZASU RZECZYWISTEGO (SCR)

Site Installer v2.4.xx

Moduł Ethernetowy ETHM-1

THOMSON SpeedTouch 716 WL

1. Instalacja systemu Integra 7

OPIS PROGRAMU OBSŁUGI STEROWNIKÓW INTECONT >> WAGMASTER << >> INTECONT <<

RSD Uniwersalny rejestrator danych Zaprojektowany do pracy w przemyśle

Konfiguracja i programowanie PLC Siemens SIMATIC S7 i panelu tekstowego w układzie sterowania napędami elektrycznymi. Przebieg ćwiczenia

Rodzaj kabla Kabel szeregowy skrosowany (tzw. zero modem kabel) Kabel USB host-to-host Kabel RS232/PPI multimaster Kabel USB/PPI multimaster *

Wstęp do Informatyki i Programowania Laboratorium: Lista 0 Środowisko programowania

Instrukcja użytkowania oprogramowania SZOB LITE

Konwerter Transmisji KT-02

STANOWISKO DO BADANIA PROCESÓW ODZYSKU CIEPŁA ODPADOWEGO. (PROTOTYP)

1. Tworzenie nowego projektu.

Multimetr cyfrowy VA18B Instrukcja instalacji i obsługi. oprogramowania PC-LINK

THOMSON SpeedTouch 780 WL

Połączenia. Obsługiwane systemy operacyjne. Strona 1 z 5

Instrukcja instalacji i obsługi modemu ED77 pod systemem operacyjnym Windows 98 SE (wydanie drugie)

Politechnika Lubelska. Wydział Elektrotechniki i Informatyki Katedra Automatyki i Metrologii

instrukcja instalacji modemu SpeedTouch 605s

Moduł Ethernetowy. instrukcja obsługi. Spis treści

Wyświetlacz alfanumeryczny LCD zbudowany na sterowniku HD44780

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

LABORATORIUM TELEINFORMATYKI W GÓRNICTWIE

SYSTEMY OPERACYJNE I SIECI KOMPUTEROWE. Tryb konsolowy ćwiczenie b

RPC. Zdalne wywoływanie procedur (ang. Remote Procedure Calls )

PRZEZNACZENIE BUDOWA MT6050 1/6. Przycisk RESET. Diody statusowe Przełączniki konfiguracyjne. Gniazdo bezpiecznikowe. Złącze zasilania.

OPIS PROGRAMU APEK MULTIPLEKSER RX03

MIKROPROCESOROWY STEROWNIK PARAMETRÓW KLIMATYCZNYCH

Termometr LB-471T INSTRUKCJA UśYTKOWANIA wersja instrukcji 1.1

Dokumentacja Techniczna. Konwerter USB/RS-232 na RS-285/422 COTER-24I COTER-24N

Instalacja programu Ozon.

Tak wygląda taki kabel

MultiTool instrukcja użytkownika 2010 SFAR

DOKUMENTACJA TECHNICZNA. KONWERTER MODBUS v1. INSTRUKCJA OBSŁUGI wersja instrukcji 1.0

Systemy operacyjne I Laboratorium Część 3: Windows XP

Politechnika Gdańska Wydział Elektrotechniki i Automatyki Katedra Inżynierii Systemów Sterowania

*Wersja dla przeglądarki Internet Explorer. Instrukcja instalacji czytnika kart chipowych* (Konto korporacyjne) SGBe-kdbs

Gostai URBI Power Swith

A. Instalacja serwera www

Instrukcja podłączenia bramki IP 1R+L oraz IP 2R+L w trybie serwisowym za pomocą usługi telnet.

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

Uwaga: NIE korzystaj z portów USB oraz PWR jednocześnie. Może to trwale uszkodzić urządzenie ZyWALL.

KONWERTER ETHERNET-RS485/RS232

ZyWALL USG 1000 Skrócona instrukcja obsługi

Zespół Szkół Technicznych w Suwałkach. Pracownia Systemów Komputerowych. Ćwiczenie Nr 15 PRACA W TRYBIE MS-DOS. Opracował Sławomir Zieliński

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

SIP Studia Podyplomowe Ćwiczenie laboratoryjne Instrukcja

INSTRUKCJA OBSŁUGI. Konsola portierska. Model: C5-IP-GU

Moduł Ethernetowy EL-ETH. Instrukcja obsługi

Biomonitoring system kontroli jakości wody

THOMSON SpeedTouch 585v6

Ćw. I. Środowisko sieciowe, połączenie internetowe, opcje internetowe

Uruchomienie Raspberry Pi

Instrukcja do ćwiczeń

Politechnika Gdańska Wydział Elektrotechniki i Automatyki Katedra Inżynierii Systemów Sterowania

RSD Uniwersalny rejestrator danych Zaprojektowany do pracy w przemyśle

PLUTO Sterownik bezpieczeństwa Skrócona Instrukcja obsługi oprogramowania. PlutoProgrammingManualPL_v7A.pdf 1

Laboratorium z Grafiki InŜynierskiej CAD. Rozpoczęcie pracy z AutoCAD-em. Uruchomienie programu

Instrukcja użytkownika ARSoft-WZ1

Zadanie1: Odszukaj w serwisie internetowym Wikipedii informacje na temat hasła SOHO (ang. Small Office/Home Office).

ZADANIE.01 Cisco.&.Juniper Wprowadzenie do ZiMSK (budowa sieci, połączenie konsolowe, usuwanie konfiguracji urządzeń) 1h

OPIS PROGRAMU OBSŁUGI STEROWNIKA DISOCONT >> DISOCONT MASTER RAPORTY <<

TM PROGRAM TERMINALA RS-232 DLA MULTIPLEKSERA 8XRS-232 / ETHERNET 10BASE-T

KONFIGURACJA KAMER FORTEC IP

INSTRUKCJA OBSŁUGI. Przekaźnik czasowy ETM ELEKTROTECH Dzierżoniów. 1. Zastosowanie

Multimetr cyfrowy MAS-345. Instrukcja instalacji i obsługi oprogramowania DMM VIEW Ver 2.0

PROGRAM DO ARCHIWIZACJI NOŚNIKÓW KOPII ELEKTRONICZNEJ

INTEGRACJA CENTRALI ALARMOWEJ SATEL Z HOME CENTER 2 FIBARO

PRZEZNACZENIE BUDOWA MT6070 1/6. Przycisk RESET. Przełączniki konfiguracyjne. Diody statusowe. Gniazdo bezpiecznikowe. Złącze zasilania.

ODCZYTON INSTRUKCJA OBSŁUGI PROGRAMU. wersja Zakład Elektronicznych Urządzeń Pomiarowych POZYTON Sp. z o.o Częstochowa, ul.

Instrukcja do oprogramowania ENAP DEC-1

WIDEOTELEFON GXV3175 SZYBKI START

INSTRUKCJA UŻYTKOWNIKA MPCC

INTERFEJS FIAT USB INSTRUKCJA OBSŁUGI strona 1 /13

Zestaw przedłużacza, 4K HDMI HDBaseT, 70 m

Modem Bluetooth MBL-232/UK

Zestaw przedłużacza, 4K HDMI HDBaseT, 100 m

Konwerter Transmisji KT-01

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

Programowanie mikrokontrolerów AVR

1) Połączenie za pomocą kabla PC/PPI (Nr kat.: USB: 6ES DB30-0XA0, RS232: 6ES CB30-0XA0)

Instrukcja obsługi przełącznika KVM ATEN CS661. Opis urządzenia. Instalacja urządzenia

System kontroli dostępu ACCO NET Instrukcja instalacji

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

MODUŁ ETHERNETOWY DS202

Graficzny terminal sieciowy ABA-X3. część druga. Podstawowa konfiguracja terminala

Systemy operacyjne. Zasady lokalne i konfiguracja środowiska Windows 2000

Praktyka programowania projekt

INTERFEJS GALLETTO INSTRUKCJA OBSŁUGI

1. INSTALACJA SERWERA

INSTRUKCJA OBSŁUGI DO WYSWIETLACZA LCD C600

Rozdział 8. Sieci lokalne

W oknie na środku, moŝna wybrać język, który będzie językiem domyślnym dla TC. Wybierzmy zatem język polski:

Transkrypt:

Aplikacje Systemów Wbudowanych Laboratorium Freescale i.mx LiteKit (MC9328MXL) Politechnika Gdańska Wydział Elektroniki, Telekomunikacji i Informatyki Katedra Systemów Geoinformatycznych Gdańsk 2013

Ćwiczenie 1: Środowisko MicroMonitor oraz serwer WWW w systemie Linux dla układów i.mx z procesorem ARM Cel ćwiczenia Celem ćwiczenia jest zapoznanie się z dedykowanym środowiskiem MicroMonitor oraz serwerem WWW w systemie Linux dla układów i.mx z procesorem ARM. Uwaga Przed przystąpieniem do realizacji zadań naleŝy skopiować katalog home (d:\cygwin\) do katalogu roboczego (d:\lab). JeŜeli taki katalog juŝ istnieje (d:\lab\home), naleŝy go skasować. Karty sieciowe komputerów stacjonarnych mają ustawione adresy IP na 192.168.10.10(1-9) w zaleŝności od numeru stanowiska, natomiast maska na 255.255.255.0. Zadania do wykonania Zadanie 1: Zestawienie połączenia pomiędzy układem i.mx, a komputerem stacjonarnym za pomocą interfejsu RS-232. Połączyć układ i.mx z komputerem stacjonarnym za pomocą kabla szeregowego RS-232 Uruchomić Hyper Terminal (menu Start > Wszystkie programy > Akcesoria > Komunikacja > Hyper Terminal). Wprowadzić dowolną nazwę połączenia, uŝywając portu COM4. W ustawieniach portu wprowadzić następujące parametry: o Prędkość transmisji 38400 bps, o Liczba bitów danych: 8, o Parzystość: brak, o Liczba bitów stopu: 1, o Sterowanie przepływem: brak. Prawidłowo zestawione połączenia pomiędzy układem i.mx, a komputerem stacjonarnym zostało przedstawione na rysunku poniŝej.

Po włączeniu zasilania w układzie i.mx zostanie uruchomiony MicroMonitor. Zadanie 2: Konfiguracja karty sieciowej układu i.mx. Zestawić połączenie pomiędzy układem i.mx, a komputerem stacjonarnym za pomocą interfejsu RS-232. Zresetować układ i.mx. Wprowadzić następujący ciąg poleceń w MicroMonitorze (zostaną ustawione: adres IP oraz maska w zaleŝności od numeru stanowiska, adres bramy sieciowej): umon> set c umon> set IPADD 192.168.10.20(1-9) umon> set NETMASK 255.255.255.0 umon> set GIPADD 192.168.10.10(1-9 umon> set -f monrc umon> reset Sprawdzenie ustawień wykonuje się za pomocą komendy set. Zadanie 3: Uruchomienie przykładowego programu na układzie i.mx Uruchomić konsolę Cygwin (pulpit > i.mx GNU X-Tools Shell). Zmodyfikować linię numer 8 pliku Makefile (d:/lab/home/uwindows/src/demos/ elsdemo) wpisując TARGET_IP = 192.168.10.20(1-9). W konsoli Cygwin przejść do lokalizacji d:/lab/home/uwindows/src/demos/ elsdemo. Odłączyć kabel szeregowy RS-232 od układu i podłączyć kabel Ethernetowy. Skompilować przykładowy program i przenieść plik na układ i.mx za pomocą polecenia make mine. Odłączyć kabel Ethernetowy, podłączyć przewód szeregowy RS-232. Zestawić połączenie pomiędzy układem i.mx, a komputerem stacjonarnym za pomocą interfejsu RS-232. Zzresetować układ i.mx. W MicroMonitorze wpisać komendę mine w celu uruchomienia przykładowej aplikacji. Zadanie 4: Polecenia MicroMonitora na przykładzie testów wyświetlacza LCD Zestawić połączenie pomiędzy układem i.mx, a komputerem stacjonarnym za pomocą interfejsu RS-232. Zresetować układ i.mx. Wpisanie polecenia help <nazwa polecenia> uruchomi pomoc do polecenia.

Polecenie tfs ls i tfs vv ls wyświetli wszystkie programy znajdujące się w pamięci układu. Przykłady poleceń testujących wyświetlacz LCD: lcd_tst d4 lcd_tst n Zadanie 5: System Linux dla układu i.mx W pliku Makefile (d:/lab/home/gxlinux/) zmodyfikować linię 44 wpisując TGTIP = 192.168.10.20(1-9). W konsoli Cygwin zbudować przykładowe programy oraz obraz linuxa za pomocą komend: cd d:/lab/home/gxlinux make all Podłączyć kabel Ethernetowy do układu i.mx. Załadować obraz GX-linuxa do układu i.mx za pomocą polecenia make load (kabel RS-232 musi być odłączony). Cała operacja moŝe to potrwać kilka minut. Dzięki temu poleceniu załadują się do układu i.mx następujące obrazy: o zimage (kernel), o romfs.img (główny system plików), o startlinux (skrypt uruchamiający linuxa) Podłączyć przewód RS-232 do układu i.mx i zresetować go. W Hyper Terminalu wpisać polecenie startlinux w celu wywołania jądra linuxa i systemu plików do wykonania. Po załadowaniu linuxa przejść do katalogu /usr/bin (Hyper Terminal). W tym katalogu znajdują się skompilowane przykłady, które naleŝy uruchomić (pliki z rozszerzeniem *.x). Stworzyć własną aplikację w języku C (wg zaleceń prowadzącego) w katalogu d:\lab\home\gxlinux\examples. Skompilować napisany program poleceniem (konsola Cygwin): arm-linux-gcc nazwa_pliku.c o nazwa_pliku_wyjsciowego.x Aby załadować linuxa z nowym programem naleŝy uŝyć następujących poleceń (linux w układzie musi być wyłączony, a kabel RS-232 odłączony): cd.. make install-apps romfs make load Po uruchomieniu linuxa poleceniem startlinux (Hyper Terminal) plik wyjściowy będzie znajdował się w podkatalogu /usr/bin/ Zadanie 6: Uruchomienie serwera WWW na układzie i.mx

Uruchomić konsolę Cygwin, następnie przejść do lokalizacji d:/lab/home/gxlinux/boa/src Wpisać w konsoli Cygwin polecenie./configure --target=arm-linux --build=arm-linux w celu wygenerowanie pliku Makefile. W pliku Makefile zmodyfikować linię 31 wpisując CC= arm-linux-gcc zamiast CC= gcc. Następnie wpisać polecenie make. Powstaną dwa pliki wykonywalne boa i boa_indexer. NaleŜy skopiować je do katalogu d:\lab\gxlinux\rootfs\usr\bin. W konsoli Cygwin w katalogu d:\lab\home\gxlinux\rootfs naleŝy dodać prawo do odczytu i wykonywania katalogowi var/www za pomocą polecenia chmod R +rx var/www. Aby załadować linuxa z serwerem WWW naleŝy uŝyć następujących poleceń: cd.. make romfs make load Po uruchomieniu linuxa poleceniem startlinux (Hyper Terminal) wystarczy wpisać polecenie boa. Serwer WWW będzie od tego momentu pracować w tle. W przeglądarce WWW komputera stacjonarnego wyświetlić stronę internetową udostępnioną przez serwer WWW urządzenia i.mx.

Ćwiczenie 2: Obsługa wyświetlacza LCD oraz panelu dotykowego Cel ćwiczenia Ćwiczenie ma na celu zapoznanie się z obsługą wyświetlacza LCD oraz panelu dotykowego układu i.mx z procesorem ARM. Zadania do wykonania Zadanie 1: Zapoznać się z dostarczonymi przez producenta bibliotekami obsługującymi wyświetlacz LCD Zadanie 2: Napisać program rysujący dowolną figurę na ekranie wyświetlacza LCD (np. kółko). Zadanie 3: Napisać program umoŝliwiający przesuwanie po całym ekranie narysowanej figury z wykorzystaniem panelu dotykowego Informacje potrzebne do realizacji zadania 1. W katalog roboczym w lokalizacji d:/lab/home/umon/umon_apps/lab zmodyfikować plik Makefile podmieniając TGTIP =. na TGTIP = 192.168.10.20(1-9) oraz utworzyć plik lab.c. 2. PoniŜej przedstawiono szablon programu #include "monlib.h" #include "cpu_gpio.h" #include "lcd.h" #include "fb_draw.h" int main() monconnect((int(*)())(*(unsigned long *) MONCOMPTR), (void *) 0, (void *) 0); return 0; 3. Przed narysowaniem figury na wyświetlaczu LCD naleŝy go zainicjalizować. SłuŜy do tego funkcja lcd_init(). Następnie naleŝy włączyć wyświetlacz za pomocą funkcji lcd_on(). Po tych czynnościach moŝna narysować dowolną figurę wykorzystując funkcje z pliku nagłówkowego fb_draw.h. Przykładowo, funkcja z podanymi parametrami fb_draw_circle2(100,100,20,white) wyświetla kółko na pozycji o współrzędnych x=100px, y=100px oraz promieniu 20px i kolorze białym. 4. Aby wykorzystać moŝliwości ekranu dotykowego naleŝy najpierw załączyć plik nagłówkowy ads7846.h. W pliku Makefile w regule lab naleŝy załączyć w regułach kompilacji bibliotekę lads. Po dopisaniu kod reguły lab powinien wyglądać następująco:

5. NaleŜy zainicjalizować panel dotykowy układu za pomocą funkcji ads_init(). Dotknięcie wyświetlacza jest sygnalizowane stanem niskim na linii PIRQ (Port B18). Odczyt odbywa się za pomocą funkcji ads_rd(), która pobiera flagi kontrolne panelu dotykowego. Przykładowe flagi to: ADS7846E_S bit startu, wymagany przy odczycie, ADS7846E_PD_LPWR tryb niskiego poboru mocy, ADS7846E_ADD_DFR_X mierzy pozycję X w trybie róŝnicowym ADS7846E_ADD_DFR_Y mierzy pozycję Y w trybie róŝnicowym 6. PoniŜej przedstawiono przykład kodu realizującego funkcjonalność ekranu dotykowego #include "monlib.h" #include "cpu_gpio.h" #include "lcd.h" #include "fb_draw.h" #include "ads7846.h" #include "vga_lookup.h" #include "cpuio.h" #define PEN_MOVE_FILTER 15 int main() //łączy aplikację z MicroMonitorem, ustawia dowiązania by moŝna było korzystać //z funkcji MicroMonitora monconnect((int(*)())(*(unsigned long *) MONCOMPTR), (void *) 0, (void *) 0); GPIO_init(); //ustawia linię PA3 w tryb wejściowy GPIO_in(3); //inicjalizuje wyświetlacz lcd_init(); //włącza wyświetlacz lcd_on(); //inicjalizuje sterownik panelu dotykowego ads_init(); int x, y; int sum_x, sum_y, i, average_x, average_y, last_x, last_y; //jeŝeli na linii PA3 pojawi się stan niski, to pętla zostanie przerwana //i program się zakończy while (GPIO_tst(3)) if (mon_gotachar()) char c = mon_getchar(); if (c == 'i') //czyszczenie ekranu w przypadku naciśnięcia przycisku i lcd_init(); lcd_on(); //w przypadku naciśnięcia ekranu dotykowego na linii PIRQ wystąpi stan niski if (GPIO_tst(PIRQ) == 0) last_x = last_y = 0; while (GPIO_tst(PIRQ) == 0) sum_x = sum_y = 0; //w celu osiągnięcia większej dokładności pobieramy //czterokrotnie pozycje przyciśnięcia for (i = 0; i < 4; i++)

sum_x += ads_rd(ads7846e_s ADS7846E_PD_LPWR ADS7846E_ADD_DFR_X); sum_y += ads_rd(ads7846e_s ADS7846E_PD_LPWR ADS7846E_ADD_DFR_Y); //wyliczamy średnią z czterech pomiarów average_x = sum_x / 4; average_y = sum_y / 4; //odfiltrowywanie szumów if ((average_x < (last_x + PEN_MOVE_FILTER)) && (average_x > (last_x - PEN_MOVE_FILTER)) && (average_y < (last_y + PEN_MOVE_FILTER)) && (average_y > (last_y - PEN_MOVE_FILTER))) //skalowanie współrzędnych (dla sterownika ekran ma //rozdzielczość 120x120) x = average_x * 2; y = PIXELS_PER_COL - (average_y * 8 / 3.0); return 0; //rysowanie okrąg w punkcie o współrzędnych (x, y), //promieniu 20 i kolorze zielonym fb_draw_circle2(x, y, 20, GREEN); last_x = average_x; last_y = average_y; 7. Skompilować program i przenieść plik na układ i.mx za pomocą polecenia make lab. 8. Podstawowe informacje o ekranie dotykowym. Do obsługi ekranu dotykowego wykorzystuje się bibliotekę ads7846.h. Do uruchomienia wyświetlacza LCD słuŝą funkcje: o void lcd_init(void) - inicjowanie parametrów konfiguracyjnych, o void lcd_on(void) - włączenie wyświetlacza, o void lcd_off(void) - wyłączenie wyświetlacza. Do obsługi wyświetlacza stosuje się bibliotekę fb_draw.h. Są w niej zdefiniowane następujące funkcje: o extern void fb_draw_line2(int x0, int y0, int x1, int y1, uchar color) rysuje linię pomiędzy punktami o współrzędnych (x0, y0) i (x1, y1) w kolorze zdefiniowanym w zmiennej color o extern void fb_draw_circle2(ulong x, ulong y, ulong radius, uchar color) rysuje okrąg, którego środek ma współrzędne (x, y), promień jest równy radius i o kolorze zdefiniowanym przez zmienną color o extern void fb_fill_circle(ulong x, ulong y, ulong radius, uchar color) wypełnia okrąg, którego środek ma współrzędne (x, y), promień jest równy radius w kolorze zdefiniowanym przez zmienną color o extern void fb_print_char(uchar cchar, ulong x, ulong y, uchar color) wyświetla znak graficzny cchar w miejscu o współrzędnych (x, y) i kolorze color

o extern void fb_print_string(uchar *pcbuffer, ulong x, ulong y, uchar color) wyświetla znaki graficzne pcbuffer w miejscu o współrzędnych (x, y) i kolorze color. Parametr x przyjmuje wartości z zakresu od 0 do 240. Parametr y przyjmuje wartości z zakresu od 0 do 320.Parametr color przyjmuje wartości z zakresu od 0 do 15.