mikrocontroller.net

Forum: Mikrocontroller und Digitale Elektronik LPC Ports ?


Autor: mgiaco (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Also bei den AVR´s wars einfacher finde ich. Oder gibts da noch was 
anderes? Wenn ich zum Beipsiel eine Funktion schreibne will welche mir 
ein data Byte setzt dann habe ich beim AVR einfach:
funtion(char data)
{
   PORTB = data;
}
geschrieben für zum Beispiel Port B und bei den ARM - LPC ?

So ?
void writeData (uint_8 data)
{
  IOSET1 = ((uint32_t)data<<LCD_BUS_PIN_0);
}
nein geht nicht weil:

Es gibt ja nur set und clr und wenn ich dann zum Beispiel schreibe

data(0xff) ==> write data 1
und dann
data(0x00) ==> write data 2 (passiert nichts ist auch klar)
ich muss mit
IOCLR1 = 0x00ff0000 schreiben um die Bits wieder zu löschen.

Na ja ein Port Out Register wäre einfacher.

Also ist das die einzige möglichkeit oder wie macht man das am besten?
void writeData (uint_8 data)
{
  IOCLR1 = (uint32_t)0xFF<<LCD_BUS_PIN_0); //zuerst alle löschen
  IOSET1 = ((uint32_t)data<<LCD_BUS_PIN_0); // dann schreiben
}

Ich brauch sowas für eine Displaytreiber

na dann
mgiaco

Autor: Dominic R. (dominic)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hallo,

schau dir mal die IOPIN Register an, damit sollte es möglich sein, Pins 
gleichzeitig zu setzen und zu löschen.

Neuere LPCs verfügen zudem noch über einen schnelleren Fast GPIO 
Registersatz.

Um welchen LPC geht es denn genau?

Gruss,

Dominic

Autor: mgiaco (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
@ dominic LPC2148

Werde das mit dem IOPIN ausprobieren. Dachte man kann darf das Register 
nur lesen.

Macht das sinn für ein Display Fast IO zu verwenden? Glaube nicht oder 
denn die Bremse ist sowiso das Display.


Autor: mgiaco (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Okay im Datenblatt steht IOPIN (R/W) sorry. Aber ich dachte man sollte 
IOSET und IOCLR nehmen. Na ja werde das mal gleich probieren.

Danke.

Autor: A.K. (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Bei den ersten LPCs konnte man das nur lesen, später kam die Möglichkeit 
hinzu, es auch schreiben zu können. Manual zum LPC2148 lesen.

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.