Instrukcja do laboratorium Systemy wbudowane ARM 9 TDMI

Podobne dokumenty
Instrukcja do laboratorium Systemy wbudowane ARM 9 TDMI

Instrukcja do laboratorium SMCR oraz PM. Freescale MCF5282

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

dokument DOK wersja 1.0

ZL28ARM. Zestaw uruchomieniowy dla mikrokontrolerów AT91SAM7XC

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

Szkolenia specjalistyczne

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

Zaliczenie Termin zaliczenia: Sala IE 415 Termin poprawkowy: > (informacja na stronie:

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

DOKUMENTACJA PROJEKTU

Instrukcja do oprogramowania ENAP DEC-1

ZL29ARM. Zestaw uruchomieniowy dla mikrokontrolerów STM32F107

1.2. Architektura rdzenia ARM Cortex-M3...16

ZL27ARM. Zestaw uruchomieniowy dla mikrokontrolerów STM32F103

STM32Butterfly2. Zestaw uruchomieniowy dla mikrokontrolerów STM32F107

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

ZL25ARM. Płyta bazowa dla modułów diparm z mikrokontrolerami STR912. [rdzeń ARM966E-S]

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

2. Architektura mikrokontrolerów PIC16F8x... 13

Programowanie Układów Logicznych kod kursu: ETD6203. Szczegóły realizacji projektu indywidualnego W dr inż.

Technika Mikroprocesorowa

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

PRUS. projekt dokumentacja końcowa

Tab. 1. Zestawienie najważniejszych parametrów wybranych mikrokontrolerów z rodziny LPC2100, które można zastosować w zestawie ZL3ARM.

ZL11ARM. Uniwersalna płytka bazowa dla modułów diparm

Projektowanie z użyciem procesora programowego Nios II

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

3. Sieć PLAN. 3.1 Adresowanie płyt głównych regulatora pco

ZL2ARM easyarm zestaw uruchomieniowy dla mikrokontrolerów LPC2104/5/6 (rdzeń ARM7TDMI-S)

Parametryzacja przetworników analogowocyfrowych

ZL15AVR. Zestaw uruchomieniowy dla mikrokontrolerów ATmega32

Programowalne Układy Cyfrowe Laboratorium

ZL30ARM. Zestaw uruchomieniowy dla mikrokontrolerów STM32F103

LABORATORIUM - ELEKTRONIKA Układy mikroprocesorowe cz.2

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

Instytut Teleinformatyki

Laboratorium Procesorów Sygnałowych

Politechnika Białostocka

TECHNIKA MIKROPROCESOROWA II

ZL5ARM. Zestaw uruchomieniowy dla mikrokontrolerów LPC2119/2129 (rdzeń ARM7TMDI-S) Kompatybilność z zestawem MCB2100 firmy Keil

ZL2ARM easyarm zestaw uruchomieniowy dla mikrokontrolerów LPC2104/5/6 (rdzeń ARM7TDMI-S)

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

Rys. 1. Schemat ideowy karty przekaźników. AVT 5250 Karta przekaźników z interfejsem Ethernet

WYKŁAD 5. Zestaw DSP60EX. Zestaw DSP60EX

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

STM32 Butterfly. Zestaw uruchomieniowy dla mikrokontrolerów STM32F107

Programator procesorów rodziny AVR AVR-T910

Elektronika samochodowa (Kod: TS1C )

Kurs programowania mikrokontrolerów ARM z rodziny Cortex-M3

Ćwiczenie 5 Zegar czasu rzeczywistego na mikrokontrolerze AT90S8515

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

E-TRONIX Sterownik Uniwersalny SU 1.2

Systemy uruchomieniowe

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

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

ZL10PLD. Moduł dippld z układem XC3S200

MikloBit ul. Cyprysowa 7/ Jaworzno. JTAG + ISP dla AVR. rev

AVREVB1. Zestaw uruchomieniowy dla mikrokontrolerów AVR. Zestawy uruchomieniowe

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

Lista zadań nr 1. Zagadnienia stosowanie sieci Petriego (ang. Petri net) jako narzędzia do modelowania algorytmów sterowania procesami

ZL4PIC. Uniwersalny zestaw uruchomieniowy dla mikrokontrolerów PIC

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

ZL16AVR. Zestaw uruchomieniowy dla mikrokontrolerów ATmega8/48/88/168

Zestaw uruchomieniowy z mikrokontrolerem LPC1114 i wbudowanym programatorem ISP

Projekt MARM. Dokumentacja projektu. Łukasz Wolniak. Stacja pogodowa

Programowanie w językach asemblera i C

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

Interfejsy komunikacyjne pomiary sygnałów losowych i pseudolosowych. Instrukcja do ćwiczenia laboratoryjnego

ZL15AVR. Zestaw uruchomieniowy dla mikrokontrolerów ATmega32

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

MultiTool instrukcja użytkownika 2010 SFAR

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

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

INSTRUKCJA INSTALACJI URZĄDZENIA

Płytka ewaluacyjna z ATmega16/ATmega32 ARE0021/ARE0024

Wstęp Architektura... 13

Opis przedmiotu zamówienia CZĘŚĆ 1

SYSTEMY CZASU RZECZYWISTEGO (SCR)

Licznik rewersyjny MD100 rev. 2.48

Licznik prędkości LP100 rev. 2.48

Konfigurowanie modułu BK9050 firmy Beckhoff wprowadzenie

Szczegółowy opis przedmiotu zamówienia. Część 1 - Laboratoryjny zestaw prototypowy

Viper Linux Lite, oprogramowanie Linux

INSTRUKCJA UŻYTKOWNIKA MPCC

ZL4PIC. Uniwersalny zestaw uruchomieniowy dla mikrokontrolerów PIC

Instrukcja obsługi programatora AVR Prog USB v2

Płytka uruchomieniowa AVR oparta o układ ATMega16/ATMega32. Instrukcja Obsługi. SKN Chip Kacper Cyrocki Page 1

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

Instrukcja obsługi programatora AVR Prog USB v2

Instrukcja programowania płytek edycji 2014

DVR KEYB v1.4. Interfejs PS-2 do rejestratorów DVR

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

IIPW_SML3_680 (Z80) przewodnik do ćwiczeń laboratoryjnych

LITEcomp. Zestaw uruchomieniowy z mikrokontrolerem ST7FLITE19

Instrukcja obsługi. Grand IP Camera III. Kamera IP do monitoringu

Uniwersalny zestaw uruchomieniowy dla mikrokontrolerów AVR

NARZĘDZIE KONFIGURACYJNE VNX SETUP TOOL MODUŁÓW RODZINY VNX ADVANCED

ADuCino 360. Zestaw uruchomieniowy dla mikrokontrolerów ADuCM360/361

Transkrypt:

Instrukcja do laboratorium Systemy wbudowane ARM 9 TDMI 1

1. Regulamin pracy laboratorium a) Zaliczenie laboratorium Obecność na zajęciach jest obowiązkowa. Dopuszczalna jest jedna nieusprawiedliwiona nieobecność w ciągu semestru. Studenci wykonują zaplanowane ćwiczenia w grupach jednoosobowych. Każde ćwiczenie, za wyjątkiem ćwiczenia pierwszego, jest indywidualnie oceniane, z uwzględnieniem jakości i terminowości jego wykonania. Ocena i ew. uwagi są zapisywane w dzienniku. Każde pojedyncze ćwiczenie jest przewidziane do realizacji na jednych zajęciach (2 godziny), jeśli ćwiczenie jest przewidziane na dwa zajęcia, będzie ono ocenianie na drugich zajęciach. Na ocenę zadania składa się: ocena programu (algorytm, sposób formalizowania kodu) oraz znajomość teoretyczna zagadnień wykorzystanych w programie. W przypadku stwierdzenia nieprzygotowania do zajęć, student jest z nich usuwany. Jest to równoznaczne z nieobecnością nieusprawiedliwioną. Ocena końcowa z laboratorium jest średnią ocen otrzymanych za poszczególne ćwiczenia. Rażące spóźnienie na zajęcia powoduje niedopuszczenie do ich odbycia. b) Kategorycznie zabrania się: Zdejmowania obudów komputerów. Podłączania i odłączania jakichkolwiek przewodów bez zezwolenia osoby prowadzącej zajęcia. Wynoszenia jakichkolwiek przedmiotów (w tym dokumentacji technicznej) znajdujących się w laboratorium. Przepisywania lub kopiowania programów, procedur lub funkcji od innych grup lub osób. Przebywania w laboratorium osobom nie odbywającym zajęć i nie związanych bezpośrednio z obsługą laboratorium. Spożywania posiłków i picia napojów w sąsiedztwie sprzętu komputerowego. c) W przypadku naruszenia zakazów wymienionych w pkt. b, na studentów mogą być nałożone sankcje, m. in.: Usunięcie z zajęć i wstawienie oceny niedostatecznej. Poniesienie kosztów ew. naprawy, jeżeli uszkodzenie powstało wskutek umyślnego działania studenta. 2

