Forum: Mikrocontroller und Digitale Elektronik LPC810 programmieren


von chris_ (Gast)


Lesenswert?

Im Moment beschäftige ich mich gerade mit dem LPC810 Mini-Kit:

http://www.lpcware.com/lpc800-mini-kit

Da ich kein FDTI-Programmierkabel hatte, habe ich einen Arduino 
Diecimilla als Programmieradapter missbraucht ( Prozessor rausziehen und 
Spannungsteiler für RxD, damit 3.3V nicht überschritten wird ).
Damit konnte ich mit Flash Magig das Board programmieren.

Danach habe ich das Hello-World Uart Programm von hier

https://github.com/microbuilder/LPC810_CodeBase/tree/master/tools

geladen. Das Kit sendet nun wunderbar das "Hello World" Allerdings lässt 
es sich nicht mehr programmieren. Ich vermute, dass im Programm der ISP 
Pin auf High gezogen wird, sodass man nicht mehr in den Bootloader 
kommt.

Naja, das Programmieren ohne Debugger scheint mit in diesem speziellen 
Fall sowieso ein Krücke zu sein.

Deshalb möchte ich ein LPC-Xpresso und ein paar MCUs kaufen, die sind ja 
relativ billig:

http://www.mouser.de/Search/ProductDetail.aspx?R=OM13053virtualkey66800000virtualkey771-OM13053

Auf dem MiniKit befindet sich ein Stecker mit sehr kleinen 
Pin-Abständen, ich vermute das ist ein JTAG-Anschluss.

Jetzt die Frage: Wo kann man ein passendes Kabel finden?

von Lothar (Gast)


Lesenswert?

chris_ schrieb:
> Ich vermute, dass im Programm der ISP
> Pin auf High gezogen wird, sodass man nicht mehr in den Bootloader
> kommt.

Kann eigentlich nicht sein, aber selbst wenn: ISP Pin direkt mit GND 
verbinden, dann RESET Pin kurz auf GND.

chris_ schrieb:
> Deshalb möchte ich ein LPC-Xpresso und ein paar MCUs kaufen, die sind ja
> relativ billig:

Ich würde eher einige LPC810 alleine nehmen:

http://www.mouser.de/ProductDetail/NXP/LPC810M021FN8FP/?qs=%2fha2pyFaduiGKlE7K%252bl%2foWBWRr%2fRA2onCtWBuDOEGkw%3d

chris_ schrieb:
> Auf dem MiniKit befindet sich ein Stecker mit sehr kleinen
> Pin-Abständen, ich vermute das ist ein JTAG-Anschluss.

Und diesen Debugger, das kleine Kabel ist dort dabei:

http://www.mouser.de/ProductDetail/NXP-Semiconductors/OM13054UL/?qs=sGAEpiMZZMvcRsgoMFfeP3LpSOTCZIep30zvo6bRrI0%3d

von Lothar (Gast)


Lesenswert?

Lothar schrieb:
> ISP Pin direkt mit GND verbinden

Korrektur: besser ISP Pin über 1k mit GND verbinden (sicherheitshalber).

von chris_ (Gast)


Lesenswert?

>Und diesen Debugger, das kleine Kabel ist dort dabei:
http://www.embeddedartists.com/products/lpcxpresso/lpclink2.php

Danke, den kannte ich noch nicht. Beim LpcExpresso wäre auch ein 
Anschlussmöglichkeit im normalen 2.54mm Raster. Geht das bei dem Link2 
Board auch?
Gerade habe ich noch das LabTool für den STLink2 entdeckt:
http://www.embeddedartists.com/products/app/labtool.php

Das scheint recht performant für den Preis.

von JojoS (Gast)


Lesenswert?

der LPCLink2 hat nur die Stecker im 50 mil Raster. Es gibt aber Adapter 
für den grossen 20 pol. Stecker:
http://www.watterott.com/de/10-pin-to-20-pin-JTAG-Adapter
Watterott hat auch die anderen EA Boards, Direktbestellung bei EA ist 
wg. Steuer und Versand sehr teuer.

von chris_ (Gast)


Lesenswert?

>der LPCLink2 hat nur die Stecker im 50 mil Raster.

Also ich habe jetzt noch mal versucht, Genaueres über des ST-Link 
herauszufinden. Die Unterlagen sind etwas spärlich, obwohl sonst ja die 
Doku von NXP relativ gut ist.
Hier gibt es ein grobes Bild mit den Anschlüsssen:
http://www.lpcware.com/system/files/images/lpc-link_2_flyer_general.preview.png
Der Anschluss J6 scheint im mormalen Raster zu sein.

von Lothar (Gast)


Lesenswert?

chris_ schrieb:
> Der Anschluss J6 scheint im mormalen Raster zu sein.

