Forum: Mikrocontroller und Digitale Elektronik Max3051 will nicht


von FloF (Gast)



Lesenswert?

Hallo Forum,

ich habe eine selbstgestrickte CAN-Platine (im Anhang, siehe 
Beitrag "Platinenkritik Hausbus/CAN Eingang" , RXD und TXD sind 
hervorgehoben), Prototyp 0.1, und bekomme den CAN nicht zum laufen.

Loopback-Modus geht, mein Logicanalyzer sagt: auf TXD am MAX3051 kommt 
noch ein Signal an, aber CANH und CANL bleiben auf ~2.5V und RXD bewegt 
sich nicht. RXD müsste aber doch zu mindestens TXD spiegeln.

Um auszuschließen dass ich das Datenblatt im Hinblick auf die Pins RS 
(Slope Control) und SHDN (Offline/Stromsparmodus) falsch lese, habe ich 
ein Programm geladen, dass alle 8 möglichen Muster an den Eingangspins 
TXD/RS/SHDN anlegt und je 2s wartet. RXD ist dabei am Mikrocontroller 
als Eingang ohne PullUp oder PullDown konfiguriert (PullNone in 
mbed-Speak).
RXD bleibt dabei konstant auf 3.3V.

Der Bus ist in diesem Test bis auf den 120 Ohm Widerstand und die 
TVS-Diode nicht verbunden.

Das Phänomen beobachte ich mit beiden meiner Testplatinen.

Also entweder ich verstehe Tabelle 1 im Datenblatt und was ein 
CAN-Transreceiver macht falsch, oder beide Chips sind defekt (oder 
gefälscht, waren von Aliexpress?).

Kann ich die gebraten haben indem ich mit dem STM32 gegen RXD getrieben 
habe? (Wobei das Datenblatt sagt RXD to GND -0.3 bis +6 V).

VCC und GND scheinen korrekt anzuliegen, TXD, RS und SHDN wechseln auch 
schön wie es der MC vorgibt.

Hat jemand noch einen Debugvorschlag für mich?

Gruss
FloF

von FloF (Gast)


Angehängte Dateien:

Lesenswert?

FloF schrieb:
> RXD und TXD sind
> hervorgehoben

Sorry, Eagle exportiert die Hervorhebung nicht, jetzt von Hand.

von Florian F. (flof3000)


Lesenswert?

Tja, auch ein frisches PCB mit frischem MAX3051 zeigt das gleiche 
Verhalten.
Ich hab auch noch mal 47k an RS gehängt, gibt dann ca 1.7 V an RS (was 
zu einer Slew Rate von ca 6V/us führen sollte).

