Załącznik Nr 1 do umowy o dzieło Nr
Transkrypt
Załącznik Nr 1 do umowy o dzieło Nr
Program Rozwojowy Politechniki Warszawskiej, Zadanie 36 Przygotowanie i modernizacja programów studiów oraz materiałów dydaktycznych na Wydziale Elektrycznym Autorzy: Zbigniew Staroszczyk, Andrzej Kalicki Tytuł podręcznika: KOMPUTEROWE SYSTEMY WBUDOWANE I. Krótka charakterystyka podręcznika Podręcznik przeznaczony jest dla studentów 9 sem. specjalizacji Automatyka i Inżynieria Komputerowa zainteresowanych pogłębieniem wiedzy po cyklu zajęć z Techniki Mikroprocesorowej prowadzonych na sem. 4 - 7 kursu Elektrotechniki. Skojarzony z nim jest skrypt laboratoryjny: Laboratorium Komputerów Wbudowanych. Podręcznik może być przydatny dla studentów starszych lat studiów dziennych wszystkich kierunków technicznych oraz informatycznych. Omówione są zagadnienia realizacji komputerowych aplikacji wbudowanych, gdzie celem projektanta jest wybranie technologii i wparcia programowego dla stworzenia autonomicznie działającego skomputeryzowanego urządzenia, oraz zrealizowanie jego oprogramowania zapewniającego pożądaną funkcjonalność. Celem podręcznika jest zapoznanie studenta z różnymi technologicznymi i programowymi narzędziami umożliwiającymi efektywne wbudowanie i oprogramowanie mikrokomputera/komputera pod potrzeby obsługi zamkniętych, dedykowanych aplikacji. Po wprowadzeniu w specyfikę przedmiotu (rozdz. 1) w rozdz. 2 podręcznika przedstawione są technologie realizacji komputerów do zastosowań wbudowanych o różnym zapotrzebowaniu na moc obliczeniową CPU i różnych wymaganiach na kontakt z otoczeniem (interfejsy). W rozdz. 3 przedstawiono rozwiązania wsparcia programowego dla tworzonych aplikacji wbudowanych. Szczególną uwagę poświęcono systemom operacyjnym (s.o), które są niezbędne do zapewnienia zunifikowanej i wydajnej obsługi zaawansowanego technologicznie sprzętu. Omówiono problemy wbudowywania s.o. i oprogramowania użytkowego, oraz obsługę programową interfejsów (pomiarowych, komunikacyjnych i GUI) platformy wbudowanej. Przedstawiono możliwości wykorzystania maszyny wirtualnej i sieci WWW do wsparcia pracy komputera wbudowanego. W rozdz. 4 przedstawiono przykładowe realizacje sprzętowo-programowych środowisk do tworzenia aplikacji wbudowanych. W rozdz. 6 omówiono możliwości wykorzystania Visual Studio do tworzenia oprogramowania komputera obiektowego z wbudowanym systemem Windows. Końcowe rozdziały podręcznika omawiają problemy wbudowywania systemu operacyjnego w komputer obiektowy (Linux/QNX/Windows). Program Rozwojowy Politechniki Warszawskiej, Zadanie 36 Przygotowanie i modernizacja programów studiów oraz materiałów dydaktycznych na Wydziale Elektrycznym II. Spis treści 1. Wprowadzenie 1.1. Podstawowe pojęcia i klasyfikacja systemów wbudowanych 1.2. Technologie realizacji (RISC, CISC, DSP) 1.3. Interfejsy systemów wbudowanych 1.4. Wsparcie aplikacji wbudowanej przez system operacyjny 2. Technologie realizacji systemów wbudowanych 2.1. Systemy małoskalowe (mikrokomputery bez wsparcia systemu operacyjnego) 2.1.1. Mikroprocesory rodzin 51, 80C51XA (NXP), 86 2.2. Systemy średnioskalowe ( mikrokomputery ze wspaciem prostym s.o.) 2.2.1. PIC (uChip), x86(Intel), AVR (Atmel), XC166 i XE166 (Infineon) 2.3. Systemy wielkoskalowe (mikrokomputery/komputery ze wsparciem silnym s.o.) 2.3.1. SH, x86, ARM, Power PC 2.4. Systemy dedykowane (SoC –software on chip, DSP (TI, Analog Devices, Motorola), mikroprocesory o małym poborze mocy – TI MPS430) 2.5. Przegląd przykładowych rozwiązań: rodzina SH, x86, ARM, Power PC 2.6. Klasyfikacja (porównanie) przydatności rozwiązań mikrokomputerów do realizacji systemów wbudowanych 3. Oprogramowanie platform wbudowanych 3.1. Techniki przygotowania i testowania oprogramowania 3.1.1. Narzędzia i środowiska tworzenia oprogramowania skrośnego 3.1.2. Systemy małoskalowe, aplikacje bez wsparcia systemowego 3.1.3. Systemy średnioskalowe, wykorzystanie funkcji systemowych i bibliotek 3.1.4. Systemy wielkoskalowe 3.1.4.1. Przegląd systemów operacyjnych wspierających działanie zadań użytkownika (DOS, Linux, QNX, Windows CE/ Windows Mobile, Embedded Windows XP, rola Frameworks w systemie Windows) 3.1.5. Zintegrowane środowiska tworzenia aplikacji wbudowanych - przegląd 3.1.6. Metody integracji środowiska uruchomieniowego i uruchamianego 3.1.6.1. Problemy wbudowywania aplikacji i s.o. w komputer obiektowy 3.1.6.2. Narzędzia wspomagania uruchamiania oprogramowania (zdalne ładowanie i debugowanie oprogramowania, emulator wewnątrzukładowy korzystający z JTAG) 3.2. Specyfika tworzenia wbudowanych aplikacji bezobsługowych i obsługiwanych przez człowieka 3.2.1. Obsługa i oprogramowanie interfejsów 3.2.1.1. Interfejsy analogowe i cyfrowe 3.2.1.2. Interfejsy komunikacyjne: szeregowe, TCP/IP, wirtualizacja interfejsów sprzętowych 3.2.1.3. Wykorzystanie przerwań sprzętowych i wsparcia ich obsługi przez s.o. 3.2.1.4. Systemowe sterowniki urządzeń 3.2.2. Obsługa i oprogramowanie interfejsu użytkownika (pola odczytowe, panele graficzne i GUI) 3.2.3. Implementacja JVM w platformach wbudowanych 3.2.4. Wsparcie sieciowe dla aplikacji wbudowanych (strony WWW, usługi WEB, zewnętrzne i wbudowane bazy danych) 4. Przegląd aktualnej oferty rynkowej systemów uruchomieniowych do tworzenia aplikacji wbudowanych (ICP, Arcom, Advantech) Program Rozwojowy Politechniki Warszawskiej, Zadanie 36 Przygotowanie i modernizacja programów studiów oraz materiałów dydaktycznych na Wydziale Elektrycznym 5. Wykorzystanie Visual Studio w programowaniu aplikacji wbudowanych Windows CE/Windows Mobile i Windows XP 5.1. Obsługa interfejsów komunikacyjnych 5.2. Obsługa GUI i grafiki 5.3. Wykorzystanie wsparcia sieciowego aplikacji wbudowanej 5.4. Przykład realizacji kompleksowego zadania 6. Wykorzystanie Platform Builder’a w oprogramowaniu komputera wbudowanego 7. Programowanie komputera wbudowanego z systemem Linux/QNX – przykładowa realizacja Dodatki: Przegląd rodzin mikroprocesorów Przegląd interfejsów Przegląd zasobów Internetu III. Literatura uzupełniająca 1. 2. 3. Raj Kamal, “Embedded systems: architecture, programming, and design”, McGraw-Hill, 2008 Andy Wigley A., in. “Microsoft Mobile Development Handbook”, Microsoft Press, 2007 Donald Thompson, Rob S. Miles, “ Embedded programming with the Microsoft .NET Micro Framework”, Microsoft Press, 2007 4. Lucjan Bryndza "LPC2000 Mikrokontrolery z rdzeniem ARM7", BTC, 2007 5. Rafał Baranowski "Mikrokontrolery AVR ATtiny w praktyce", BTC, 2006 6. John Paul Shen, Mikko H. Lipasti "Modern Processor Design. Fundamentals of Superscalar Processors", Mc Graw-Hill, 2005 7. Jacek Bogusz "Lokalne interfejsy w systemach cyfrowych", BTC, 2004 8. Jarosław Doliński "Mikrokontrolery AVR w praktyce", BTC, 2003 9. Andy Wigley i in. “Microsoft .NET Compact Framework”, Microsoft Press, 2003 10. Andy Wigley, Peter Roxburgh “ASP. NET Applications for Mobile Devices”, Microsoft Press, 2003 11. Walter Oney, “Programming the Microsoft Windows Driver Model”, Microsoft Press, 2003 12. Tomasz Jabłoński "Mikrokontrolery PIC16F8x w praktyce", BTC, 2002 13. Wieńczysław Daca "Mikrokontrolery od układów 8-bitowych do 32-bitowych", Mikom, 2000