Die Präsentation wird geladen. Bitte warten

Die Präsentation wird geladen. Bitte warten

School of Engineering ESI Einführung. School of Engineering Embedded System Implementation Vertiefungsmodul im 6. Semester für die Studiengänge ET, ME.

Ähnliche Präsentationen


Präsentation zum Thema: "School of Engineering ESI Einführung. School of Engineering Embedded System Implementation Vertiefungsmodul im 6. Semester für die Studiengänge ET, ME."—  Präsentation transkript:

1 School of Engineering ESI Einführung

2 School of Engineering Embedded System Implementation Vertiefungsmodul im 6. Semester für die Studiengänge ET, ME und SI Voraussetzungen: DT, TIn1 + TIn2, MC, ESE und C-Programmierung Organisation ESI: 2 Dozierende Hans Gelke: ARM Prozessoren Praktikum 1: ARM (Gelk) Hans Käser: Grundlagen und Entwicklung von Embedded Systemen, Programmierung, Embedded PC Systeme Praktikum 2: Embedded PC (Ksha)

3 School of Engineering Inhalt Modul ESI 1.Einführung (Gelk) 2.ARM Systeme (Gelk) Praktikum 1 ARM Radio 3.Programmierung und Hardware nahe Software (Ksha) 4.Embedded PC Systeme (Ksha) Praktikum 2 JRex ePC 5.Entwurf und Realisation von Embedded System (Ksha)

4 School of Engineering Semesterprogramm

5 School of Engineering Lernziele und Leistungsvereinbarung 1.Unterschiede Embedded System Universalrechner 2.Vorgehensweise bei der Entwicklung von Embedded System 3.Besonderheiten der ARM Architektur (IP = Intellectual Property) 4.Praktische Umsetzung an Embedded PC System und ARM System Für Modulnote und Credits sind notwendig: 2 Kurzprüfungen 45 Minuten 2 Noten Teilnahme und Mitarbeit im Praktikum Praktikumsnote Erfahrungsnote = (Note K1 + Note K2 + Praktikumsnote) / 3 Modulendprüfung 90 Minuten M-Prüfungsnote Modulnote = (Erfahrungsnote + 2*M-Prüfungsnote) / 3

6 School of Engineering Umgang und Erwartungen Lernen bedeutet Fehler machen Fragen sind erwünscht Unterstützung bei Fragen und Problemen im Labor Assistenten Anwesenheit und Pünktlichkeit in Theorie und Praktikum Aufmerksamkeit und Mitarbeit im Unterricht Ordnung und Sauberkeit im Labor: Kein Essen und Trinken Fragebogen und Laborgruppe bitte mit Namen und Studiengang

7 School of Engineering 1. Einführung in Embedded Systems Was sind eingebettete Systeme?

8 School of Engineering Merkmale und Eigenschaften von Embedded Systems Embedded System: Prozess (reale Welt) und Bediener im Zentrum Rechner (HW+SW) ist oft unsichtbar in das System (Gerät) integriert Spezialisierung: Mikrocontroller mit speziellem Programm (Firmware) Zuverlässigkeit und Robustheit Systemumfeld bestimmt die Anforderungen an das ES Echtzeitanforderungen (Realtime) Ausfallsicherheit Batteriebetrieb Oft kein Lademedium (Disk) Firmware in ROM / Flash Spezielle Entwicklungswerkzeuge notwendig Prozessorwahl ist von zentraler Bedeutung

9 School of Engineering 2. Bedienkonzepte Entwicklung: GUI (Graphical User Interface) … PARC, Apple, OSF/Motiv, Windows MMI (Man Machine Interaction) … Embedded Systems Ergonomie Ben Shneiderman: Designing the User Interface Wichtige Aspekte: Ziele guter Bedienkonzepte MMI: Man Machine Interaction (auch Man Machine Interface) Ein-/Ausgabe Elemente Prototyping

10 School of Engineering Beispiel eines guten Benutzerinterfaces: TwoTimer von Tissot Digitaluhren mit Zusatzfunktionen mit vier Knöpfen Bedienung? Tissot TwoTimer wird nur mit einer konventionellen Krone bedient! Die sechs Funktionen können mit dem einzigen Bedienungselement Krone bedient werden Anzeigeflag als Feedback Konsistente Bedienungsphilosophie der Krone: vorwärts/rückwärts, langsam/schnell, ausziehen (set) und eindrücken (start/stop/reset) … einen guten Start ins letzte Semester …

11 School of Engineering ARM Systeme Geschichte und Architekturen der ARM Prozessoren

