PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : Komuntikation zwischen Controllern



NemesisoD
19.11.2006, 12:33
Hallo,

ich bin noch neu auf dem Gebiet der Microcontroller, und habe eine Frage zur Komunikation zwischen zwei Controllern. Da ich auf dem RN-Board den I2C-Bus schon belegt habe(Mit Sensorn) ich aber mit meinem Hauptboard gerne Komunizieren würde, habe ich mich gefragt ob ich nicht UART (RX,TX) nutzen könnte, und wenn ja, benötige ich dann den MAX232 IC?

Wie muss ich die Kommunikation Softwaretechnisch umsetzen?

Vielen Dank.

zur Info, das zweite Board ist ein Toshiba 900 H2 Controller, es besitzt je drei RX,TX Ports.

m.a.r.v.i.n
19.11.2006, 13:30
Hi,

nein, einen MAX232 benötigst du nur, um einen Controller an der COM Schnittstelle eines PC anzuschliessen, oder wenn beide Controller räumlich entfernt (einige Meter) entfernt sind. Dann ist aber auf jeder Controller Seite ein MAX232 notwendig. Wenn die beiden Controller auf demselben Board oder Roboter sitzen kannst du direkt RX/TX (crossover) verbinden. Masseverbindung ebenfalls,

Softwaretechnisch empfiehlt sich ein Protokoll, das einfach auf dem Controller umzusetzen ist. ASCII Klartext ist zwar einfach für den Anwender zu verstehen, aber nicht für den Controller. Außerdem fehlt dabei:
* eine Prüfsumme,
* wie lang ein Paket ist
* was Daten und Befehle sind

Such mal STX ETX hier im Forum oder bei Google.
Hier gibt es z.B. eine AVR LIB mit dem STX/ETX packet protokol
http://hubbard.engr.scu.edu/embedded/avr/avrlib/docs/html/group__stxetx.html

Gruß m.a.r.v.i.n

linux_80
19.11.2006, 13:53
Hallo,

I2C könnte man aber doch trotzdem verwenden, da es ja ein Bus-System ist. Wenn die Toshiba Controller das können, einfach die Leitung verlängern, aber nicht zu lang !

NemesisoD
19.11.2006, 14:18
Wieviele kann ich den anschließen, und wie kann ich den sagen wem ich die Information schicken möchte? Könntest du mir vielleicht ein kleines Programm beispiel schicken?

Danke für die schnelle Antwort

linux_80
19.11.2006, 15:50
Schau mal im Wiki, da gibts u.a. die Seiten I2C und TWI.
Auch hier im Forum ist das schon öfter diskutiert worden auch mal mit Beispielen.

Wenn Du aber schon den Sensor dran hast, sollte das kein Problem sein einen anderen Controller anzusprechen, denn das geht genauso.
Ich kenne nur die Toshibas nicht und ob die I2C Hardwaremässig unterstützen.

Du musst Dir evtl. nur selber die Befehle überlegen die zur Kommunikation verwendet werden (Protokoll), kannst Dir aber von anderer I2C Hardware abgucken.
I2C gibt ja nur das Hardwareprotokoll vor, wie die Adressierung und ob geschrieben oder gelesen werden soll.

NemesisoD
19.11.2006, 16:31
Danke schon mal für eure Hilfe, ich denke das ich jetzt in etwa weiß wie ich es zu machen habe!

Schönen Tag noch