:: High- and Low- Speed CAN...

Gast #258414
Lesenswert?

Hallo,
ich möchte eine Schaltung realisieren, die sowohl an einen
High-Speed-CAN als auch an einen Low-Speed-CAN angeschlossen werden
kann. Ich hatte angedacht dazu einen ATmega16 + MCP2515 + MCP2551
verwenden. Damit wäre die HIGH-Speed-CAN-Seite angedeckt. Was ich nun
noch nicht herausbekommen habe ist, ob die Kombination auch
Low-Speed-CAN-fähig (softwareseitig einstellbar) ist, oder ob ich dazu
einen extra Transceiver bzw. Controller benötige.

Bin für alle Hinweise dankbar...

Viele Grüße
Holger
Gast #258415
Lesenswert?

Hi Holger,

Du kannst den MCP2551 am Pin RS (Slope Control) für verschiedene
Geschwindigkeiten einstellen. Am Besten 2 Wunsch-Baudraten aussuchen,
die Widerstände für RS berechnen und einen davon vom AVR zuschalten
lassen.

Den MCP2515 kannst Du auf so ziemlich jede Baudrate einstellen.

Gruß, Stefan
Gast #258416
Lesenswert?

Die Begriffe High-Speed CAN und Low-Speed CAN sagen nicht (nur) etwas
über die verwendete Baudrate aus, sondern auch über die Terminierung
und die "*Fehlertoleranz*" des Busses (Stichwort Eindrahtbetrieb).
Deswegen kannst du nicht einfach einen HighSpeedTransceiver auf langsam
schalten und an einen LowSpeed-CAN-Bus hängen...

Beispiele für Highspeed CAN-Transceiver: TJA1050, TJA1041, 82C251;
LowSpeed Transceiver: TJA1054...

Ja, du brauchst einen extra Transceiver.

Der SlopeControlPin legt nur die Flankensteilheit des Signals fest -
mehr nicht. Er hat nichts mit den (zugegebenermaßen mißverständlichen)
Begriffen HighSpeed und LowSpeed zu tun.
Gast #258418
Lesenswert?

Vielen Dank schon mal für die Antworten...

Das würde also heissen, ich nehme meinen Mikrocontroller und den
MCP2515. Die Entscheidung ob ich dann einen Low-Speed- oder einen
High-Speed-CAN habe hängt dann von dem verwendeten Transceiver ab.
Gibt es einen Low-Speed und einen High-Speed-Transceiver, die
Pin-kompatibel sind, so dass ich den Transceiver sockeln kann?

Würde ich auf diese Weise (Austausch des Transceivers), auch einen
Single-Wire-CAN realisieren können?

Best,
Holger
Gast #258420
Lesenswert?

> Gibt es einen Low-Speed und einen High-Speed-Transceiver, die
> Pin-kompatibel sind, so dass ich den Transceiver sockeln kann?
Da bin ich überfragt. Aber die "älteren" Highspeedtransceiver, die
ich kenne (82C251...) sind 8pol., der TJA1054 z.B. ist 14pol., d.h. da
ist nix mit Bestückungsoption auf gleichem Footprint. Im Zweifelsfalle
mach einfach einen zweiten Sockel daneben. Oder bastel/kauf dir einen
HighSpeed/LowSpeed-Konverter, den du zwischen dein Gerät und den Bus
hängst.

> Wo sind die Unterschiede in der Terminierung und Fehlertoleranz?
Terminierung:
HighSpeedCan: R zwischen CANH/CANL
LowSpeedCan:  R zwischen CANH/CANL, R zwischen CANH/Vcc und R zwischen
CANL/GND
"Fehlertoleranz"/"fault tolerant" beschreibt die
LowSpeedCAN-Eigenschaft, daß bei Ausfall einer CAN-Leitung der Bus
weiterhin (fehlerfrei) betrieben werden kann (es wird ja neben den
CANH/L-Leitungen auch noch Gnd "mitgezogen"). Bei HighSpeedCAN geht
das nicht.

Aber Stefan hat oben ja schon einen Link gepostet, der das nochmal
ausführlicher beleuchtet. Außerdem lassen sich die Datenblätter und
Appnotes zu den CanTransceiver auch über dieses Thema aus.
Gast #507937
Lesenswert?

Hallo

Sollte man eigentlich zwischen Lowspeed und Highspeed jumpern, oder kann 
man auch beide parallel an den AT90CAN anschliessen und dann 
verschiedene Ausgänge aus den Lowspeed bzw Highspeed Treibern nehmen?
Sprich: Kann man an die TXCAN und RXCAN des AT90CAN gleichzeitig 2 
Treiber anschliessen?

Danke
Gast #1337088
Lesenswert?

@Marco

> Kann man an die TXCAN und RXCAN des AT90CAN gleichzeitig 2
Treiber anschliessen?

Klare Antwort: Nein! Wenn LowSpeed- und HighSpeed-CAN gleichzeitig 
genutzt werden soll (also wenn ein Low-Speed-CAN-Bus und ein 
High-Speed-CAN-Bus zur Verfügung stehen), werden zwei CAN-Controller und 
zwei CAN-Tranceiver (z.B. HS: TJA1050 + LS: TJA1054) benötigt. Die 
meisten Evo-Boards enthalten eine entsprechende Beschaltung, bei der man 
mittels Jumper (oder über Porttreiber) den Transceiver selektieren kann. 
Dann kann man an EINEM CAN-Controller einen HS- ODER an einen LS-CAN-Bus 
betreiben.

Mfg - subitus



___________________

German Engineering...
http://www.baxe.org
___________________

Antwort schreiben

Bitte melde dich an, um einen Beitrag zu schreiben.

oder

Mit Google-Account einloggen

Die Registrierung ist kostenlos und dauert nur eine Minute.

Jetzt registrieren