SD Karte AVR

OP #1593944
Lesenswert?

Hallo
ich weiß das es schon sehr viele gute Threads über SD Karten gibt, da 
ich den Überblick verloren habe und es eine Frage gibt welche ich nicht 
beantworten kann würde ich die Experten um Hilfe bitten.

Ich will mit einem AVR644p eine SD Karte beschreiben, sodass diese von 
einem Computer ausgelesen werden kann. 3,3V µC kann ich keinen verwenden 
da ich andere Peripherie habe welche 5V benötigt. Ich habe gelesen das 
es besser ist mit einem Spannungswandler und beschaltung die 3,3V 
Versorgungsspannung zu erzeugen. Weiters soll es sinnvoll sein einen 
Pegelwandler(74LVX125) zu verwenden. Laut dieser 
Seite(http://www.dl8nci.de/sdcard001.html) muss man wenn man Hardware 
SPI und ISP Programmierschnittstelle verwenden einen Multiplexer 
verwenden. Stimmt das?

Außerdem wird ein I2C-parallel-Port zur Überwachung und Steuerung 
diverser Signale (u.a. card detct, write protect und Stromversorgung der 
SD-Karte (PCF8574A) verwendet. Wofür wird der benötigt, habe keine 
Erklärung gefunden?

Laut Microcontroller. net ist ein Pullup-Widerstand am Ausgang der 
MMC/SD Karte (DO) ist für eine saubere Initialisierung per SPI 
notwendig! Habe ich was vergessen?

Mfg Gerhard Huber
#1593991
Lesenswert?

Da ich recht unbegabt im Löten bin habe ich mir folgendes SD-Karten 
Board gekauft:
http://www.steitec.net/Interface-Boards/Mini-SD-MMC-Modul.html

Auch ich hatte das Problem mit einem 5 Volt Mikrocontroller, aber wenn 
Du auf der Seite die PDF Anleitung ab Seite 28 ansiehts, ist eine 
Beispielschaltung mit 74LXX245 Level Shifter. Habe es genau so 
nachgebaut und es klappt einwandfrei.
#1594159
Lesenswert?

Gerhard Huber schrieb:
> Ich habe gelesen das
> es besser ist mit einem Spannungswandler und beschaltung die 3,3V
> Versorgungsspannung zu erzeugen.
ist auf jeden Fall zum empfehlen

> Weiters soll es sinnvoll sein einen
> Pegelwandler(74LVX125) zu verwenden.
kann man machen, geht aber meist auch mit Spannungsteiler problemlos

> Laut dieser
> Seite(http://www.dl8nci.de/sdcard001.html) muss man wenn man Hardware
> SPI und ISP Programmierschnittstelle verwenden einen Multiplexer
> verwenden. Stimmt das?
Nein, ziehe einfach die Karte beim programmieren raus, oder sorge dafür, 
das CS während des programmierens auf High liegt

> Außerdem wird ein I2C-parallel-Port zur Überwachung und Steuerung
> diverser Signale (u.a. card detct, write protect und Stromversorgung der
> SD-Karte (PCF8574A) verwendet. Wofür wird der benötigt, habe keine
> Erklärung gefunden?
Als einzige Erklärung für die Verwendung eines I2C-Busexpanders kommt 
wohl Portmangel infrage, wenn du am AVR noch genug PIN's hast kannst du 
die Signale auch damit überwachen

> Laut Microcontroller. net ist ein Pullup-Widerstand am Ausgang der
> MMC/SD Karte (DO) ist für eine saubere Initialisierung per SPI
> notwendig! Habe ich was vergessen?
Pullup?? Wozu?

Sascha
Gast #1594198
Lesenswert?

>> Weiters soll es sinnvoll sein einen
>> Pegelwandler(74LVX125) zu verwenden.
>kann man machen, geht aber meist auch mit Spannungsteiler problemlos

Dabei das "meist" beachten. Geht genauso oft in die Hose.

>> Laut Microcontroller. net ist ein Pullup-Widerstand am Ausgang der
>> MMC/SD Karte (DO) ist für eine saubere Initialisierung per SPI
>> notwendig! Habe ich was vergessen?
>Pullup?? Wozu?

Weil die SD Karte nicht sofort den DO auch auf PushPull
umschaltet. Mit Pullup hat man weniger Probleme.
#1594567
Lesenswert?

Gerhard Huber schrieb:
> Danke für die Antworten
> Hallo kannst du mir die Signale wie Card detect erklären welche ich mit
> dem AVR überwachen soll. Mfg Gerhard

Da gibts nicht viel zu erklären, CardDetect und WriteProtect sind simple 
Schaltkontakte im SD-Karten-Adapter die elektrisch nichts mit der 
SD-Karte zu tun haben, die kannst du verwenden oder ignorieren wie es 
dir beliebt. Es gibt auch SD-Karten-Adapter die diese Schaltkontakte gar 
nicht haben.

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