PRACA W ZINTEGROWANYM ŚRODOWISKU URUCHOMIENIOWYM - IDE Keil μvision 2



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

Podstawowe zasady tworzenia projektu w środowisku uvision 4.0, pisanie programów w asemblerze 8051

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

Laboratorium Procesorów Sygnałowych

Programowanie niskopoziomowe

Bezpieczeństwo informacji oparte o kryptografię kwantową

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

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

Warsztaty AVR. Instalacja i konfiguracja środowiska Eclipse dla mikrokontrolerów AVR. Dariusz Wika

Laboratorium 1 Temat: Przygotowanie środowiska programistycznego. Poznanie edytora. Kompilacja i uruchomienie prostych programów przykładowych.

Projektowanie z użyciem procesora programowego Nios II

SYSTEMY CZASU RZECZYWISTEGO (SCR)

2. Architektura mikrokontrolerów PIC16F8x... 13

WYKONANIE APLIKACJI OKIENKOWEJ OBLICZAJĄCEJ SUMĘ DWÓCH LICZB W ŚRODOWISKU PROGRAMISTYCZNYM. NetBeans. Wykonał: Jacek Ventzke informatyka sem.

Szkolenia specjalistyczne

Informatyka I : Tworzenie projektu

Tworzenie oprogramowania

imei Instytut Metrologii, Elektroniki i Informatyki

Konfiguracja pakietu CrossStudio for MSP

Programowanie Systemów Czasu Rzeczywistego

AsLinkEx instrukcja obsługi

Programator procesorów rodziny AVR AVR-T910

ICD Wprowadzenie. Wprowadzenie. Czym jest In-Circuit Debugger? 2. O poradniku 3. Gdzie szukać dodatkowych informacji? 4

LABORATORIUM UKŁADÓW PROGRAMOWALNYCH. PROCESORY OSADZONE kod kursu: ETD 7211 SEMESTR ZIMOWY 2017

Programowanie procesora Microblaze w środowisku SDK

OPTIMA PC v Program konfiguracyjny dla cyfrowych paneli domofonowy serii OPTIMA ELFON. Instrukcja obsługi. Rev 1

Instrukcja aktualizacji oprogramowania. Wersja dokumentu: 01i00 Aktualizacja:

Politechnika Białostocka Wydział Elektryczny Katedra Automatyki i Elektroniki

Opis szybkiego uruchomienia programu APBSoft

BF30 OCDLINK/USBASP ARM-JTAG/AVR-ISP Programmer-debugger Instrukcja obsługi

1. Podstawowe wiadomości Możliwości sprzętowe Połączenia elektryczne Elementy funkcjonalne programów...

1. Wprowadzenie Programowanie mikrokontrolerów Sprzęt i oprogramowanie... 33

Wprowadzenie do biblioteki klas C++

MentorGraphics ModelSim

Materiały oryginalne: ZAWWW-2st1.2-l11.tresc-1.0kolor.pdf. Materiały poprawione

FAQ: /PL Data: 3/07/2013 Konfiguracja współpracy programów PC Access i Microsoft Excel ze sterownikiem S7-1200

Electronic Infosystems

Materiały dodatkowe. Simulink Real-Time

dokument DOK wersja 1.0

WPROWADZENIE DO INFORMATYKI

Warsztaty szkoleniowe. Technologia SafetyLon w systemach związanych z bezpieczeństwem funkcjonalnym Narzędzia SafetyLon Moduł 4.5.

Konfigurowanie modułu BK9050 firmy Beckhoff wprowadzenie

Modelowanie obiektowe - Ćw. 1.

Techniki programowania INP001002Wl rok akademicki 2018/19 semestr letni. Wykład 8. Karol Tarnowski A-1 p.

BF20 JTAG dla ARM ów z interfejsem USB Instrukcja obsługi

Tworzenie nowego projektu w asemblerze dla mikroprocesora z rodziny 8051

Programowanie Systemów Wbudowanych

Symulator tabletu z systemem Windows 8.

Instrukcja podstawowego uruchomienia sterownika PLC LSIS serii XGB XBC-DR20SU

