Forum: Mikrocontroller und Digitale Elektronik PCA82C251 <-> TJA1041/1042/1043 CAN Bus


von Torben (Gast)


Lesenswert?

Hallo, ich bin mir seit heute etwas unsicher bzgl. meines Verständis zum 
CAN Bus. Auf meiner Platine befindet sich ein PCA82C251 Transceiver und 
auf dem Testgerät ein TJA1042. Mein Verständnis ist das ich beide Geräte 
miteinander verbinden kann und eine CAN Kommunikation nichts im Wege 
steht. Seht Ihr das anders? Hab ich etwas übersehen?

Gruß,

Torben

von Lutz (Gast)


Lesenswert?

Die Busterminierung?

von Torben (Gast)


Lesenswert?

Hallo,

120 Ohm an meiner Platine und am Zielgerät.

Gruß,

Torben

von Lutz (Gast)


Lesenswert?

Dann sollte das funktionieren. Natürlich korrekte Spannungsversorgung 
und Signalquelle (z.B. µC) am jeweiligen Transceiver vorausgesetzt. Der 
Tansceiver setzt ja nur die Logik des Controllers physikalisch auf den 
Bus um.
Woher kommen die Zweifel?

von Torben (Gast)


Lesenswert?

Der PCA laeuft mit +5V und der TJA mit 12V, aber laut meinen Verständnis 
müsste es laufen, weil es sich um ein Differentialsignal handelt.

von STK500-Besitzer (Gast)


Lesenswert?

Torben schrieb:
> Der PCA laeuft mit +5V und der TJA mit 12V, aber laut meinen Verständnis
> müsste es laufen, weil es sich um ein Differentialsignal handelt.

Ja, das ist richtig. Allerdings solltest du auch die Massen miteinander 
verbinden.

von Lutz (Gast)


Lesenswert?

Torben schrieb:
> Der PCA laeuft mit +5V und der TJA mit 12V,

Hm, die laufen beide mit Vcc 4.5 -5.5 V ???

von Torben (Gast)


Lesenswert?

Hallo,

Nein der PCA mit +5V und der TJA1042 mit VBAT 12V und VCCio mit 3,3V.
Zum Testen, ob mein Board (PCA) funktioniert hab ich auch ein Vector 
CANCaseXL angeschlossen. In beiden Fällen krieg ich keine CAN 
Kommunikation. Mit welcher Spannung die Vectorbox arbeitet weiss ich 
nicht.

von Lutz (Gast)


Lesenswert?

Tut mir leid, aber ich weiß nicht, was du meinst.

Ich habe es so verstanden, daß du die beiden o.g. Transceiver hast, die 
jeweils mit ihrem Controller verbunden sind. Beide Transceiver sollen 
dann an einen ordnungsgemäß terminierten Bus angeschlossen werden und 
miteinander kommunizieren. Beide Transceiver haben laut Datenblatt eine 
Versorgungsspannung von 4.5 - 5.5 V. Was die Controller für eine 
Versorgungsspannung haben, ist hier ja egal. Schau dir in beiden 
Datenblättern mal die "typical application" an; dort ist die Beschaltung 
abgebildet.

von TestX .. (xaos)


Lesenswert?

du musst aufpassen! es gibt LOWspeed(12V) und HIGHspeed(5V) CAN 
busse...die kann man nicht einfach verbinden, da es andere signalpegel 
sind!

von Torben (Gast)


Lesenswert?

Hallo,

ok dann muss ich es besser erklaeren.

Meine Platine besitzt den PCA82C251 mit VCC +5V. Das zweite Gerät 
besitzt den Transceiver TJA1042 mit VCC +5V und Vio +3,3V. VBAT gibt es 
bei der IC garnicht und ist mein Fehler, weil ich das Bauteil mit dem 
TJA1041 verwechselt hatte.

Meine Platine mit PCA82C251 arbeitet mit 500k und das Zielgerät 
(TJA1042) werkelt auch mit 500k. Beide Geräte sind mit 120 Ohm 
terminiert.

Nachdem ich mit meiner Platine keine Datenempfangen konnte wurde ein 
CANcaseXL von der Firma Vector angeschlossen, obwohl ich davon ausgehen 
kann das das Zielgerät einwandfrei arbeitet. Selbst mit den Vector Tools 
emfpange ich keine Daten und empfange keine Daten, deshalb hab ich mich 
mit einem Oszi. direkt an meinen AT90CAN128 gehängt auf den TX bin und 
sehe Datenänderungen auf der Leitung, die RX Leitung bekommt keine 
Daten. Wenn ich differential am PCA82C251 an CANH undCANL messe sehe ich 
keine Pegeländerungen. Mein Messaufbau hab ich danach an den Vector Tool 
getestet und messe dort einwandfrei auf CANH und CANL den Datenverkehr. 
Ich dachte das mein RS Pin vielleicht floated bzw. nicht auf Masse 
liegt, aber eine ohmische Messung zeigte eine einwandfreie Verbindung 
zur Masse.

