Hallo, kurze Frage. Ich möchte mit möglichst wenig Aufwand aus CAN RS485 machen. Kann ich meinen jetzigen CAN_transceiver vom CAN-Controller trennen und an die UART des µC anschließen (Rx, Tx und Steuerleitung für Senden/Empfangen) ? Das RS485 Protokoll muss dann natürlich noch geschrieben werden. Aber das sollte es dann sein oder muss dabei noch etwas spezielles beachtet warden ? Es geht mir hierbei rein um das physikalische...Habe hier und da schon gelesen, dass es wohl funktionieren soll, sicher bin ich da aber nicht. Danke !
CAN ist ein Protokoll, UART ebenso. Wie soll ein physikalischer Layer das umsetzen? Zusammengefasst: Nein, das funktioniert nicht.
Bei CAN wird in der ISO 11898 auch der Layer 1 (physikalische Schicht) definiert - nicht nur das Protokoll. (Full-Speed) CAN und RS485 haben unterschiedliche phys. Layer, daher geht das eigentlich nicht. Beide arbeiten aber mit Differenzsignalen, wenn auch mit unterschiedlichen Pegeln. Da die normalen RS485 Receiver schon so ab 0,2V Differenz einen Pegel erkennen, könnte das theoretisch funktionieren. Sauber wäre es näturlich einen richtigen RS485 Transceiver zu verwenden, sollte auch nicht aufwendiger sein.
mit anderen Worten, ich brauche auf jeden Fall einen RS485 Transceiver, den ich an die UART klemm für Kommunikation mit RS485 ? Ich meine irgendwo mal gelesen zu haben, dass ich die Schnittstellenbausteine, also die Transceiver, austauschen kann, da beide Transceiver differentiell arbeiten oder schmeiß ich da jetzt was durcheinander ?
Ja, der Aufwand sollte nicht wirklich größer sein... mir gings eigentlich nur um Prinzip bzw. die zusätzlichen Kosten für die RS485 Transceiver. in größerer Stückzahl machen die sich ja schon bemerkbar.
Was meinst du mit größerer Stückzahl? Wenn du das in einem kommerziellen Produkt verwenden willst würde ich dringend empfehlen den korrekten Treiber zu verwenden. Fürs Basteln könnte es mit dem CAN Transceiver gehen, evtl. musst du an CAN-H einen Pull-Down anklemmen, damit im Rezessiven Zustand ein eindeutiger Buspegel anliegt. Im Unklaren bin ich mir beim "Send Enable" Anschluss des RS485 Treibers, so was gibt es bei CAN eigentlich nicht. Probieren geht über studieren... Ich habe mal kurz die Pinbelegung der von uns verwendeten Transceiver für CAN und RS485 verglichen - sind auf den ersten Blick nicht Pinkompatibel. Ein einfaches austauschen der Treiber wird vermutlich nicht funktionieren. Am besten im Laxout eine Bestückungsoption vorsehen.
CAN: http://www.can-cia.org/index.php?id=systemdesign-can-physicallayer#c2068 ISO 11898-2 high speed [...] The characteristic line impedance is 120 Ohm, the common mode voltage ranges from −2 V on CAN_L to +7 V on CAN_H. [...] -> Spannung von -2V bis +7V RS 485: http://www.ti.com/lit/an/slla070d/slla070d.pdf -> Spannung von -7V bis +12V Comparison: http://www.ixxat.com/download/artikel_20105_can-vs-rs485_e.pdf
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.