1. Opis. 2. Wymagania sprzętowe:

TECHNIKA MIKROPROCESOROWA II

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

WIZUALIZACJA DANYCH SENSORYCZNYCH Sprawozdanie z wykonanego projektu. Jakub Stanisz

Projektowanie układów VLSI-ASIC techniką od ogółu do szczegółu (top-down) przy użyciu pakietu CADENCE

1. Tworzenie nowego projektu.

Ćwiczenie Nr 6 Przegląd pozostałych najważniejszych mechanizmów systemu operacyjnego Windows

NIEZBĘDNIK UŻYTKOWNIKA

INSTALACJA modemu Trimble TDL3G

SPIS TREŚCI. 3.3 Pasek narzędziowy

PROJEKTOWANIE APLIKACJI INTERNETOWYCH

Instalacja i opis podstawowych funkcji programu Dev-C++

profili Twój aktualny profil i kliknij na przycisk Kopiuj, po czym wpisz nazwę dla nowego profilu (będzie ona widoczna przy uruchamianiu systemu).

Jak rozpocząć pracę z mikrokontrolerami?

Materiały dodatkowe. Raspberry Pi

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

Technika Mikroprocesorowa Laboratorium 5 Obsługa klawiatury

Przywracanie parametrów domyślnych. Przycisnąć przycisk STOP przez 5 sekund. Wyświetlanie naprzemienne Numer parametru Wartość parametru

R 1. Robot o równoległej strukturze kinematycznej i czterech stopniach swobody. Pracownia Nauki Programowania i Aplikacji Robotów Przemysłowych

SYSTEMY OPERACYJNE I SIECI KOMPUTEROWE

Spis treści. Wykaz ważniejszych skrótów Wprowadzenie Rdzeń Cortex-M Rodzina mikrokontrolerów XMC

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

Spis treści JĘZYK C - ŚLEDZENIE WYKONANIA PROGRAMU, DEBUGGER. Informatyka 1. Instrukcja do pracowni specjalistycznej z przedmiotu

Programator AVR MKII. Instrukcja obsługi. Copyright by Barion

MultiTool instrukcja użytkownika 2010 SFAR

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

Ćwiczenia z S Komunikacja S z miernikiem parametrów sieci PAC 3200 za pośrednictwem protokołu Modbus/TCP.

Programowanie mikrokontrolerów AVR

weblsp Wybór przeglądarki i jej ustawienia Instrukcja ADH-Soft sp. z o.o., ul. 17 Stycznia 74, Warszawa

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

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

Politechnika Śląska w Gliwicach

Instrukcja NAWIGACJA MEDIATEC 7 CALI

Skrócony przewodnik OPROGRAMOWANIE PC. MultiCon Emulator

Skrócony przewodnik OPROGRAMOWANIE PC. MultiCon Emulator

Włączanie/wyłączanie paska menu

Instrukcja programowania płytek edycji 2014

DOKUMENTY I GRAFIKI. Zarządzanie zawartością Tworzenie folderu Dodawanie dokumentu / grafiki Wersje plików... 7

Testowanie I. Celem zajęć jest zapoznanie studentów z podstawami testowania ze szczególnym uwzględnieniem testowania jednostkowego.

Opis efektów kształcenia dla modułu zajęć

EASY CAP VIDEO GRABBER SZYBKI START. Instalacja sterowników

WYKONYWANIE ORAZ PRZYWRACANIE KOPII KONFIGURACJI ZA POMOCĄ INTERFEJSU 20-HIM-A6 / 20-HIM-C6S W PRZEMIENNIKACH SERII POWERFLEX 750

Programowanie w Javie

Projektowanie baz danych za pomocą narzędzi CASE

1. Opis aplikacji. 2. Przeprowadzanie pomiarów. 3. Tworzenie sprawozdania

Pracownia internetowa w każdej szkole (edycja Jesień 2007)

LABORATORIUM UKŁADÓW PROGRAMOWALNYCH Wydziałowy Zakład Metrologii Mikro- i Nanostruktur SEMESTR LETNI 2017

