Mikrocontroller - Schnelleinstieg

Werbung
Mikrocontroller - Schnelleinstieg
Am Beispiel des Atmel Mega8
Philipp Fabian Benedikt Maier
Mikrocontroller – Schnelleinstieg Seite 1
Mikrocontroller - Schnelleinstieg:
- Was ist ein Mikrokontroller?
- Welche Ausrüstung brauche ich?
- Wie beschalte ich einen Mikrocontroller richtig?
- Wie sieht die Programmierung aus?
Philipp Fabian Benedikt Maier
Mikrocontroller – Schnelleinstieg Seite 2
Der Mikrocontroller
- Was ist ein Mikrocontroller?
- Vollwertiger Computer auf einem Chip
- Einsatzgebiete
- Robotik
- Regelungstechnik
- Messwerterfassung
- Zeitschaltuhren
- Vorteile gegenüber diskreten Aufbauten
- Ausfallsicher
- Kompakt
- Preisgünstig
- Ersetzt viele analoge Schaltungen
- Spart Entwicklungszeit
Philipp Fabian Benedikt Maier
Mikrocontroller – Schnelleinstieg Seite 3
Die Ausrüstung:
- PC Software:
- Assembler: Atmel AVR Studio
- Flasher: PonyProg2000
- Programmiergerät:
- Wird an den Parallelport angeschlossen
- Entfernen des Controllers nicht nötig
- Steckbrett:
- Dient zum Testaufbau
- Ermöglicht schnellen Umbau der Schaltung
Philipp Fabian Benedikt Maier
Mikrocontroller – Schnelleinstieg Seite 4
Philipp Fabian Benedikt Maier
Mikrocontroller – Schnelleinstieg Seite 5
Philipp Fabian Benedikt Maier
Mikrocontroller – Schnelleinstieg Seite 6
Die Ausrüstung:
- PC Software:
- Assembler: Atmel AVR Studio
- Flasher: PonyProg2000
- Programmiergerät:
- Wird an den Parallelport angeschlossen
- Entfernen des Controllers nicht nötig
- Steckbrett:
- Dient zum Testaufbau
- Ermöglicht schnellen Umbau der Schaltung
Philipp Fabian Benedikt Maier
Mikrocontroller – Schnelleinstieg Seite 7
Philipp Fabian Benedikt Maier
Mikrocontroller – Schnelleinstieg Seite 8
Die Ausrüstung:
- PC Software:
- Assembler: Atmel AVR Studio
- Flasher: PonyProg2000
- Programmiergerät:
- Wird an den Parallelport angeschlossen
- Entfernen des Controllers nicht nötig
- Steckbrett:
- Dient zum Testaufbau
- Ermöglicht schnellen Umbau der Schaltung
Philipp Fabian Benedikt Maier
Mikrocontroller – Schnelleinstieg Seite 9
Philipp Fabian Benedikt Maier
Mikrocontroller – Schnelleinstieg Seite 10
Grundbeschaltung:
Beispiel für eine lauffähige Beschaltung:
Philipp Fabian Benedikt Maier
Mikrocontroller – Schnelleinstieg Seite 11
Grundbeschaltung:
Zusammenfassung:
- Taktgeber (entfällt meistens)
- RC Resetglied
- Spannungsversorgung
- Kondensatoren zur Störungsdämpfung
- Angeschlossener ISP
Häufige Fehler:
- Kondensatoren vergessen
- Stromversorgung für den ISP vergessen
- Spannung nicht ausreichend gefiltert
Philipp Fabian Benedikt Maier
Mikrocontroller – Schnelleinstieg Seite 12
Beschaltung von Ein und Ausgabe
Anschluss einer LED:
- Anschluss erfolgt über Vorwiederstand
gegen VCC oder GND
Funktionsweise:
- Wenn PB auf „High“ --> LED Aus
- Wenn PB auf „Low“ --> LED Ein
- Analoges gilt für Beschaltung gegen GND
Zu Beachten:
- Lasten erfordern Treiber
- Auf Störsicherheit achten
Philipp Fabian Benedikt Maier
Mikrocontroller – Schnelleinstieg Seite 13
Beschaltung von Ein und Ausgabe
Anschluss eines Tasters:
- Anschluss erfolgt über
Pull-Up Widerstand
Funktionsweise:
- Schalter geschlossen:
PD liegt auf GND --> „False“
- Schalter offen
PD liegt auf VCC --> „True“
Philipp Fabian Benedikt Maier
Mikrocontroller – Schnelleinstieg Seite 14
Programmierung in ASM
Assembler
- Sollte man können
- Arbeitet Befehle linear ab
- Wirkt am Anfang unlogisch und kryptisch
- Es gibt Register anstatt Variablen
- Befehle sind im Datenblatt CPU erklärt
- Alles weitere würde den Rahmen sprengen
Philipp Fabian Benedikt Maier
Mikrocontroller – Schnelleinstieg Seite 15
Programmierung in ASM
Ausgabe von Daten:
.include "m8def.inc"
;Port konfigurieren
ldi r16, 0xFF
out DDRB, r16
;Daten ausgeben
ldi r16, 0b11111111
out PORTB, r16
Philipp Fabian Benedikt Maier
;Definition einbinden
;0xFF in r16 zwischenspeichern
;Inhalt von r16 ins Datenrichtungsregister
;schreiben --> Port ist nun für Ausgabe
;konfiguriert und kann benutzt werden
;11111111 in r16 zwischenspeichern
;r16 an Port B ausgeben --> Alle Pins auf
;5V
Mikrocontroller – Schnelleinstieg Seite 16
Programmierung in ASM
Einlesen von Daten:
.include "m8def.inc"
;Port konfigurieren
ldi r16, 0x00
out DDRB, r16
;Daten einlesen
in r16, PINB
Philipp Fabian Benedikt Maier
;Definition einbinden
;0x00 in r16 zwischenspeichern
;Inhalt von r16 ins Datenrichtungsregister
;schreiben --> Port ist nun für Eingabe
;konfiguriert und kann benutzt werden
;Port B auslesen und Inhalt in r16 ablegen
;--> Weiterarbeit mit Wert in r16 möglich.
Mikrocontroller – Schnelleinstieg Seite 17
„Wies funktioniert Ist schnell probiert“ Dietrich Drahtlos
Philipp Fabian Benedikt Maier
Mikrocontroller – Schnelleinstieg Seite 18
Herunterladen