NXP LPC11Axxx - ISP Programmierung über FTDI

Gast #5241702
Lesenswert?

Hallo, ich würde gerne den ROM bootloader benutzen, um den LPC zu 
programmieren. Es gibt dazu eine Software, die sich Flash Magic nennt. 
Dort werden die beiden Leitungen DTR und RTS benutzt, um den uC in den 
ISP Modus zu versetzen. Ich habe leider keine brauchbar Infos gefunden, 
ob man die Leitungen beim FTDI extern extra beschalten muss, mit z.B. 
Invertern. Hat jemand diesbezüglich schon Erfahrung gemacht?
Gast #5241709
Lesenswert?

Du sprichst wirres Zeug.

ISP und Bootloader, das passt nicht zusammen.

Flash Magic soll jeder kennen?

Artur schrieb:
> beim FTDI

Es gibt nur einen? Den kennen wir alle. Oder etwa nicht?
"Der FTDI", das ist eine grosse Firma .... oder eine
Chip-Familie. Du meinst aber wohl irgendeine Schaltung?
Gast #5241788
Lesenswert?

Dumpf Backe schrieb:
> Du sprichst wirres Zeug.
> ISP und Bootloader, das passt nicht zusammen.
Nennen die selbst bei NXP so. ISP & IAp läuft über den ROM Bootloader.

NXP Semiconductors produce a range of Microcontrollers that feature both 
on-chip Flash memory and the ability to be reprogrammed using In-System 
Programming technology.
Flash Magic is Windows software from the Embedded Systems Academy that 
allows easy access to all the ISP features provided by the devices. 
These features include:
# Erasing the Flash memory (individual blocks or the whole device)
# Programming the Flash memory
# Modifying the Boot Vector and Status Byte
# Reading Flash memory
# Performing a blank check on a section of Flash memory
# Reading the signature bytes
# Reading and writing the security bits
# Direct load of a new baud rate (high speed communications)
# Sending commands to place device in Bootloader mode

Dumpf Backe schrieb:

> Flash Magic soll jeder kennen?
Mein Thread war nicht an Jeden gerichtet.


> beim FTDI
> Es gibt nur einen? Den kennen wir alle. Oder etwa nicht?
FTDI232RL, wenn du es genauer wissen möchtest.
Gast #5242263
Lesenswert?

Artur schrieb:
> sollte beim LPC11Axxx nicht anders sein

Du brauchst nur eine Null-Modem Verbindung zum FTDI also TX, RX, GND 
sonst nichts. Der Bootloader wird mit dem ISP Pin gestartet also P0.1 
auf GND und dann Strom an bzw. RESET. Der FTDI kann den LPC auch mit 
Strom versorgen.

Dumpf Backe schrieb:
> ISP und Bootloader, das passt nicht zusammen

Nur weil Atmel ihr ICP über SPI fälschlicherweise als ISP bezeichnet hat 
ist es das nicht. Bei allen anderen ist ISP eine Kommunikation mit einem 
Monitor-Programm, typischerweise über UART, der Monitor heisst heute 
Bootloader, und ist bei den LPC werksseitig in einem ROM. Hat also 
nichts zu tun mit einem Arduino-Bootloader, der zuerst per ICP geflasht 
werden muss.
Gast #5242303
Lesenswert?

Artur schrieb:
> Ich habe leider keine brauchbar Infos gefunden,
> ob man die Leitungen beim FTDI extern extra beschalten muss, mit z.B.
> Invertern. Hat jemand diesbezüglich schon Erfahrung gemacht?

Ja. ich benutze die Bootlader bei den LPC's schon seit langem.

Also,
Variante 1:
Du hast einen MAX232 o.ä. an deinem UART0 des LPC dran, weil du per V.24 
mit deinem µC kommunizieren willst.

Dann brauchst du an DTR und RTS jeweils eine Kombination aus einem 
NPN-Transistor und einem Vorwiderstand. Vom Signal (DTR oder RTS) kommt 
der Widerstand, 22k oder so reicht völlig aus, geht an die Basis des 
Transistors. Emitter kommt auf GND. Kollektor geht an deine Schaltung. 
Dort hast du /BOOT und /RESET, jeweils mit einem Widerstand auf VCC 
gezogen. An diese gehst du mit den Kollektoren deiner Transistoren. Das 
war's. RxD und TxD gehen natürlich an die entsprechenden Anschlüsse des 
MAX232 und du kannst (aus Angstgründen) in jede Leitung ruhig 470 Ohm 
einschleifen.

Variante 2:
Du hast keinen MAX232 o.ä. an deinem µC dran.

Dann gehen vom FTDI-Chip RxD und TxD (5V bzw. TTL-Pegel) direkt an die 
entsprechenden TxD und RxD deines µC, wenn du willst, eben auch über 
eingeschleifte 220..470 Ohm. Ebenso gehen DTR und RTS an /BOOT bzw. 
/RESET, ebenso wenn du willst über 220..470 Ohm. Kommt auf deine 
Hochzieher an.

Du kannst im FlashMagic die Zeiten für /Reset und /Boot manuell 
einrichten, so daß du testeshalber selbige so lang machen kannst, daß du 
sie per Multimeter nachmessen kannst.

W.S.

Antwort schreiben

Bitte melde dich an, um einen Beitrag zu schreiben.

oder

Mit Google-Account einloggen

Die Registrierung ist kostenlos und dauert nur eine Minute.

Jetzt registrieren