Hallo!
Hier mal meine Erfahrung zum Programmieren des LPC922-Controllerboards. Vielleicht gibts auch andere, die zum ersten mal einen Controller programmieren möchten und denen auch nicht alles dabei klar ist so wie mir einiges nicht klar war/ist ;)
Auf der Suche nach einem geeignetem Programmier-Adapter bin ich auf die Lösung von fluhri gestoßen:
http://www.mfluhr.de/Elektronik/ISP_P89LPC900.htm
Damals gabs nur eine Version mit RSR232-Schnittstelle. Nach einer kurzen Anfrage hier im Board hat er kurzfristig auch eine USB-Variante entworfen und bereitgestellt - Danke!
Da ich aber kurzfristig keine doppelseitige SMD-Platine herstellen konnte, verwendete ich einen Bausatz mit einer fertigen SMD-Platine für den FT232-USB-Baustein und baute den Rest auf einer Lochrasterplatine dazu - etwas mühsam, aber es geht.
Nun gings ans programmieren:
Zuerst mal neuen LPC922-Chip ins Controllerboard, Programmer anstecken, Flash-Magic aufrufen, hex-datei auswählen und programmieren.
Wow, hat sofort funktioniert und das
Applikationsboard war schon über den Bus ansprechbar!
Die Überraschung kam, als ich versuchte den Controller ein zweites mal mit Flash-Magic anzusprechen - keine Reaktion.
Nach längerer Sucherei stellte ich fest, dass die Schaltung, welche den Controller in den Programmiermodus versetzt nicht ging. Beim ersten mal viel das nicht auf, weil einer neuer Chip immer in diesem Modus ist :huh:
Hier wie es bei mir nun funktioniert:
- Die Leitung 1 des Programmierkabels trennen (liefert normalerweise VCC zum Programmieradapter, welcher diese schaltet und zurück zum Controller gibt(PIN2)
- Im Programmieradapter den Jumper SJ1 verbinden. Dadurch versorgt der Programmieradapter den LPC mit 3,3V beim programmieren
- Beim Programmieren das Controllerboard vom BUS trennen. Dadurch bekommt der LPC sonst keine Spannung und die restliche Schaltung im Board wird auch nicht vom Adapter mit Strom versorgt.
Die anscheinend sonst übliche Variante, dass das Board VCC liefert(während des programmierens am BUS) und der Adapter nur dieses VCC ein/ausschaltet geht zumindest bei mir nicht, weil der LPC über Ein/Ausgänge mit Strom versorgt wird und dadurch keine Power-On -Erkennung funktioniert.
Das Ganze dürfte nur die USB-Variante betreffen!
Hoffe das hilft anderen weiter.
LG Charly