Konfiguracja szablonu i wystawienie pierwszej aukcji allegro

Kontrola topto. 1. Informacje ogólne. 2. Wymagania sprzętowe i programowe aplikacji. 3. Przykładowa instalacja topto. 4. Komunikacja.

Tablet bezprzewodowy QIT30. Oprogramowanie Macro Key Manager

Transkrypt:

PRACA W ZINTEGROWANYM ŚRODOWISKU URUCHOMIENIOWYM - IDE Keil μvision 2

1. Środowisko IDE - KEIL µvision firmy KEIL jest popularnym zintegrowanym środowiskiem programistycznym IDE. Składa się na nie: menadżer projektu, edytor kodu źródłowego, debugger programu oraz programator pamięci Flash mikrokontrolera. Niniejszy dokument opisuje sposób pracy ze środowiskiem µvision i płytą dydaktyczną EXTB. Otwarte okno programu KEIL przedstawiono na rys. 1. Rys. 1. Otwarte okno programu Keil. W pliku projektowym przechowywane są wszelkie informacje związane z ustawieniami oraz konfiguracją przeznaczone dla: kompilatora, asemblera, linkera, debuggera oraz programatora pamięci Flash. Zakładka Project zawiera wszystkie opcje menadżera projektu, spośród których mamy następujące możliwości: - tworzenie nowego projektu New Project, - otwieranie projektu Open Project, - opcje projektu takie jak np.: wybór układu mikrokontrolera, sposobu podłączenia układu docelowego do komputera, czy nazwy projektu. 2. Tworzenie nowego projektu W celu utworzenia nowego projektu należy wybrać: Project - New Project - następnie należy podać ścieżkę dostępu oraz nazwę projektu, należy przy tym pamiętać, iż jedynym miejscem gdzie można umieszczać projekty jest katalog danego zespołu (w katalogu c:\ Documents and Settings). Zaleca się, aby był to pusty katalog oddzielny dla każdego laboratorium (ćwiczenia).

Podać typ mikrokontrolera w naszym przypadku jest to układ 80C51F060 firmy Silicon Laboratories, zgodnie z rys.2. Nie należy zgadzać się na automatyczne dodawanie pliku konfiguracji do projektu. Rys.2. Wybór mikrokontroler. Następnie ustawiamy opcje zadania (należy zaznaczyć myszką nasze zadanie Target 1): Project - Options for Target MAIN - zakładka Debug zgodnie z rys.3., na którym okno podzielone jest na dwie części: lewa dla symulatora (opis w dalszej części) oraz prawa dla debuggera. Należy zaznaczyć Use: w prawej części okna, następnie wybrać typ adaptera Silicon Laboratories C8051FXXX - (A), potem wybrać Settings - (B) i określić typ połączenia z adapterem USB Debug adapter. Należy zaznaczyć jeszcze opcję Load Application at Startup, aby program był automatycznie ładowany do pamięci mikrokontrolera na początku uruchamiania. A B Rys. 3. Okno opcji zadania (zakładka Debug). Następnie powinniśmy utworzyć nowy plik źródłowy naszego programu: File - New lub Ctrl + N. Plik powinien mieć rozszerzenie.a51 zgodnie z rys. 4.

Rys.4. Zapisanie pliku źródłowego. Następnie należy dołączyć utworzony plik źródłowy do projektu. W tym celu należy wybrać: Project - Targets, Groups, Files, zgodnie z rys. 5., a później wybrać zakładkę Groups/Add Files. W oknie pokazanym na rys. 6. zaznaczyć Source Group 1 i wybrać opcję Add Files to Group. Teraz należy wybrać pliki asemblera Asm Source File (*.s*,*,src,*.a*) i znaleźć wcześniej utworzony plik *.A51. Możliwa jest zmiana nazwy zadania (Target) oraz grupy (Source Group 1). Dokonuje się jej przez zaznaczenie wybranego obiektu w oknie Targets Groups Files, wybranie opcji Remove, a następnie dodanie nowej nazwy (Add). Operację tę należy wykonać przed dodaniem plików źródłowych, gdyż w przeciwnym razie trzeba je będzie dodać po raz kolejny. Rys. 5. Dołączanie pliku źródłowego - 1. Rys. 6. Dołączanie pliku źródłowego - 2 Przykładowy projekt po zmianie nazwy zadania i grupy przedstawiono na rys. 7:

