Embedded Systems

Ähnliche Dokumente
Python macht Embedded Linux angenehmer

CU-R-CONTROL. Beschreibung zur Schaltung ATMega16-32+ISP MC-Controller Steuerung auf Basis ATMEL Mega16/32. Autor: Christian Ulrich

5. Digitale Schnittstellen und Vernetzung im Überblick

BLIT2008-Board. Uwe Berger

Johannes Kelper Universität Linz. Institut für Elektrische Messtechnik. Dokumentation. ATmeag8-USB Modul. Bernd R. Arminger ATmega8-USB Modul 1

Zusatzplatine MP-Bus HZS 562

Der Mikrocontroller beinhaltet auf einem Chip einen kompletten Mikrocomputer, wie in Kapitel

Produktinformation USB AVR Lab

Einführung in die Welt der Microcontroller

Selbstbau-USB-Programmiergerät für AVR

USB RS485 / RS232 Adapter

Der CAN-Bus (Controller Area Network)

ICmega8 / ICmega8-USB

embedded projects GmbH

2008 Jiri Spale, Programmierung in eingebetteten Systemen 1

ATMEGA Mikrocontroller Einführung TEIL 1. 4.November 2009 Mönchengladbach

AT90USB Plug. Mini-Entwicklungswerkzeug. Nutzerhandbuch

Programmieren der AVR RISC MikroController mit BASCOM-AVR

Produktinformationen. Basis Set Atmel Atmega8 & ISP Programmer. Lieferumfang :

Microcontroller Kurs Microcontroller Kurs/Johannes Fuchs 1

Rechnerarchitektur Atmega Vortrag Atmega 32. Von Urs Müller und Marion Knoth. Urs Müller Seite 1 von 7

serielle Schnittstelle/USB-Schnittstelle für das Velbus-System

AT90USB Plug. Mini-Entwicklungswerkzeug. Benutzerhandbuch

Neues vom STRIP Forth-Prozessor

AVR Web Server. Version 1.1. erstellt von. Ulrich Radig

Programmierung Tiny45 für DCC Lokdecoder

Embedded Linux gnublin Board Programmieren Sonstiges. Embedded Linux am Beispiel des Gnublin-Boards

Eclipse. für die kleinen Dinge des (modernen) Lebens

DIP-Schalter für Betriebsart, Power, Programmier- und Datenmodus, RESET und Bootloader. mysmartusb

Batterie-Monitor für Hybrid- und E-Mobile mit 0,04% garantierter Genauigkeit

Open- Source embedded GNU/Linux Plattformen

,Das wären ja prächtige Kleider', dachte der Kaiser; wenn ich solche hätte,..ja, das Zeug muss sogleich für mich gewebt werden!'

mytinyprog MK2 USB Stefan Hoffmann

DTMF Sender. Es können 252 Zeichen maximal am Stück übertragen werden; die Länge des Strings wird mit einem Byte übertragen.

Der P-Net Feldbus. Die Geschichte 2 Markt und Einsatzgebiete 2 Anwendungsmodelle 2 Technologie 4. Installationstechnik 6.

Embedded Touch Panel PC OTP/57V

Fachhochschule Augsburg Fachbereich Informatik. Präsentation der Diplomarbeit. zum Thema

Microcontroller Programmierung. Ein PDV-Vertiefungsprojekt von: Chr. Schulz, P. Simon und D. Stein Sommersemester 2005 Version 1.0

Übung I Echtzeitbetriebssysteme

Die intelligenten Plastikkarten. Florian Häber Christian Zyweck

Bau und Programmieranleitung für den IR - Booster. Vorbemerkungen

tensiolink USB Konverter INFIELD 7

Ingenieurbüro Bernhard Redemann Elektronik, Netzwerk, Schulung. -Datenblatt- 07 Bernhard Redemann

Embedded Linux. Embedded Linux. Daniel Buchheim Seminar "Eingebettete drahtlose Systeme"

Inhalt. 1. Mikrocontroller 2. FPGA 3. Vergleich 4. Hybride Systeme 5. Zusammenfassung 6. Quellenverzeichnis

UART-Kommunikation mit dem Atmel AVR

CS-SI 2.4 Dokumentation 0.1 CS-SI. RS232 / 485 Konverter. RS232 nach RS485 Konverter für SITOP solar Wechselrichter. Version 2.

Linux Terminal mit Ethernet und Java. Eine dynamische Plattform für Automatisierungsapplikationen?

I2C-Echtzeituhr am Atmel AVR

Mikrocontroller. eine Einführung. Florian Schmitt / 34

