Grin logo
en de es fr
Shop
GRIN Website
Publish your texts - enjoy our full service for authors
Go to shop › Didactics - Physics

Programmieren mit dem Schulungsboard für Atmel-Mikrocontroller (Schulungsboard Version 2 mit USB-Schnittstelle)

Title: Programmieren mit dem Schulungsboard für Atmel-Mikrocontroller (Schulungsboard Version 2 mit USB-Schnittstelle)

Textbook , 2012 , 30 Pages

Autor:in: Tobias Stuckenberg (Author), Gert Reich (Series editor)

Didactics - Physics
Excerpt & Details   Look inside the ebook
Summary Excerpt Details

Um zu lernen, wie man einen Mikrocontroller programmiert, muss man
einen Mikrocontroller programmieren.
Zu diesem Zweck haben wir einen Atmel Mikrocontroller in ein handliches
Schulungsboard eingebaut. Der erste Band des Handbuchs bezieht
sich auf die grundlegende Programmierung des Gerätes. In diesen Script
wird auf die Basisfunktionen des Schulungsboards eingegangen – hier rot
gekennzeichnet.

Excerpt


Inhalt

Einführung

Allgemeiner Programmaufbau
Steuern von Ausgängen
Leuchtdioden schalten
Übungsaufgaben
Eingabe durch Taster

Vervollständigung des Programmkopfs und Ansteuerung des LCD-

Display

Taster und Schalter: Aufgaben
Übungsaufgaben:

Schleifen und Variablen
Beispielaufgaben:
Display und Schleifen
Ausgabe von Zufallszahlen
Verwendung von Interrupts

Programmierbefehle und Syntax

Anhang

Einführung

Die Atmel Mikrocontroller sind programmierbare Speicherbausteine. Es gibt unterschiedliche Typen, die verschiedene Bauformen haben. Sie haben unterschiedlich viele „Beine“ (Pins) und sie sind mehr oder weniger leistungsfähig. Bei allen Mikrocontrollern lässt sich die Funktion nahezu aller Pins festlegen (programmieren) und je nach Programm hat der Mikrocontroller ganz unterschiedliche Aufgaben. Je nach Typ sind Sonderfunktionen wie z.B. AD-Wandler oder Timer implementiert. In unserem Schulungsboard wird der Atmel Mikrocontroller „ATmega16“1 verwendet.

Dieses Skript soll Ihnen helfen, einen erfolgreichen und einfachen Einstieg in diese komplexe Thematik zu finden. Anhand von einfachen Beispielen werden Ihnen die Grundfunktionen und Möglichkeiten der Atmel Mikrocontroller vorgestellt.

Mikrocontroller haben keine bestimmte Aufgabe - und das ist ihre Besonderheit, ihre Funktion wird erst durch ein Programm definiert. Leider verstehen Mikrocontroller nur Maschinensprache. Diese Programmiersprache ist ausgesprochen unanschaulich und nur ein ausgesprochen erfahrener Programmierer kann sie verwenden.

Zum Glück gibt es sogenannte Compiler, die in der Lage sind, gängige und leichter erlernbare Programmiersprachen in die für Atmel-Prozessoren verständliche Maschinensprache zu übersetzen. Wir haben uns hier für die Programmiersprache „Basic“ entschieden, da diese Sprache sehr einfach zu erlernen ist - das prädestiniert sie für den Einsatz in der Schule. Um die Programme schreiben und um sie in Maschinensprache übersetzen zu können, verwenden wir die Software BASCOM der Firma „MCS electronics“. Die Demoversion ist kostenlos.2 Diese hat keine Funktionsbeschränkungen, nur darf die maximale Programmgröße 4 KB nicht überschreiten. Diese Grenze wird aber nur von sehr umfangreichen Programmen überschritten. Die Vollversion kann man derzeit für unter 80 € beziehen.

Jedes Basic Programm hat einen Programmkopf:

Abbildung in dieser Leseprobe nicht enthalten

Die farbigen Hervorhebungen werden von BASCOM automatisch erzeugt und dienen der besseren Lesbarkeit des Programms.

Ein Basic-Programm wird Zeile für Zeile abgearbeitet. Im Programmkopf werden neben den schon vorgestellten Befehlen den Pins des Chips sinnvolle Namen gegeben, Variablen definiert oder Sonderfunktionen aktiviert. Erst danach beginnt dann das eigentliche Programm.

Allgemeiner Programmaufbau

Im Programmkopf werden, basierend auf dem Platinenlayout und dem verwendeten Prozessortyp, verschiedene Einstellungen festgelegt. Bei unserem Schulungsboard steht zum Beispiel schon fest, dass der ATmega16 verwendet wird, der mit einem externen Quarz von 16 MHz arbeitet. Weiterhin ist bestimmt, welcher Pin des Mikrocontrollers mit welcher Buchse und mit welchem Schalter und dem Display auf der Frontplatte verbunden ist.