Rys. 7. Przykładowy projekt. Zadanie Grupa Plik Biblioteka Po napisaniu pliku źródłowego przystępujemy do kompilacji wykorzystując przyciski z paska rys. 8. - Kompilacja - Budowa projektu - Przebudowa projektu - Zakończenie budowy projektu - Załadowanie programu do pamięci mikrokontrolera - Opcje projektu - Wybór aktywnego programu 3. Uruchamianie programu Rys. 8. Opis paska projektu. Ostatnim etapem pracy nad projektem jest uruchomienie programu debugging. W tym celu wybieramy opcję: Debug - Start/Stop Debug Session W tym momencie nasz program jest ładowany do pamięci mikrokontrolera i przechodzimy do uruchamiania wykorzystując przyciski z rys. 9: - Reset mikrokontrolera - Uruchomienie programu - Zatrzymanie programu - Krok programu - Krok na jednym poziomie hierarchii - Praca ciągła - Skok do wskazanego miejsca - Wskazanie aktualnie miejsca w programie Rys.9. Opis paska debuggera. W trybie tym mikrokontroler podłączony jest do komputera za pomocą adaptera USB <-> JTAG, zgodnie z rys. 10.

Rys. 10. Sposób podłączenia układu docelowego z komputerem. Aby uruchomić program należy wybrać: Debug - RUN Użytkownik powinien sprawdzić czy program rozpoczyna się od adresu 0000H. Jeżeli nie, należy wyjść z opcji Debug i ponownie do niej wejść. Aby zatrzymać program należy wybrać - Stop Running, w celu naniesienia poprawek - edycji kodu źródłowego, należy wyjść z trybu uruchamiania: Debug Start/Stop Debug Session. 4. Usuwanie błędów Aby ułatwić usuwanie błędów programu środowisko umożliwia wprowadzenie pułapek w dowolnym miejscu programu Debug - Insert/Remove Breakpoint Wprowadzenie pułapki oznacza, że praca programu zostanie zatrzymana ilekroć pętla programu będzie przechodziła przez miejsce, w którym wprowadziliśmy pułapkę. Możliwe są jeszcze następujące opcje: - Enable/Disable Breakpoint, włączenie/wyłączenie uprzednio wprowadzonej pułapki; - Disable All Breakpoints, wyłączenie wszystkich pułapek; - Kill All Breakpoints, usunięcie wszystkich pułapek. 5. Uruchamianie programu Dzięki zintegrowaniu w mikrokontrolerze sprzętowego interfejsu JTAG, możliwe jest sterowanie pracą mikrokontrolera za pomocą komputera, zgodnie z rys.10. Do dyspozycji mamy następujące funkcjonalności: - sterowanie pracą programu tj. praca krokowa, obsługa pułapek, - podgląd zawartości wszystkich rodzajów pamięci w systemie uruchomieniowym (wewnętrzne pamięci danych i programu mikrokontrolera, a także zewnętrzne pamięci danych i programu, o ile istnieją)

- podgląd zawartości rejestrów sterujących pracą poszczególnych układów peryferyjnych zintegrowanych w mikrokontrolerze. Podczas uruchamiania programu mamy dostęp do podstawowych rejestrów, zgodnie z rys.11. prócz tego możemy obejrzeć zawartość pamięci: View - Memory Window Następnie w okienku Address należy wpisać adres początku interesującego nas obszaru pamięci zgodnie z rys.12. Do dyspozycji mamy trzy obszary pamięci: C:0xAAAA X:0xBBBB ;gdzie AAAAh - jest adresem w pamięci programu ;gdzie BBBBh - jest adresem w zewnętrznej pamięci danych (XDATA) D:0xCC ;gdzie CCh - jest adresem w wewnętrznej pamięci danych mikrokontrolera. Rys. 12. Zawartość podstawowych rejestrów mikrokontrolera. Rys.13. Okno podglądu zawartości pamięci. Prócz tego mamy możliwość także podglądu zawartości rejestrów sterującymi peryferiami mikrokontrolera, takimi jak np.: porty, liczniki, port szeregowy, przetwornik analogowocyfrowy i inne, na rys.13. zamieszczono przykładowe okna: Peripherial Ports, UART, DAC itd.

