Forum: Mikrocontroller und Digitale Elektronik CAN: TJA1043 aufwecken


von Seppel (Gast)


Lesenswert?

Hallo,

kann ich den TJA1043 nur mit dem Wake-Pin oder dem "Wake-Up-Pattern" 
aufwecken?

Wenn der im "Sleep-Mode" ist kann ich den auch über STBN = H und EN = H 
in den Normal-Mode bringen, oder?

Vielen Dank, Grüße, Seppel

von Rudolph R. (rudolph)


Lesenswert?

Im Datenblatt ist doch das State-Diagramm, Sleep auf Normal Mode ist 
STBN = H und EN = H, korrekt.

von Alexander (alecxs)


Lesenswert?

Ich häng mich mal hier rein. Wie sieht denn dein fertiger Schaltplan 
aus? Frage weil ich ähnliches auch vor habe. Ich möchte über CAN Traffic 
wecken. Was nimmst du für VBAT?

: Bearbeitet durch User
von Seppel (Gast)



Lesenswert?

Hallo,

naja, nur die Empfehlung aus der App-Note/Datenblatt,... über Feedback 
bin ich immer dankbar.

Grüße, Seppel

von Seppel (Gast)



Lesenswert?

Hier der Teil für die Spannungsregler-Steuerung, .. auch keine 
Raketenwissenschaft.

von Alexander (alecxs)


Lesenswert?

Okay danke. Für mich ist aber alles Raketenwissenschaft. Mit dem ersten 
Bild kann ich was anfangen, also VBAT mit Vorwiderstand direkt an die 
Autobatterie und einen Kondensator dazu. Verstehe zwar nicht das wieso 
weshalb warum oder wie das berechnet wird aber die Bauteile würde ich 
einfach so kaufen (leider nur online kaufen, Conrad hat zu).

R2100 1k8 = 1.8 kOhm?
C2101 4n7 = 4.7nF

Das zweite Bild verstehe ich nicht. Ich habe als CAN Transceiver 
AMIS-41683 und als Spannungsregler TLE4271 gekauft. Die 3.3V nehm ich 
dann vom Mikrocontroller. Ich würde da also nur INH mit INH verbinden 
und vielleicht noch einen Pull-Down Widerstand dazu. Wozu hast du Dioden 
verwendet?

Achso und was ist das für ein Programm mit dem Du das gemalt hast?

von Alexander (alecxs)


Lesenswert?

Noch eine Frage zu STB und EN. Wenn der Transceiver geweckt wird, setzt 
er die dann automatisch HIGH oder muss das der µC machen (der über INH 
ebenfalls erstmal geweckt wird)? Ich würde die am liebsten floaten 
lassen damit er sich von allein wieder schlafen legt, bin mir aber nicht 
sicher ob das so funktioniert.

In den Application Hints steht nur, wenn der µC per CAN Message 
Anweisung erhält, kann er den Transceiver mit STB und EN abschalten. Ob 
das ein KANN oder ein MUSS ist konnte ich nicht herauslesen. Letzteres 
wäre ungünstig da ich die CAN Message nicht kenne. Über's einschalten 
steht da gar nichts.

Bedeutet, einmal geweckt = für immer wach?

: Bearbeitet durch User
von Alexander (alecxs)


Lesenswert?

Was bedeutet active-low input pin (STB not) ist der negiert d.h. 0V = 
HIGH und muss ich einen Pull-up Widerstand benutzen und 3.3V = LOW 
selbst erzeugen?

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


Angehängte Dateien:

Lesenswert?

Alexander schrieb:
> 0V = HIGH ... und 3.3V = LOW
Nein. Es gilt auch bei "active-low" weiterhin: Low = 0V und High = Vcc.
Es wird lediglich die Funktion mit Low-Pegel statt mit High-Pegel 
aktiviert.

> Was bedeutet active-low input pin (STB not) ist der negiert
Du musst Low-Pegel (0V) anlegen, um den Standby zu aktivieren. Steht so 
aber auch im Datenblatt.

: Bearbeitet durch Moderator
von Andrew T. (marsufant)


Lesenswert?

Alexander schrieb:
> Was bedeutet active-low input pin (STB not) ist der negiert d.h. 0V =
> HIGH und muss ich einen Pull-up Widerstand benutzen und 3.3V = LOW
> selbst erzeugen?

Ja.

Und bitte lies unter nxp.com die AH1014, BEVOR Du hier weiter fragst.
Denn das hilft Dir 99,9% Deiner Themen vorab konkret zu beantworten.

von Alexander (alecxs)


Lesenswert?

Das ist komisch sobald ich VBAT anlege schaltet er INH ein. STB_N ist 0V 
und wenn ich 5V drauf gebe schaltet er INH aus (und bleibt aus bis ich 
ihn über WAKE wecke). Gut ich hab jetzt einen TJA1055 zum testen aber 
sollte sich genauso verhalten.

Hab leider noch keinen Code gesehen wie die Pins im Mikrocontroller 
letztendlich gesetzt werden, aber danke trotzdem ich probiere noch mal 
rum was mehr Sinn macht.

Ansonsten funktioniert die Schaltung soweit.

P.S. die Application Hints lese ich täglich hoch und runter, aber so 
richtig hab ich noch nicht gefunden wo das steht, ob er nach einer Weile 
automatisch in Sleep geht. Ich hätte erwartet INH ist erstmal LOW wenn 
ich Hauptversorgung anschließe, also alles aus und nur Bereitschaft. Ich 
habe auch einen Pull-Down 180k für INH, möglicherweise zu groß gewählt?

P.P.S. *invertiert (nicht negiert)

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


