Forum: Mikrocontroller und Digitale Elektronik NXP LPC1768 generelle Frage zu Pinbelegung & GPIO


von Florian M. (florian_m)


Angehängte Dateien:

Lesenswert?

Hallo zusammen,

ich habe meine ersten Gehversuche mit dem mbed LPC1768 Board hinter mir 
und habe mir ein LQFP100 Breakout Board einschließlich einem LPC1768 MCU 
bestellt und selbigen (vermutlich) erfolgreich auf das Board gelötet.

Nachdem ich mir (bis jetzt) ziemlich sicher war, dass meine Annahme in 
Bezug auf die MCU Pinbelegung korrekt ist, der Versuch 3.3V an PIN 28 
(VDD) und Ground an PIN 31 (VSS) anzulegen und damit eine LED an PIN 32 
(GPIO) zu betreiben scheiterte, würde ich meine Vorgehen gerne mit den 
"Pros" im Forum abgleichen :)

Ich bin mir nicht (mehr) sicher ob

a) meine angenommene Pinbelegung korrekt ist
b) ob ich nur Strom anlegen ausreicht, um ein GIPO Pin zu "aktivieren"

Gemäß Handbuch (S. 103) liege ich in Sachen Pinbelegung nicht gänzlich 
falsch und auch der GPIO Pin 32 (S. 99) müsste sofort "unter Strom" 
stehen. Es liegen am GPIO aber leider keine 3.3 V, sondern nur ein paar 
mV an :/

http://www.nxp.com/documents/user_manual/UM10360.pdf

Ich bin mir nicht sicher ob ich etwas grundlegendes vergessen/übersehen 
habe und bin daher für Hinweise dankbar! :)

Florian

(Die Lötstellen sind alle ok, auch wenn es in der Abbildung bei einem 
Beinchen (Unterseite) etwas "haarig" aussieht.)

: Bearbeitet durch User
von W.S. (Gast)


Lesenswert?

Sowas stimmt mich immer traurig. Dieses Board hat ja - soweit sichtbar - 
überhaupt nix außer dem µC drauf. Keinen einzigen Stützkondensator, 
keinen Quarz, keine Resetbeschaltung, keinen Spannungsregler, nicht mal 
ne ordentliche Masse.

Was dir damit bleibt, ist dir ne zweite LP zu designen, wo das alles 
drauf ist und dazu noch ne Reihe Fassungen für die vielen Pinheads. Und 
was dir damit ziemlich sicher passiert ist, daß du dabei irgendwo mal 1 
oder 2 Pins versehentlich verwechselst.

Wahrscheinlich hast du für den µC fast 10 uro ausgegeben und nun hast du 
trotzdem keine wirklich befriedigende Bastelgrundlage.

Mein Vorschlag: Designe dir (z.B. mit Eagle) eine eigene kleine LP, wo 
der µC, der Quarz, ein 3.3V Spannungsregler, ein MAX232, eine 
Reset-Taste und ein Steckverbinder für den Bootlader, nötige Hoch- oder 
Runterzieher, ein Mini-USB-Anschluß usw. mit drauf sind, damit du diese 
"Haushalts"-Dinge gleich mit drauf hast. Davon 1..3 LP bei Jackaltac 
sollten nicht wirklich zu teuer sein - und du hast mehr davon als von 
der o.g. Leiterplatte.

W.S.

von Achim S. (Gast)


Lesenswert?

ich wusste offen gesagt erst mal nicht, ob die Frage ernst gemeint ist 
(und bin mir immer noch nicht ganz sicher). Aber falls doch...

Florian M. schrieb:
> der Versuch 3.3V an PIN 28
> (VDD) und Ground an PIN 31 (VSS) anzulegen

der Baustein hat mehrere VDD und VSS Pins. Jeder von denen muss 
richtig angeschlossen sein, nicht nur jeweils einer davon.

Florian M. schrieb:
> b) ob ich nur Strom anlegen ausreicht, um ein GIPO Pin zu "aktivieren"

nein, das reicht bestimmt nicht. Wie kommst du auf diese Idee?
Dachtest du, dass du automatisch die USB_UP_LED Funktion nutzt, die vor 
der Konfigurierung des USB-Interface auf high steht? Um diese Funktion 
auf den IO-Pin zu legen musst du das PINSEL-Register entsprechend 
beschreiben. Als Default ist der Pin einfach ein hochohmiger GPIO 
(P1(18]).

Also wenn du mit dem µC etwas anfangen willst musst du
- alle Versorgungen anschließen
- eine Taktquelle anschließen
- ein Programm darauf brennen, das die Hardware vernünftig initialisiert

dann klappts auch mit der LED

von Didi S. (kokisan2000)


Lesenswert?

Hallo Florian,

bitte verzeihe meine direkten Worte, aber Du hast noch recht wenig 
Wissen, um mit dem LPC1768 auf eigenen Beinen zu stehen.

Wenn Du schon mit dem mbed gearbeitet hast, warum ziehst Du nicht viel 
mehr Infos aus dem Board und Projekt?