Rys. 13. Przykładowe okna pokazujące zawartość rejestrów sterujących peryferiami mikrokontrolera. 6. Symulacja 6.1. Symulator - KEIL Środowisko IDE KEIL posiada zintegrowany symulator, dzięki któremu możliwe jest lepsze przygotowanie się do zajęć laboratoryjnych. Niestety symulator rozszerzonej wersji mikrokontrolera C8051F060 (dostępnej na laboratorium) nie obsługuje peryferiów, dlatego symulacje należy przeprowadzać dla klasycznego układu 8051. Aby rozpocząć symulacje należy stworzyć projekt, analogicznie jak to opisano powyżej, z tą różnicą iż wybieramy klasyczny układ mikrokontrolera 8051 np. 8051AH firmy INTEL. Kolejną różnicą w porównaniu z wcześniejszym opisem jest konieczność wybrania symulatora: Project - Option for Target MAIN zakładka Debug, zgodnie z rys. 14.

Rys. 14. Włączenie symulatora. Dalsze postępowanie jest analogiczne z tą różnicą, iż po przejściu w tryb Debug: Debug - Start/Stop Debug Session, włączamy symulator. Zawartość wszystkich rejestrów jest obliczana przez komputer, a nie odczytywana z układu docelowego. Podczas symulacji mamy do dyspozycji wszystkie funkcjonalności debuggera: praca krokowa oraz podglądanie zawartości pamięci. Mamy możliwość obejrzenia zawartości: - podstawowych rejestrów mikrokontrolera (okienko z lewej strony rys.11.), - pamięci systemu uruchomieniowego (rys.12.), - oraz rejestrów sterujących peryferiami. W naszym przypadku podczas symulacji korzystamy z klasycznego układu 8051 natomiast na laboratorium uruchamiamy programy na rozbudowanej wersji C8051F060. Z tego powodu nie wszystkie peryferia są dostępne w trybie symulatora. Podczas symulacji mamy dostęp do rejestrów odpowiedzialnych za: porty mikrokontrolera, port szeregowy, liczniki oraz system przerwań, zgodnie z rys.15. Dodatkowe funkcjonalności można uzyskać instalując wtyczki (pliki *.DLL).

Rys. 15. Okienka pokazujące zawartość rejestrów sterujących peryferiami mikrokontrolera. 6.2. Symulator - Proteus Symulator zintegrowany w środowisku KEIL jest dość prosty w obsłudze, ale za to ma stosunkowo ograniczone możliwości. Wykrywanie błędów polega na odczycie zawartości poszczególnych rejestrów podczas pracy krokowej programu. Aby umożliwić symulowanie programów bardziej złożonych, zastosować należy symulator Proteus. Proteus jest środowiskiem projektowym, z pomocą którego można przejść poszczególne etapy projektowania poczynając od zaprojektowania schematu poprzez symulację do zaprojektowania obwodu PCB czy jego wizualizację 3D. Możliwe jest przykładowo połączenie wyświetlacza graficznego LCD (z różnymi kontrolerami, np. T6963C czy choćby z telefonu komórkowego NOKIA 7110) do mikrokontrolera (MCS 51, AVR, ARM itd.) i oprogramowanie go, a wynik pracy programu będzie widoczny na wirtualnym wyświetlaczu. W naszym przypadku interesujące będzie zaprojektowanie schematu systemu mikroprocesorowego oraz jego symulacja. Do symulacji zachowania się badanego układu niezbędne jest połączenie obu programów KEIL i Proteus, zgodnie z rys. 16., tak aby debbuger KEILa mógł kontrolować symulator Proteusa. Rys. 16. Połączenie KEIL - Proteus.

