Hallo,
was ist der beste Weg, einen PIC18 der mit 5V betrieben wird mit einem
PIC 18J/24/33 mit 3V oder 3,3V zu verbinden? (Datenübertragung in beide
Richtungen!)
Möglichkeiten:
1. einfach I/Os verbinden, und darauf hoffen, dass die ESD Schutzdioden
der 3V PICs die Spannung des 5V PICs herunterziehen? Was ist mit den
Analogeingängen? Wird über die ESD Schutzdioden möglicherweise die
Betriebsspannung der 3V Seite hochgezogen?
2. Mehrere Dioden in Reihe an den 5V PIC anschließen, so dass die
gesamte Schwellenspannung ca. 3,3V beträgt (z.B. 5x 1N4148), um so die
5V auf einen akzeptablen Level zu bringen?
3. Pull-Up Widerstände an 3V oder 3,3V hängen, und auf der 5V Seite nur
zwischen Low und High-Impedance hin- und herschalten.
Schön wäre es allerdings, wenn die Leitungen im unbenutzen Zustand sehr
hochohmig wären, was mit PullUp Widerständen leider nicht der Fall ist.
Gibt es vielleicht noch andere Möglichkeiten?
Können die 3V PICs eigentlich zerstört werden, wenn man 5V als
Betriebsspannung anlegt?
Der 5V PIC soll eigentlich nur an die Programmierleitungen angeschlossen
werden, damit er die 3V Typen programmieren kann. Daher sollte die
Lösung aus Sicht der 3V Typen hochohmig wirken.
Weiß jemand eine gut Lösung.
Danke,
Bernd
Warum schaust Du nicht einfach ins Datenblatt Deiner PICs. Da steht ganz
bestimmt drin, ob so ein 3V-PIC bei 5V kaputt geht. Und welche Spannung
die Ausgänge liefern (3V) und ob das dem 5Volter reicht. Ich finde es
ok, dem einen oder anderen einen Tipp zu geben, ich habe auch schon
einige gute Tipps bekommen. Aber der Blick ins Datenblatt sollte einer
Anfrage im Forum vorrausgehen. Ok ist es dann wieder, wenn Du z.B.
fragst: "Was bedeutet die Angabe xy im Datenblatt".
Ciao
Willi Wacker
Hi,
schau mal ins WiKi, bzw. nutze die Suche. Wenn es was langsames sein
soll, geht es auf alle Fälle mit Transistoren, ansonsten: 74LVX 125 D
(Reichelt) läuft bei mir jetzt mit 0,5MBaud problemlos.
Hi,
ins Datenblatt geschaut habe ich bereits, aber da steht nicht das, was
ich gerne gelesen hätte. Laut Datenblatt vertragen die Pins maximal
Betriebsspannung (VDD 3,3V). Ob die Chip hingegen schaden nehmen, wenn
man es übertreibt, steht da so direkt nicht drin. Auch habe ich da zum
Thema ESD-Schutzdioden nichts gefunden. Die meißten MCUs haben
allerdings welche. Und da stellt sich dann die Frage, kann man diese
dazu misbrauchen, um die 5V entsprechend in die Knie zu zwingen, so dass
die Spannung wieder im grünen Bereich liegt?
Habe ich bei anderen MCUs bereits erfolgreich betrieben, aber die
Betriebsspannung der Zielschaltung (es geht hier um einen Programmer)
ist dabei etwas angestiegen.
Vor allem suche ich eine einfache Lösung, die man zum beispiel direkt in
das Programmierkabel einlöten kann, wenn nötig.
@DPeter Maier: Datenrate liegt bei 5MBit/s.
Danke,
Bernd
In welches Datenblatt hast du geschaut?
Für die PIC24H und J gilt folgendes:
10.2 Open-Drain Configuration
In addition to the PORT, LAT and TRIS registers for
data control, each port pin can also be individually
configured for either digital or open-drain output. This is
controlled by the Open-Drain Control register, ODCx,
associated with each port. Setting any of the bits configures
the corresponding pin to act as an open-drain
output.
The open-drain feature allows the generation of
outputs higher than VDD (e.g., 5V) on any desired digital
only pins by using external pull-up resistors. (The
open-drain I/O feature is not supported on pins that
have analog functionality multiplexed on the pin.) The
maximum open-drain voltage allowed is the same as
the maximum VIH specification. The open-drain output
feature is supported for both port pin and peripheral
configurations
Als Eingang sind alle "digital only" Pins auch 5V kompatibel.
Da ich die PIC24/dsPIC33 programmieren will, habe ich keinen Einfluss
auf irgendwelche Einstellungen seitens dieser MCUs. Hier gilt, was im
Programmiermodus von Microchip vorgesehen ist.
Also mir geht es um die PGC und PGD 1-3 Pins, von denen zumindes 4 auch
als ANx Pins (AD-Wandler) konfigurierbar sind, also nicht
"digital-only".
Foglich gehe ich jetzt mal davon aus, dass die PGCx/PGDx Pins nicht 5V
kompatibel sind, oder irre ich mich da?
schlag mich tot, aber
2 widerstände pro leitung?
Ich versuch mich mal an ASCII Zeichnen (deckung)
5V output/ input -----|
|
R1
|
|--- 3.3 V output / input
|
R2
|
|
MASSE
Wennn 5V als output geschaltet ist dann wirs auf 3.3 runtergeteilt so
das das 3.3. V IC nicht stirbt.
Wenn 3.3 V IC output schaltet "sieht" es einen Pulldown (R2) und nen
Serienwiderstand (R1) was kein problem sein sollte so lange er klein
gegenüber dem eingangswiderstand des 5V ICs ist.
Geht aber alles nur wenn das 5V teil 3.3 V als high erkennt.
Tobi
High-Pegel wird ab 2V erkannt.
Der Strom an Eingängen wird mit ca. 1µA angegeben.
Es stellt sich jedoch die Frage, ob hohe Widerstände geeignet sind.
Denn die Grenzfrequenz liegt bei
=1/(2*PI()*100 kOhm * 100pF) = 16 kHz
Ich brauche aber 5MHz. Und da bereits bei der Grenzfrequenz die Spannung
nurnoch 0.7 beträgt, ist es etwas problematisch.
Ich werde mir mal weitere Gedanken machen.
Danke an alle,
Bernd