Nein der ist auch mini:

http://www.embeddedartists.com/sites/default/files/image/product/lpclink2.png

Bei Bedarf bekommt man aber von EA direkt kostenfrei ein 20-pol. 
Adapterkabel zugeschickt.

Der Hauptvorteil des LPCLink2 zum LPCXpresso ist neben der Performance 
auch noch das dieser nicht nur mit der LPCXpresso-IDE sondern auch mit 
den Demo-Versionen von professionellen Compilern wie IAR läuft:

http://www.segger.com/lpc-link-2.html

von chris_ (Gast)


Lesenswert?

>> Der Anschluss J6 scheint im mormalen Raster zu sein.
>Nein der ist auch mini:
Ein sehr schönes Bild. J6 ist ( wenn ich es richtig verstehe ) der 
Anschluss ganz rechts im Bild. Das sieht für mich nach 2.54mm aus. 
Meinst Du vielleicht J9? Das wäre der Anschluss unten rechts.

>Bei Bedarf bekommt man aber von EA direkt kostenfrei ein 20-pol.
Ich wollte eigentlich bei Mouser bestellen. Da bekomme ich aud die 
LPC810FN8. Soweit ich mich erinnern kann, sind die auch schnell.

> ... von professionellen Compilern wie IAR läuft:

Uhh.. das könnte einem jetzt als GCC Nutzer sauer aufstoßen. Aber ich 
weiß was Du meinst ;-)

von noreply (Gast)


Lesenswert?

chris_ schrieb:
> Uhh.. das könnte einem jetzt als GCC Nutzer sauer aufstoßen. Aber ich
> weiß was Du meinst ;-)

Ich habe bereits mit LPCXpresso rumgespielt. Knackpunkt ist die 
Anbindung der Entwicklungsumgebung an die Hardware. Die vorgesehene 
Software auf Windows-Basis ist einfach. Für einen gcc mit gdb unter 
Linux bin ich noch zu dämlich. Das würde ich erst klären, bevor ich in 
ein Entwicklungskit investiere. Bin da für Lösungsmöglichkeiten offen.

Meine nächste verschwendete Zeit geht dann ich Richtung USB nach 
serielle Schnittstelle. Danach alternativ ein JTAG-Interface das 
explizit von linux/gdb unterstützt wird.

von Lothar (Gast)


Lesenswert?

noreply schrieb:
> Die vorgesehene
> Software auf Windows-Basis ist einfach. Für einen gcc mit gdb unter
> Linux bin ich noch zu dämlich.

Es gibt doch einen fertigen LPCXpresso/gcc/gdb Installer für Linux:

http://www.lpcware.com/lpcxpresso/download

von noreply (Gast)


Lesenswert?

Lothar schrieb:
> Es gibt doch einen fertigen LPCXpresso/gcc/gdb Installer für Linux:
>
> http://www.lpcware.com/lpcxpresso/download

Ich weis!

http://www.lpcware.com/lpcxpresso/eula

Nur die Lizenzbedingungen sind mir zu schwierig zu lesen. ;-)

Zitat:
"(viii) EVALUATION USE RESTRICTION: If your License Key is Evaluation 
Only, or the Software is identified as an evaluation version 
(collectively "Evaluation Software"), then notwithstanding anything else 
in this License, YOU AGREE TO USE THE SOFTWARE ONLY FOR EVALUATION 
PURPOSES, AND NXP DOES NOT GRANT YOU ANY RIGHTS TO DISTRIBUTE OR 
SUB-LICENSE SOFTWARE APPLICATIONS UNDER THIS LICENSE. Evaluation 
Software can be upgraded to a full license by acquiring a full license 
from NXP."

von chris_ (Gast)


Lesenswert?

Ziemlich ärgerlich, wenn die so eine Lizenz auf ein Entwicklungstool 
legen.

>NOT GRANT YOU ANY RIGHTS TO DISTRIBUTE OR
>SUB-LICENSE SOFTWARE APPLICATIONS UNDER THIS LICENSE

Wobei man ja aber das Entwicklungstool nicht weiter verbreiten will, 
sondern die selbst geschriebene Software.

von Lothar (Gast)


Lesenswert?

chris_ schrieb:
> Ziemlich ärgerlich, wenn die so eine Lizenz auf ein Entwicklungstool
> legen.

Das was Ihr da diskutiert ist nicht zutreffend.

"The new Pro Edition of LPCXpresso provides unlimited code-size 
downloads and one year of email-based support, provided directly by NXP 
engineers. The Pro Edition is for those working on designs that require 
more code or who want access to expert support straight from NXP. 
Upgrading to the Pro Edition is easy and requires no additional 
downloads. Simply buy the Pro license and activate it in your LPCXpresso 
6 install."

