MCP2515 Eingänge absichern

Gast #2518753
Lesenswert?

Liebe Comunity,

ich möchte einen MCP2515 als CAN-Controller nutzen. Angesprochen wird er 
per SPI von einem ATMega 16.
Da es sich um ein Batteriebetriebenes Gerät handelt, möchte ich den 
kompletten CAN-Teil abschaltbar machen. Gelöst habe ich das mittels 
eines P-MOS in der Zuleitung der Versorgung.

Nun zur eigentlichen Frage:

Wie muss ich die SPI-Leitungen von AVR->MCP2515 gestalten, damit andere 
Geräte am SPI nicht beeinflusst werden, wenn der CAN-Teil inaktiv ist. 
(Stichwort: "Clamping Diode") Reichen einfach 10k Längswiderstände vor 
jedem Eingang?

Bitte um Rat.
Gast #2519209
Lesenswert?

>Push
>Ich wollte nicht das er nach 2Stunden schon untergeht. Würde mich sehr
>freuen wenn mir jemand einen Tipp gibt, wie die Eingänge zu behandeln
>sind

Sonst gehts noch oder was?

Wenn hier jeder der nach 10 Minuten keine Antwort
bekommen hat rumpusht, dann hätten wir hier nur noch PUSH.

Also übe dich in Geduld. Dein dringendes Problem ist für
andere nicht dringend.

PS: Anderen Controller nehmen und SPI über USART machen.
Wenn du deinen Chip abschaltest dann SPI deaktivieren
und Leitungen auf Eingänge setzen. Fertig.
Gast #2519232
Lesenswert?

Entschuldigung, so sollte es natürlich nicht rüberkommen. War bloß etwas 
gefrustet das der Beitrag gleich mal auf Seite 2 gerutscht ist,...
Ich gelobe aber Besserung.

Ich bin mir nicht sicher, ob ich dich richtig verstanden habe, aber ich 
möchte SPI weiter nutzen während die Versorgung des CAN-Controllers 
deaktiviert ist. Insgesamt hängen vier Slaves parallel am Bus. Und ich 
bin mir nun eben nicht sicher wie ich die Eingänge des MCP 2515 
beschalten muss, damit die Kommuniaktion zwischen AVR und den 3 anderen 
Slaves weiter funktioniert.

Meine erste Idee waren eben Längswiderstände in den SPI-Leitungen für 
jeden Slave zu spendieren.
Aber da weiß ich eben nicht ob das auch tatsächlich geht, oder ob ich da 
einen Denkfehler habe.

Danke
Gast #2519243
Lesenswert?

>Ich bin mir nicht sicher, ob ich dich richtig verstanden habe, aber ich
>möchte SPI weiter nutzen während die Versorgung des CAN-Controllers
>deaktiviert ist.

Dann besorg dir einen Controller mit zwei mal SPI.
Das war das was ich dir sagen wollte.

>Meine erste Idee waren eben Längswiderstände in den SPI-Leitungen für
>jeden Slave zu spendieren.

Im Prinzip geht das schon. 10k sind aber viel zu groß je nach
SPI Frequenz. Bei einem ENC28J60 konnte ich mit 1k maximal
nur noch mit 4MHz arbeiten. Bei einem abgeschalteten Slave
würde das dann aber bei 5V je nach Pegel auf den Leitungen
einen Fehlerstrom von 5mA pro Highpegel verursachen. Da kann
man sich ja mal fragen ob man den Slave nicht besser
eingeschaltet lässt. Ansonsten 74HCT125 in die Leitungen.
#2519445
Lesenswert?

@  Johannes (Gast)

>Wie muss ich die SPI-Leitungen von AVR->MCP2515 gestalten, damit andere
>Geräte am SPI nicht beeinflusst werden, wenn der CAN-Teil inaktiv ist.

Pack Tristate-Treiber in die Leitungen, in beide Richtungen, z.B. 
74HC125. Die gehen auf Tristate, wenn dein MCP ausgeschaltet wird. 
Fettig.

>(Stichwort: "Clamping Diode") Reichen einfach 10k Längswiderstände vor
>jedem Eingang?

Zuviel, eher 1K.

MfG
Falk

P S Uuuups, hat der Holger ja schon geschrieben.
Gast #2519568
Lesenswert?

Warum benutzt Du nicht den Sleep-Mode des MCP2515? Damit benötigt Du 
keinerlei Hardware und den Stromverbrauch von 5uA wirst Du mit 
Komplettabschalt-Logik kaum unterbieten können.

Vom Stromverbrauch gesehen ist der CAN-Treiber eh kritischer, da lohnt 
es sich, nach einem stromsparenden Bauteil zu suchen, ggf. auch mit 
Sleep-Mode bzw. Shutdown-Pin.

Viele Grüße, Stefan
Gast #2519579
Lesenswert?

Oh,....

daran hatte ich bis jetzt garnicht gedacht, das würde natürlich auch 
einiges an Aufwand ersparen.
Da ich mit 3,3V arbeite. Würde der SN 65HVD231 gehen? Der besizt wenn 
ich das richtig sehe auch einen Sleepmode. Da müsste ich doch zusammen 
mit dem MCP2515 im einstelligen µA-Bereich bleiben.

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