EEProm als zwischenspeicher.???

Gast #95141
Hay Leute

Ich möchte gerne 3 Atmel Verbinden bzw. daten senden geht sowas auch
über einen EEPROM bzw. wenn ich beide IC´s an eine I2C Leitung hänge
und dazwischen einen EEProm kann den ein IC reinschreiben und der
andere Lesen oder würde das nicht Funktionieren.?

Oder hat jemand eine andere Idee wie man 3-4 IC´s an eine Leitung
Hängt.


MFG: Fichte
Gast #95142
das könnte funktionieren.... allerdings nicht besonders lange. Ein
EEPROM hat meistens ca. 100000 Schreibzyklen. Ich weis zwar nicht was
du übertragen willst und wieoft, aber die 100000 Schreibzyklen sind
unter Umständen schnell erreicht und das EEPROM unbrauchbar.

Mein Vorschlag mehrere Controller miteinander zu Verbinden wär eine
Übertragung über die RS232-Schnittstelle. Du verbindest einfach die
TX-Ausgänge eines µC's mit den RX-Eingängen aller anderen µC's.
(Auf diese Art haben wir in der Ausbildung mal ein komplettes Netzwerk
aus 12 MFA-Systemen gebaut)

viel Erfolg beim Basteln!

Andi
Gast #95143
Hallo,

für so ein Projekt wäre ein Bussystem besser geeignet. Denn der RS232
ist eigentlich nur zur Kommunikation zwischen 2 Geräten gedacht, bei
mehr muss mann Trixen. Ich würde entweder Direkt den I2C-Bus nehmen.
Also in jedem Controller eine I2C-Slave Routine einbauen, mit eigenem
Adressbyte und diesen dann per Protokoll daten übermitteln. Oder den
RS485- bzw. RS422-Bus. Dieser ist vom Prinziep her dem RS232 ähnlich,
nur dass er für mehrere Controller gedacht ist, und eine längere
Leitungslänge erlaubt. Zuletzt währe noch den CAN-Bus zu nennen. Dieser
ist zwar sicher und schnell, aber nicht ganz einfach zu Implementieren.

Gruß, Florian
#95144
@Florian,

"bei mehr muss mann Trixen"

Besser ist daher die Reihenschaltung: TXD an RXD des nächsten usw.
Dann ist nichts mit Trixen, das geht sogar sehr gut.

Man arbeitet dann am besten im 9Bit-Modus (Adrese/Daten) und jeder, der
ein Byte empfängt, was nicht für ihn bestimmt ist, reicht es einfach
weiter.

Im ungünstigsten Fall hat man gerade angefangen zu senden und empfängt
nicht für einen selber bestimmte Daten. Dann muß man diese Nachricht
komplett zwischenspeichern, d.h. die Nachrichtenlänge sollte begrenzt
sein. 8 Byte (wie bei CAN) ist ein guter Wert.

Ein weiterer Vorteil ist auch, daß es keine Prioritäten gibt, jeder
darf zu jeder Zeit senden.


Peter

Antwort schreiben

Eine eigene Frage? Dieser Thread ist über 22 Jahre alt. Stell sie in einem eigenen Thread – dort lesen mehr Leute mit, und sie wird öfter und schneller beantwortet.

Neuen Thread starten

Eine Lösung, Ergänzung oder Rückmeldung zu diesem Thread? Dann antworte hier.

Formatierung
  • [c]C-Code[/c]
  • [code]Code in anderen Sprachen, ASCII-Zeichnungen[/code]
  • [math]Formel in LaTeX-Syntax[/math]
  • [[Titel]] – Link zu einem Artikel
  • Verweis auf einen anderen Beitrag: Rechtsklick auf dessen Beitrags-ID (#8078628), „Adresse kopieren“, in den Text einfügen

Mehr zur Formatierung

Längeren Sourcecode als Anhang, nicht in den Text. JPG nur für Fotos und Scans; Zeichnungen und Screenshots als PNG oder GIF. Siehe Bildformate.

Schon registriert? Anmelden

Wird nicht angezeigt. Wir schicken dir einen Link; sobald du damit bestätigst, erscheint dein Beitrag.

Mit dem Abschicken legst du einen kostenlosen Account an und erkennst die Nutzungsbedingungen und die Datenschutzerklärung an.