2. Opis sprzętu znajdującego się w laboratorium W laboratorium znajduje się następujący sprzęt: 1. Komputery klasy PC. 2. Zestawy uruchomieniowe AT91SAM9263-EK Evaluation Board z 32-bitowymi procesorami AT91SAM9263 z rdzeniem ARM9TDMI. 3. Płytki rozszerzające z enkoderem, termometrem oraz wyświetlaczem LED. 4. Przenośne stabilizowane zasilacze 12 V/1 A. 5. Adaptery JTAG łączące kanały diagnostyczne procesorów ARM z komputerem PC. 6. Komplet przewodów połączeniowych (EIA232, USB). Zestawy uruchomieniowe składają się z dwóch modułów: 1. Płyty bazowej z procesorem ARM, 2. Modułu z wyświetlaczem, enkoderem i termometrem Na rysunku 1 zamieszczono schemat blokowy procesora AT91SAM9263. Procesor wyposażony jest w następujące pamięci wewnętrzne: pamięć ulotna SRAM 80 kb pracująca z pełną szybkością procesora lub magistrali AMBA (0 waitstate), pamięć ulotna SRAM 16 kb pracująca z pełną magistrali AMBA (0 waitstate), pamięć nieulotna FLASH 128 kb pracująca z pełną szybkością magistrali AMBA (0 waitstate). Rys. 1. Schemat blokowy procesora AT91SAM9263 3

