Forum: Mikrocontroller und Digitale Elektronik Pegelwandler SD-Karten tauglich


von Teplotaxl X. (t3plot4x1)


Angehängte Dateien:

Lesenswert?

Ist das Signal von diesem Pegelwandler für eine SD-Karte 
brauchbar?(SD-Karten sollen ja besonders wählerisch sein was 
Flankensteilheit und so angeht)
CH1: 5V Eingang
CH2: 3V3 Ausgang

von Andreas K. (a-k)


Lesenswert?

Täusche ich mich, oder hast du da einen Pegelwandler gebaut, der die 
Zukunft vorhersagen kann? Zwar nur um ~1ms, aber das ist für den Anfang 
doch schonmal nicht schlecht.

von Teplotaxl X. (t3plot4x1)


Lesenswert?

DAS frage ich mich auch, oder ist der so lahm, dass dies noch die 
Impulse von den vorherigen 8 Takten sind?
EDIT: Nee kann nicht sein, habs mal direkt beim Einschalten angeschaut. 
Der 3.3V Pegel ist da. Very strange ...ommmm

von Andreas K. (a-k)


Lesenswert?

Wie sieht der eigentlich aus? Oder ist das aus offensichtlichem Grund 
geheim?

von Benedikt K. (benedikt)


Lesenswert?

Ich denke mal du hast da irgendwo beim Messen Mist gebaut:
Wenn ich das richtig sehe, dann sind das 10ms/div. Demnach hätte das 
Signal weniger als 100Hz !!! Da muss man schon einen ziemlich großen C 
dran bauen, oder den Spannungsteiler extremst hochohmig dimensionieren 
damit das so aussieht.

Um deine ursprüngliche Frage zu beantworten: Nein, diese Schaltung ist 
absolut SD Karten untauglich, außer du tippst die Bits per Hand ein...

von Teplotaxl X. (t3plot4x1)


Angehängte Dateien:

Lesenswert?

Ich scheine meines neuen DSOs doch noch nicht so ganz mächtig zu sein...
-> wer misst misst Mist
Das sieht ein bisschen vielversprechender aus.

von Benedikt K. (benedikt)


Lesenswert?

Sieht schon besser aus. Wenn du da mit einem 1:1 Tastkopf gemessen hast, 
dann wird der größte Anteil der parasitären Kapazität durch den Tastkopf 
verursacht. Ohne Tastkopf sieht das Signal dann noch um einiges besser 
aus.

von Andreas K. (a-k)


Lesenswert?

Ob SDs so arg sensibel sind weiss ich nicht, habe ich noch nicht 
verwendet. Was ich bisher an SPI Bausteinen verwendet habe sollte damit 
aber klarkommen. Ist wohl Spannungsteiler als Pegelwander, den schiefen 
Flanken nach zu schliessen. Werden steiler bei kleineren Widerständen.

von Teplotaxl X. (t3plot4x1)


Lesenswert?

Tastkopf ist nen 10:1, den man mit so nem Plastikwerzeug einstellen 
kann, was bis jetzt aufgrund fehlender Recktecksignalquelle nicht 
möglich war. Oder reicht es, wenn der ATMEGA regelmäßig mit nem Pin 
wackelt?
EDIT: Ist nen 4050 als Pegelwandler. Oder wäre ein 74HC(T)4050 als 
Pegelwandler besser gewesen?

von Andreas K. (a-k)


Lesenswert?

Sir alan Teplotaxl wrote:

> Oder reicht es, wenn der ATMEGA regelmäßig mit nem Pin
> wackelt?

Nicht ideal, aber besser als nichts. Wenn das Layout stimmt, die 
üblichen Kerkos drin sind und nur dieser eine Pin mit 1KHz wackelt.

> EDIT: Ist nen 4050 als Pegelwandler. Oder wäre ein 74HC(T)4050 als
> Pegelwandler besser gewesen?

Wäre definitiv besser gewesen, bei dem angepeilten Tempo. Die CD4000 
sind nunmal schnarchlangsam. Es sei denn man betreibt sie bei 15V.

