Hallo Die neuen ARM Cortex Mikrocontroller arbeiten ja unterdessen alle mit Serial Wire Debugger. Olimex bietet zum Programmieren dieser Mikrocontroller den ARM-USB-OCD mit openOCD an. Hat jemand die konfigurationsdateien für folgende Mikrocontroller, damit ich die Mikrocontroller Programmieren kann? - LPC1343 - LPC1114 - LPC1768 - LPC1766 - EFM32G880F128 Danke für die Hilfe. Gruss, Daniel
Daniel Schwab schrieb: > Hallo > > Die neuen ARM Cortex Mikrocontroller arbeiten ja unterdessen alle mit > Serial Wire Debugger. Olimex bietet zum Programmieren dieser > Mikrocontroller den ARM-USB-OCD mit openOCD an. Meines Wissens ist ARM-USB-OCD nicht direkt SWD-tauglich, eine der Leitungen am SWD-Interface ist bidirektional. Im Zweifel Olimex anfragen. Von Rowley gibt es einen Adapter (ARM SWD Adapter) zur Anpassung. > Hat jemand die konfigurationsdateien für folgende Mikrocontroller, damit > ich die Mikrocontroller Programmieren kann? SWD wird derzeit noch nicht von OpenOCD unterstützt. Entwicklung scheint aber in Bewegung und wird hoffentlich nicht mehr allzu lange zu dauern. > - LPC1343 > - LPC1114 > - LPC1768 > - LPC1766 > - EFM32G880F128 LPC17xx bieten auch "normales" JTAG-Interface. OpenOCD Konfigurationsdateien dafür sind zumindest im Entwicklerquellcode (lpc17*.cfg). Man sollte jedoch darin die Reset-Konfiguration prüfen, bei mir hat die aus dem Beispiel nicht zufriedenstellend funktioniert. Evtl. hilfreich, wenn wirklich OpenOCD im Rennen mit LPC17xx: http://www.siwawi.arubi.uni-kl.de/avr_projects/arm_projects/arm_memcards/index.html#chanfat_lpc_cm3
Hi! Also ich starte auch gerade erst in die CortexM3 Welt, aber wenn ich die 'Werbung' von ARM richtig verstanden habe, dann ist das doch eines der großen Features, nämlich dass der Core endlich einheitlich ist. Und dazu gehört auch JTAG. Das Debugging sollte also ebenso über JTAG gehen, wie das Flashen. Jedenfalls hat beides bei meinem STM32F10x funktioniert. Mein Setup ist ein openocd-0.4.0 (selbst kompiliert und gegen libftdi gelinkt) und ein openocd-usb Dongle hier aus dem Shop. Lediglich mit dem Zusammenspiel Eclipse+ZylinCDT und dem GDBserver von openocd gibt es noch Hakeleien. Oft geht es, meist erst nach ein paar Anläufen, gerne auch mal garnicht. Aber da bleibe ich dran. Also ich würde mir an Deiner Stelle mal die target/stm32.cfg ansehen und eventuell auf Deine CPUs anpassen. Gruß, Ulrich
Ulrich P. schrieb: >... > Also ich starte auch gerade erst in die CortexM3 Welt, aber wenn ich die > 'Werbung' von ARM richtig verstanden habe, dann ist das doch eines der > großen Features, nämlich dass der Core endlich einheitlich ist. Und dazu > gehört auch JTAG. ...und SWD. Die 'kleinen' CM3 von NXP (LPC11xx, LPC13xx) und die EFM32 von Energy Micro mögen vielleicht im CortexM3-Kern noch JTAG unterstützen aber meines Wissens ist bei diesen lediglich eine SWD-Schnittstelle herausgeführt (habe selbst bis dato noch nichts mit SWD gemacht, nur Dokumentation überflogen). > Das Debugging sollte also ebenso über JTAG gehen, wie das Flashen. Anbindung und Programmierung des Flash-Speichers ist nicht Teil des "einheitlichen" Cores. Die Software muss entsprechende Routinen bieten. Gilt für OpenOCD wie für alle anderen (MDK-ARM, EWARM etc.) auch. Kurzer Blick über den STM32-Tellerrand z.B. in die Konfigurationen für LPC17xx und LM3Sxxxx (und, da griffbereit, den Quellcode von OpenOCD) zeigt die Unterschiede. Ja, "Debugging" ist weniger vom Hersteller abhängig, zumindest hatte ich damit bisher keine Auffälligkeiten mit einigen STM32, LM3S und dem LPC1766. >...
Hi Hier eine Anleitung, wie man dem LPC1343 den Programmcode ins Flash bringt. Für den LPC1114 nimmt man FlashMagic. Variante 1: Der LPC1343 hat einen Programmiermodus mit dem man über USB den USB das Flash beschreiben kann. Erscheint der LPC1343 im Explorer als Massenspeicher, kann man die Datei "firmware.bin" löschen und seine eigene Firmware hineinkopieren. Wichtig ist, dass die Firmware als Binary vorliegt. Nun das Programm "checksum.exe firmware.bin" aufrufen (liegt im Verzeichnis: C:\nxp\lpcxpresso_3.2\bin\checksum.exe). Nun die Firmware auf den LPC1343 kopieren. Variante 2: Da die LPCXpresso ein SWD Interface mitliefern, wäre es schade dies nicht zu gebrauchen. Beim einstecken des SWD Interfaces erschein im Geräte Manager unter USB:"USB Device with DFU Capabilities". Im Moment kann man damit noch nicht Debuggen, da erst die Firmware für das SWD Interface geladen werden muss. Dies erreicht man mit folgendem Aufruf: "DFUAPP /f LPCXpressoWIN.enc". Das Programm inkl. die Datei sind zu finden unter: "C:\nxp\lpcxpresso_3.2\bin\". Nun wechselt der Text im Geräte Manager auf: "LPC-Link Debug Probe v1.1". Nun kann man den Flash des LPC1343 mit folgenden Aufrufen beschreiben: crt_emu_lpc11_13_nxp.exe -wire=winusb -g -2 -pLPC1343 -flash-mass crt_emu_lpc11_13_nxp.exe -wire=winusb -g -2 -pLPC1343 -flash-load=main.bin Der Erste Aufruf löscht das Flash und der zweite schreibt die Firmware ins Flash. Wichtig ist auch hier dass die Firmware als Binary vorliegt und mit dem Programm checksum.exe bearbeitet wurde. Die benötigten Informationen um dies hier so beschreiben zu können, habe ich auf der Seite von NXP gefunden (aber wirklich sehr gut versteckt). Nun kann man das flashen in irgend eine IDE hineinpacken. WinARM: Mir ist Programmers Notepad 2 lieber das in WinARM verwendet wird. Einfach weil er nicht so schwerfällig ist (startet so schön schnell). Man muss das Linker File etwas anpassen, das Makefile etwas anpassen, damit Binaries erstellt werden und schon laufen die Beispiele die von NXP herausgegeben wurden. Die EFM32 laufen noch nicht und werde diese mal beiseite legen. Gemäss der Idee von LPCXpresso, sollte das SWD Interface auch für andere Boards funktionieren mit SWD. Irgendwie geht's aber doch nicht. Gruss, Daniel
ALso bei mir läuft das Starter Kit mit EFM32G890F128 (mit Touch Panel und LCD) bestens: IAR Workbench und Energy Profiler, der genial ist, wenn man die Energieverbraucher ermitteln will. Schöne Produkte! Gruß, TK
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
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.