mikrocontroller.net

Forum: Mikrocontroller und Digitale Elektronik CAN-Bus Leitungspegel


Autor: squall (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Da ich trotz ausführlicher Google Nachforschungen noch immer nicht 
dahinter gekommen bin wie es sich mit den Pegeln auf den CAN Leitungen 
verhält, will ich es mal hier versuchen. Mein Problem ist, dass ich 
trotz dem Blockschaltbild des CAN Controllers (z.B. PCA82C250) mir die 
Pegel auf den Leitungen nicht vorstellen kann.

Wenn ich nun einmal vom einfachsten Fall mit lediglich 2 Geräten am Bus 
ausgehe.Wenn zu Anfang sich beide im High Impedance Zustand befinden, 
welche Pegel habe ich dann auf CAN-L und auf CAN-H? Müssen irgendwelche 
Pullup bzw. Pulldown Widerstände am Bus angebracht werden damit die 
Sache funktioniert oder wo steckt das Geheimnis?

Danke schonmal für die Hilfe!

Autor: A.K. (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Ohne Abschluss geht es nicht. Und es zählt die Differenz zwischen CANH 
und CAHL, nicht der absolute Pegel. Jedenfalls solange sich das in 
Grenzen hält.

Recessive: Alle Treiber offen, d.h. CANH=CANL, Differenz 0.
Dominant: CANH=high, CANL=low, Differenz entsprechend gross.

Autor: A.K. (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
PS: Es ist der Abschluss, der bei "recessive" für den ausgeglichenen 
Pegel sorgt. Pullup/down sind deshalb weder sinnvoll noch zulässig.

Autor: squall (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Danke erstmal für die schnelle Antwort!

Das es um die Differenz der Pegel geht weis ich, nur konnte ich mit der 
Tabelle auf

http://www.me-systeme.de/canbus.html

nur nichts Anfangen. Laut dieser ist im Dominanten Zustand CANL auf Low 
und CANH floating da der Transistor gegen VCC geöffnet sein soll. Aber 
mit deiner Erklärung is es sonnenklar. ^^

Damit brauche ich lediglich den Abschlusswiderstand und keine Pullup 
bzw. Pulldown Widerstände, sehe ich das richtig?

Autor: Obelix (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Pullup/-down entsprechen nicht der Bosch-Spezifikation, ABER es ist sehr 
wohl sinnvoll. Man kann damit den Signalpegel abstand vergrößern. Nicht 
umsonst wird im VW-Konzern mit Pullup/-down Widerständen in den 
CAN-Leitungen gearbeitet.

Autor: A.K. (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
> Damit brauche ich lediglich den Abschlusswiderstand und keine Pullup
> bzw. Pulldown Widerstände, sehe ich das richtig?

Korrekt. Im Unterschied zu RS485 ist der ausgeglichene Ruhepegel bei CAN 
ein sauber definierter Zustand.

Obelix mag recht haben, dass etwas "Gegenspannung" per Pullup/down den 
Störabstand vergrössern kann, d.h. bei "recessive" ist dann CANH<CANL. 
Aber vergiss das. Sowas wird erst interessant, wenn du in stark 
versauter Umgebung arbeitest.

Autor: squall (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Wie werden diese denn dann eingeschaltet? Ein Pullup auf CANH und ein 
Pulldown auf CANL würde ja zu einer Differenzspannung im Recessive 
Zustand führen. Oder wird nur z.B. ein Pullup auf CANH verwendet?

Bei den Abschlusswiderständen ist es ja klar, dass sie an den 
Leitungsenden gebraucht werden. Wo würden diese Pullup/-down Widerstände 
angebracht werden?

Autor: squall (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
ok, war zu langsam, hast meine Frage schon beantwortet

thx

Autor: A.K. (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Empfehlung: Application Note 228 von Microchip.

Autor: Obelix (Gast)
Datum:
Angehängte Dateien:

Bewertung
0 lesenswert
nicht lesenswert
Das sieht dann so wie im Bild aus. Es wird dann kein Terminator 
eingesetzt.

Autor: A.K. (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Damit liegt man allerdings bei PCA82C25x und MCP2551 ausserhalb der 
Spezifikation, denn die definieren CANH-CANL nur innerhalb von 
-1,0V..+5,0V, hier aber sind es -5,0V.

Autor: squall (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Habe mir jetzt die Application Note 228 etwas angesehen es sieht so aus, 
als ob das ziemlich genau das ist, was ich gesucht habe. Werde es mir 
morgen nocheinmal genau ansehen. Danke auf jedenfall für eure Hilfe.

Autor: Obelix (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
@A.K.

Wie kommst du auf -5V ??? Wo sollen die denn her kommen?
Bei den Maximal zulässigen Spannungen an den Pins wird die Spannung 
gegen Masse gemessen und nicht differenziel.

Autor: A.K. (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Die Differenzspannung CANH-CANL. Siehe Datasheet PCA82C250, S.6, 
Vdiff(r).

Autor: Obelix (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Nach dem Datenblatt hast du wohl recht. Was setzt den der VW-Konzern für 
CAN-Tranciever ein?

Oder ... Das im Datenblatt ist so zu interpretieren, dass der PCA82C250 
ab diesen Pegeln Recessive bzw. dominant erkennt.
Wenn man sich beispielsweise nur zum Vergleich mal VIL anschaut, dann 
steht da ja -0,3V bis 0,3Vcc. Das ist der Bereich wo der Chip sicher 
Low-Pegel erkennt. Der Chip geht deswegen aber nicht über 0,3Vcc kaput. 
Dazu gibt es ja die Limiting Valus auf Seite 5. Da taucht Vdiff aber 
nicht mehr auf. Auch nach Bild 11 sehe ich keinen Grund, warum der Chip 
das nicht verkraften sollte.

Naja, ist auch egal, ich habe das so im Einsatz und es funktioniert seid 
Jahren wunderbar.

Autor: A.K. (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
> Was setzt den der VW-Konzern für CAN-Tranciever ein?

Dein Bild zeigt eben den PCA82C250.

Sicher, kaputt geht er ausserhalb davon nicht, und es ist auch kaum 
anzunehmen, dass die Pegelerkennung plötzlich umkippt. Es wird wohl eher 
so sein, dass diese Range so aus der CAN Spezifikation abgeschrieben 
wurde.

Autor: Obelix (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Was in meinem Schaltplan ist weis ich wohl :-), aber was setzt VW ein?

Autor: Michael (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
TJA1054 oder TLE6245.

Autor: Michael (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Terminierung 560Ohm

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.