Zieht ein ARM (LPC21xx) Programmierer P0.14/BSL auf Masse?

Die meisten ARM-Programmierer verfügen über BSL-, RESET-, TXD-, RXD-, GND- und VCC-Pins, die wir mit den entsprechenden Pins von ARM verbinden müssen.

Für ISP müssen wir P0.14/BSL nach dem Zurücksetzen erden.

Da diese Programmierer sowohl BSL- als auch RESET-Pins haben, setzt der Programmierer selbst den Controller zurück und zieht BSL auf Masse ODER muss ich zuerst BSL auf Masse ziehen, den Controller zurücksetzen und dann mit Software wie FlashMagic programmieren?

Bleibt ARM auch im Bootloader, wenn ich P0.14/BSL nach dem Einschalten bis zum nächsten Zurücksetzen auf Masse ziehe, oder hat es irgendeine Art von Zeitüberschreitung, dass es danach zum Anwendungscode springt?

Oder wie Wouter van Ooijen es umformulierte, ob der Bootloader nach einem bestimmten Timeout spontan zur Anwendung springt?

Ich arbeite mit LPC2138.

Sie verwechseln den ARM-Kern mit einem bestimmten Mikrocontroller, den Sie nicht erwähnen.

Antworten (2)

Wie Starblue betont, beziehen Sie sich auf die LPC-Reihe von Mikrocontrollern. Es ist ratsam, dies im Titel und/oder Text Ihrer Frage zu erwähnen.

Ob der Programmierer BSL für Sie niedrig zieht (und auch den Chip für Sie zurücksetzt!) hängt vom Programmierer und der von Ihnen verwendeten PC-Software ab.

FlashMagic und lpc21isp können so konfiguriert werden, dass sie beides für Sie tun, vorausgesetzt natürlich, dass die Programmierhardware (die so einfach wie ein FT232RL-Chip sein kann) dies unterstützt und korrekt mit dem Ziel verbunden ist.

Ihre letzte Frage kann ich nicht nachvollziehen. Vielleicht möchten Sie wissen, ob der Bootloader nach einem bestimmten Timeout spontan zur Anwendung springt? AFAIK nicht.

Der Bootloader im Controller tastet die Pins ab, die entscheiden, ob der Bootloader kurz nach dem Zurücksetzen aufgerufen wird. Sobald es in den Bootloader gelangt ist, gibt es kein Timeout und Sie müssen den Controller erneut zurücksetzen, um die Anwendung zu starten.

Beachten Sie, dass die verwendeten Pins je nach Controller-Serie unterschiedlich sein können (z. B. für LPC11xx ist der Pin zum Aufrufen des Bootloaders P0_1).