12 School of Engineering Semester Woche Vorlesung 1Einführung ESI 2Vorlesung fällt aus, Praktikum findet statt 3ARM Architektur: - Register - Exception - ARM Befehlssätze 4Software Entwicklung: - ARM und Thumb Compiler - Entwicklungstools - Interrupts 5Philips LPC Systemperipherie: - Flash Memory, - Bootloader/Startup Code - Timer Counter 6- Externe Speicher - Andere Prozessoren mit ARM Ablauf

13 School of Engineering Leistungsnachweise Elektronisches Multiple Choice Quiz am ARM Radioprojekt muss am (G1/G3) bzw (G2) vorführbereit sein. Von den Vorschläge für ein Benutzerinterface darf abgewichen werden, es müssen aber alle Features unterstützt werden Anstelle einer Dokumentation eine Power Point Präsentation auf Lap Top Beschreibung der Haupt Statemachine Flussdiagramme der Hauptfunktionen Welche Softwaremodule (c-Dateien) wurden verwendet Welche Subroutinen gibt es und was sind ihre Funktionen Kurzbedienungsanleitung Abgesetzte Modulendprüfung in den Prüfungswochen Übungen zu den Lektionen befinden sich im www

14 School of Engineering Inhalt der Heutigen Vorlesung Geschichte der ARM Prozessoren ARM7 und Cortex-M3 Ausstattungsmerkmale

15 School of Engineering ARM Geschichte 1980 Acorn Computer entwickelt den ATOM Heimcomputer basierend auf den Motorola bit Prozessor begann Acorn mit dem Acorn Risc Machine Projekt. Architektur für dem ARM1 als Coprozessor zum BBC Micro. Chip Hersteller war VLSI Technologie gründen Acorn und Apple Computer die ARM LTD, mit je 43%. VLSI ist Investor und Lizenznehmer (VLSI wird 1999 von Philips [heute NXP] gekauft) geht ARM Holdings an die Börse wird ARM Holdings von Acorn Computer abgetrennt.

16 School of Engineering BBC Micro 1982

17 School of Engineering ARM verkauft keine Prozessoren sondern Intellektual Property (IP)

18 School of Engineering ARM7 Beispiel: Mobil Phone IC mit ARM7 core

19 School of Engineering Beispiele für den Einsatz des ARM Die meisten Mobiltelephone haben mindestens einen Prozessor von ARM (IPhone hat 3 ARM Prozessoren mit 600MHz IPhone 3G Cortex A9) MP3 Spieler PDAs wie PALMTreo Navigationssysteme Game Boy Advance DECT Telephone TV Set Top Boxen

20 School of Engineering Geringer Stromverbrauch (ARM 7 TDMI 0.1mW/MHz) Gute Rechenleistung und Real Time Verhalten Bekannte Schnittstellen (AMBA Bus Standard). Modularer Aufbau möglich. Softwareinvestitionen auf ganze Prozessorfamilie einsetzbar. Kompakter Softwarekode. 32-bit und 16-bit Befehle Niedrige Kosten. Mikrocontroller von ST ab $1.- Warum hat sich ARM bei embedded Produkten als Standard durchgesetzt

21 School of Engineering Produkte die ARM anbietet Hardware IP – synthetisierbares RTL oder Macrozellen Prozessor Cores (Arm7, ARM9, ARM11, Caches) Eingebettete Debugging Hardware (ETM) Direct Memory Access Controller (DMA) Peripherals (SDRAM Controller, UART, Card Interface) Java Accelerator, MP3 Codec Software -Audio Codecs -MPEG2 encoder System On chip design tools (SOC) - Debugger und C-Assembler - Entwicklungsysteme (Keil gehört zu ARM) - Testbenches zur Design Verifizierung - Beispielprogramme Software und Hardware Consulting Mehr unter:

22 School of Engineering ARM Entwicklung und Lizenznehmer 1987: ARM2 1989: ARM3 1991: ARM6 1993: ARM7 1995: ARM8 1997: ARM9 1998: ARM : ARM : ARM Cortex Analog Devices Apple Atmel Conexant Freescale (ehemals Motorola) HTC Corporation HP IBM Infineon Intel (XScale) Luminary Micro Motorola NEC NetSilicon Nintendo NXP (ehemals Philips Semiconductors) Oki Palm Samsung Sony STMicroelectronics Texas Instruments Toshiba Zilog

23 School of Engineering ARM Prozessor Cores (Stand November 2008)

24 School of Engineering

25 Unterscheidungsmerkmale TypProcessorVerPipe -line CacheMMUDSPJavaBefehls- satz EmbeddedARM7TDMIv43nein Thumb ARM Cortex-M1v73nein Cortex-M3v73neinMPUnein Cortex-R4v78jaMPUjaneinThumb-2 ARM ApplicationARM926E-Sv55ja Thumb ARM ARM1136J-Sv68ja Thumb ARM Cortex-A8v713ja Thumb-2 ARM

