Mikrocontroller-Einstieg mit BASCOM-AVR Teil 3: Daten- und Programmstrukturen

0,00
Aus ELVjournal 02/2013     0 Kommentare
 Mikrocontroller-Einstieg mit BASCOM-AVR Teil 3: Daten- und Programmstrukturen

Inhalt des Fachbeitrags

PDF- / Onlineversion herunterladen

Mit einem BASCOM-Programm wird beschrieben, welche Anweisungen vom Mikrocontroller während der Laufzeit ausgeführt werden sollen. Dafür gibt es eine Auswahl verschiedener Programmkonstrukte wie zum Beispiel Verzweigungen und Schleifen, welche durch BASCOM-Schlüsselwörter dargestellt werden. Außerdem benötigt man in einem BASCOM-Programm Möglichkeiten, Eingabewerte, Ausgabewerte oder Zwischenwerte speichern zu können. In diesem Teil unserer Artikelserie „Mikrocontroller-Einstieg mit BASCOM-AVR“ wird beschrieben, wie ein BASCOM-Programm grundsätzlich strukturiert sein sollte, wie Daten in Variablen gespeichert werden und welche grundlegenden Programmstrukturen es gibt.

Struktur eines BASCOM-Programms

Grundsätzlich sollte ein Programm aus 6 Blöcken bestehen:
1. Beschreibung des Programms (Zweck, Autor, Datum, Version, Copyright etc.)
2. Compiler-Anweisungen und Deklarationen ($REGFILE, $CRYSTAL, CONFIGs, DIMs …)
3. Initialisierungen (Startwerte …)
4. Endlosschleife mit dem Haupt-Verarbeitungsteil
5. Unterprogramme (ISRs, Subs, Functions) 6. Tabellen (Data für Read, Lookup) 

Dabei sollten viele aussagefähige Kommentartexte sowie Einrückungen von Programmstrukturen verwendet werden. Beides ist zwar für den Compiler irrelevant, aber es erleichtert dem menschlichen Leser des Programms (auch dem Programmierer selbst) das Lesen und Verstehen des Programms.

Variablen

Variablen werden in der Programmierung benutzt, um Zahlen (oder Texte) im Speicher des Mikrocontrollers zu speichern. Im Verlauf des Programms wird mit den Variablen gearbeitet. Eine Variable hat immer einen eindeutigen Namen (bis zu 32 Zeichen lang) und nimmt Daten eines bestimmten Datentyps auf. Der Compiler (oder im Ausnahmefall der Programmierer) legt fest, an welcher Stelle im Speicher die Variable beginnt. Durch den Datentyp wird festgelegt, was für Werte die Variable aufnehmen kann und wie viel Speicherplatz für die Variable reserviert werden muss. Wird in BASCOM zum Beispiel eine Byte-Variable deklariert (DIMensioniert) mit DIM Meine_Variable1 AS Byte dann reserviert der BASCOM-Compiler im Speicher des Mikrocontrollers Platz für eine Byte-Variable mit dem Namen Meine_Variable1. Ein Byte besteht aus 8 Bit. Ein Bit kann entweder 0 oder 1 sein. In den 8 Speicherzellen der Variablen Meine_Variable1 kann also eine Folge von 8 Nullen und Einsen gespeichert werden, wie in Bild 1 zu sehen ist. Die Bits einer Variablen werden von rechts nach links mit 0 bis 7 gezählt. Man kann durch Anhängen eines Punktes und der Bitnummer einzelne Bits einer Variablen ansprechen. Zum Beispiel hat das Bit Meine_Variable1.2 hier den Wert 1. Mit den 8 Bit eines Bytes lassen sich die Dezimalzahlen 0 bis 255 darstellen. Jedes Bit stellt dabei die Wertigkeit 2n dar, wobei n = 0 bis 7 sein kann. In Bild 1 also 20 + 21 + 22 = 1 + 2 + 4 = 7. „Befüllt“ wird eine Variable durch Zuweisung einer Zahl wie z. B. Meine_Variable1 = 7 oder Meine_Variable1 = &b00000111 (Binärdarstellung) oder Meine_Variable1 = &h07 (Hexadezimaldarstellung).
Bild 1: Byte-Variable
Bild 1: Byte-Variable

Fachbeitrag online und als PDF-Download herunterladen

Fachbeitrag herunterladen


Laden Sie die komplette Ausgabe 02/2013 inkl. dieses Beitrags herunter. zum Inhalt


Die ELVjournal-Flatrate!
Für nur EUR 24,95 im Jahr erhalten Sie Zugriff auf alle verfügbaren Fachbeiträge.

Inhalt

Sie erhalten den Artikel in 2 Versionen:

online  als Online-Version

pdf  als PDF (11 Seiten)

Sie erhalten folgende Artikel:
  • Mikrocontroller-Einstieg mit BASCOM-AVR Teil 3: Daten- und Programmstrukturen
    • 1 x Journalbericht
Produkteweitere FachbeiträgeForenmehr Wissen
Batteriehalter für 3 x Mignon  mit Druckknopf-Anschluss

Batteriehalter für 3 x Mignon  mit Druckknopf-Anschluss


EUR 0,38*
sofort versandfertig Lieferzeit:1-2 Werktage2
Keramikkondensator 100000 pF, 50 V, RM 2,5 mm, radial

Keramikkondensator 100000 pF, 50 V, RM 2,5 mm, radial


EUR 0,10*
sofort versandfertig Lieferzeit:1-2 Werktage2
Atmel Mikrocontroller ATmega88PA-PU DIP28

Atmel Mikrocontroller ATmega88PA-PU DIP28


EUR 2,95*
sofort versandfertig Lieferzeit:1-2 Werktage2


Hinterlassen Sie einen Kommentar:
(Anmeldung erforderlich)
  Name
  E-Mail
KATEGORIEN
DAS KÖNNTE SIE AUCH INTERESSIEREN