2 Vorstellung der vorhandenen Hardware

2.4 Mikrocontroller

Ein Mikrocontroller besteht, wie in Abbildung 2.6 zu sehen, aus CPU, Flash-Speicher, EEPROM, Registern, Ports und mehreren Peripherie-Funktionen wie z.B. Timern, ADC, DAC und seriellen Schnittstellen. Für unterschiedliche Aufgaben können unterschiedliche Mikrocontroller verwendet werden, welche sich in ihrem Funktionsumfang unterscheiden.
Besonders Wichtig im Mikrocontroller sind die sogenannten Register. Dieses sind spezielle, meist 8-Bit breite, Abschnitte im Speicher. Sie repräsentieren Werte und Einstellungen im Mikrocontroller. Diese können beschrieben und ausgelesen oder nur ausgelesen werden. Durch das Auslesen oder Beschreiben der Register kann der Mikrocontroller mit internen und externen Komponenten interagieren. Die Register die zur externen Kommunikation dienen werden als Ports bezeichnet.
Es stand ein ATmega8515 (3) im DIL-Gehäuse zur Verfügung. Dieser hatte 8 Kbyte Flash, drei externe Interrupts, eine serielle Schnittstelle und konnte mit bis zu 16 MHz betrieben werden. Dieser war geeignet um sich mit den speziellen Eigenheiten der Mikrocontroller Programmierung vertraut zu machen.

Abbildung 2.6: Block Diagramm: Mikrocontroller ATmega324A(1)

2.4.1 Entwicklerboard STK500

Um den Mikrocontroller zu programmieren und die Programmierung zu überprüfen, wird das Entwicklerboard STK500[A.3], wie auf Abbildung 2.7 zu sehen, verwendet. Das Board enthält mehrere Mikrocontroller-Steckplätze, 2 serielle Schnittstellen, 8 Taster, 8 LEDs, 2 Erweiterungsports, eine ISP33In System Programmer Programmierschnittstelle und mehrere Jumper zum Konfigurieren des Boards.
Von den beiden seriellen Schnittstellen kann die Eine zur Programmierung des Mikrocontrollers verwendet werden. Die Andere kann zur Kommunikation mit dem Mikrocontroller genutzt werden.
Auf dem Board stehen fünf 10 polige Stiftleisten zur Verfügung. Diese sind direkt mit den Ein- und Ausgabe Pins, den sogenannten Ports, des Mikrocontroller verbunden und können über Flachbandkabel mit Hardwarekomponenten wie z.B. Taster, LED, LC-Displays oder seriellen Schnittstellen verbunden werden.

Abbildung 2.7: Schemazeichnung eines STK500(2)

2.4.2 AVRISP mkII

Der AVRISP mkII[A.3] ist ein USB-basierter In-System-Programmer. Dieser kann anstelle des RS-232 basierten Programmiersystem des STK500 verwendet werden.
Die Übertragungsgeschwindigkeit des AVRISP mkII ist wesentlich höher als die der seriellen Schnittstelle. Der AVRISP mkII lässt sich einfach an den Programmierport, eine 6-Polige Stiftleiste, des STK500 anschließen.

2.4.3 MAX232

Um die serielle Schnittstelle am Mikrocontroller nutzen zu können, müssen die Spannungspegel auf die des RS-232 Standards gewandelt werden. Dazu befindet sich auf dem STK500 der Pegelwandler MAX232. Dieser wandelt die Spannungspegel des Mikrocontrollers (typ. 0 V – 5 V TTL44Transistor-Transistor-Logik) auf die Spannungspegel des RS-232 Standards (typ. -12 V – +12 V).