Mit dem Compilerbefehl $regfile legt man für das Programm BASCOM fest, für welchen Prozessortyp die Kompilierung (die Übersetzung in die Maschinensprache) erfolgen soll. Wenn diese Zeile vorhanden ist, stellt der Programmeditor von BASCOM auf der rechten Seite des Bildschirms eine Übersicht mit allen Pins und - bei Klick auf einen Pin dessen mögliche Funktionen bereit.

Der Befehl $crystal gibt an, mit welcher Taktfrequenz der entsprechende Mikrocontroller betrieben wird. Diese Einstellung ist wichtig, damit Pausenzeiten richtig berechnet werden können.

Steuern von Ausgängen

Unser erstes Programm beinhaltet den notwendigen Programmkopf und die notwendigen Befehle, um eine LED anzusteuern.

Abbildung in dieser Leseprobe nicht enthalten

Abbildung 1 zeigt, wie die Ports den einzelnen „Beinen“ des Mikrocontrollers zugeordnet sind.

Leuchtdioden schalten

Das nächste Programm soll die drei Leuchtdioden auf dem Schulungsboard einschalten.

Abbildung in dieser Leseprobe nicht enthalten

Wir werden nun nach und nach den Pins der verschiedenen Ports AliasNamen und Funktionen zuweisen. Beim nächsten Programm benötigen wir die LED nicht, wir behalten aber die programmierten Zeilen bei. So entwickeln wir langsam ein Grundprogramm, das uns die Programmierung des Schulungsboards vereinfacht.

Jetzt soll der Summer angesteuert werden. Wir verwenden das Programm, das wir eben geschrieben haben, und entfernen die drei Befehlszeilen, die die LED einschalten.

Der Summer ist ein kleiner Lautsprecher, der ununterbrochen ein- und ausgeschaltet werden muss, damit wir einen Ton hören können.

Wir weisen Portd.0 den Alias-Namen „Summer“ zu und konfigurieren den Port als Ausgang (Output).

Abbildung in dieser Leseprobe nicht enthalten

Wenn alles stimmt, müsste es summen.

Da der Atmel Mikrocontroller für die Bearbeitung einer Programmzeile bei den meisten Befehlen weniger als eine Mikrosekunde braucht, benötigen wir die Pausenfunktion Wait.

Mit dem Befehl Wait können wir auch die LED blinken lassen.

Wait 5 bedeutet, dass die nächste Zeile erst nach einer Wartezeit

von 5 Sekunden abgearbeitet wird.

Waitms 5 bedeutet, dass die nächste Zeile erst nach einer Wartezeit von 5 Millisekunden abgearbeitet wird.

Waitus 5 bedeutet, dass die nächste Zeile erst nach einer Wartezeit von 5 Mikrosekunden abgearbeitet wird.

[...]

Excerpt out of 30 pages  - scroll top

Details

Title
Programmieren mit dem Schulungsboard für Atmel-Mikrocontroller (Schulungsboard Version 2 mit USB-Schnittstelle)
College
Carl von Ossietzky University of Oldenburg  (Physik; Abteilung Technische Bildung)
Authors
Tobias Stuckenberg (Author), Gert Reich (Series editor)
Publication Year
2012
Pages
30
Catalog Number
V196616
ISBN (eBook)
9783656232049
ISBN (Book)
9783656233909
Language
German
Tags
programmieren schulungsboard atmel-mikrocontroller version usb-schnittstelle
Product Safety
GRIN Publishing GmbH
Quote paper
Tobias Stuckenberg (Author), Gert Reich (Series editor), 2012, Programmieren mit dem Schulungsboard für Atmel-Mikrocontroller (Schulungsboard Version 2 mit USB-Schnittstelle), Munich, GRIN Verlag, https://www.grin.com/document/196616
Look inside the ebook
  • Depending on your browser, you might see this message in place of the failed image.
  • https://cdn.openpublishing.com/images/brand/1/preview_popup_advertising.jpg
  • Depending on your browser, you might see this message in place of the failed image.
  • Depending on your browser, you might see this message in place of the failed image.
  • Depending on your browser, you might see this message in place of the failed image.
  • Depending on your browser, you might see this message in place of the failed image.
  • Depending on your browser, you might see this message in place of the failed image.
  • Depending on your browser, you might see this message in place of the failed image.
  • Depending on your browser, you might see this message in place of the failed image.
  • Depending on your browser, you might see this message in place of the failed image.
  • Depending on your browser, you might see this message in place of the failed image.
Excerpt from  30  pages
Grin logo
  • Grin.com
  • Payment & Shipping
  • Contact
  • Privacy
  • Terms
  • Imprint