Gibt es noch Möglichkeiten den Transceiver auszuschliessen als 
Übeltäter, den Daten werden auf TXD vom AVR gesendet nur erhalte ich 
keine Daten auf CANH und CANL?

von H.Joachim S. (crazyhorse)


Lesenswert?

Prinzipiell werden beim CAN gesendete Daten auch selbst wieder empfangen 
(Bus-Arbitrierung), d.h. auf Tx gesendete Daten müssen via Transceiver 
auch an Rx messbar sein, sonst ist der Transceiver platt oder falsch 
beschaltet.

von Torben (Gast)


Lesenswert?

Hallo,

zum testen, ob der Transceiver das Problem ist wollte ich eine zweite 
Platine mit gleichen Problem nehmen und auf beiden Platinen den 
Transceiver entfernen, danach möchte ich die beiden AT90CAN direkt ohne 
Transceiver verbinden, siehe unten.


Board1 CANTX -----> Board2 CANRX
Board1 CANRX <----- Board2 CANTX

Spricht etwas dagegen oder sollte so eine Kommunikation funktionieren?

von HolgerT (Gast)


Lesenswert?

Hallo,

ein Schaltplan wäre sehr hilfreich. Ins blaue getippt: Am PCA82C251 den 
Anschluss "8 - Rs /slope resistor input" richtig beschaltet? Sonst wird 
nichts gesendet.
Gruß
-HolgerT

von Torben (Gast)


Lesenswert?

Hallo, das war auch meine erste Vermutung, aber der Pin ist mit einem 
Jumper gegen Masse gelegt. Ich muss ganz ehrlich sagen das ich noch nie 
diesen Transeiver im Einsatz hatte, sondern immer nur 14Pin Automotive 
Versionen und da auf diesen Platinen funktionierte alles auf anhieb.

von hoppel (Gast)


Lesenswert?

> Board1 CANTX -----> Board2 CANRX
> Board1 CANRX <----- Board2 CANTX

Nein das geht nicht, da jeder Controller ja auch
seine eigene Nachricht wieder hoert also der
CAN Tranceiver verbindet ja intern

 Board1 CANTX -----> Board1 CANRX.

Aber so schwer ist das doch nicht einen CAN
Tranceiver richtig zu beschalten. Also zeig uns
deinen Schaltplan sonst wird das nichts mit
weiterhelfen

hoppel

von PICfan (Gast)


Lesenswert?

Tausch mal dein PCA82C251 Transceiver.  Die gehen bei uns öfters Kaputt.

HTH
PICfan

von Torben (Gast)


Lesenswert?

Hallo, die Schaltung kommt nicht von mir und ich möchte mich nicht mit 
fremden Blumen schmücken.

http://www.kreatives-chaos.com/images/206.png

von Torben (Gast)


Lesenswert?

Hallo,

in der Schaltung mit dem PCA82C251 stoplere ich immer über den Ref Pin 
der nicht benutzt wurde.

Ich hab in vielen Projekten erfolgreich den TJA1040 eingesetzt und die 
Beschaltung von der Seite 8 Fig.3 benutzt ohne Probleme. Die 
Widerstandswerte wurde auf die Kabellänge und die auftretenen 
Reflektionen und auf die anderen Teilnehmer ausgerechnet

Könnte das schon mein Problem mit dem PCA sein, dass der REF Pin in der 
Luft hängt?

http://www.nxp.com/documents/data_sheet/TJA1040.pdf

von Josch (Gast)


Lesenswert?

Eine sehr ähnliche Schaltung setze ich seit vielen Jahren ein, ohne 
Probleme, es ist auch noch nie ein PC82C251 abgeraucht.

Unterschiede:
Überspannungsschutz und Gleichtaktdrossel auf CAN-Seite,
Anstatt ADUM1201 ein IL712 (I/O Kanäle getauscht)
Anderer Controller

Vrerf ist offen, Rs ist entweder mit Masse gebrückt (funktioniert 
immer), oder angepasst.

Bleiben noch Probleme in der Versorgung, Kurzschlüsse oder offene 
Verbindungen auf der Platine oder Busverdrahtung, Rterm hat 1,2 Ohm oder 
so.

ISO1050 schon gesehen? Spart etwas Boardspace und ist Failsave, kann 
aber nur bis 500kbit/s.

von hoppel (Gast)


Lesenswert?

Ich habe eine aehnliche Schaltung ebenfalls schon
oefters eingesetzt (mit dem TJA1051) und noch nie
Probleme gehabt. Der ADUM1201 funktionierte bei mir
ohne Probleme, was hast du denn fuer einen DC/DC Wandler
genommen?

