Forum: Mikrocontroller und Digitale Elektronik Befehle der LPC 2378


von Stephane (Gast)


Lesenswert?

hallo zusammen,

kann jemand sich gut mit den Befehle von LPC 2378?
ich würde gerne den unterschied zwische folgende Befehle wissen:
FIOMASK,FIODIR,FIOPIN,FIOSET,FIOCLR.
diese schreibweise auch: z.B.: FIO4PIN |= Wert und FIOPIN &= Wert
ich bin neu in sachen mikrocontroller programmierung.
Können Sie mir bitte helfen in kürze der Befehlen zu erklären.

Danke

von Kai F. (k-ozz)


Lesenswert?

Die Befehle FIOMASK, FIODIR, FIOPIN, FIOSET uns FIOCLR sind recht 
ausführlich im User Manual erklärt.
Kurz:
FIOMASK : maskiert alle folgenden FIOxxx-Befehle
FIODIR : setzt Pins als Ein- bzw. Ausgang
FIOPIN : liest den Zustand eines Pins (sowohl Ein- als auch Ausgänge)
FIOSET : setzt Ausgänge auf high
FIOCLR : setzt Ausgänge auf low

|= und &= sind keine LPC2378-Befehler sondern ANSI-C und bedeuten folgendes:
a |= b;  entspricht  a = a | b;  -> binäre ODER-Verknüfung
a &= b;  entspricht  a = a & b;  -> binäre UND-Verknüpfung

von Mike (Gast)


Lesenswert?

FIOXXX sind keine Befehle, sondern Register, in die man mit 
entsprechenden C- oder Assembleranweisungen schreiben kann. Jedes Bit 
dieser Register ist einem Pin zugeordnet, daher kann man durch Setzen 
des Bits in das entsprechende Register diesen Pin auf H oder L setzen, 
die Ein/Ausgaberichtung ändern etc. Will man nur einen einzelnen Pin 
adressieren, darf man nur das enstprechende Bit im FIOxxx Register 
manipulieren, die anderen dürfen sich nicht ändern. Daher die |= (zum 
Setzen eines Bits) bzw. &= (zum Löschen eines Bits) Befehle.

Gruss
Mike

von Stephane (Gast)


Lesenswert?

vielen Dank für Ihre Hinweise.

@ Kai Dank für Ihre kürze Erklärung.

@ Mike danke nochmals, noch eine Frage: was macht z.B. dieser Befehl in 
C: FIO4MASK = 0x00000000; denn ich komme  noch nicht so war mit diesem 
Register.Oder können Sie mir auch ein klar Beispiel schreiben,damit ich 
die Aufgabe dieses Registers verstehe.

Danke im Voraus für eure Hilfe.

Stephane

Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.