AVR mittels AVR programmieren

Gast #47159
Lesenswert?

Hallo,

ich versuche jetzt mal zu beschreiben, was ich vorhabe und hoffe das es
verständlich rüber kommt.

Ich habe eine Haupt-Einheit mit AVR-Controller. Diese ist mit einem PC
über RS232 gekoppelt.
An der Haupt-Einheit hängen über die SPI Schnittstelle weitere
Unter-Einheiten mit AVR-Controllern.

Ist die SPI-Schnittstelle überhaupt busfähig oder stellt sie eine 1zu1
Verbindung dar?

Über die RS232 gebe ich Konfigurationsparameter für einzelne
Unter-Einheiten an die Haupt-Einheit der sie dann in das EEProm der
betreffenden Unter-Einheit schreiben soll.

Geht so was?
Hat jemand einen Ansatz oder gar Lösung?

Gruß Jörg
Gast #47160
Lesenswert?

SPI ist ,,einigermaßen'' busfähig.  Du mußt ein slave select Signal
(chip select) für jeden Slave generieren, d. h. der Master braucht
für N Slaves auch N Portpins.  Insofern ist es kein waschechter Bus.
Für einen solchen könntest Du aber wohl TWI (I²C) benutzen, hat aber
möglicherweise nur dann Sinn, wenn all Deine AVRs Hardware-TWI
verstehen (also neuere ATmegas sind).  Du findest zwar auch für AVRs
ohne TWI noch bißchen Code im Netz, in der Regel dann aber nur für
den Betrieb als Master, Du brauchst aber auch den Slave-Betrieb.
Gast #47162
Lesenswert?

Könntest du schon. (Guck einfach mal in die APP-Note AVR910)
Allerdings darf dann nur jeweils ein µController am Bus hängen.
Ansonsten gibts Chaos, da dann ja jeder Controller auf die
Programmieranfrage von deinem Master antwortet.
Könntest das höchstens über nen Bootloader machen und jedem Controller
eine eindeutige ID geben.
Gast #47163
Lesenswert?

Hi

im Prinzip geht das schon. Da das Programmierinterface nur aktiv ist
wenn Reset aktiv ist muß man einfach den Reset des betreffenden µC
aktiv schalten und kann dann das EEPROM über die SPI-Schnittstelle
programmieren. Ob das Sinn macht? Ich weiß nicht. Warum können denn die
Slave-µC ihre EEPROM's nicht selber programmieren nachdem sie die
Daten irgendwie erhalten haben?

Matthias
Gast #47164
Lesenswert?

Klar können Sie das,

ich bin ja noch in der überlegung wie ich das am besten mache.

Als Unter-Einheit habe ich eigentlich ATtiny's ausgewählt.

Wie koppel ich die denn am besten an einen Mega8 so das sie Daten
übernehmen können.

Gruß Jörg
Gast #47165
Lesenswert?

Hi

über den UART? Muß man auf den Tinys dann per Software machen was aber
auch kein Problem ist. Wenn der Mega8 den UART irgendwo anders braucht
macht man sich eben einen zweiten Software-UART.

Matthias

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