PS: Welcher DSO-Hersteller hat denn den Kalibrierausgang vergessen?

von Teplotaxl X. (t3plot4x1)


Lesenswert?

Von Layout kann keine Rede sein: Breadboard / Steckbrett
Das DSO ist von HP Agilent.

von Andreas K. (a-k)


Lesenswert?

Und das Ding hat wirklich keinen Kalibrieranschluss? Muss wohl ein 
besonders teures sein, denn die billigen Agilents haben den durchaus. 
;-)

von Andreas K. (a-k)


Lesenswert?

Was das Rechteck angeht: Bau dir einen einfachen kleinen 1KHz Oszillator 
mit einem CMOS 555 Timer und 9V-Batterie und leg den zum Oszi dazu.

So ein Teil brauchst du nicht nur zum Kalibrieren, sondern evtl. auch 
mal um festzustellen wer grad spinnt, das Scope, das Messobjekt oder du 
selber. In dem Fall hängt man das Ding an die Strippe und schaut nach, 
ob das Signal stimmt. Wenn nicht, hat man irgendeine Einstellung 
vermurkst oder das Scope steht im Wald.

von Teplotaxl X. (t3plot4x1)


Lesenswert?

Gute Idee, nur welche Werte müssen die Widerstände und Kondensatoren 
habe, um ein 1kHz Rechtecksignal zu erzeugen?

von Andreas K. (a-k)


Lesenswert?

=> Datasheet von dem Teil.

PS: Notfalls ein paar verschiedene Datasheets durchprobieren. Die 555 
funktionieren alle gleich, aber manche Datasheets sind ein bischen 
dürftig (beispielsweise das vom hier sinnvollen TLC555) und manche 
deutlich ergiebiger (NE555 von TI, hier weniger sinnvoll weil bipolar).

von Teplotaxl X. (t3plot4x1)


Lesenswert?

MMMMM....
In den Datenblättern habe ich nur solche Formeln á la 
f=(1,49/((Ra+2Rb)*C)) gefunden. Und da gilt es jetzt für f 1000 
einzusetzen und dann die Gleichung aufzulösen? Oder?

von Andreas K. (a-k)


Lesenswert?

