Forum: Mikrocontroller und Digitale Elektronik SPI - ISP - Null Idee


von J. W. (ontheway)


Lesenswert?

Hi liebe Experten,

ich möchte nochmals nachhaken. Ich habe es noch nicht kapiert. Also, ich 
programmiere meinen Controller auf einem Pollin-Board, das ist aber 
irrelevant, denn ich nutze bei den Atmega32 (die werde ich wohl nehmen) 
ja ISP. Nun kapiere ich aber: Das läuft ja über SPI.
Nun möchte ich ja
1. zentral programmieren
2. zentral kommunizieren
Ich dachte an die Kommunikation über den Computer nach, alles seriell 
über die RS232, nach dem Motto: Dann kann ich ja mit jedem mC reden. 
Wohl Blödsinn, da jeder mC ja nur die definierten RX/TX auf PD0 und PD1 
hat. ISP hängt wohl an PB7, 6 und 5.
Idee: Ein Master ist für die Kommunikation mit dem Rechner zuständig 
(RS232), erzählt was über alle mCs. Die sind über SPI verbunden. Dies 
wird als Kommunikationsprotokoll genutzt UND als 
Programmierschnittstelle.
Da ich auf Grund meiner Unkenntnis nicht sehe, wie ein Programmierer wie 
avrdude -> Atmel Studio mir erlaubt, auf diverse mC zuzugreifen, stelle 
ich mir Bootloader vor, die wohl noch mindestens einen Pin brauchen, um 
zu wissen, das die gerade programmmiert werden sollen.
Ist das im Ansatz logisch? Ich sehe da den Wald vor Bäumen nicht...

Danke und schönes feiern,
Jens

von Christian K. (christian_rx7) Benutzerseite


Lesenswert?

Nimm statt RS232 lieber RS485 und hänge daran alle Controller.
Jeder Controller hat am Bus eine eigene Adresse.
Mit einem speziellen Telegramm oder Tastendruck, Reset oder was auch 
immer, startest du den zu programmierenden Controller im Bootloader 
Modus und dann schiebst du ihm über den RS485 die neue Firmware.

Christian_RX7

von Frank S. (franksanderdo)


Lesenswert?

Moin Jens,

SPI und ISP haben so erst mal nix miteinander zu tun.

Der Pin den Bootloader in erster Linie nutzen nennt sich RESET ;-)
Durch den Reset wird der Bootloader gestartet, der wartet dann eine 
gewisse Zeit und lauscht derweil auf einer (oder mehreren) 
schnittstellen auf ein Kommando. Kommt das nicht, dann springt er zum 
evtl. vorhandenen Programm.

Grüße
Frank

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
Noch kein Account? Hier anmelden.