unterschied zwischen ISP u.IAP

Gast #357465
Lesenswert?

>Aber woher bekommt er das Programm und wozu benötigt man
>diesen Modus ?

Woher: serielle Schnittstelle, CAN-Bus, Ethernet. Je nachdem, was
gebraucht wird.

Wozu: Firmwareupdate; gleicher Baustein, anderes Verhalten (z.B.
Regler)
Gast #357466
Lesenswert?

OK, aber die neue Software (Firmware) kann ich doch dann ganz normal
über das Programm FLIP herunterladen(ISP). Ich verstehe noch nicht so
ganz wo der Vorteil in dieser Progrmmierart liegt.
#357467
Lesenswert?

Mit IAP kann man sich seinen eigenen Bootloader stricken (anderes
Interface, anderes Protokoll), z.B. über Funk.

Auch kann die Anwendung nebenher weiter laufen, d.h. in der Regel
bleibt die CPU kurz (10ms) stehen, während eine Bootloaderaktion
ausgeführt wird. Eignet sich daher auch, um große Datenmengen im Flash
von der Anwendung abzuspeichern (Datenlogger).


Je nach CPU macht man die Bootloaderaufrufe bequem über nen API-Call
(8051) oder muß sie selber umständlich zu Fuß programmieren (AVR).

Die Methode mit dem API-Call hat den Vorteil, daß man sich nicht drum
kümmern muß, wenn der Hersteller später mal den Programmieralgorithmus
ändert oder neue Typen entwickelt.


Peter
Gast #357468
Lesenswert?

besten Dank für die ganzen Informationen.
Das hört sich sehr Interessant an, gibt es zu diesem Thema
(IAP,API,Bootloader) Fachliteratur mit Beispiel-Programmen in Deutsch
?
Aus dem Datenblatt von Atmel, werde ich nicht so richtig schlau !
Gast #357470
Lesenswert?

Hallo,
generell bedeuten bei ISP und IAP: der uC bleibt während der
Programmierung IN seiner Schaltung, er braucht nicht herausgenommen zu
werden und nicht z.B. in ein besonderes Programmiergerät gelegt zu
werden (wie das z.B. bei EPROMs der Fall ist).

Das Empfangsprogramm auf dem uC (für das neue vom PC gesendete
Programm) ist zunächst vom uC-Hersteller auf dem uC hinterlegt und kann
bei bestimmten uCs (warum auch immer) vom Anwender durch ein eigenes
Empfangsprogramm ersetzt werden.
Auf dem PC läuft ein spezielles Sende-Programm ab, z.B. FLIP.

Soweit sind ISP und IAP zunächst gleich.
Nun der Unterschied:
Bei ISP muß der uC angehalten werden, wenn ein neues Programm
aufgespielt wird (Boot-Modus), das gesamte uC-System bleibt also
stehen, nichts tut sich, solange das neue Programm geladen wird.

Bei IAP läuft noch das alte Programm während des Donwloads weiter !
d.h. das uC-System arbeitet "durch".
Erst wenn das neue Programm komplett herunter geladen worden ist, wird
geschickt umgeschaltet und der uC läuft mit dem neuen Programm.
IAP ist also wesentlich aufwendiger zu realisieren als ISP.
Der AT89C51CC03 kann meines Wissens nur ISP.

Viel Spaß
Carlos
Gast #357471
Lesenswert?

>Der AT89C51CC03 kann meines Wissens nur ISP.
Nennt man das Bildungslücke?

http://www.atmel.com/dyn/products/product_card.asp?family_id=613&family_name=CAN+Networking&part_id=3186

http://www.atmel.com/dyn/resources/prod_documents/doc4251.pdf
http://www.atmel.com/dyn/resources/prod_documents/doc4266.pdf

Man benutzt diese Methode gerne dafür, die Firmware des Controllers zu
verändern bzw. zu aktualisieren (oben schon genannt).

Warum man da auch gerne einen eigenen Bottloader schreibt?
Weil man z.B. eine Verschlüsselung einbauen will oder eine eigene
Anwendung (statt FLIP) benutzen will/muß oder eine andere Schnittstelle
benutzen will/muß (z.B. auch ein externes EEPROM).

Beim AVR ist es IMHO überwiegend so, dass der Bootloader komplett dazu
da ist, ein neues Betriebsprogramm (Firmware) für den Controller
einzuspielen.
Der Bootloader wird dann nur nach einem Reset (Power-On etc) gestartet
und wartet ein bestimmtes Ereignis ab. Tritt dieses Ereignis ein, wird
die Firmware neu geschrieben, tritt es nach einer gewissen Zeit nicht
ein, wird die Firmware gestartet.
Die Idee, den übrigen Flash-Speicher als Datenspeicher zu benutzen,
finde ich inzwischen sehr interessant.
Gast #357472
Lesenswert?

Hat denn jemand von euch, schonmal selbst ein Bootloader-Programm
geschrieben?
Ok, ich werde mich wohl erstmal einige Zeit mit der ISP beschäftigen
und wenn ich dann noch nähere Informationen sammeln kann mit IAP.
Ich danke für die zahlreichen Beiträge und werde mich dann, wenn ich
soweit bin, nochmal melden.

MFG
DIRK
Gast #357473
Lesenswert?

Guck mal in die Codesammlung. Bin mir nicht ganz sicher, ob da einer für
den 89C51CC03 dabei war.
Einer dieser Controller hat IMHO einen Bootloader für CAN und einer
über die serielle Schnittstelle.

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