Datenblatt vom hier ebenfalls geeigneten ICM7555 
(http://www.intersil.com/data/fn/fn2867.pdf), Seite 5+, Figure 2A, 
Formel EQ.1 für das hier sinnvolle symmetrische Rechteck. Da steht f = 1 
/ (1.4  R  C). Der Rest ist eine Mischung aus Rechnen und Probieren. 
Also beispielsweise mal C=10nF einsetzen und sehen was dann für R 
rauskommt, mit 10K < R < 1M.

Und dann noch einen 100 Ohm Widerstand hinter den Ausgang, damit ein 
versehentlicher Kurzschluss das Teil nicht himmelt.

von Teplotaxl X. (t3plot4x1)


Lesenswert?

So das mit dem Pegelwandler hat sich jetzt dank 125khz Clock erledigt.
Jetzt frage ich mich, ob ich den DO Pin der SDKarte direkt an den 
Prozessor legen kann, da bei der Programmierung / dem EEPROM am 
Prozessor mit 5V Pegeln gearbeitet wird. Muss ich ein Soft-SPI verwenden 
oder den Prozessor mit JTAG programmieren?

von Rudolph R. (rudolph)


Angehängte Dateien:

Lesenswert?

Die angehängte Schaltung benutze ich ohne Probleme bei 2 MHz zwischen 
SD-Karte auf 3,0V und einem Mega32 auf 5,0V.
Die machbare Geschwindigkeit hängt aber sicherlich auch vom Aufbau ab, 
auf meiner Platine liegen der Controller und die SD-Karte nur 2 cm 
auseinander.

Für MOSI und SCLK benutze ich einfach Spannungs-Teiler.
MOSI bzw. Data_Out der SD-Karte muss von niedrigem Pegel auf hohen 
Pegel, daher der Level-Shifter.

CS der Karte hängt auch an einem Level-Shifter und nicht an einem 
Spannungs-Teiler damit die Karte nicht ausgewählt wird, wenn der 
Controller sich im Reset befindet und somit seine Ausgänge hochohmig 
macht.

Der Level-Shifter mit einem FET kommt aus einer uralten Application-Note 
von Phillips zum Thema I2C an unterschiedlichen Pegeln.

Eigentlich gehören da auch vor und hinter dem FET Pullup-Widerstände 
hin, am Controller benutze ich die internen im M32.

von Teplotaxl X. (t3plot4x1)


Lesenswert?

Spannungsteiler will ich meiden. Könnte man auch einfach noch einen 4050 
nehmen, der mit 5V Arbeitet: 3V3 am Eingang 5V am Ausgang?
Direkt verbinden dürfte von den Pegeln eigentlich gehen, da der atmega 
3v3 noch problemlos als 1 interpretiert. Meine Sorge gilt nur DO der 
SDKarte, dass da durch irgendwelche Umstände 5V anliegen.
EDIT: Warum der FET bei CS? Eigentlich müsste da doch ein 
Spannungsteiler hin,da CS vom Prozessor gesteuert wird, oder ist CS 
bidirektional (was mir sehr neu wäre)?

von Andreas K. (a-k)


Lesenswert?

Dem 4050 ergeht es nicht besser als dem Controller. Beiden ist der high 
Pegel formal inkorrekt aber faktisch oft doch ausreichend. Ist auch 
abhängig von Signalrate, Länge, Last, weil die Flanken an den Extremen 
u.U. etwas abflachen können.

Korrekt hingegen geht das mit irgendeinem 74HCT Gatter, denn die sind 
trotz 5V Versorgung schon mit 2,0V high Pegel glücklich.

von Teplotaxl X. (t3plot4x1)


Lesenswert?


von Andreas K. (a-k)


Lesenswert?

Ja. Wenn du den findest. Ist etwas weniger verbreitet, weil die 4000er 
nie TTL kompatibel waren.

von Teplotaxl X. (t3plot4x1)


Lesenswert?

Grrr.... erstaunlich wie schwierig es ist ne SD Karte mit nem atmega in 
Einklang zu bringen, wenn der SPI-Port auch noch von nem EEPROM genutzt 
wird.
Grummmel

von Rudolph R. (rudolph)


Lesenswert?

Sir alan Teplotaxl wrote:
> Spannungsteiler will ich meiden.

Verstehe ich nicht, so schlecht wie jetzt kann das Signal dann garnicht 
aussehen.

Edit: 4 Level-Shifter mit FET plus Widerstand sind immer noch weniger 
Aufwand als ein IC.

> Direkt verbinden dürfte von den Pegeln eigentlich gehen, da der atmega
> 3v3 noch problemlos als 1 interpretiert.

Mit 3,0V für die SD-Karte war ich genau an der Grenze.

> Meine Sorge gilt nur DO der
> SDKarte, dass da durch irgendwelche Umstände 5V anliegen.

Eben.

> EDIT: Warum der FET bei CS? Eigentlich müsste da doch ein
> Spannungsteiler hin,da CS vom Prozessor gesteuert wird, oder ist CS
> bidirektional (was mir sehr neu wäre)?

Habe ich bereits geschrieben, warum ich das gemacht habe...
CS ist Low-Aktiv.

von spess53 (Gast)


Lesenswert?

Hi

>74HCT4050?

Dann nimm halt einen 74HC4050. Habe ich auch genommen. Mit 3,3V 
Versorgungsspannung. Drei Gatter für die Eingänge. Ein Gatter von DO an 
MISO.
Mein Atmega128 ist problemlos damit zurechtgekommen.

MfG Spess

von Teplotaxl X. (t3plot4x1)


Lesenswert?

O VCC
 |
 _
| |
|_|
 |
-+-----(zum Prozzoe)
 |
 \|
  |---- DO von der SDKarte
 /|
 v
 |
--- GND

Wäre das so machbar?
O O
~~~

von bereits fort (Gast)


Lesenswert?

oder
aufwärts schmittchens trigger auf 1,5 +/-0,1V trimmen.

abwärts nen R und ne Z-diode

Wichtig ist  ne stabile 3 V versorgung.


alternativ:

Der ATMEGA32(L) läuft auch mit 3 V bei 11,0592MHZ tip top. Dann ist das 
Geaddel überflüssig.

Alle Taster und Kontakteingänge lowaktiv


Für andere 5V Perepherie

aufwärts 74HC244 als Treiber, Gate und Puffer.

abwärts je nach Bedarf Spnnungsteiler oder HCT_Bauteile

Der Max232 kommt auch mit den 3V Pegeln vom AVR zurecht, ebenso der 
CP2102.

Lediglich ISP ist bei 5V etwas sicherer als bei 3,3V

von Teplotaxl X. (t3plot4x1)


Lesenswert?

/ME hat sicherlich keinen Bock das komplette Experimetierbreadboard auf 
3v3 umzustellen :|

von Rudolph R. (rudolph)


Lesenswert?

Sir alan Teplotaxl wrote:
> Wäre das so machbar?
> O O
> ~~~

Wenn Du alles was von der SD-Karte kommt dann nochmal in Software 
invertieren möchtest, dann schon.
Allerdings fehlt der Basis-Vorwiderstand.

Level-Shifter? :-)