hoppel

von Torben (Gast)


Lesenswert?

Hallo,

wie vorgegeben:

http://such002.reichelt.de/?SID=28gr0eHawQARwAAF2FAoAc939232ac1e005de27d489daed75fe91;ACTION=446

Der ADUM1201 macht auch keine Probleme ich kann perfekt das CANTX Signal 
auf dem Ausgang messen, aber aus dem Transceiver kommt nix raus und auch 
nix rein. Ich stehe momentan auf dem Schlauch. Meiner Meinung ist auch 
nicht der Transceiver kaputt, weil zwei PCB's das Verhalten zeigen und 
die Wahrscheinlichkeit das beide defekt sind recht klein sind. Ich werde 
noch einmal die Bestückung prüfen, weil ich die Platinen nicht bestückt 
habe.

Ich bedanke mich recht herzlich für die Anteilnahme, falls jemand noch 
Tipps hat, dann wäre ich demjenigen sehr verbunden.

von hoppel (Gast)


Lesenswert?

> wie vorgegeben:

> http://such002.reichelt.de/?SID=28gr0eHawQARwAAF2F...
Da kommt bei mir nur ne leer Seite, wenn du das bestueckt
hast ist es kein Wunder das es nicht funktioniert ;-).

> Der ADUM1201 macht auch keine Probleme...
Ich bezog mich da eher auf das vorherige Posting mit
dem IL712.

Was mist du den auf dem CAN Bus. Normalerweise
hat der im Ruhezustand so um die 3 - 5 Volt (Can-High)
und 2 bis 3 Volt (Can-Low).

hoppel

von Torben (Gast)


Lesenswert?

Hallo,

Reichelt: SIM1-0505 SIL4

>Was mist du den auf dem CAN Bus. Normalerweise
>hat der im Ruhezustand so um die 3 - 5 Volt (Can-High)
>und 2 bis 3 Volt (Can-Low).

Hierzu muss ich den Messaufbau noch einmal herstellen und werde mich 
persönlich kurz mit Oszi und LA (mit Interpreter) auf den Bus hängen. 
Leider war heute keine Zeit um etwas in dieser Richtung zu tätigen.

Ich wollte in dem Forum andere Leute erreichen die den Transceiver um 
Erfahrungen auszutauschen und einen Tipp zur Fehlersuche zu bekommen.

von Josch (Gast)


Lesenswert?

Warum setzt Du so einen Billig-Wandler ein, der ist nicht wirklich 
kurzschlussfest (hier nicht ganz so wild, da die 5V nicht direkt nach 
aussen gehen) und hat eine schlechte Spannungsregelung.
Wenn ich das schon sehe: 2 Datenblätter, widersprüchlich im 
Betriebstemperaturbereich.

Wenn der 5V +-5% Ausgangsspannung hat und zusätzlich +-8% 
Lastausregelung (eingeschränkte Angabe für 20-100% Last) musst Du 
schonmal einen worst case von +-13% annehmen.
Der PC82C251 erlaubt aber nur 10%, siehe Tabelle 4 im Datenblatt:
  Supply            TXD     CANH    CANL   Bus state RXD
0V<VCC < 4.5 V   floating floating floating floating  X

Prüf mal die Versorgungsspannung, auch mit dem Oszi. Nicht das da der 
erste Pegelwechsel die Versorgung einknicken lässt und der PC82C251 sich 
abschaltet.
Langsame Lastausregelung des DCC, Rs der Drossel und die fehlende 
grössere Kapazität (bei mir z.B. 10µ16 1206, vor und hinter der 
Drossel(Ferrit 0805, der Wandler ist aber auch schöner ;-)) könnten dazu 
beitragen.

von Torben (Gast)


Lesenswert?

Hallo,

>Warum setzt Du so einen Billig-Wandler ein, der ist nicht wirklich
>kurzschlussfest (hier nicht ganz so wild, da die 5V nicht direkt nach
>aussen gehen) und hat eine schlechte Spannungsregelung.
>Wenn ich das schon sehe: 2 Datenblätter, widersprüchlich im
>Betriebstemperaturbereich.

die Schaltung ist nicht meine Entwicklung, sondern ich wollte gerne für 
zu Hause was fertiges nehmen und auf der Homepage gab es relativ viele 
positive Berichte, dass die Schaltung funktionert.

>Wenn der 5V +-5% Ausgangsspannung hat und zusätzlich +-8%
>Lastausregelung (eingeschränkte Angabe für 20-100% Last) musst Du
>schonmal einen worst case von +-13% annehmen.

Danke ein guter Tipp die Spannung vom DC/DC auf Ripple etc. zu prüfen.

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
Noch kein Account? Hier anmelden.