PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : Isp 5v -> 3,3v?



deko
01.05.2011, 16:44
Hallo,
ich habe meinen USB Programmieradapter auf USBasp-Basis.

Dieser Liefert mir ja nun alle Signale mit 5V.

Wie wandle ich die Signale auf 3,3V? Ich habe schon bei Reichelt nach einen MAX3390E gesucht aber leider nichts gefunden.

Wie löse ich mein Problem am besten?

Gruß
deko

Besserwessi
01.05.2011, 18:45
Bei einer USB Version gäbe es die Möglichkeit den ISP Adapter ganz auf 3.3 V oder 3,4 V laufen zu lassen. Mit einem µC aus der neueren Serie, wie Mega88, gehen dann auch noch 12 MHz. Für die USB Seite würde das auch einiges vereinfachen - da sind etwa 3,4 V ohnehin passend für die Pegel.

Wenn man den ISP Teil so lassen will, könnte man die 2 Pegelwandler auch diskret aufbauen, mit einem kleinen FET wie BS170 und einem Pullup dahinter. Die ISP Signale sind in der Regel ja nicht so schnell. Bei 3,3 V an der Zielschaltung sollte es noch gerade reichen für die Signal vom Target zum Programmer.

Bernhard667
01.05.2011, 21:33
Hallo,

ich hab auch den USBasp.
Habe einfach die 5 V Leitung auf der Platine vom USB Port zur Schaltung aufgetrennt und 2 1N4148-Dioden seriell reingelötet.
Dann liegen so 3.6V an am Mega8 und der Zielschaltung.
Über den 2 Dioden habe ich einen Jumper. Wenn ich den setze, läuft wieder alles mit 5V.

Ist ziemlich unsauber die Methode, aber klappt soweit. Der Mega8 packt die 12 Mhz.

Bernhard

PICture
01.05.2011, 21:39
Wenn man nur "saubere" Methoden verwendet, dann hat man meistens Platzprobleme. :)

Ich kenne die Schaltung nicht, aber "sauberer", nur bei Problemen, wäre mit pull-ups auf 3,3 V und Schottky Dioden in Richtung zur Signalquelle. ;)

deko
02.05.2011, 17:30
Ich glaub ich hab mich etwas unklar ausgedrückt oder ich stehe gerade auf den Schlauch?!


[PC mit USB] --> [USBasp 5V@16Mhz] --> [µC System mit 3,3v]

Es kommen doch MOSI und SCK mit 5V vom USBasp wie Wandle ich die auf 3,3V reicht es wirklich 2x 1N4841 in Reihe zu Schalten?

[USBasp MOSI] --> [1N4841] --> [1N4841] --> [µC System mit 3,3v]

[USBasp VCC] --> [1N4841] --> [1N4841] --> [µC System mit 3,3v]

[USBasp SCK] --> [1N4841] --> [1N4841] --> [µC System mit 3,3v]


Reicht wirklich ein Spannungsfall über die beiden Dioden aus? Bekomme ich nicht bei der Geschwindigkeit Probleme??

Besserwessi
02.05.2011, 18:03
Die 2 Dioden waren in der Versorgungsspannung gedacht. Mit ca. 0,7 V je Diode kommt man so auf die etwa 3,6 V. Da es "nur" die Versorgunsgspannung ist, ist da die Geschwindigkeit noch kein Problem. Mit 3,6 V könnten aber 16 MHz etwas viel für den Mega8 sein, selbst 12 MHz sind beim Mega8 noch etwas mehr als für 3,6 V vorgesehen. Beim neueren Mega88 sind bei 3,6 V (oder auch 3,3 V) die 12 MHz noch gerade innerhalb der Spezifikation.

Die Umsetzung der Signal könnte so ähnlich gehen, es fehlt dann aber noch ein Widerstand nach GND auf der 3,3 V seite. Es geht aber besser und einfacher:
Je Signalleitung eine Diode (bevorzugt Schottky, die 1N4148 wird aber auch noch gehen) mit der Kathode zur 5 V Seite und einen Pullup Wiederstand (z.B. 1 K) zur Spannung der Zielschaltung (z.B. 3,3 V). Das geht dann bis etwa 2 V Versorgungsspannung bei der Zeilschaltung. Die andere Richtung geht direkt, je nach µC Exemplar bis etwa 3,2 V (worst case) bzw. ca. 2,8 V als typischer Fall. Das schöne daran ist, das man die Schaltung unverändert für etwa 3 V bis 5 V im Ziel-Systeme nutzen kann. Viel langsamer wird das Signal durch die Diode nicht. Die ISP Signale sind in der Regel relativ langsam. Damit auch ein µC mit dem Default 1MHz RC Takt noch geht, sollte der Takt höchstens etwa 240 kHz sein.

Bernhard667
02.05.2011, 21:08
Hallo,