von Teplotaxl X. (t3plot4x1)


Lesenswert?

Wenn der Widerstand gegen GND und der Transistor gegen VCC schalten 
würde?

_ GND
 |
 _
| |
|_|
 |
-+-----(zum Prozzoe)
 |
 ^
 \|
  |---- DO von der SDKarte
 /|
 |
 |
 O VCC

PS: In meinem 2. Leben werde ich bestimmt ein guter ASCII-Artist =)

von Tim (Gast)


Lesenswert?

Eben, wenn du noch andere Dinge am SPI Bus hängen hast, geht das u.U. 
schief. du brauchst einen Pegelwandler in BEIDE RICHTUNGEN.
Schau mal hier: http://www.display3000.com/downloads/P001_Manual_d.pdf 
da ist das gezeigt und erklärt: der Anfang ist hier nicht so wichtig: 
direkt zu Seite 18 und 20 springen.

Viel Glück!
Tim

von bereits fort (Gast)


Lesenswert?

wozu
exboard ;-D))


Steckbrett ----> Lochraster ----> Prototyp

das erfüllt alle Ansprüche


als Universal Dongle MyAVR SmartUSB (mit einigen privaten Modifikationen 
aufgepeppt)

von Rudolph R. (rudolph)


Lesenswert?

Tim wrote:
> Schau mal hier: http://www.display3000.com/downloads/P001_Manual_d.pdf
> da ist das gezeigt und erklärt: der Anfang ist hier nicht so wichtig:
> direkt zu Seite 18 und 20 springen.

Ja nee, ist klar, mich würde mal interessieren, wie die das lausige 
Signal mit dem Spannungs-Teiler hinbekommen haben wollen.
Bedrahtete xx kOHm Widerstände?

Und die BC847 Kombination braucht 1,5 µs zum schalten?
Kommt mir doch ein wenig sehr langsam vor.

von Teplotaxl X. (t3plot4x1)


Lesenswert?

Ist das jetzt möglich oder nicht? Kennt jemand einen vernünftigen 
5v->3v3 und einen 3v3->5v Pegelwandler?

von Andreas K. (a-k)


Lesenswert?

Wobei man natürlich mal spicken könnte, wie andere das so gemacht haben. 
Beispielsweise Atmel im STK500, bei den Pegelwandlern für ISP. Auch 
BC847. aber andere Schaltung, nämlich an Stelle der sehr langsamen 
gesättigten Emitterschaltung mit der bekannt schnellen Basisschaltung. 
Steckt allerdings ein bischen mehr Aufwand drin.

