of 34 /34
1 / 34 Mikrocontroller eine Einführung Florian Schmitt - 16.11.2010

Mikrocontroller - PHYSnet-RZ · PDF file2 / 34 Was sind Mikrocontroller, wozu sind sie nützlich? Unterschiede und Gemeinsamkeiten mit dem PC Wie funktionieren Mikrocontroller

  • Author
    haminh

  • View
    224

  • Download
    5

Embed Size (px)

Text of Mikrocontroller - PHYSnet-RZ · PDF file2 / 34 Was sind Mikrocontroller, wozu sind sie...

  • 1 / 34

    Mikrocontrollereine Einfhrung

    Florian Schmitt - 16.11.2010

  • 2 / 34

    Was sind Mikrocontroller, wozu sind sie ntzlich? Unterschiede und Gemeinsamkeiten mit dem PC Wie funktionieren Mikrocontroller Probleme und Schwierigkeiten Aussicht: Mglichkeiten, zuknftige Entwicklung

    Inhalt

  • 3 / 34

    Halbleiterchips Prozessor mit vielen Zusatzfunktionen Integrierte Speichermglichkeiten Ein-Chip-Computersystem

    Beispiele fr integrierte Funktionen: Einfache Parallelausgnge z.B. zum Steuern Serielle Schnittstellen Ethernet- und USB-Schnittstellen ADC (Analog Digital Converter) Spannungen messen LCD-Controller

    Was sind Mikrocontroller?

  • 4 / 34

    Was sind Mikrocontroller?

  • 5 / 34

    Was sind Mikrocontroller?

  • 6 / 34

    Was sind Mikrocontroller?

  • 7 / 34

    Programm / Prozessor

    Pins

    Speicher

    Einlesen / Messen

    Ausgabe / Steuern

    In Speicher schreiben

    Aus Speicher lesen

    AusgabeEingabe

  • 8 / 34

  • 9 / 34

    Port

    10100011

    5V=1GND=0

    163

    Port als Eingang

  • 10 / 34

    Port B

    10100011

    5V=1GND=0

    163

    Port als Ausgang

  • 11 / 34

    embedded systems (engl.) Ein elektronischer Rechner, der im technischen Kontext in einem System (Gert) eingebunden ist. Sowohl Mikrocontroller als auch ganze Computer

    Aufgaben des Rechners: Schalten, steuern, messen, berwachen, ...

    Eingebettete Systeme

  • 12 / 34

    Auto Waschmaschine Handy Getrnke- / Kaffeeautomat viele mehr

    Beispiele:

  • 13 / 34

    Im Grunde enthlt ein Mikrocontroller einen kleinen PC:

    Arbeitsspeicher / RAM nichtflchtige Speicher (z.B. Flash, EEPROM) Prozessor Eingabe- und Ausgabefunktionen (Tasten, Display) Netzwerkfunktionen

    Vergleich: Mikrocontroller vs. PC

  • 14 / 34

    Vergleich: Anwendung

    ATMega8-16 PCVerbrauch 0,05 W (5V / 8MHz)

    0,01 W (3V / 4MHz)100 W

    ProzessortaktWortlnge

    16 MHz8 Bit

    1 bis 3 Ghz32 Bit / 64 Bit

    Architektur Harvard Von-NeumannGre / Mobilitt Klein und leicht Gro und schwer

    Fester Speicher 8 kB 80 GB

    Ram 1 kB 2-8 GB

    Preis 2,40 200-400

    Anmerkung: Gegeben sind nicht Maximalwerte sonderngebruchliche Werte.

  • 15 / 34

    Vergleich: Einsatzmglichkeiten

    C Computer

    Datenbanken

    Webserver

    AufwendigeBerechnungen

    Tragbare Gerte (MP3-Player)

    Steuerungen

    Messstationen

    Batteriegerte (Digitalwecker)

    Maus,Tastatur,

    USB-Stick,Drucker,

    CNC-Frse

    Home-PC

  • 16 / 34

    Vergleich: Architektur

  • 17 / 34

  • 18 / 34

    Assembler ist eine Programmiersprache, welche die Maschinensprache eines Prozessors fr den Menschen lesbar macht.

    Die Programme laufen sequenziell ab.

    Assembler

  • 19 / 34

    Assembler wird direkt in Maschinensprache bersetzt

    Im Prozessor werden Funktionen durch Zahlenwerte aufgerufen:

    Assembler: add r0, r1Maschinencode: 0000.1100.000.00011 Byte - Befehl1 Byte - Wert

    Exkurs: Assembler

  • 20 / 34

    Assembler: Programmbeispiel

    ldir16,90

    ldir17,10

    addr16,r17

    incr17

    Veranschaulichung:Bro/Fcher

  • 21 / 34

    Assembler: Programmbeispiel

    ldir16,90

    ldir17,10

    addr16,r17

    incr17

    Veranschaulichung:Bro/Fcher

  • 22 / 34

  • 23 / 34

  • 24 / 34

  • 25 / 34

  • 26 / 34

  • 27 / 34

  • 28 / 34

    Mikrocontroller in C programmieren

    voidmain(){

    DDRD=0b11111111;

    while(1){

    PORTD=0b11111111;

    _delay_ms(1000);

    PORTD=0b11111110;

    _delay_ms(1000);

    }

    }

  • 29 / 34

    Probleme und Schwierigkeiten Abhngig von Bauart und Hersteller Systemnahe Programmierung: Zugriffsfehler Vorsicht bei zeitkritischen Algorithmen! berlauf: Wert > Wortlnge (> 255) Meist geringere Wortlnge Berechnungen mit groen Zahlen schwierig und zeitintensiv Fehler bei eingebetteten System besonders problematisch

  • 30 / 34

    AussichtSensoren knnen leicht vernetzt werden:

    Anbindung an groe Netzwerke oder das WWW bertragen der Messwerte an Rechner zur Auswertung Zugriff von mehreren Stellen im Netzwerk

    Das ermglicht:

    Bessere Steuerungen (Ampeln, Aufzge) Bessere Zugnglichkeit (Stau, Wetterdaten im Web) Systeme werden deutlich flexibler

  • 31 / 34

    AussichtAuch in der Experimentalphysik immer wichtiger:

    Schnelle, effiziente und sichere Verarbeitung von Messwerten Zugang von verschiedenen Stellen zur berwachung Sensoren knnen auch weitere Daten senden, z.B. ob das Lmpchen einer Lichtschranke defekt ist

  • 32 / 34

    AussichtProbleme:

    Netzwerke knnen leicht von auen Manipuliert werden Systeme werden komplizierter Fehler in der Programmierung sind fatal Abwgung von Nutzen und Aufwand

  • 33 / 34

    AussichtBeispiele:

    Fehler durch falsche Zeitberechnung im C Neuer Personalausweis Vernetzte Autos Handyortung

  • 34 / 34

    TitelblattGliederungWas sind Mikrocontroller?AVR-ExamplePIC-ExampleBeispielschaltungenArbeitsweisePinbelegung ATMega8Port als EingangPort als AusgangEmbedded SystemsEmbSys ExamplesVergleich: GemeinsamkeitenVergleich: UnterschiedeVergleich: EinsatzVergleich: ArchitekturBlockdiagrammAssemblerAssembler: MaschinencodeAssembler: ProgrammbeispielFolie 21Step Example NotesStep Example 1 Step Example 2Step Example 3Step Example 4Step Example 5Andere ProgrammiersprachenProblemeAussicht IAussicht IIProbleme bei AussichtProblembeispieleFolie 34