Procesor współpracuje z następującymi pamięciami zewnętrznymi: pamięć dynamiczna SDRAM 256 MB (8 M x 32 bit, dostępna na szynie EBI0), pamięć statyczna PSRAM 4 MB (2 M x 16 bit, dostępna na szynie EBI1), pamięć nieulotna NANDFLASH 256 MB (256 M x 8, dostępna na szynie EBI0), pamięć nieulotna NORFLASH 8 MB (4 M x 16, dostępna na szynie EBI0). Na rysunku 2 zamieszczono zdjęcie płyty bazowej z zaznaczonymi elementami wykorzystywanymi do komunikacji z urządzeniami zewnętrznymi lub użytkownikiem systemu. D e b u g e r J T A G D e b u g P o rt E IA R S 2 3 2 Q VG A To u c h S c re e n U SB Z a s ila n ie 12 V U s e r P o rt E IA R S 2 3 2 E th e rn e t 1 0 /1 0 0 R x D 0 (P A 2 7 ) T x D 0 (P A 2 6 ) AR M 9 A u d io AT91SAM 9263 B a te r ia W a k e -u p S D /M M C L E D D S 2 (P B 7 ) S w itc h R (P C 4 ) L E D D S 1 (P b 8 ) S w itc h L (P C 5 ) Rys. 2. Płytka ewaluacyjna z procesorem AT91SAM9263 Płyta wyposażona jest w szereg interfejsów oraz układów peryferyjnych: Dostępne interfejsy: Ethernet 100-base TX, USB FS device Master, 2 x USB FS Host, CAN 2.0B, EIA RS232 (przeznaczone dla użytkownika), EIA RS232 (przeznaczone dla celów diagnostycznych lub debugowania), Dostępne urządzenia peryferyjne: Wyświetlacz: 3.5" 1/4 VGA TFT LCD z ekranem dotykowym, Kodek audio: AC97 Audio, Debug interface: JTAG, Interfejs do programowania: JTAG, 4

Złącze kart SD/SDIO/MMC. 5

Rys. 3. Rozmieszczenie elementów na płytce bazowej strona górna płytki 6

Rys. 4. Rozmieszczenie elementów na płytce bazowej strona dolna płytki 7

Rys. 5. Schemat blokowy zestawu ewaluacyjnego AT91SAM9263-EK 8