von Andreas K. (a-k)


Lesenswert?

Sir alan Teplotaxl wrote:

> Ist das jetzt möglich oder nicht? Kennt jemand einen vernünftigen
> 5v->3v3 und einen 3v3->5v Pegelwandler?

Pegelwandler

von Rudolph R. (rudolph)


Angehängte Dateien:

Lesenswert?

Sir alan Teplotaxl wrote:
> Ist das jetzt möglich oder nicht? Kennt jemand einen vernünftigen
> 5v->3v3 und einen 3v3->5v Pegelwandler?

Die Antwort auf Deine Frage ist: Ja.

Nur willst Du offenbar gar keine Antwort haben?


Und okay, die BC847 sind ausgesucht langsam wenn man dem Datenblatt 
folgt, da wären 1,5µs ja schon flott.

Die BSN20 die Phillips angegeben hat sind deutlich flinker.

von Teplotaxl X. (t3plot4x1)


Lesenswert?

5v->3v3 : 74HC4050
3v3->5v : 74HC125

Sinnvoll so?

von Andreas K. (a-k)


Lesenswert?

Erst wenn du dem 125 noch ein T gönnst.

von Tim (Gast)


Lesenswert?

> Ja nee, ist klar, mich würde mal interessieren, wie die das lausige
> Signal mit dem Spannungs-Teiler hinbekommen haben wollen.
> Bedrahtete xx kOHm Widerstände?

Rudolph R: hast du es am Oszi ausprobiert? Ich habe es gerade gemacht 
und genauso sieht das Signal dann bei mir auch aus. Atmel Port 
getoggelt, 2 Mhz Output und Teiler mit 5,6 und 3,9 KOhm: da kommt genau 
das gleiche bei mir raus. Leider ist meine Digicam kaputt daher kann ich 
kein Foto reinstellen.
Tim

von Teplotaxl X. (t3plot4x1)


Lesenswert?

/me hat nen "neues" Feature von 4050 entdeckt :)
DO kommt an C von 4050.
Der Prozzie kommt an I. Wenn die SD-Karte mit C / DO wackelt, wackelt I 
mit. Wenn aber der EEPROM oder usbprog an I wackelt, wackelt C nicht mit 
:)

von Andreas K. (a-k)


Lesenswert?

@Tim: Klar, 20pF bei ~5KOhm => 100nsec. Drum nimm man ja kleinere 
Widerstände wenn man es eilig hat und trotzdem mit Spannungsteiler 
arbeiten will. Kostet aber Strom.

von Andreas K. (a-k)


Lesenswert?

Sir alan Teplotaxl wrote:

> DO kommt an C von 4050.
> Der Prozzie kommt an I. Wenn die SD-Karte mit C / DO wackelt, wackelt I
> mit.

Ich kann kein Chinesisch und mein 4050 Datasheet kennt kein C. Bild?

von Teplotaxl X. (t3plot4x1)


Angehängte Dateien:

Lesenswert?

Darauf beziehe ich mich.

von Rudolph R. (rudolph)


Lesenswert?

Tim wrote:
> Rudolph R: hast du es am Oszi ausprobiert?

Irgendwann hatte ich das auch gemessen, kann aber kein Bild mehr finden.
Und ein Oszi habe ich hier nicht.
Davon sind etwa 150 Platinen im Einsatz.

> Ich habe es gerade gemacht und genauso sieht das Signal dann bei
> mir auch aus. Atmel Port
> getoggelt, 2 Mhz Output und Teiler mit 5,6 und 3,9 KOhm: da kommt genau
> das gleiche bei mir raus. Leider ist meine Digicam kaputt daher kann ich
> kein Foto reinstellen.

Was für Widerstände denn?

Ich habe Chip-Widerstände in 0805 benutzt, wie angegeben 4k7 und 6k8.
Der Aufbau macht dabei schon eine Menge aus.

Auf Lochraster mit bedrahteten Teilen und 10 cm Leitung für den 
SD-Sockel klappt das dann nicht mehr.



