GPIO: Wie geht das mit dem Output?

OP #2586013
Lesenswert?

Hallo,

Ich brauche mal Eure Hilfe bitte. Es geht um ein ganz einfaches 
Beispiel:

Ich arbeite mit einem LPC1343 und möchte gerne einen/mehrere Pins auf 
Output schalten.

nehmen wir an, es ist der GPIO3_0

Als erstes schalte ich den Pullup, Pulldown und die Hysterese aus mit

// IOCON des Ports 3.0
ldr r0,=0x40044084
ldr r1,=0xc0
str r1,[r0]

danach setze ich die Richtung

ldr r0,=0x50038000      //gpio3dir
ldr r1,=0x01            //bit 0 output
str r1,[r0]

danach will ich es anmachen

ldr r0,=0x50033ffc      //gpio3data
ldr r1,=0x01            //bit 0 high
str r1,[r0]

funxt aber nicht. Weiß jemand, was ich verkehrt mache? Irgendwas las ich 
noch von einer Maskierung. Ich finde aber keine Adresse dafür?

Wäre über einen Tip sehr dankbar
OP #2589733
Lesenswert?

ok, habe jetzt noch folgende Zeilen davor gehängt. Programm sieht nun so 
aus:

// clkout clksel
ldr r0,=0x400480e0
ldr r1,=0x00000003
str r1,[r0]

// jetzt updaten
ldr r0,=0x400480e4
ldr r1,=0x00000001
str r1,[r0]

// IOCON des Ports 3.0
ldr r0,=0x40044084
ldr r1,=0xc0
str r1,[r0]

danach setze ich die Richtung

ldr r0,=0x50038000      //gpio3dir
ldr r1,=0x01            //bit 0 output
str r1,[r0]

hier stürzt er bereits ab und spring zum DEFAULT_ISR_HANDLER 
HardFault_Handler

hat jemand eine Ahnung warum? Bitte, könnte Eure Hilfe gut gebrauchen!

Antwort schreiben

Bitte melde dich an, um einen Beitrag zu schreiben.

oder

Mit Google-Account einloggen

Die Registrierung ist kostenlos und dauert nur eine Minute.

Jetzt registrieren