die Beschreibung meiner Murkser Schaltung war wohl nicht komplett verständlich.:p
Hauptbauteil von "USBasp" ist ein Mega8. (Damit meine ich nicht einen Controller in der Zielschaltung.)
Der braucht natürlich Betriebsspannung an Vcc. Die bekommt er aus den 5V von der USB Buchse, siehe Schaltplan USBasp.
Zwischen +5V von USB und Vcc des Mega8 schleife ich nun meine 2 1N4148 in Serie. Damit hat der 3.6V Vcc.
Die Output High Spannung eines CMOS IC, so auch Mega8, ist (meisten) gleich Vcc. Wenn also der Mega8 auf 3.6V läuft, so ist auch der Outputpegel an SCK, Reset und MOSI, die von dem Mega8 in die Zielschaltung führen 3.6V, mithin 3.3V kompatibel.

Bernhard

PICture
02.05.2011, 22:10
Hallo!

Das stimmt, weil deine Schaltung bloss 1e Versorgungsspannung reduziert. Wir haben mit Besserwessi an 1fache, aber echte Pegelwandler mit Dioden ged8 (siehe Code).



VCC=3,3V
+
|
.-.
| | R
| |
D '-'
|
In 5V >---S<-+---> Out 3,3V
Logik Logik


-S<- = Schottky Diode


(created by AACircuit v1.28.6 beta 04/19/05 www.tech-chat.de)

deko
03.05.2011, 20:42
danke für die vielen Antworten.

kann mir bitte mal noch einer erklären warum die Lösung überhaupt Funktioniert?

Wenn ein Signal von den 5V µC kommt und ich eine Diode in Sperrichtung habe kommt doch zum 3,3V µC nichts durch oder?
Wie kommt die Pegelwandlung zustande?

Ich danke euch

PICture
03.05.2011, 21:02
Hallo!

@ deko

Das stimmt, das beim Eingangssignal (In) 5 V die Diode (D) mit ca. 5 - 3,3 = 1,7 V gesperrt ist und auf dem Ausgang (Out) ist durch den pull-up (R) zugeführte 3,3 V Spannung (H-Pegel).

Bei 0V auf dem Eingang (In) leitet die Diode und auf dem Ausgang (Out) ist 1ne Spannung gleich dem Spannungsabfall auf der Diode (um 0,25 V bei Schottky), was als L-Pegel interpretiert wird. ;)

deko
04.05.2011, 15:33
danke nun ist es verständlicher

deko
13.05.2011, 20:51
da ich auf einer anderen Platine noch Platz habe würde ich das gerne unterbringen.

wäre nett wenn noch mal einer über den Plan schaut

danke

PICture
13.05.2011, 21:27
Hallo!

Ich bin kein AVR-Spezialist, sieht aber für mich perfekt aus. :)

Besserwessi
13.05.2011, 22:01
Das sollte so gehen. Die Wandlung vom 3,3 V Signal auf die 5 V ist aber nicht perfekt. Es wird so gehen, aber es fließt ein kleiner Strom über den Pullup und die Diode in Richtung der 3,3 V Schaltung. Wenn die 3,3 V Schaltung sehr wenig Strom braucht, kann da die Spannung über 3,3 V ansteigen oder ähnliches passieren. Schon ein 10 K Widerstand an den 3,3 V nach GND reicht um das zu verhindern.

Man kann die Leitung direkt verbinden - bei 3,3 V geht das gerade noch. Die bessere Lösung auch für noch kleinere Spannungen wäre statt der Diode eine NPN Transistor in "Basisschaltung" mit der Basis über 10 K an 3,3 V und ca. 30 K an GND - also gerade auf etwa 3/4 der 3,3 V. Damit sollte es auch runter bis etwa 1,5 V auf der Zielschaltung gehen.

deko
14.05.2011, 08:41
also wenn ich das richtig verstanden habe dann:

[3V3]
|
[10k]
|
[GND]?

i = U/R = 3,3V/10000 ohm = 0,3mA?

Besserwessi
14.05.2011, 11:17
Die 0,3 mA reichen schon als Mindestlast, damit die 3,3 V nicht ungewollte ansteigen, falls die Schaltung weniger Strom verbraucht. Der Strom von den 5 V zu den 3,3 V über den Pegelwandler ist auch nur klein: I = (5V - 0,4 V - 0,4 V - 3,3 V) / 10 K = 0,09 mA. Es kann aber sein das der µC in Sparmodus oder bei fehlendem Takt noch weniger Strom braucht.

PICture
14.05.2011, 11:33
Hallo!

@ deko

Sorry, ich habe übersehen, das der untere rechte Pegelwandler in umgekehrter Richtung wandeln sollte. Mir ist danach 1gefallen, dass dort 1ne "normale" Siliziumdiode mit Durchflussspannung um 0,7 V besser als Schottky wäre, solange die erhöhte Spannung den "L" Pegel für 5 V nicht überschreittet. ;)