Na rysunku 3 i 4 przedstawiono rozmieszczenie elementów na warstwie górnej i dolne płytki bazowej, natomiast na rysunku 5 przedstawiono schemat blokowy układu z zaznaczonymi interfejsami, układami pamięciami i innymi urządzeniami peryferyjnymi. 3. Schematy połączeń urządzeń wykorzystywanych na laboratorium oraz rejestry sterujące Na laboratorium wykorzystywane będą moduły portów I/O, transmiter UART, timery procesora, kontroler przerwań oraz urządzenia peryferyjne dostępne na płycie dodatkowej. 3.1. Układy zamontowane na płycie bazowej Na rysunku 4 przedstawiono schemat obrazujący dołączenie diod świecących LED oraz przełączników zwiernych push-button. Nazwy portów procesora, do których dołączone są diody LED i mikroprzełączniki przedstawiono na rys. 2 (opisy w nawiasach). Rys. 4. Schemat obrazujący dostępne diody LED oraz mikroprzełączniki 3.2. Układy zamontowane na płycie dodatkowej Na rysunku 5 pokazano zdjęcie płytki dodatkowej (w wersji 1). Rys. 5. Zdjęcie płytki z enkoderem i wyświetlaczem 9

Na płycie zainstalowane są następujące elementy: Enkoder obrotowy, Termometr cyfrowy, Wyświetlacz LED, Przetwornik dźwiękowy (buzzer). Schemat elektryczny układów pokazany jest na rysunku 6. Rys. 6. Schemat płyty dodatkowej 3.2.1 Wyświetlacz LED Na płycie znajduje się wyświetlacz podwójny 7 segmentowy. Oprócz wyświetlania cyfr i symboli można sterować kropką przy każdej cyfrze. Odpowiednie segmenty obu wyświetlaczy są połączone razem. Wyświetlacz jest sterowany dynamicznie, tylko jedna cyfra w danym momencie jest wyświetlana, wyboru cyfry dokonuje się przy pomocy sterowania tranzystorami Q2 i Q3. Tranzystory Q2 i Q3 załącza się ustawiające poziom wysoki odpowiednio na wyprowadzenia PB28 i PB30. Do celów testowych można oba albo jeden tranzystor załączyć na stałe. Każdy jeden segment można podświetlić odpowiednio ustawiając wyjście sterujące segmentami. Na rysunku 7 pokazano szkic pojedynczego segmentu z nazwanymi segmentami. Nazwa segmentu Nazwa portu wyświetlacza procesora Segment A PB25 Segment B PB24 Segment C PB22 Segment D PB21 Segment E PB20 Segment F PB27 Rys. 7. Szkic wyświetlacza LED Segment G PB26 Kropka (DP) PB23 Istnieje możliwość sterowania poziomem jasności wyświetlacza przy pomocy PWM. Można to zrealizować programowo lub sprzętowo sterując tranzystorem Q1. Do testów można ten 10

tranzystor załączyć na stałe (pełna jasność). Tranzystor Q1 załącza się poziomem wysokim na wyprowadzeniach PB29. Aby wyświetlać na wyświetlaczu cyfry lub inne symbole należy w programie zaprojektować odpowiednią funkcję przekodowującą znak (cyfrę) na kombinację podświetlonych segmentów (np. przy pomocy tablicy). Aby wykorzystać obie cyfry wyświetlacza należy odpowiednio szybko (min. 30 Hz) wyświetlać obie cyfry naprzemiennie. 3.2.2 Enkoder obrotowy Enkoder obrotowy zainstalowany na płycie składa się z dwóch niezależnych elementów, przycisku monostabilnego i właściwego dwukanałowego enkodera kwadraturowego. Wciśnięcie gałki powoduje uaktywnienie przycisku, natomiast obrót gałką powoduje wygenerowanie serii impulsów. Wciśnięcie może być wykrywane niezależnie od jednoczesnego obracania gałką. Aktywne wciśnięcie jest sygnalizowane stanem niskim na wyjściu enkodera. W zależności od kierunku obrotów impulsy z enkodera mają postać przedstawioną na przebiegach czasowych na rysunku 8. Rys. 7. Przebiegi czasowe na wyjściu enkodera Aby rozpoznać kierunek obrotów w najprostszym przypadku należy uznać jeden z kanałów jako kanał referencyjny i wybrać arbitralnie jedno ze zboczy a następnie zawsze na tym zboczu sprawdzać stan logiczny na drugim kanale. Enkoder jest podłączony w następujący sposób do procesora: Kanał A: PB19 Kanał B: PB18 Przycisk: PB17 Oprócz wykrywania kierunku obrotów można mierzyć szybkość obracania gałką, w tym celu należy mierzyć czas pomiędzy impulsami (lub częstotliwość) jednego z kanałów. 3.2.3 Termometr Zainstalowany jest termometr typu TMP121 lub TMP123. Specyfikacja układu dostępna jest w postaci wydrukowanej w laboratorium lub na stronie producenta (www.ti.com). Obsługa termometru polega na programowym generowaniu przebiegów sygnałów według specyfikacji. Termometr komunikuje się przy pomocy interfejsu SPI (Serial Peripheral Inteface). Wyprowadzenia układu są podłączone następująco: Zegar (CLK): PB16 Dane (SDO): PB14 Sygnał wyboru układu (CS): PB15 11