26 School of Engineering Ein Keil uVision4 Projekt einrichten Vorbereitung auf das Praktikum

27 School of Engineering Dateistruktur der Projekte

28 School of Engineering Keil uVision 4

29 School of Engineering ULINK2 PC USB JTAG- controller ARM Core Scan Chain Scan Flip-Flops JTAG Port LPC2138 Keil ULINK 2

30 School of Engineering Keil ULINK2 und ULINK-ME

31 School of Engineering Funktionen des Startup Code 1.Definieren der Exception Vektoren 2.Konfigurieren der Stack Pointer 3.Konfigurieren der Systemperipherie (einstellen der Chip-Selects, Speicher Waitstates, I/O etc.) Startup Code Ist abhängig von der Systemperipherie jedes einzelnen Bausteins und wird als Default beim Aufsetzen des Projektes kopiert.

32 School of Engineering Linken aller Source Dateien

33 School of Engineering Anleitung für das erste Praktikum

34 School of Engineering NXP LPC2138 wie in den Übungen benutzt Core Teil System Teil ARM7 Core Pulse Width Modulator A/D – D/A Converter Interrupt Controller Real Time Clock I2C/SPI Controller UART SRAM/Flash Bus/Systeme Takt Erzeugung General Purpose I/O

35 School of Engineering Target Hardware für Praktikum Radio TEA5764 LCD display ARM LPC2138 SCL SDA INTx Drehgeber ENB ENA Tastatur P1.16, P1,17, P1.18 P1.19, P1,23 P0.12 P0.13 P0.1 SID P0.7 SOD P0.15 CS EINT0 EINT2 IOPIN0.13 P0.6 P0.5 MISO MOSI GPIO 0.15 JTAG MCB2130Radioplatine

36 School of Engineering PINSEL0 Register P0.5 Bit 11 u. 10 von PINSEL0 Register GPIO Port0.5 MISO (SPI0) Match0.1 (Timer 0) AD0.7 LPC Ausgangspad

37 School of Engineering PINSEL0 Beschreibung aus UM10120 (LPC2138) Datenblatt

38 School of Engineering P0.0 GPIO-0 I0 PIN I0 SET I0 CLR I0 DIR P0.31P0.1P0.2 … P1.16 GPIO-1 I0 PIN I0 SET I0 CLR I0 DIR P1.31P1.17P1.18 … General Purpose I/O Register im LPC2138

39 School of Engineering IODIR Register

40 School of Engineering int main(void) { unsigned int delay; unsigned int flasher = 0x ; // define locals IODIR1 = 0x00FF0000; // set all ports to output while(1) { for(delay = 0;delay<0x10000;delay++) //simple delay loop { ; } IOCLR1 = ~flasher; //clear output pins IOSET1 = flasher; //set the state of the ports flasher = flasher <<1; //shift the active led if(flasher&0x ) flasher = 0x ; //Increment flasher //led and test for } //overflow } Beispielprogramm LED Lauflicht

41 School of Engineering Übung 1 Im Radioprojekt soll Pin 0.15 als Ausgang und auf Log 1 gesetzt werden, damit der Verstärker aus der Stummschaltung gebracht wird. Bestimmen Sie die Werte für die Register: PINSEL0 = 0x IODIR0 = 0x IOCLR0 = 0x IOSET0 = 0x Ausschnitt aus Pinsel Register: Ausschnitt aus IODIR Register: Ausschnitt aus IO Registern:

42 School of Engineering Ansteuern der SPI Schnittstelle

43 School of Engineering ARM MOSI MISO SSEL SCLK SPI Master SPI Slave Character Display P0.6 P0.5 P0.12 P0.4 SPI (Serial Peripheral Interface) zwischen ARM und LCD-Display

44 School of Engineering Übermittlung von Daten im SPI

45 School of Engineering Display Routine sendLine2Display(n, tempstring) char tempstring[21]; sprintf(tempstring,hello world); Temporärer String zum Zwischenspeichern des Textes Sendet Zeile über SPI an LCD Zeile Zeile hat 20 Buchstaben + SPI Synchronization String

46 School of Engineering Variablen in Display Routine sendLine2Display(n, tempstring) char tempstring[21]; sprintf(tempstring,Zählerwert: %d Runden, count); Temporärer String zum Zwischenspeichern des Textes Sendet Zeile über SPI an LCD Zeile Zeile hat 20 Buchstaben + SPI Synchronization String int count = 0 ;


Herunterladen ppt "School of Engineering ESI Einführung. School of Engineering Embedded System Implementation Vertiefungsmodul im 6. Semester für die Studiengänge ET, ME."

Ähnliche Präsentationen


Google-Anzeigen