ISP Programmerdaten nach TWI weiterleiten ?

OP #3707286
Lesenswert?

Hallo Leute,
ich würde gerne es hinbekommen die ISP-Flash-Daten,die beim Atmega16 
auch auf den SPI-Eingängen liegen,intern zu verarbeiten und weiterleiten 
zum TWI -Ausgang um sie dann per Bootloader in einem anderen Atmega als 
Update zu benutzen.

Nun die Frage/n die ich mir stelle:
Was muss ich beachten das das ISP-Signal nicht mehr zum Flashen führt 
sondern als SPI-Signal oder besser direkt Pin Abfrage? Und wie sieht es
mit Steuerbefehlen aus ?
 (Auf ein TWI-EEPROM als Zwischenspeicher würde ich gerne verzichten)

oder bin ich auf dem Holzweg und es gibt bessere Möglichkeiten ?

PS: Für die ISP-Programierung benutze ich zur Zeit
    PonyProg200 mit Serial-Adapter

Gruß Hans
Gast #3707413
Lesenswert?

Hans-J. A. schrieb:

> Was muss ich beachten das das ISP-Signal nicht mehr zum Flashen führt

Das ist erstmal einfach: Die Reset-Leitung des AVR muß von der 
Reset-Leitung der ISP-Buchse abgeklemmt werden.

> sondern als SPI-Signal oder besser direkt Pin Abfrage?

Das bringt dir garnix.

Wenn's zwischen den beiden AVRs via TWI laufen soll, braucht der 
Ziel-AVR einen TWI-Bootloader. Der muß aber erstmal auf diesen AVR 
kommen, dazu mußt du ihn also sowieso an einen richtigen Programmer 
anschließen (und auch zum Setzen der Fuses, denn das geht über einen 
Bootloader auch nicht).

Eine Lösung, wie sie dir prinzipell vorschwebt, wäre also erstmal 
sowieso nur für Updates brauchbar, nicht aber für die 
Erstprogrammierung. Aber nun ja, auch eine Lösung, die nur Updates 
erlaubt, kann ja durchaus sehr nützlich sein.

Den "Relais"-AVR wird man dann aber nicht in der Art verwenden, wie du 
das vorsiehst. Das macht die Sache nur unnötig komplex und ist mit 
deinem Wissensstand definitiv nicht beherrschbar.

Wennschon so eine Relais-Lösung, dann via UART und mit einem stark 
vereinfachten Protokoll, was nur das unterstützt, was über Bootloader 
tatsächlich geht, also Lesen und Schreiben von Flash und EEPROM.

Wenn allerdings die TWI-Adresse des Ziels variieren kann (und nur dann 
macht so eine Lösung überhaupt irgendeinen Sinn, zur Verteilung von 
Updates in einem Netz), reicht es auf dem Relais nicht, einfach eine 
UART-TWI-Bridge zu programmieren, du brauchst dann eine zusätzliche 
Protokollschicht zur Anwahl des Zieles.

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