Natürlich darf man die Pro Evaluation nicht für zu verkaufende Produkte 
nutzen, bevor man nicht die Lizenz bezahlt hat.

"The popular Free Edition of LPCXpresso now offers many features 
previously only available in the premium Red Suite product (including 
C++ support), and doubles the download limit to 256KB."

Die Free kann man bis 256K ohne Einschränkungen nutzen.

von noreply (Gast)


Lesenswert?

Lothar schrieb:
> Das was Ihr da diskutiert ist nicht zutreffend.
> ...
>
> Natürlich darf man die Pro Evaluation nicht für zu verkaufende Produkte
> nutzen, bevor man nicht die Lizenz bezahlt hat.
>

<b>Stand doch schon oben. Nur zur Evaluation.</b>

Und warum? Eclipse ist frei. gcc ist frei. gdb ist frei. Nur der 
JTAG-Adapter der LPCXpresso ist closed/proprietär. Also für mich nicht 
geeignet!

von Lothar (Gast)


Lesenswert?

noreply schrieb:
> <b>Stand doch schon oben. Nur zur Evaluation.</b>

Aber warum willst Du die Pro Evaluation nehmen und nicht die Free (mit 
der einzigen Einschränkung 256K die ohnehin nur wenige LPC erreichen)?

noreply schrieb:
> JTAG-Adapter der LPCXpresso ist closed/proprietär

Wie schon oben geschrieben, der LPCLink ja, der LPCLink2 nicht mehr. Du 
kannst Dir sogar Deinen eigenen Debugger programmieren und auf den 
LPCLink2 flashen.

von noreply (Gast)


Lesenswert?

Lothar schrieb:
> Wie schon oben geschrieben, der LPCLink ja, der LPCLink2 nicht mehr. Du
> kannst Dir sogar Deinen eigenen Debugger programmieren und auf den
> LPCLink2 flashen.

Weil ich eine einfache Heuristik habe. "Einem verkorksten Lizenzvertrag 
folgt dem Nächste". Da kann mir der LPCLink2 gestohlen bleiben, genauso 
wie mein mein bereits gekauftes LPCXpresso mit LCP812.

Zitat aus LPC2Link-Doku: "Images available include

    * J-Link by Segger
          o For compatibility with development tools that support the 
J-Link protocol, such as IAR Embedded Workbench, Keil MDK, Rowley 
CrossWorks, Atollic TrueSTUDIO as well as GDB-based tool chains such as 
emIDE.
    * CMSIS-DAP by ARM
          o For compatibility with development tools that support the 
CMSIS-DAP protocol, such as Keil MDK, IAR Embedded Workbench and the 
LPCXpresso IDE
"

In diesem Fall müsste ich wieder abprüfen.

Fall 1: J-Link by Segger:
Da steht wieder irgendwas von nicht erlaubt auf fremden Plattformen, 
etc.

Zitat (siehe Link oben):

Licensing
SEGGER created a firmware which runs on the NXP LPC-Link 2, making it 
J-Link compatible. In order to make use of this firmware, the following 
Terms Of Use must be accepted:

    * The firmware is only to be used with NXP target devices. Using it 
with other devices is prohibited and illegal.
    * The firmware is for use with evaluation boards only. It is not for 
use with custom hardware.
    * The firmware may only be used for development and/or evaluation 
purposes. It may not be used for production purposes.
    * The firmware is made available without any warranty and without 
support.


Fall2: CMSIS-DAP by ARM: Das geht es wieder in die EULA von oben. Direkt 
neben den genannten Download-Link.

von Lothar (Gast)


Lesenswert?

noreply schrieb:
> Da kann mir der LPCLink2 gestohlen bleiben

Und was ist Dein Vorschlag? Wie LCP812 programmieren und debuggen?

Für kommerzielle Anwendungen, wo es dann wirklich auf die EULA Details 
ankäme, ist LPCXpresso (und auch andere Eclipse/gcc/gdb) ohnehin zu 
sperrig, und eine Keil oder IAR Lizenz lohnt sich und spart viel 
Zeit/Fehlersuche (sonst wären die auch schon lange pleite).

> genauso wie mein mein bereits gekauftes LPCXpresso mit LCP812

Kannst immer noch den Debugger absägen :-)

Eventuell wäre das was für Dich: OpenOCD

https://www.olimex.com/Products/ARM/JTAG/ARM-USB-TINY/

von noreply (Gast)


Lesenswert?

noreply schrieb:
> Das würde ich erst klären, bevor ich in
> ein Entwicklungskit investiere. Bin da für Lösungsmöglichkeiten offen.

Weis ich noch nicht genau.

Erstmal werde ich mit einen USB-to-Seriel Schnittstellenadapter 
rumspielen.

OpenOCD mit den Olimex-Adapter könnte eine davon sein.

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.