www.mikrocontroller.net

Forum: Mikrocontroller und Digitale Elektronik LPC2129 Programmierprobleme


Autor: Michael S (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hi,
ich arbeite seit kurzem mit dem LPC2129 unter WinARM. Dabei haben sich
bei mir einige Fragen aufgetan.

1)
Warum mäkelt der Compiler Deklarationen, die so aussehen
int test(unsigned char &c);
an? (Der Fehler ist das '&'-Zeichen)

Verwende ich stattdessen
int test(unsigned char* c);
Ist alles OK, die Verwendung allerdings leider eine Andere ;-)

2)
Irgendwie scheine ich eine Denkblokade mit den IO's zu haben.
Wie kann ich ein ganzes Byte, oder mehr gleichzeitig auf die IO-Ports
legen? Beim AVR ging das in etwa so:
PORTA |= 0xFF;
Das Gleiche stellt sich mir natürlich auch beim Einlesen.

3)
Kennt jemand ein Tutorial, in dem beschrieben wird, wie man mit den
Ext-Interrupts umgehen muss? Die Demos, die dem WinARM beiliegen,
lassen sich hierzu leider nicht sonderlich aus.

Freundlichen Gruss
Michael S

Autor: A.K. (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
"int test(unsigned char &c);"

Das ist ja auch kein C sondern C++ und muss folglich als C++ übersetzt
werden.

"Wie kann ich ein ganzes Byte, oder mehr gleichzeitig auf die
IO-Ports
legen?"

In 2 Schritten. Beispielsweise erst die zu setzenden Bits setzen, dann
die zu löschenden Bits löschen.

Grund für diese zunächst irritierende Methode:
- "port |= value" ist uf ARMs eher ineffizent.
- Die Ports sind 32bit breit. Interrupt-feste Modifikation von Portpins
ist kaum anders möglich.

Lesen: wo ist das Problem?

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.