Hallo Forum, ich hab ein Problem. Ich würde gern mein LPC1768 über den MCU COM mit neuer Firmware programmieren können ohne den Pin für den Bootloader auf Masse ziehen zu müssen. Dabei stehen mir nur die Tx/Rx Leitungen zur Verfügung, die DTR /RST Leitungen kann ich nicht benutzen. Somit fällt wohl Flash Magic weg… Kennt Ihr Software die dies ermöglicht bzw. die nötigen Funktionen bereitstellt? Oder habt ihr selber schon mal so etwas umgesetzt und könnt es zur Verfügung stellen?
In dem Fall kann die Firmware RX beim Start oder per Interrupt überwachen, bei Aktivität einen Terminal-Befehl einlesen (FIRMWARE UPDATE) und dann IAP den ROM Bootloader starten. Sobald das passiert ist funktioniert auch FlashMagic, auch nur mit TX/RX Mehr Aufwand wäre eine Firmware mit aktivem Terminal, die sich selbst überschreiben kann. Hier wäre dann Segmentierung nötig. Oder die Firmware schreibt einen eigenen kleinen Bootloader temporär ins RAM, startet diesen IAP, und der liest das neue Binary über Terminal ein und schreibt diese IAP in den Flash, und startet neu.
Hallo Lothar, danke, mir ist klar wie man das macht nur würde ich mir gern die Arbeit sparen. Ich bin bestimmt nicht der erste der so was braucht, da muss es doch irgendwo was geben. Die Suchmaschinen spucken allerdings nichts Vernünftiges raus.
Vielleicht weil da nicht so viel zu tun ist. Eine UART-Funktion hat doch jeder, und falls nicht gibt es Demos z.B. hier: https://www.olimex.com/Products/ARM/NXP/LPC1766-STK/ simple/uart Das einfach in Deine Firmware mit rein nehmen. Bei UART IRQ den FIFO prüfen, dann die Firmware runterfahren, und ROM Bootloader IAP starten: #define IAP_LOCATION 0x1FFF1FF1 #define RE_INVOKE_ISP 5710 typedef void (*IAP)(unsigned long[],unsigned long[]); IAP iap_entry; iap_entry=(IAP) IAP_LOCATION; unsigned long command[5]; command[0]=RE_INVOKE_ISP; unsigned long result[5]; iap_entry(command, result);
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.