mikrocontroller.net

Forum: Mikrocontroller und Digitale Elektronik Einfacher 2 Leiter Bus in Assembler


Autor: Janik (Gast)
Datum:

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

Autor: Matthias (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hi

RS485?

Matthias

Autor: edi (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
hi,
wer antwortet...?...oder muß ich etwa 'auch' selbst denken?
ed

Autor: Janik (Gast)
Datum:

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

Autor: Matthias (Gast)
Datum:

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

Autor: Peter Dannegger (peda)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Wie soll denn das gehen ohne Interrupts ???

Als einfachen Multimaster gibts nur I2C oder CAN.

Alle anderen brauchen irgendein umständliches Software-Protokoll, um
den Master auszuwürfeln.


Peter

Autor: Janik (Gast)
Datum:

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

Autor: Janik (Gast)
Datum:

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

Autor: Matthias (Gast)
Datum:

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

Autor: Janik (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Na gut ich sehes ein.

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.