Einfacher 2 Leiter Bus in Assembler

Gast #47819
Hallo!

Hab ein Problem:
Suche was einfaches um mehrere AVRs an einem Bus zu verbinden. Muß
nicht besonders Leistungsfähig sein. 16 Adressen und 1kb/s würden
ausreichen. Muß aber Multi-Master fähig sein und sollte nicht
interrupt-basiert sein, wesshalb die Atmel I2C Routinen ausscheiden.
Darf aber auch keine Ansprüche ans timing stellen, da die AVRs mit
verschiedenen Geschwindikeiten arbeiten wird sonnst das Anpassen recht
kompliziert. Und Außerdem sind eh 2 Leitungen vorgesehen.

Hat irgendjemand was Passendes in Assembler schonmal gemacht, oder
muß ich etwa selbst denken?

Danke
Janik
Gast
Das "auch" hab ich nicht geschrieben. Und das Nachdenken bezog sich
auf "einen eigenen Bus entwickeln".
Aber RS485 scheint mit ungeeingnet. Soweit ich weiß braucht man dafür
noch 'n Treiber-IC. Ich wollte das Ganze eignetlich direkt an den AVR
Anschließen. Außerdem dachte ich an synchrone Datenübertragung.
Gast
Hi

dann ist ein komplett implementiertes I2C wohl das ideale. Wenn du dir
da was eigenes ausdenkst kommt was ähnlich komplexes heraus. Wenn deine
AVR's sowieso TWI in Hardware können wirds einfach.

Matthias
Gast
Nagut, ich seh's  ein. Es gibt wohl keine EierlegendeWollMilchSau. Aber
hat irgendjemand schonmal vollständiges I2C in Assembler gemacht?
Ich hab zwar schonmal gegoogelt, aber was verwendbares hab ich nicht
gefunden.
Gast
Ach noch ein Problem: Die Leitunslänge beträgt ca. 10m. Das ist doch
ohne geschirmtes Kabel kein Problem wenn man vielleicht nur 10kHz
nimmt?
Gast
Hi

10m? Mit CMOS-Pegeln? Störungssicher? Vergiss es. Nimm RS485 und
investier die paar Cent für die Treiber. Dann hast du was was auch
funktioniert wenn der Nachbar mal ne Waschmaschine laufen läßt.

Matthias

Antwort schreiben

Eine eigene Frage? Dieser Thread ist über 23 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.