Roboter programmieren im Unterricht der Sekundarstufe I

Vorlesungsziele. Mit gängigen Begriffen etwas anfangen können. In der Lage sein, die Architektur von Mikroprozessoren zu verstehen

StarterKit Embedded Control SC13 + DK51. From the electronic to the automation

Embedded OS-9 auf RISC-Prozessoren von Motorola

Echtzeitprogrammierung und Echtzeitverhalten von Keil RTX. Frank Erdrich Semester AI 7

Handbuch CompactPCI-Karten

embedded projects GmbH

Intelligente GPRS- und UMTS-Modems - MT-202 / MT-251

Ingenieurbüro Bernhard Redemann Elektronik, Netzwerk, Schulung. -Datenblatt- Bernhard Redemann

F2-2 Zutrittskontrollsystem

Programmiersprachen für eingebettete Systeme Jiri Spale, Programmierung eingebetteter Systeme 1

Gliederung. Übersicht Beispiel: USB-HID Maus Beispiel: USB-HID Keyboard

GNUBLIN, die offene EmbeddedPlattform für die Ausbildung

Programmierung von ATMEL AVR Mikroprozessoren am Beispiel des ATtiny13

Wie Software laufen lernt

Prozessoren für mobile und. eingebettete Systeme II: Die AVR-Architektur. EMES: Eigenschaften mobiler und eingebetteter Systeme

BUSSYSTEME und Interfaces

Mikrocontroller - Schnelleinstieg

Rechnernetze II WS 2013/2014. Betriebssysteme / verteilte Systeme Tel.: 0271/ , Büro: H-B 8404

Vortrag zur Diplomarbeit

GinLink Interface 1GHz RISC CPU M-RAM High-Speed Feldbus Controller RISC-CPU, 800MHz... 1GHz Bis zu 256 MByte SDRAM

Doku zum TFT-Adapter von UB. Inhaltsverzeichnis

Tutorial. Microcontroller. Grundlagen µc. Kapitel 1

DIPLOMARBEIT. Entwurf und Implementierung eines modularen USB-Stacks für eingebettete Controller ohne Betriebssystem. Uwe Pfeiffer

Computergestützte Ansteuerung digitaler Eisenbahnanlagen

ATMega2560Controllerboard

Bastelprojekt USB-Programmer für den ATMEGA8 und andere Prozessoren.

Best Performance. Beautiful Display. Beneficial Feature

Anleitung zum Firmware-Upgrade der Geldscheinprüfer. NC 320, NC 330 und NC 340

Smart Metering im Haushalt. Softwarelösungen Matthias Aebi, futurelab AG / digitalstrom Allianz

Serielle Kommunikation mit dem Arduino. Teil 1: Das Serial Peripheral Interface (SPI)

Netzwerk-Karten, EXSYS 42318

Technische Informatik (Master)

Atmel AVR für Dummies

Single-Ended -Datenübertragung (Asymmetrische Übertragung)

Embedded OS für ARM Cortex Microcontroller

XY-Plotter. Hardware. Software µp. Software PC. von Thomas Wagner

Management & Softskills Management für Projekte & Prozesse Agile Entwicklung von Embedded-Systemen

Kapitel 4 Leitungscodierung

Projekt von Sergio Staab, Niklas Abel

JTAG-Flash für Opticum 9600HD-S

USB2SERIALv1 Virtueller COM-Port, isoliert. Motivation Prinzip Funktion Schaltpläne Layout Signale. WindowsXP. Applikation DOS.

RedPitaya HPSDR Ausgänge zur Antennen und Bandfilterumschaltung

Mikrocontroller - Tipps & Tricks

Embedded Hardware Getting Started

Tickt ihr Board noch richtig? Frequenzmessung durch ChipVORX als Ergänzung zum Boundary Scan Test. Dipl.-Ing. (FH) Martin Borowski

ANSCHLÜSSE & SOFTWARE

Transkript:

Embedded Systems I Themen am 06.12.16 (ES1_16_V9): Software-Interrupts, Serielle Schnittstellen, C-Programme, Betriebssysteme für die kleinen Atmels Beachten Sie bitte die zusätzlichen Infos auf Proki und Tafel! Ulrich Schaarschmidt FH Düsseldorf, WS 2016/17 Literaturhinweise (unbewertete Reihenfolge!) Conrads, Dieter: Datenkommunikation (Verfahren, Netze, Dienste) 3. Aufl., 1996, Friedr. Vieweg & Sohn Verlagsgesellschaft mbh Bermbach, Rainer: Embedded Controller 2001, Carl Hanser Verlag München Wien Schmitt, FJ; von Wendorff, WC; Westerholz, K: Embedded-Control-Architekturen 1999, Carl Hanser Verlag München Wien Beierlein, Thomas; Hagenbruch, Olaf: Taschenbuch Mikroprozessortechnik 2001, Fachbuchverlag Leipzig im Carl Hanser Verlag München Wien 06.12.2016 HS-D U.G. Schaarschmidt 2 HS Düsseldorf (c) U.Schaarschmidt 1

