Hi, ich möchte zwischen mehreren ATmegas ein Netzwerk aufbauen. Im Grunde handelt es sich um ein Netzwerk mit einem Master und mehreren Slaves. Die Slaves haben zu Master einen Abstand von bis zu 20m. Welches Bussystem bietet sich hierfür am besten an? Ich befürchte, dass I2C bei diesen Entfernungen nicht mehr so zuverlässig ist. Dachte schon an CAN, aber das wird von den ATmegas nicht ohne weiteres unterstützt. Wie schaut es mit RS485 aus? Ich kenne mich mit der ATmega Programmierung aus, mit PICs (haben integrierte CAN Driver) habe ich bisher nicht gearbeitet. Deshalb dachte ich, es würde mir Zeit sparen auf der ATmega Plattform zu bleiben. Wie kompliziert ist eine RS485 Implementierung? Habt ihr andere Ideen/Empfehlungen? Vielen Dank! Gruß, Manu
Wenn's bidirektional Master slave sein soll, waere auch RS422 eine Alternative. Das ist ein RS485 aber bidirektional, mit 4 Leitern plus GND. Die Implementation ist einfacher, das die Richtungsumschaltung des RS485 entfaellt. Interessant waere auch welchen Baudrate, und ob Master-Slave oder Multimaster.
Ich habe nur EINEN Master. Allerdings soll der Master einigen Slaves Kommandos senden und von anderen Slaves Informationen empfangen. Also Bidirektional. Gruß, Manu
Das nennt sich dann Master-Slave. Dafuer waere RS422 geeignet.Ein Leiterpaar vom Master weg an alle Slaves, und ein Leiter Paar von allen Slaves zum Master. Der Master darf immer senden. Dann muss man nur definieren wer wann antworten darf, ueberlicherweise der Angesprochene.
Das heißt, ich kann das auch Sternförmig verkabeln? Ein Leiterpaar vom Master zum Stern und von da an die Receive-Anschlüsse der Slaves. Von den Send-Anschlüssen der Slaves an den Stern und von da an den Receive-Anschluss des Masters. Richtig?
Da würden sich ja RJ-12 Telefonkabel und Buchsen anbieten :-)
Hi! Wenn pro AVR ein PCA9600 in Frage kommt, kannst du ohne weiteres auch I2C benutzen, schaue dir die entsprechenden Appnotes von NXP an. (Vor allem - AN10658 - Sending I2C-bus signals via long communications cables
Das mit dem PCA9600 schaut eigentlich ganz nett aus. Bedingung für alle Systeme ist, dass ich ein gemeinsames Ground habe, oder? Gruß, Manu
Ein CAN-Transceiver kostet auch nicht die Welt und das Protokoll kann man in Software machen.
also der at90can128 ist ein Atmega mit CAN. Den setze ich sehr oft ein. Kann ich nur empfehlen. 20 m sind da kein Problem und Multi-Master-fähig ist der Bus auch. Sehr einfach erweiterbar. 3 leitungen und gut ist...
Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.