Narf :(

von AufArbeit (Gast)


Lesenswert?

RX und TX vertauscht?

von Florian F. (flof3000)


Lesenswert?

Nicht laut Datenblatt.

CANL auf GND ziehen (ueber 3.3kOhm) zieht CANL auf .2 V, CANH auf 1.6, 
RXD reagiert nicht.

Ich messe auch keinen 75k PullDown an SHDN.
Verdächtig.

von Florian F. (flof3000)


Lesenswert?

Kann es sein dass der MAX3051 einen Art Bus-Schutz hat und Low signale 
ab einer gewissen Länge wieder ignoriert? Habe gelesen dass andere 
CAN-Transreceiver sowas haben, kann aber im Datenblatt nix dazu finden.

von Ludger (Gast)


Lesenswert?

Hallo Florian,

ich hab noch nie Probleme mit dem Teil gehabt.
Ich mess 72k von pin 2 nach pin 5.
Vieleicht falsch herum eingebaut ?
Kann ja mal vorkommen...


Ludger

von Lothar M. (Firma: Titel) (lkmiller) (Moderator) Benutzerseite


Lesenswert?

Was ist denn das für ein Suchbild mit dem GND und der Vcc?
Wie auch immer: die LED1 wird mit an Sicherheit grenzender 
Wahrscheinlichkeit niemals leuchten...

FloF schrieb:
> Um auszuschließen dass ich das Datenblatt im Hinblick auf die Pins RS
> (Slope Control) und SHDN (Offline/Stromsparmodus) falsch lese
Die gehören zur sicherhaiet beide auf GND. Später kannst du noch mit dem 
Slope-Widerstand herumspielen...

Ludger schrieb:
> Vieleicht falsch herum eingebaut ?
Ein Foto wäre in der Tat interessant...

: Bearbeitet durch Moderator
von Florian F. (flof3000)


Angehängte Dateien:

Lesenswert?

Wenn's denn sein muss, anbei ein Schnellschuss mit der Handykamera.

Das LED1 im Schaltplan falsch herum ist ist bekannt.
Aber es nutzt ja wenig, wenn ich den neuesten Schaltplan statt den der 
zu dieser Platine passt poste.

RS und SHDN liegen auf Pins des MC, und werden auch auf GND gezogen.

von Florian F. (flof3000)


Lesenswert?

Ich hab dann mal neue bei Mouser bestellt... und gleich noch ein paar 
SN65HVD232DR.

von Alex S. (thor368)


Lesenswert?

Tach,
korrekt RS und SHDN auf Masse. RX und TX sind hardwaretechnisch korrekt 
angeschlossen. Jetzt muss nur noch die GPIO config im STM stimmen. RX 
verhält sich korrekt, wenn es Hi bleibt. Es spiegelt nämlich nicht TX 
sondern den BUS. Wenn der nichts macht dann ist RX = Hi OK. Der MAX3051 
hat soweit ich weiß keinen watchdog um hängende master vom Bus zu 
trennen. Allerdings macht der CAN controler im STM das.

Diese chips sind zu simpel als das man die nicht zum laufen bekommt. 
Dein Problem liegt vorher. Meine Vermutung ist, dass du Probleme mit 
deinem CAN controler hast. Der loopback mode ist keine ausreichende 
Bestätigung, dass der controler sachgemäß arbeitet.

Ich würde empfehlen TX manuell mit der angepeilten bitrate zu toggeln 
und mal nachschauen was der transceiver macht.

Thor

von Florian F. (flof3000)


Lesenswert?

Hallo Thor, danke fuer Deine Analyse.

Genau das hab ich zuletzt gemacht, TX mit 10kHZ (und auch einmal mit 
1Hz) getoggelt, weder der Bus noch RX machen irgendwas.
Das kann laut Datenblatt nicht sein, wenn der Bus abgekoppelt ist, muss 
nach Tabelle 1 RX TX widerspiegeln.

Auch das der interne Pulldown zwischen GND und SHDN fehlt deutet 
vermutlich darauf hin, dass ich hier Tand mit MAX3051 Beschriftung 
gekauft habe.

Ich warte jetzt mal die Mouserlieferung ab, in der sind ja dann 
hoffentlich funktionierende MAX3051, und wenn die immer noch nicht 
wollen, der noch simplerer SN65HVD232 - der hat ja dann 0 Extras.

Gruss
FloF

von Alex S. (thor368)


Lesenswert?

Mhh, OK. Was auch immer und wo auch immer du da gekauft hast...

Kann es vielleicht sein, dass das ein MAX13051 ist? Funktional fast das 
selbe chip aber für 5V.

Thor

von Florian F. (flof3000)


Angehängte Dateien:

Lesenswert?


: Bearbeitet durch User
von Florian F. (flof3000)



Lesenswert?

So, die Mouser MAX3051 sind da, und funktionieren!

Anbei ein paar der Bilder, die Chips sehen auch sehr unterschiedlich 
aus:
(die Bilder sind mit dem gleichen Licht etc gemacht - der Chinachip 
lässt sich wirklich so bescheiden lesen. Ich hab auch den Eindruck dass 
Isopropanol zum Flussmittel-entfernen die Beschriftung noch schlechter 
macht).

-Original: Lasergravur. China: Schlechter Siebdruck
-Original: Einkerbung am Pin 1, Pin 1-Punkt Lasergraviertes Kreuz. 
China: Keine Einkerbung, Pin1-Punkt als Vertiefung im Gehäuse.
-Original: Rückseite Lasergraviert, M Phili-ppines BF. China: 
Eingeprägt, THAILAND OII, mit einem J in der Mitte

von Bad U. (bad_urban)


Lesenswert?

Da sieht man wieder mal... Wer billig kauft, kauft zweimal. Aber schön, 
dass Deine Schaltung jetzt funktioniert.
Vielleicht funktionieren die China-Teile ja doch und die haben die Pin 1 
Markierung nur falschrum draufgemacht?

von Florian F. (flof3000)


Lesenswert?

@Bad Urban: Dann käme aber kein rezessiver CAN Pegel aus den erwarteten 
Pins. Und der erwartete Pulldown ist anders herum auch nicht da.

Und billig: Nein. Die Dinger haben 1.593 USD / Chip inkl. Versand 
gekostet.
Bei Mouser hab ich jetzt 1.470 EUR / Chip bezahlt - musste aber deutlich 
mehr Kram abnehmen um keinen Versand zu zahlen.
(beide Zahlen ohne Einfuhrumsatzsteuer).

Das ist jetzt kein Preisunterschied wo man direkt erwarten muss 
Fälschungen zu erhalten.

von Bad U. (bad_urban)


Lesenswert?

Ah, OK.
Ich dachte wegen dem Preis. Den Max kenn ich jetzt nicht, aber 
CAN-Transceiver in SO8 bekommt man ja überall als Einzelstück.

Hab grad gesehen, dass es ein 3,3V Transceiver ist. Die sind wohl etwas 
seltener.

: Bearbeitet durch User
von Florian F. (flof3000)


Lesenswert?

@Bad Urban: Prinzipiell ja, aber 3.3V sind schon schwieriger.
Reichelt hat mittlerweile den SN65HVD230D und SN65HVD231D im Programm. 
Nur da muss man aufpassen, der 0D kann Standby (Listen Only), der 1D 
kann Sleep (=tiefschlaf) und der 2D kann weder noch und und verbrät 
10mA. Der Max3051 kann das halt alles in einem und verbraucht typisch 2 
statt 10 mA (recessive, 5 vs 17 mA max).

Beim Senden hingegen braucht der Max typisch 35, max 70 mA, der ST nur 
10-17. Da stimmt irgendwas im Datenblatt aber auch nicht, 1 Volt 
unterschied gegen 60 Ohm gibt nach URI nur 16.6 mA. Vielleicht kann der 
Max gegen widrigere Umstände antreiben.

von Florian F. (flof3000)


Lesenswert?

Und hier ist was Maxim dazu sagt:

"The company ShenZhen McNair Nordson Electronics is NOT an authorized 
reseller of Maxim parts. The pictured parts from them are counterfeit. 
None of the markings on the parts match any lots we manufactured."

von Bad U. (bad_urban)


Lesenswert?

Da hast Du dir ja schon eine gute Übersicht angelesen. 
Leistungsmessungen stehen bei mir auch noch aus. Aber erstmal müssen ein 
paar andere Sachen fertig werden.

von Florian F. (flof3000)


Lesenswert?

Der Chinese sagt sein Lieferant hätte ihm echte teile garantiert, und er 
würde da jetzt nach bohren...

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.