Hallo zusammen, ich interessiere mich schon länger für den CAN-Bus. Bei meinen Recherchen bin ich auf viele Doktor-Arbeiten gestoßen, in denen erklärt wird, wie ein Frame aufgebaut ist, dass das ganze irgendwie zeitgesteuert ist usw. Nirgendwo ist aber ein konkretes Kommunikationsbeispiel beschrieben, oft wird von CAN-Treibern gerdet undundund. Von Atmel gibt es ja offenbar AVR's mit leistungsfähigem CAN-Interface. Aus dem Datenblatt werde ich nicht so wirklich schlau, das ist sehr sehr mühsam. Hat jemand eine guten Informationsquelle, in welcher beschrieben wird, wie man den CAN-Bus zusammen mit AVR's benutzt oder evtl. wie er überhaupt GENAU funktioniert? Am besten sind natürlich deutsche Dokumente, aber ich lese auch gern Englisches mfg Florian Glaser
Hmm, ich schreibe gerade was für den at90can128. Datenblatt ist ein bisschen wirr, da wirst du aber nicht drum rum kommen. Ich hab mir eigentlich alles aus dem Datenblatt zusammengepfriemelt und kann dir eventuell bei Fragen helfen. Vielleicht kannst du mit diesen Links was anfangen: http://www.canhack.de/ http://www.can-cia.org/ http://www.canathome.de/ http://www.kreatives-chaos.com/artikel/can http://can-wiki.info/ http://www.mikrocontroller.net/attachment/10813/can.c http://www.me-systeme.de/canbus.html viel Sapps und Gervnügen
Danke, vor allem http://www.me-systeme.de/canbus.html hat mich sehr viel weitergebracht. Dort ist alles echt gut erklärt. Wenn noch jemand was weiß, immer her damit ;)
...was ist schlecht an der CAN-Spezifikation (z.B. hier erhältlich: http://www.semiconductors.bosch.de/en/20/can/3-literature.asp), dass die keiner empfiehlt?
Da war ich auch schon. Das ist wie ich finde sehr schwer zu verstehen. Ich versuche es dennoch noch einmal.
Bei http://www.me-systeme.de/canbus.html sollte man freilich mit einrechnen, dass die Arbeitsweise des CAN-Drivers falsch beschrieben ist.
Über die Transitoren des CAN-drivers steht dort: dominant: CANH aus, CANL an, rezessiv: CANH an, CANL aus. Korrekt ist: dominant: beide Transistoren sind an, rezessiv: beide Transistoren sind aus.
Ich haenge mich mit meiner Frage gleich mal mit dran. Braucht man fuer den Can Bus wirklich noch CAN-GND zwischen den Teilnehmern oder reicht es die Teilnehmer nur mit CANH und CANL zu versorgen ? Alex
Es reichen canl und canh. Wahrscheinlich wirds mit zusätzlichem Gnd unempfindlicher, aber laufen tut es auch ohne.
Kann mir jemand sagen, wo man das zugehörige header-file zum oben aufgeführten attachment-link zu can.c findet? der link lautet: http://www.mikrocontroller.net/attachment/10813/can.c und wurde von ozo gesendet.
>Es reichen canl und canh. Wahrscheinlich wirds mit zusätzlichem Gnd >unempfindlicher, aber laufen tut es auch ohne. Jein! Die Erfahrung zeigt, dass es auch ohne GND laufen KANN. Obwohl CAN ein differentielles Signal ist wird GND doch als Bezugspotential für die Transceiver benötigt und MUSS deshalb verbunden werden.
@ARM-Fan: Wenn man sich in solche Fragen stürzt, sollte man sich die Devices doch etwas näher ansehen. Ein CAN Receiver ist kein reiner MOSFET-Eingang, der nur Spannungen misst. Da ist mehr dran. Nur kriegt man das in den meisten Datasheets nicht zu sehen. Daher empfehle ich für diese Frage das Datasheet vom Texas Instruments Transceiver SN65HVD230. TI hat nämlich die oft hilfreiche Angewohnheit, die direkte interne Beschaltung der I/O-Pins zu dokumentieren. Und da kann man erkennen, dass man bei potentialgetrennten Gegenstellen keinerlei GND-Signal benötigt, weil die Anschlüsse mitnichten frei in der Luft hängen. Und wenn sie nicht potentialgetrennt sind, dann hat man ein Bezugspotential. Bei denn dann nur die Frage bleibt, ob ein möglicher Potentialunterschied im Rahmen des Fangbereichs des Receivers bleibt.
Anbei die vereinfachte Darstellung eines CAN-Receivers bei getrenntem Potential von Transmitter und Receiver, also ohne gemeinsame Masse. G1/S1 ist eine Ersatzdarstellung für den aktiven CAN-Transmitter des Senders, R2 ist der Busabschluss.
> Obwohl CAN ein differentielles Signal ist wird GND doch als > Bezugspotential für die Transceiver benötigt und MUSS deshalb > verbunden werden. Das ist mit nichten so. GND könnte unter Umständen sogar die Verbindung negativ beeinflussen.
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.