Literaturhinweise (unbewertete Reihenfolge!) Stein, Erich: Taschenbuch Rechnernetze und Internet 2. Aufl., 2004, Fachbuchverlag Leipzig im Carl Hanser Verlag München Schneider, Uwe; Werner, Dieter: Taschenbuch der Informatik 4. Aufl., 2001, Fachbuchverlag Leipzig im Carl Hanser Verlag München Floyd, Thomas L.: Digital Fundamentals 9.ed., 2006, Pearson/Prentice Hall 06.12.2016 HS-D U.G. Schaarschmidt 3 Literaturhinweise (unbewertete Reihenfolge!) Reinhold Orglmeister: http://www.emsp.tu-berlin.de/lehre/projekt- Elektronik/tools/AVR_JTAG : http://www.saleae.com/logic/features/?q=i5&gclid=cm2xx5hs_6ecfc KT3wodXCOKFQ gadgetpool: http://www.gadgetpool.de/nuke/modules.php?name=news&file=ar ticle&sid=30 JTAG Emulator: Zur Bewältigung immer aufwendigerer Softwareprojekte bestand der Wunsch nach einem JTAG- Emulator für die Fehlersuche. Auf der Webseite von Frank Erdrich (www.uc-projects.com) ist ein DIY JTAG für Atmel Contoller vorgestellt, der für den Einsatz im Labor angepasst wurde. 06.12.2016 HS-D U.G. Schaarschmidt 4 HS Düsseldorf (c) U.Schaarschmidt 2

Serielle Schnittstellen Verfahren: Asynchrone Verfahren Synchrone Verfahren Betriebsarten: Vollduplexbetrieb Halbduplexbetrieb Simplexbetrieb Datenübertragungsverfahren: Basisbandübertragung Breitbandübertragung 06.12.2016 HS-D U.G. Schaarschmidt 5 Asynchrone Verfahren Die Bezeichnung Asynchronverfahren bezieht sich auf die zeitlich willkürliche Übertragung von Zeichenfolgen. Gleichlauf von Sender und Empfänger gibt es nur für eine begrenzte Schrittzahl. Geringer Gerätetechnischer Aufwand (intelligente Kommunikationsmodule on Chip); Nachteil: Uneffektiv bei der Übertragung größerer Datenmengen (Zeitaufwand für Start-Stopp- Schritte); 06.12.2016 HS-D U.G. Schaarschmidt 6 HS Düsseldorf (c) U.Schaarschmidt 3

Asynchrone Byteübertragung Gadre & Conrads] 06.12.2016 HS-D U.G. Schaarschmidt 7 Asynchrone Byteübertragung Gadre & Conrads] 06.12.2016 HS-D U.G. Schaarschmidt 8 HS Düsseldorf (c) U.Schaarschmidt 4

Synchrone Verfahren - Softwarebasis Bei Datenübertragung nach dem Synchronverfahren werden alle Zeichenschritte unmittelbar nacheinander übertragen. Es gibt keine Start- und Stopp-Schritte. Zeitrastergleichlauf von Sender und Empfänger wird während einer ganzen Zeichenfolge aufrechterhalten. Absenden eines speziellen Signals vom Sender zum Empfänger, das den Schritttaktgebergleichlauf herstellt; Synchronisierzeichen, die bei auftretenden Lücken in die Sendefolge eingeschoben werden (Bit-Stuffing); Hohe Datenübertragungsraten sind möglich; Stetiger Zeichenfluss; 06.12.2016 HS-D U.G. Schaarschmidt 9 Synchrone Verfahren - Softwarebasis Es werden (größere) Rahmen mit Daten übertragen. Zu Beginn des Rahmens synchronisieren Synchronisationsbits den Empfänger auf den Sender. Die Synchronisation wird während der Übertragung aufrecht erhalten. Damit die Taktinformation nicht verloren geht (z.b. bei hohem Gleichspannungsanteil auf d. Leitung), muss die Codierung der Daten z.b. mittels NRZ- Code (Non-Return to Zero) sicher gestellt werden. 06.12.2016 HS-D U.G. Schaarschmidt 10 HS Düsseldorf (c) U.Schaarschmidt 5

