Forum: Mikrocontroller und Digitale Elektronik AVR mittels AVR programmieren


von Jörg (Gast)


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

von Joerg Wunsch (Gast)


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.

von Jörg Maaßen (Gast)


Lesenswert?

Kann ich die Daten nicht über ISP direkt in die EEProms schreiben bzw.
auslesen. Ist nur so ein Gedanke.

Gruß Jörg

von ERDI - Soft (Gast)


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.

von Matthias (Gast)


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

von Jörg Maaßen (Gast)


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

von Matthias (Gast)


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

von Uwe (Gast)


Lesenswert?

Hi!
Warum kann denn die "Untereinheit" die Daten nicht selber schreiben.
SPI hast du doch sowiso. Oder habe ich da was falsch verstanden?

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.