Angehängte Dateien:

Lesenswert?

Andrew T. schrieb:
> Alexander schrieb:
>> Was bedeutet active-low input pin (STB not) ist der negiert d.h. 0V =
>> HIGH und muss ich einen Pull-up Widerstand benutzen und 3.3V = LOW
>> selbst erzeugen?
> Ja.
Sicher? Hast du gesehen, dass der Alexander da im Text "HIGH = 0V" und 
"LOW = 3V3" geschrieben hat?

Das Datenblatt definiert HIGH und LOW so, wie man es intuitiv tun würde:
LOW = 0V und HIGH = 3V3 (bzw. Vio)

Alexander schrieb:
> STB_N ist 0V und wenn ich 5V drauf gebe
Was jetzt? Mal schreibst und 3V3 und mal 5V? Was ist das für ein 
Mischmasch?

Alexander schrieb:
> Gut ich hab jetzt einen TJA1055 zum testen aber sollte sich genauso
> verhalten.
Das Datenblatt beschreibt das Verhalten des Bausteins und die 
Anforderungen an die Peripherie ausführlich. Halte dich daran.

von Andrew T. (marsufant)


Lesenswert?

Alexander schrieb:
> Gut ich hab jetzt einen TJA1055 zum testen aber
> sollte sich genauso verhalten.

Natürlich verhält sich der 1055 anders als ein 1043.
Sieht man schon auf den ersten Seiten des Datenblattes -- Lothar hat Dir 
ja schon empfohlen was zu tun ist (wenn Du jemals zum Ziel kommen 
willst).

von Alexander (alecxs)


Angehängte Dateien:

Lesenswert?

3.3V + 5V Mischmasch kommt vom TJA1055T/3 da kann ich nix dafür. Die 
Hardware ist gemäß Datenblatt beschaltet, Schaltung schon fertig. Mir 
ging's nur um die Programmierung von STB und EN, die sollte sich genauso 
verhalten wie bei anderen CAN Transceivern von NXP. Wecken klappt, 
schlafen schicken irgendwie auch (invertiert), nur geht er eben nicht 
von selbst schlafen.

Beitrag "Re: CAN: TJA1043 aufwecken"

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


Angehängte Dateien:

Lesenswert?

Alexander schrieb:
> FTCAN.PDF
Das Schaltplanmakro des TJA1055 ist wirklich übel gezeichnet: Das 
Schaltplanmakro sollte nicht wie das Layout-Makro aussehen, sondern nach 
Signalfluss oder Funktion gezeichnet sein.

Die Signale links und rechts des Negierungspunktes am Makro heißen in 
deinem Schaltplan gleich (aus STB wird nach der Negierung wieder STB). 
Kein Wunder, dass du selber über diese Negierung stolperst...

Ich würde in deinem Fall einfach die Negierung weglassen und sowohl den 
Pin als auch das Signal den Namen "STBn" oder "STB#" oder wie im 
Datenblatt des TJA1043 "STB_N" geben.

BTW1: man fährt nicht mit Signalen quer durch Bauteile hindurch (K5, K1, 
K4, IC1)

BTW2: vor deine TVS-Diode T3 muss eine Sicherung, die im Fehlerfall 
auslöst, noch vor die Siliziumschmelze in der TVS-Diode beginnt. Derzeit 
übernimmt die D1 diese "Sicherungsfunktion".

BTW3: ich würde die 12V mit mehr als nur 10µF puffern. Ist der C4 
tatsächlich ein Elko mit 470nF?

Alexander schrieb:
> hab jetzt einen TJA1055 zum testen aber sollte sich genauso verhalten.
Wie kommst du auf dieses dünne Brett? Die beiden Transceiver beiden 
verhalten sich grundlegend anders.

Alexander schrieb:
> nur geht er eben nicht von selbst schlafen.
Korrekt, das tut der TJA1055 laut seinem Datenblatt auch nicht. Du musst 
immer über das goto-sleep Kommando nach sleep gehen.

: Bearbeitet durch Moderator
von Alexander (alecxs)


Lesenswert?

Die Hauptversorgung ist extern abgesichert, das hat auf der Platine 
nichts zu suchen. Zu den Dioden hat mir Seppel leider nicht mehr 
geantwortet, also habe ich es so gemacht wie von einem anderen Helfer 
vorgeschlagen.

Der Elko C4 ist genauso ein Tantal wie auf dem Arduino drauf, davor 
sitzt aber ein richtiger Elko C12.

Ich bin froh dass ich überhaupt ein Programm zum malen gefunden habe, 
weiß nicht mal was ein Schaltplanmakro ist.

Die Ansteuerung via STB und EN sollte sich genauso verhalten, nicht der 
ganze Baustein (hab ich auch nie behauptet). Ich hab nur einen Pin ob 
der nun STB oder STB_N heißt ist mir wurscht, wollte nur wissen ob der 
invertiert ist. Ich finde es unnötig verwirrend beide Bezeichnungen 
gleichzeitig zu verwenden.

Lothar M. schrieb:
> Korrekt, das tut der TJA1055 laut seinem Datenblatt auch nicht. Du musst
> immer über das goto-sleep Kommando nach sleep gehen.

Dann ist ja alles geklärt, danke. Das war die entscheidende Information 
die mir fehlte.

_Switches off the INH pin after a certain time out to disable the 
external voltage regulator_

Ich habe das "certain time" des Go-to-Sleep Kommandos mißinterpretiert, 
bzw. hatte die falsche Vorstellung im Kopf wie der Baustein meiner 
Meinung nach funktionieren sollte.

: Bearbeitet durch User
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.