Edit: der 4050 hat bei 5V ein InputHighMin von 3,5V.
Wenn das mit 3,3V noch funktioniert ist das eher Zufall als Funktion.

von Andreas K. (a-k)


Lesenswert?

Sir alan Teplotaxl wrote:

> Der Prozzie kommt an I. Wenn die SD-Karte mit C / DO wackelt, wackelt I
> mit. Wenn aber der EEPROM oder usbprog an I wackelt, wackelt C nicht mit
> :)

Sehr kreativ ;-). Funktioniert nur, weil die CD4000 am Ausgang derart 
schwachbrüstig sind, dass sogar das EEPROM dagegen anstinken kann. 
Ersetzen den mal durch einen HC4050, das sieht dann anders aus.

von Andreas K. (a-k)


Lesenswert?

Rudolph R. wrote:

> Edit: der 4050 hat bei 5V ein InputHighMin von 3,5V.
> Wenn das mit 3,3V noch funktioniert ist das eher Zufall als Funktion.

Nicht ganz. Es ist vom Hersteller nur nicht im gesamten Betriebsbereich 
unter allen Randbedingungen gewährleistet. Manche Datasheets enthalten 
eine Darstellung der typischen tatsächlichen Schaltschwelle (voltage 
transfer characteristics). Daraus geht hervor, dass die recht eng um die 
50% Vee liegt, enger als die Nennwerte im Datasheet suggerieren.

von Teplotaxl X. (t3plot4x1)


Lesenswert?

Also auch nicht das wahre an Zuverlässigkeit?

von Andreas K. (a-k)


Lesenswert?

Nicht zu empfehlen.

Korrekt ist der erwähnte 74HCT125, wenn dessen Enable-Anschluss am CS 
der SD-Card liegt (plus 100K Pullup, um bei ISP für geordnete 
Verhältnisse zu sorgen), denn dann ist der Ausgang des 125 abgeschaltet 
wenn die SD nicht angesprochen wird.

von Gastleser (Gast)


Lesenswert?

Hallo zusammen,

ich habe mir gerade den folgenden Link angeschaut :

>Tim wrote:
>> Schau mal hier: http://www.display3000.com/downloads/P001_Manual_d.pdf

Der Autor verwendet dort ein fertiges Levelshifter-IC, das sogar 
bidirektional arbeiten kann und einen Freigabe-Pin hat.

Es handelt sich dabei um ein IC der Fa. Texas Instruments, das die
Bezeichnung " TXB 0104 " trägt und in verschiedenen Gehäuseformen (alle 
SMD!) zu bekommen sind.
Da die TI-Distributoren meist nur grössere Mengen abgeben, wäre eine 
Option, sie über TI als "Samples" zu bekommen.
Das Datenblatt dazu ist von der TI-Seite downloadbar:

http://www.ti.com/lit/gpn/txb0104

Vielleicht wäre das eine Möglichkeit für Eure Vorhaben ...

von spess53 (Gast)


Lesenswert?

Hi

Bei CSD:  ST2378E Bidirektionaler Levelshifter

MfG Spess

von Rudolph R. (rudolph)


Angehängte Dateien:

Lesenswert?

Ich hänge das Bild einfach nochmal an.

Der BSN20 kostet bei Reichelt 9 Cent das Stück, Widerstände in 0805 
kosten einzeln 10 Cent das Stück - bei 4 Level-Shiftern also zusammen 76 
Cent.

Der FET muss bedrahtet sein? "ZVN 2110 A" - 35 Cent das Stück bei 
Reichelt.

von Teplotaxl X. (t3plot4x1)


Lesenswert?

Da es sehr wahrscheinlich ist, dass ich noch mehr ICs brauchen werde, 
die nur mit 3v3 funktionieren, ziehe ich mal die IC-Lösung mit 74HC4050 
und 74HCT125 vor. (Mehr I/O Ports auf kleinerem Raum)

von Rik (Gast)


Lesenswert?

Einfach bei Maxim kostenlos ein paar MAX3392E ordern..

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.