Synchrone Verfahren auf Softwarebasis - Takterhalt [Stein, 2004] 06.12.2016 HS-D U.G. Schaarschmidt 11 Synchrone Verfahren - Hardwarebasis Die Taktgeber von Sender und Empfänger müssen miteinander synchronisiert werden. Hierfür wird bei einigen Übertragungsverfahren eine extra Taktleitung (zusätzlich) zu der/den Datenleitungen eingerichtet. Auf der Datenleitung werden die Daten mit dem (gleichmäßigen) Takt auf der Taktleitung synchronisiert übertragen. 06.12.2016 HS-D U.G. Schaarschmidt 12 HS Düsseldorf (c) U.Schaarschmidt 6

Kommunikation Simplex, Halb-Duplex, Semi-Duplex, Voll-Duplex, Full-Duplex, 06.12.2016 HS-D U.G. Schaarschmidt 13 Synchrone Datenübertragung [Floyd, 2006] 06.12.2016 HS-D U.G. Schaarschmidt 14 HS Düsseldorf (c) U.Schaarschmidt 7

Amplitudenmodulation ASK Amplitude Shift Keying [Conrads] 06.12.2016 HS-D U.G. Schaarschmidt 15 Frequenzmodulation FSK Frequency Shift Keying [Conrads] 06.12.2016 HS-D U.G. Schaarschmidt 16 HS Düsseldorf (c) U.Schaarschmidt 8

Phasenmodulation PSK Phase Shift Keying [Conrads] 06.12.2016 HS-D U.G. Schaarschmidt 17 Anwendung serieller Verfahren RS 232, V.24, RS 422 / 423, RS 485 SPI, Microwire, ISP, IIC Bus, I 2 C-Bus, TWI Bus, SM-Bus, USI (Atmel-spezifisch) 06.12.2016 HS-D U.G. Schaarschmidt 18 HS Düsseldorf (c) U.Schaarschmidt 9

Standardisierte serielle Interfaces 06.12.2016 HS-D U.G. Schaarschmidt 19 RS 232 Verbindung zweier AVR (bei SW-Handshake) [Gadre] 06.12.2016 HS-D U.G. Schaarschmidt 20 HS Düsseldorf (c) U.Schaarschmidt 10