Schaue Dir den Schaltplan des mbed an und verstehe, was da gemacht 
wurde:
http://mbed.org/media/uploads/chris/mbed-005.1.pdf
Du wirst erkennen, das ALLE Vss und Vdd angeschlossen werden müsssen.
Schaue Dir an, was mit dem Reset Pin geschehen muß, lerne wie Du über 
USB und dem FTDI Chip ein Programm per Bootloader in den Controller 
bekommst.
So ein externer 12 MHz Quarz ist auch nicht zu unterschätzen, fehlt 
dieser, macht der Controller gar nix. Was ist mit Stützkondensatoren? 
ARMs sind hier kleine Sensibelchen .... und noch so einiges mehr was ich 
hier schreiben müsste....

Dein Vorhaben in Ehren, aber Dir fehlen noch viele Informationen, um den 
Controller eigenständig zu betreiben. Gehe tiefer in das mbed Projekt. 
Dort findest Du Informationen über Informationen und außerdem eine 
riesige Community.

Gruß
kokisan

: Bearbeitet durch User
von Gerhard G. (g_g)


Lesenswert?

Hallo,

das Board ist auch nicht schlecht zum Studieren:

http://www.watterott.com/de/LPC1769-LPCXpresso-Board

Der Prozessor ist kompatible mit Deinem.

Hier findest du alles was du brauchst.

Der Preis ist unschlagbar, da auch das Programmierteil bereits auf der 
Platine sitzt.

Darum besorg dir ein fertiges Board und die dazu gehörige Software.

Die Arm-Prozessoren LPC1769/LPC1768 brauchen aber ein fundiertes Wissen!


Gruß G.G.

von Florian M. (florian_m)


Lesenswert?

Hi,

kein Ding, mit offenen Antworten kann ich umgehen ;) Ich muss natürlich 
zugeben, dass mir mein Vorgehen auch etwas zu trivial erschien.

Ich habe aber auch nicht den Anpruch erhoben hier gleich von 0 auf 100 
durchzustarten und den MCU zu flashen usw. Aufgrund des folgenden 
Handbuchauszugs bin ich lediglich davon ausgegangen, dass zumindest 3.3 
V an PIN 32 anliegen könnten (natürlich nur sofern man auch alle VDD und 
VSS Pins connected) ... mehr aber auch nicht.

--- snip ---

GPIOs are configured using the following registers:
1. Power: always enabled.
2. Pins: See Section 8.3for GPIO pins and their modes.
3. Wake-up: GPIO ports 0 and 2 can be used for wake-up if needed, see 
(Section 4.8.8).
4. Interrupts: Enable GPIO interrupts in IO0/2IntEnR (Table 114) or 
IO0/2IntEnF
(Table 116). Interrupts are enabled in the NVIC using the appropriate 
Interrupt Set
Enable register.

--- snap ---

Florian

: Bearbeitet durch User
von holger (Gast)


Lesenswert?

a) meine angenommene Pinbelegung korrekt ist

Ich würde sagen das Pin1 unten links ist und dann
nach rechts gezählt wird.

von holger (Gast)


Lesenswert?

>Ich würde sagen das Pin1 unten links ist und dann
>nach rechts gezählt wird.

Upps, ne vergiss es;)

von Lothar (Gast)


Lesenswert?

W.S. schrieb:
> Sowas stimmt mich immer traurig. Dieses Board hat ja - soweit sichtbar -
> überhaupt nix außer dem µC drauf. Keinen einzigen Stützkondensator,
> keinen Quarz, keine Resetbeschaltung, keinen Spannungsregler, nicht mal
> ne ordentliche Masse.

Der LPC1768 kann schon im "Notbetrieb" laufen, also nur mit VDD/VSS für 
den Digitalteil (Core und IO), auch ohne Stützkondensator und mit dem 
internen 4MHz Oszillator. LED sollte damit blinken.

Besser wäre so: hier gibt es einen Schaltplan für die "normale" 
Minimalbeschaltung, dann sollte alles gehen:

http://shop.ngxtechnologies.com/product_info.php?cPath=21&products_id=90

von JojoS (Gast)


Lesenswert?

warum sollte die LED nach dem RESET leuchten? Im zitierten Text steht 
erst mal nur das die GPIOs nach einem RESET enabled sind, das heisst 
aber nicht das die auf Output programmiert sind und dann auch noch auf 
High Pegel eingestellt sind.

von JojoS (Gast)


Lesenswert?

siehe S.120, 9.2.1: 'All I/Os default to input with pullup after reset.'
Wenn die LED gegen GND angeschlossen ist kriegt die nur den mageren 
Strom durch den pullup der bei ein paar zig kiloohm liegt.

von Florian M. (florian_m)


Lesenswert?

@Lothar: Danke für den Hinweis mit dem Schaltplan. Mein Aufbau ist zwar 
nicht besonders schick, aber es funktioniert 1a!

Florian

: Bearbeitet durch User
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.