www.mikrocontroller.net

Forum: Mikrocontroller und Digitale Elektronik AVR mittels AVR programmieren


Autor: Jörg (Gast)
Datum:

Bewertung
0 lesenswert
nicht 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

Autor: Joerg Wunsch (Gast)
Datum:

Bewertung
0 lesenswert
nicht 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.

Autor: Jörg Maaßen (Gast)
Datum:

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

Gruß Jörg

Autor: ERDI - Soft (Gast)
Datum:

Bewertung
0 lesenswert
nicht 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.

Autor: Matthias (Gast)
Datum:

Bewertung
0 lesenswert
nicht 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

Autor: Jörg Maaßen (Gast)
Datum:

Bewertung
0 lesenswert
nicht 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

Autor: Matthias (Gast)
Datum:

Bewertung
0 lesenswert
nicht 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

Autor: Uwe (Gast)
Datum:

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

Antwort schreiben

Die Angabe einer E-Mail-Adresse ist freiwillig. Wenn Sie automatisch per E-Mail über Antworten auf Ihren Beitrag informiert werden möchten, melden Sie sich bitte an.

Wichtige Regeln - erst lesen, dann posten!

  • Groß- und Kleinschreibung verwenden
  • Längeren Sourcecode nicht im Text einfügen, sondern als Dateianhang

Formatierung (mehr Informationen...)

  • [c]C-Code[/c]
  • [avrasm]AVR-Assembler-Code[/avrasm]
  • [code]Code in anderen Sprachen, ASCII-Zeichnungen[/code]
  • [math]Formel in LaTeX-Syntax[/math]
  • [[Titel]] - Link zu Artikel
  • Verweis auf anderen Beitrag einfügen: Rechtsklick auf Beitragstitel,
    "Adresse kopieren", und in den Text einfügen




Bild automatisch verkleinern, falls nötig
Bitte das JPG-Format nur für Fotos und Scans verwenden!
Zeichnungen und Screenshots im PNG- oder
GIF-Format hochladen. Siehe Bildformate.
Hinweis: der ursprüngliche Beitrag ist mehr als 6 Monate alt.
Bitte hier nur auf die ursprüngliche Frage antworten,
für neue Fragen einen neuen Beitrag erstellen.

Mit dem Abschicken bestätigst du, die Nutzungsbedingungen anzuerkennen.