4. Korzystanie z oprogramowania dostępnego w laboratorium Na zajęciach laboratoryjnych wykorzystywane są następujące narzędzia dostępne na licencji GNU (http://www.gnuarm.org/): GCC-4.3 toolchain (Linux): Kompilator: gcc-4.3.2, Przydatne narzędzia: binutils-2.19, Biblioteki C/C++: newlib-1.16, Debuger zgodny z GDB: insight-6.8. 4.1 Procesory ARM o Asemblacja programów napisanych w języku asemblera o Przejść do katalogu, w którym znajduje się program źródłowy o Wpisać polecenie asm-arm <nazwa_pliku>, aby zasemblować program. Jeżeli asemblacja się powiedzie, zostanie wygenerowany plik z rozszerzeniem elf i takiej samej nazwie jak nazwa pliku źródłowego o Można skorzystać z programu make, ale wtedy lepiej bezpośrednio wykorzystać do asemblacji program arm-elf-asm o Kompilacja programów w języku C o Przejść do katalogu, w którym znajduje się program źródłowy o Wpisać polecenie gcc-arm <nazwa_pliku> o Można skorzystać z programu make, ale wtedy lepiej bezpośrednio wykorzystać do asemblacji program arm-elf-gcc 4.2 Program gdb o Program gdb uruchamia się w zależności od architektury: o Komputer PC: gdb o Procesory Freescale MCF5282: gdb-cf o Procesory ARM: gdb-arm o W przypadku procesorów ARM konieczne jest wcześniejsze uruchomienie programu OpenOCD i utrzymywanie tego programu uruchomionego przez cały czas (np. na innej konsoli) o Ustawianie pułapek, polecenie breakpoint (w skrócie b) <numer linii> lub <nazwa funkcji> o Uruchamianie programu, plecenie run (w skrócie r) o Po wejściu w pułapkę, można kontynuować wykonanie programu poleceniem continue (c), lub wykonywać go krok po kroku z wchodzeniem do wnętrza funkcji - polecenie step (s) lub bez wchodzenia - polecenie next (n) o Aby powrócić do wykonywania funkcji nadrzędnej należy wpisać polecenie finish o Aby wyświetlić zawartość rejestru lub danej należy skorzystać z polecenia print (p) o Aby przerwać działanie programu należy wcisnąć kombinację CTRL+C o Aby zakończyć pracę z debugerem należy wpisać polecenie quit (q) 12

4.3 Program minicom o Uruchomić program Minicom poleceniem minicom o W przypadku jeśli program minicom nie daje się uruchomić i kończy się z błędem braku możliwości zapisania pliku lock-file, należy uruchamiać program minicom z parametrem -t o Po zainicjowaniu komunikacji, znaki odebrane z mikrokontrolera będą wyświetlane w oknie terminala o Aby wysłać znak należy nacisnąć odpowiedni klawisz na klawiaturze PC o Aby wyczyścić zawartość okna terminala należy wybrać kombinację CTRL+A C o Aby opuścić program minicom należy wybrać kombinację CTRL+A Q o Aby zmienić parametry programu minicom należy wybrać kombinację CTRL+A O o Przy pierwszym uruchomieniu programu należy skonfigurować przynajmniej: o Urządzenie portu szeregowego /dev/ttys0 lub /dev/ttys1, jeżeli urządzenie nie jest znane proszę wykorzystać polecenie dmesg grep tty o Prędkość, parzystość i ilość bitów (wedle własnego programu) o Proszę wyłączyć kontrolę przepływu danych, zarówno sprzętową, jak i programową o Zaleca się zapisać domyślną konfigurację programu, opcja save as dfl o Jeśli w czasie działania programu zmienia się urządzenie portu szeregowego, należy zapisać konfigurację, zakończyć program i uruchomić go ponownie Wersje dokumentu: wersja data autor 2 25.02.2009 Makowski 2.1 01.03.2009 Tarnowski 2.2 02.03.2009 D. Makowski zmiany pierwsza wersja publiczna uzupełniony opis płytki i sposób kompilacji Poprawki 13