www.mikrocontroller.net

Forum: Mikrocontroller und Digitale Elektronik Kommunikation zwischen AVR <--> AVR


Autor: Future Limit (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hi Leute,

ich bin ein blutiger Anfänger im Bereich der µC. Ich habe hier zwei µC,
ein Atmega8 und einen 2313. Nun möchte ich zwischen den beider µC Daten
austauschen und weiterverarbeiten. Ich habe schon ein paar interessante
Artikel gelesen, leider waren diese immer nur für sehr spezielle
Probleme. Vielleicht könnt Ihr mir ja helfen.

Gruß
Olli

Autor: Freak5 (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Du könntest dir einmal ein eigenes Protokoll schreiben. Das wäre sicher
unpraktikabel. Diese Controller haben für die Datenübertragung extra
schnittstellen UART oder so. Oder I²Can Bus. Ich denke, dass du die
einfach nehmen solltest. Genaueres wissen sicher andere. Benutzt habe
ich diese selber noch nie...

Autor: Stefan (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Die universelle Lösung dafür gibt es sicherlich auch nicht. Die
Übertragungsart ist von Faktoren wie Übertragungsrate, Entfernung, usw.
abhängig.
Wenn du etwas genauer erklären würdest, worum es geht, würde das die
Beantwortung deiner Frage bedeutend erleichtern.

Grüße,

Stefan

Autor: Future Limit (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Danke erstmal für euer Antworten.
Ich will eingentlich nur ein wenig spielen. Einfach mal verschiedene
einfache Sachen ausprobieren und mich dann steigern.

Gruß
Olli

Autor: ---- (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
@Freak5

UART hat nix mit Protokoll zu tun,

was ist I²CAN?

Du bist echt ein Oberschlaumeier, solche Antworten sind echt
hilfreich...

Autor: Philipp Sªsse (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Die Minimaleinführung? Hm.

UART: die µC-Schnittstelle, der auch RS-232 und RS-485 zugrunde liegen.
Solange Du nur zwei Teilnehmer, unter einem Meter Entfernung und keine
riesigen Datenmengen hast, kannst Du einfach das TX des einen
Controllers mit dem RX des anderen verbinden. Dann bei beiden dieselben
Einstellungen für Baud/Bits/Parity/Stopbits wählen, Daten rausschreiben
und per Interrupt empfangen. Einführungen findest Du "überall".
Achtung: für eine zuverlässige Datenübertragung brauchst Du einen
geeigneten externen Quarz.

I2C: (überlappende Bezeichnungen TWI oder SSI oder ...) beruht auf
einer Datenleitung mit den zu übertragenden Bits und einer
Clockleitung, die angibt, wann die Bits auszulesen sind. Je nach
Controller gibt es darüber hinaus schon etwas Protokollunterstützung,
damit mehrere Teilnehmer am selben Bus hängen können (sonst macht man
das per Software). Auch hier findest Du genug Beispiele und
Einführungen.

Erfahrungsgemäß wollen die Leute dann irgendwann viele Teilnehmer an
einem Bus, wollen hohe Datenraten oder lange Kabel. Oder alles
zusammen. Dann stellen sie fest, daß sich ihre gewohnte
Lieblingsschnittstelle da nur mit allerlei Aufwand und Problemen derart
aufbohren läßt. Deswegen ist es nicht verkehrt, sich zeitig Gedanken zu
machen, wo man hinwill.

Autor: Sebastian Knödler (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Ich denke eine einfache Datenübertragung zwischen zwei AVR's könnte
auch SPI bieten!
Wie weit auseinander das ganze darf weiß ich leider nicht, hört sich
aber an als wären die zwei recht nah beieinander. Über SPI kann man bei
bedarf auch mehrere "Teilnehmer" anschließen (dank ChipSelect) und die
Datenrate darf auch recht hoch sein!

MfG
Basti

Autor: Freak5 (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
"UART hat nix mit Protokoll zu tun,"
Ich weiß, das ist eine Schnittstelle. Aber wenn er die benutzt muss er
die Eingänge nicht mehr Pollen. Diese Schnittstellen sind Hardwaremäßig
auf den Chips unterstützt und deshalb würde ich darauf zugreifen anstatt
selber etwas zu entwerfen.(ist doch so, oder irre ich?)

Ich meinte I²C.

Zur Schlaumeieranschuldigung:
Ich habe mich mit dem Thema noch nicht befasst. Das ist erst am
Wochenende auf meiner Liste :-)
Trotzdem kann ich doch versuchen einen Stichpunkt zu nennen, wenn noch
keiner was Geschrieben hat, damit er vielleicht zufällig per google
oder sonstwie was findet.

Vielleicht hätte er sich ja auch an etwas errinnert oder jemand anders
hätte das getan.

Autor: Future Limit (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hi,

ich bin's schon wieder. Also ich habe jetzt die letzten zwei Tage eine
Menge gelesen, leider finde ich aber nichts Passendes. Denn wenn man
unter Google nach I²C oder SPI sucht, dann spuckt der tausende von
Seiten aus, auf denen meistens nichts Brauchbares für mich steht.
Vielleicht kennt Ihr ja ein nettes Tutorial (o.Ä.), welches z.B. die
Kommunikation via I²C beschreibt, oder auch andere Tutorials zum Thema:
"Kommunikation zwischen zwei Mikrocontrollern".

Gruß
Olli

Autor: Chief Brady (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Schon mal an das naheliegenste gelesen?

-->  http://www.mikrocontroller.net/tutorial/uart

MfG
AJ

Autor: Klaus (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Oder hier:
http://mc-project.de/Pages/AVR/Software/SPI_ATMega8.zip

Eine einfache Kommunikation zweier ATMegas via SPI.

Autor: Michael Wilhelm (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Der 2313 hat keine SPI, die dem Programmierer zur Verfügung steht. Nur
zum ISP kann sie benutzt werden. UART oder I2C, wobei die I2C beim 2313
dann auch in Software realisiert werden muß. Also sind deine
Möglichkeiten soweit eingeschränkt, daß das Augenmerk wohl bei der UART
hängen bleibt.

MW

Autor: TravelRec. (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Ich würd´ auch den UART nehmen, sehr unkompliziert, wenn einmal
initialisiert, ausreichend schnell und supereinfach zu bedienen
(eigentlich nur 2 Flags kontrollieren und 1 Register lesen oder
schreiben, das war´s). Probecodes gibt´s in neuen Datanblättern von
ATMEL.

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.