RS 232 Verbindung zweier AVR (bei HW-Handshake 06.12.2016 HS-D U.G. Schaarschmidt 21 RS 422A Verbindung zweier AVR [Gadre] 06.12.2016 HS-D U.G. Schaarschmidt 22 HS Düsseldorf (c) U.Schaarschmidt 11

RS 422 Verbindung zweier AVR - Oszillogramm [Gadre] 06.12.2016 HS-D U.G. Schaarschmidt 23 RS 422A Verbindung Symmetrische Schnittstelle (CCITT V.11); Datenraten bis 10 Mbit/s bei bis zu 13m; Datenraten von 100kBit/s bei Leitungslängen von max. 1300m möglich; Mit speziellen Treiberbausteinen bis zu 10 Empfänger an einem Sender möglich; 06.12.2016 HS-D U.G. Schaarschmidt 24 HS Düsseldorf (c) U.Schaarschmidt 12

RS 485A Verbindung mehrerer Einheiten [Gadre] 06.12.2016 HS-D U.G. Schaarschmidt 25 RS 485A Verbindung mehrerer Einheiten Wird multplex (mehrere Sender und Empfänger an einem gemeinsamen Leitungspaar) betrieben (Erweiterung der RS 422A); Je nach verwendeter Bausteinfamilie können 32, 128 oder 256 Teilnehmer verbunden werden; Symmetrische Signale mit bis zu 10 Mbit/s; Bis zu 1200m Übertragungsentfernung; Differenzspannung > 200mV; -7...+12 V Gleichtaktspannung auf der Leitung zulässig; 120 Ohm Leitungsimpedanz (verdrillte 2-Draht-Leitung); 60 Ohm Lastwiderstand; Eingangsimpedanz der Empfänger > 12kOhm; Ausgangskurzschlußstrom max 150mA gegen Masse, max 250mA gegen -7... 12V; [TB Mikroprozessortechnik] 06.12.2016 HS-D U.G. Schaarschmidt 26 HS Düsseldorf (c) U.Schaarschmidt 13

SPI - Bus [Gadre] 06.12.2016 HS-D U.G. Schaarschmidt 27 IIC Bus, TWI Bus, I²C-Bus [Gadre] 06.12.2016 HS-D U.G. Schaarschmidt 28 HS Düsseldorf (c) U.Schaarschmidt 14

IIC Bus, TWI Bus, I²C-Bus [Gadre] 06.12.2016 HS-D U.G. Schaarschmidt 29 JTAG (USB Anschluss auf Basis des FTDI FT2232) USB to JTAG Interface von Hubert Högl, Schaltplan USB JTAG Interface für usbprog und OpenOCD von Benedikt Sauter (Zurzeit gibt es Bausätze für 22 EUR. Der Adapter ist ein Universaladapter der mit verschiedenen Firmwares zu verschiedenen Geräte werden kann. Pläne, Quelltexte usw... Open Source!!!) Amontec JTAGkey, JTAGkey-Tiny EKK-LM3S811 von LMI. Auf dem Testboard ist ein "on-board" JTAG- Adapter, der zu Ansteuerung des LM3S811 auf dem Board genutzt wird, aber auch an externe Controller angeschlossen werden kann. (Alle LMI Testboards verfügen über den JTAG Ein- und Ausgang.) ARM-USB-OCD von Olimex Xverve Signalyzer Tool 06.12.2016 HS-D U.G. Schaarschmidt 30 HS Düsseldorf (c) U.Schaarschmidt 15

JTAG-ICE MkII (Pinout des Steckers 20-pol) Auf Evaluation-Boards verschiedener Hersteller (z. B. Atmel, IAR, Keil, Olimex) ist die JTAG- Schnittstelle über einen 20-poligen Wannenstecker (2*10, Raster 2,54mm) herausgeführt. 1 Vcc 2 NC 3 ntrst 4 GND 5 TDI 6 GND 7 TMS 8 GND 9 TCK 10 GND 11 GND 12 GND 13 TDO 14 GND 15 NRESET/nSRST 16 GND 17 NC 18 GND 19 NC 20 GND Daneben existiert noch eine weniger gebräuchliche aber dokumentierte Variante mit 14 Polen (2*7). Bei fertigen Geräten, für die keine Schaltpläne vorliegen, muss man sich die herstellerspezifische Anschlussbelegung anhand des Datenblatts des verwendeten Controllers und mittels Messgerät selbst ermitteln. 06.12.2016 HS-D U.G. Schaarschmidt 31 Programmentwicklung und Debugging Übliche Verfahren: Simulation des Programmcodes auf einem Host-PC; Crash and burn (Neuprogrammierung, Änderung, Fehlerbeseitigung, bis es funzt); Debugging mithilfe eines Target-Monitors; In-Circuit-Emulation; 06.12.2016 HS-D U.G. Schaarschmidt 32 HS Düsseldorf (c) U.Schaarschmidt 16

Warum ein BS auf einer MCU? Eigentlich z.t. aus den gleichen Gründen wie auf einer Workstation. Treiber für die On-Chip-Peripherie müssen nicht von jedem Programmierer neu entwickelt werden. Es gibt ein API (Application Programmer s Interface), das die Programmierung abstrahiert. Ein Realzeit-Kernel vereinfacht die Einhaltung der zeitlichen Restriktionen für die Modulentwickler. 06.12.2016 HS-D U.G. Schaarschmidt 33 Multitasking vs Multiuser Präemptives oder kooperatives (nichtpräemptives) Multitasking? Timer-Interruptsystem ; Unterschiedliche Prioritäten der Betriebssystem-Module (Systemkern Kernel) und der Nutzer-Tasks (unterprivilegierte Prozesse); 06.12.2016 HS-D U.G. Schaarschmidt 34 HS Düsseldorf (c) U.Schaarschmidt 17

COrnell Miniature ATmel Operating System (COMATOS) Realzeit Betriebssystem (RTOS Real Time Operating System); 2 Versionen (Assembler, C) Atmel AT90S8515 (8k Flash, 512 Byte SRAM, 512 Byte EEPROM, 1*8Bit Timer, 1*16 Bit Timer, jeweils mit programmierbarem Vorteiler [Prescaler], Watchdog mit eigenem On-Chip-Oszillator) 06.12.2016 HS-D U.G. Schaarschmidt 35 9. Übungsaufgabe Comatos what the hell is it? Welche Art von BS? Wieviele Tasks sind möglich? Welche grundlegenden Funktionen, die uns als Programmierer helfen, erkennen Sie? 06.12.2016 HS-D U.G. Schaarschmidt 36 HS Düsseldorf (c) U.Schaarschmidt 18