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

Post on 05-Mar-2018

231 views 5 download

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

1 / 34

Mikrocontrollereine Einführung

Florian Schmitt - 16.11.2010

2 / 34

● Was sind Mikrocontroller, wozu sind sie nützlich?● Unterschiede und Gemeinsamkeiten mit dem PC ● Wie funktionieren Mikrocontroller● Probleme und Schwierigkeiten● Aussicht: Möglichkeiten, zukünftige Entwicklung

Inhalt

3 / 34

● Halbleiterchips● Prozessor mit vielen Zusatzfunktionen● Integrierte Speichermöglichkeiten● „Ein-Chip-Computersystem“

Beispiele für integrierte Funktionen:● Einfache Parallelausgänge 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

 1 0 1 0 0 0 1 1

5V  = 1GND = 0

163

Port als Eingang

10 / 34

Port B

 1 0 1 0 0 0 1 1

5V  = 1GND = 0

163

Port als Ausgang

11 / 34

● embedded systems (engl.)● Ein elektronischer Rechner, der im technischen Kontext

in einem System (Gerät) eingebunden ist.● Sowohl Mikrocontroller als auch ganze Computer

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

Eingebettete Systeme

12 / 34

● Auto● Waschmaschine● Handy● Getränke- / Kaffeeautomat● … viele mehr

Beispiele:

13 / 34

Im Grunde enthält ein Mikrocontroller einen kleinen PC:

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

Vergleich: Mikrocontroller vs. PC

14 / 34

Vergleich: Anwendung

ATMega8-16 PC

Verbrauch 0,05 W (5V / 8MHz) 0,01 W (3V / 4MHz)

100 W

ProzessortaktWortlänge

16 MHz8 Bit

1 bis 3 Ghz32 Bit / 64 Bit

Architektur Harvard Von-Neumann

Größe / Mobilität 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 sonderngebräuchliche Werte.

15 / 34

Vergleich: Einsatzmöglichkeiten

µC Computer

Datenbanken

Webserver

AufwendigeBerechnungen

Tragbare Geräte (MP3-Player)

Steuerungen

Messstationen

Batteriegeräte (Digitalwecker)

Maus,Tastatur,

USB-Stick,Drucker,

CNC-Fräse

Home-PC

16 / 34

Vergleich: Architektur

17 / 34

18 / 34

Assembler ist eine Programmiersprache, welche die

Maschinensprache eines Prozessors für 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, r1

Maschinencode: 0000.1100.000.0001

1 Byte - Befehl

1 Byte - Wert

Exkurs: Assembler

20 / 34

Assembler: Programmbeispiel

ldi r16, 90

ldi r17, 10

add r16, r17

inc r17

Veranschaulichung: Büro / Fächer

21 / 34

Assembler: Programmbeispiel

ldi r16, 90

ldi r17, 10

add r16, r17

inc r17

Veranschaulichung: Büro / Fächer

22 / 34

23 / 34

24 / 34

25 / 34

26 / 34

27 / 34

28 / 34

Mikrocontroller in C programmieren

void main() {

DDRD = 0b11111111;

while(1) {

PORTD = 0b11111111;

_delay_ms(1000);

PORTD = 0b11111110;

_delay_ms(1000);

}

}

29 / 34

Probleme und Schwierigkeiten● Abhängig von Bauart und Hersteller● Systemnahe Programmierung: Zugriffsfehler ● Vorsicht bei zeitkritischen Algorithmen!● Überlauf: Wert > Wortlänge (> 255)● Meist geringere Wortlänge – Berechnungen mit großen

Zahlen schwierig und zeitintensiv● Fehler bei eingebetteten System besonders

problematisch

30 / 34

Aussicht

Sensoren können leicht vernetzt werden:

● Anbindung an große Netzwerke oder das WWW● Übertragen der Messwerte an Rechner zur Auswertung● Zugriff von mehreren Stellen im Netzwerk

Das ermöglicht:

● Bessere Steuerungen (Ampeln, Aufzüge)● Bessere Zugänglichkeit (Stau, Wetterdaten im Web)● Systeme werden deutlich flexibler

31 / 34

Aussicht

Auch in der Experimentalphysik immer wichtiger:

● Schnelle, effiziente und sichere Verarbeitung von

Messwerten● Zugang von verschiedenen Stellen zur Überwachung● Sensoren können auch weitere Daten senden, z.B. ob

das Lämpchen einer Lichtschranke defekt ist

32 / 34

Aussicht

Probleme:

● Netzwerke können leicht von außen Manipuliert werden● Systeme werden komplizierter● Fehler in der Programmierung sind fatal● Abwägung von Nutzen und Aufwand

33 / 34

Aussicht

Beispiele:

● Fehler durch falsche Zeitberechnung im µC● Neuer Personalausweis● Vernetzte Autos● Handyortung

34 / 34