www.mikrocontroller.net

Forum: Mikrocontroller und Digitale Elektronik Befehle der LPC 2378


Autor: Stephane (Gast)
Datum:

Bewertung
0 lesenswert
nicht 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

Autor: Kai F. (k-ozz)
Datum:

Bewertung
0 lesenswert
nicht 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

Autor: Mike (Gast)
Datum:

Bewertung
0 lesenswert
nicht 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

Autor: Stephane (Gast)
Datum:

Bewertung
0 lesenswert
nicht 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

Antwort schreiben

Die Angabe einer E-Mail-Adresse ist freiwillig. Wenn Sie automatisch per E-Mail über Antworten auf Ihren Beitrag informiert werden möchten, melden Sie sich bitte an.

Wichtige Regeln - erst lesen, dann posten!

  • Groß- und Kleinschreibung verwenden
  • Längeren Sourcecode nicht im Text einfügen, sondern als Dateianhang

Formatierung (mehr Informationen...)

  • [c]C-Code[/c]
  • [avrasm]AVR-Assembler-Code[/avrasm]
  • [code]Code in anderen Sprachen, ASCII-Zeichnungen[/code]
  • [math]Formel in LaTeX-Syntax[/math]
  • [[Titel]] - Link zu Artikel
  • Verweis auf anderen Beitrag einfügen: Rechtsklick auf Beitragstitel,
    "Adresse kopieren", und in den Text einfügen




Bild automatisch verkleinern, falls nötig
Bitte das JPG-Format nur für Fotos und Scans verwenden!
Zeichnungen und Screenshots im PNG- oder
GIF-Format hochladen. Siehe Bildformate.
Hinweis: der ursprüngliche Beitrag ist mehr als 6 Monate alt.
Bitte hier nur auf die ursprüngliche Frage antworten,
für neue Fragen einen neuen Beitrag erstellen.

Mit dem Abschicken bestätigst du, die Nutzungsbedingungen anzuerkennen.