Forum: Mikrocontroller und Digitale Elektronik Serienwiderstand in den AVR-ISP-Leitungen


von Der kleine Niels (Gast)


Lesenswert?

Hallo liebe Bastelfreunde und Profis,

Ich hätte da mal eine kleine Frage, zu der ich im Web keine passende 
Antwort finde.
Es geht um folgendes:
Ein AVR ATMEGA 48 wird zusammen mit unbedeutender Peripherie und einem 
CAN-Controller (MCP2515) auf einer Platine verbaut, die u.a. für den 
Ausseneinsatz geeignet sein soll. Nun möche ich also die Platine 
vergießen, und daher die ISP-Pins (MISO,MOSI,SCK,RESET,V+,GND) auf einen 
Stecker herausführen.
Damit mir aber jetzt kein Kurzschluss (durch Wasser, Kohlefaserstaub, 
sonstiges) die Hardware tötet möchte ich sie also schützen.

Da ich aber das SPI des AVR für meinen MCP2515 benötige, kann ich die 
Pins aber auch nicht einfach auf Tristate/Pullup stellen. Zum Anderen 
habe ich mit CAN noch nie gearbeitet und möchte über die herausgeführten 
Leitungen ggf. direkt mit dem MCP2515 kommunizieren.

Ich dachte mir also, ich füge "einfach" in jede SPI-Leitung, sowie in 
Reset, und SlaveSelect (für Kommunikationen mit dem MCP2515 ebenfalls 
herausgeführt) einen 1k-Serienwiederstand ein, bevor die Leitungen die 
Platine "verlassen".

Zwischen AVR und MCP2515 habe ich keine Widerstände.

Ist das Humbug, oder Sinnvoll?
Was sollte ich besser/anders machen?

Vielen Dank
MfG
Niels

von H.Joachim S. (crazyhorse)


Lesenswert?

Direkt mit CAN-Controller reden wird wohl eh nicht gehen, der braucht 
auch noch ein CS. Und ein Interrupt ist auch nicht schlecht, um nix zu 
verpassen.
Die Widerstände kannst du schon einbauen, ne Schwachstelle bleibt es 
aber.
Schon über Bootlader + Infrarot nachgedacht? Über CAN flashen sollte 
prinzipiell auch gehen, kenne aber keine Projekte in diese Richtung, die 
das versucht oder gar geschafft haben.
Die CAN-Anschlüsse und Stromversorgung musst du ja auch irgendwie nach 
aussen führen - wie hast du das gelöst?
Einfachster Weg: ein passendes Gehäuse  (IP67) und ordentliche 
Verschraubungen -schon bist du alle Probleme los.

von spess53 (Gast)


Lesenswert?

Hi

>Zwischen AVR und MCP2515 habe ich keine Widerstände.

Vielleicht erst mal lesen:

http://www.atmel.com/dyn/resources/prod_documents/doc2521.pdf

MfG Spess

von (prx) A. K. (prx)


Lesenswert?

spess53 schrieb:

>>Zwischen AVR und MCP2515 habe ich keine Widerstände.
>
> Vielleicht erst mal lesen:

Wenn CS vom MCP2515 mit einem externen Pullup-Widerstand hochgezogen 
wird, dann ist die SPI-Schnittstelle des CAN Controllers bei aktivem 
Reset des Controllers inaktiv und stört beim ISP kein bischen, völlig 
ohne Serienwiderstände. Manche SPI-Slaves haben einen solchen Pullup 
auch schon drin.

von spess53 (Gast)


Lesenswert?

Hi

>Wenn CS vom MCP2515 mit einem externen Pullup-Widerstand hochgezogen
>wird, dann ist die SPI-Schnittstelle des CAN Controllers bei aktivem
>Reset des Controllers

Und du meinst, das die Gänse das dem Nils schon geflüstert haben?

MfG Spess

von (prx) A. K. (prx)


Lesenswert?

Spätestens jetzt. Immerhin hat er gefragt, was er besser/anders machen 
kann. Wenn er zwecks Schutz Serienwiderstände unterbringen will, dann 
sind die zwischen Controller und MCP2515 angebracht ohnehin nicht 
zielführend.

von nix_könner (Gast)


Lesenswert?

A. K.:
>"dann sind die zwischen Controller und MCP2515 angebracht ohnehin
>nicht zielführend."

Der kleine Niels meinte doch:
>"Zwischen AVR und MCP2515 habe ich keine Widerstände."

von (prx) A. K. (prx)


Lesenswert?

Er nicht, aber spess53 schien mir dies zu suggerieren.

von Der kleine Niels (Gast)


Lesenswert?

Danke euch,

Am /CS-Pin einen externen Pullup werde ich einfügen. Der MCP2515 hat 
zwar afaik intern einen, aber schadet ja nicht.
Ich werde also MISO, MOSI und SCK zwischen MCP und AVR direkt verbinden 
und nach draussen mit 1k absichern.
RESET wird mit 10k Pullup und 1k nach draussen angeschlossen,
/CS bekommt einen 10k Pullup und 1k schutz nach draussen.

Den Datenbläätern zufolge müssten alle Komponenten mit den dadurch 
entstehenden Spannungsteilern klar kommen und ich fühl mich deutlich 
wohler beim vergießen der Platine.

Danke nochmal.
MfG
Niels

von (prx) A. K. (prx)


Lesenswert?

Der kleine Niels schrieb:

> Am /CS-Pin einen externen Pullup werde ich einfügen. Der MCP2515 hat
> zwar afaik intern einen, aber schadet ja nicht.

Laut Datasheet hat er keinen. Darf auch >10K sein, da kommt es nicht so 
drauf an.

von Der zuspät kommer (Gast)


Lesenswert?

Danke für die Antworten, stehe gerade vor der selben Problemstellung.
Ich würde gerne noch eine Z-Diode 5V1 nach dem 1k Serien Widerstand also 
direkt an den Portpins einbauen um höhere Spannungen abzufangen
(12V sind bei mir noch unterwegs in greifbarer Nähe)

Meint ihr es gibt hierbei Probleme mit der SPI Kommunikation AVR<->MCP, 
AVR<->ISP?
Die Dioden bringen ja eine Kapazität mit ins Spiel.

von Der zuspät kommer (Gast)


Angehängte Dateien:

Lesenswert?

Kurzer Nachtrag:
Also einsetzten möchte ich eine mini melf TZMC 5V1(R* "SMD ZF 5,1") hier 
ist im Datenblatt(Anghängt) die Kapazität mit ca. 100pf angegeben.

Die Grenzfrequenz mit 1k und 100pf läge in dem fall bei fg = 
1/(2*pi*R*C) = 1,59Mhz

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.