Pobieramy oprogramowanie: Proteus: http://www.labcenter.co.uk/download/prodemo_download.cfm#professional plik - PRODEMO.EXE (ok. 42MB) oraz Proteus VSM Keil Debugger Driver, dzięki któremu uzyskamy połączenie, KEIL Proteus (rys. 16.): http://www.labcenter.co.uk/support/vdmkeil.cfm plik - vdmagdi.exe (ok.1,3mb). Instalujemy program Proteus, a następnie VSM Keil Driver. Wspólnym mianownikiem łączącym dwa programy KEIL i Proteus jest plik - VDM51.dll. Należy skopiować powyższą bibliotekę z C:\Keil\C51\BIN\ do C:\Program Files\Labcenter Electronics\Proteus 7 Demonstration\MODELS\. Przedmiotem niniejszego opracowania nie jest praca z programem Proteus, ale jedynie jego połączenie z środowiskiem KEIL. Dlatego w celu dokładnego zapoznania się z jego obsługą należy przeczytać dokumentację producenta. Uruchamiamy środowisko KEIL i tworzymy nowy projekt, podobnie jak poprzednio. Jedyna różnica dotyczy opcji projektu: Project - Options for Target zakładka Debug, zgodnie z rys. 17. Rys. 17. Opcje Debug przy pracy z programem Proteus. Wybieramy Proteus VSM Simulator. Następnie tworzymy nowy plik i piszemy kod źródłowy naszego programu, który następnie kompilujemy. Po uruchomieniu programu Proteus należy narysować schemat elektryczny układu, który chcemy zasymulować oraz dodać plik źródłowy dla mikrokontrolera. Jest to oczywiście że ten sam plik, który załadowaliśmy do debuggera KEIL. Najlepiej aby projekt KEIL i Proteus znajdowały się w tym samym katalogu. Aby debugger KEIL mógł kontrolować pracę symulatora Proteus należy w programie Proteus zaznaczyć opcję: Debug - Use Remote Debug Monitor, zgodnie z rys. 18.

Rys. 18. Opcje Debug, programu Proteus. Podczas symulacji stosujemy zasadę: sterowanie pracą odbywa się z poziomu debuggera KEIL, natomiast wyniki symulacji są widoczne w symulatorze Proteus. Symulator ten wyposażono w dość szeroki wachlarz narzędzi kontrolnych: analizator stanów logicznych, oscyloskop, mierniki czy choćby graficzny wyświetlacz LCD. Połączenie KEIL Proteus zostanie przedstawione z wykorzystaniem przykładów znajdujących się: C:\Program Files\Labcenter Electronics\Proteus 7 Demonstration\SAMPLES\VSM for 8051\ Rys. 19. i 20. przedstawiają pracę nad projektem: 8051 Memory i 8051 LCD Driver. Rys. 19. Połączenie KEIL Proteus na przykładzie projektu - 8051 Memory.

Rys. 20. Połączenie KEIL Proteus na przykładzie projektu - 8051 LCD Driver. Pewnym ograniczeniem jest jedynie fakt, iż wszelkie symulacje odbywają się z wykorzystaniem klasycznego mikrokontrolera MCS 51, natomiast na laboratorium mamy rozszerzoną wersję C8051F060. 7. Linki Środowisko IDE firmy KEIL można pobrać ze strony producenta po uprzednim wypełnieniu ankiety ze strony: https://www.keil.com/demo/eval/c51.htm Dodatkowe informacje można zaczerpnąć ze strony: http://www.keil.com/dd/chip/3568.htm Nakładkę na KEILa przygotowaną przez producenta mikrokontrolera Silabs, można pobrać ze strony: http://www.silabs.com/tgwwebapp/public/web_content/products/microcontrollers/en/ mcu_keildriver.htm Dodatkowe wtyczki (pliki *.DLL) dla symulatora KEILa można pobrać ze strony: http://www.c51.de/c51.de/dateien/uvision2dlls.php?spr=en Program symulatora Proteus można pobrać z: http://www.labcenter.co.uk/