www.mikrocontroller.net

Forum: Mikrocontroller und Digitale Elektronik Becker


Autor: Mario (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hallo,
ich stehe vor dem Problem zwei Controller (M16C) verbinden zu müssen.
Leider habe ich noch keine Ahnung von uC...
Weil die Übertragungsgeschwindigkeint sehr hoch sein muss, dachte ich
an
SPI oder i2c.
Die Daten die Übertragen werden sollen, müssen in Protokoll definiert
werden. Deshalb dachte ich an ein einfaches HDCL Protokoll. Leider weis
ich nicht wie man soetwas in C umsetzt. Hat schon jemand Erfahrung
damit. Evtl. sogar ein Beispiel für mich? Gibt es auch ein einfacheres
Verfahren?
Danke

Autor: Unbekanner (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Was bedeutet: "Übertragungsgeschwindigkeint sehr hoch"?

Kilobit, Megabit oder Gigabit pro Sekunde, Minute oder Stunde?

Autor: Mario (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
zwischen 1-15 Mhz

Autor: Unbekannter (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Was soll jetzt 1 bis 15 MHz bedeuten? Das ist immer noch keine korrekt
Angabe. Sollen das 1 bis 15 MBits/s sein oder 1 bis 15 MByte/s oder
was?

Unabhängig davon brauchst Du dafür eine Hardware-Lösung, z.B. SPI oder
eine syncrone, serielle Schnittstelle. Must eben mal ins Datenblatt
schauen was Dein Controller so kann.

Autor: Mario (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Sorry!
Übertragungsgeschwindigkeit: 5Mbit/s
Schnittstelle: SPI

Was für ein Protokoll kann man für so eine Anwendung verwenden?
Mit Protokoll meine ich nicht das eigendliche
SPI-Protokoll(Master/Slave), sondern ein Protokoll zur synchronisation
der Kommunikation. Zudem muss ich noch Kontrollinformationen übertragen
und auswerten.
Die max. Datenlänge ist 64Byte. Hier für ist doch sicherlich ein
Verfahren zu Fehlererkennung notwendig, oder?
Irgendwie muss ich die Daten vor dem versenden strukturieren und beim

Empfänger wieder auswerten(umgekehrt genau so!). Wie kann man so ein
Programm nun am besten aufbauen?

Autor: Unbekannter (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Wenn Du auf einem SPI-Bus Fehler hast, ist die Hardware defekt.

Sicher, kannst Du Fehlererkunngen etc. einbauen, doch wozu? SPI ist
kein Kanal mit Fehlern. Das ist ja kein Internet oder Funk etc.

Wenn Du bidirektionale Übertragung machen willst, musst Du in der Tat
ein Protokoll drauf setzen. Da reicht aber das aller einfachste. Z.B.
ein Byte mit der Länge des Datenpakets senden, dann die Datenbytes.
Danach darf der Empfänger senden. Wenn er nichts zum senden hat,
schickt er eine "0", und der Sender schickt sein nächstes Datenpaket.

Autor: Hannes Lux (hannes)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Ich werde das Gefühl nicht los, dass hier jemand deine Hausaufgaben
machen soll.

Autor: Peter Dannegger (peda)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Wieviel MIPS hat denn so ein M16C ?

Um bei 5MBaud noch ein Protokoll draufzusetzen, brauchst Du aber
Rechenleistung satt !

Single-Master sollte da das einzig mögliche sein, d.h. zum Kollidieren,
Arbitrieren hast Du keine Luft mehr.


Peter

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.