Forum: Mikrocontroller und Digitale Elektronik SD-Karte in ASM ansprechen


von Sven (Gast)


Lesenswert?

Üblicherweise sind SD-Karten-Projekte in C geschrieben, zumindest die 
ich bis jetzt gefunden habe.

Nun bin ich überzeugter ASM-Masochist und hab Null Ahnung von C, 
deswegen würde ich gern wissen, bevor ich ein Projekt mit SD-Karte 
umsetze: Kann man mit vertretbarem Aufwand SD-Karten-Routinen auf ASM 
portieren? Ich brauche nur Init der Karte und Daten aus 1 von 5 Files 
lesen, nix schreiben, nix cd oder löschen.

Die Karte soll Fat-16 formatiert sein, 16Mbyte, bekommt vom PC 5 
Sounddateien in Wav oder modifiziertem Wav-Format aufgespielt, wird an 
den AVR gehangen, der die Dateien dann auf Tastendruck auswählt und über 
PWM oder DAC ausgibt.

Für die, die es immer genau wissen wollen: Soll eine Türklingel mit 
mehreren Sounds werden. ;-)

von MarioT (Gast)


Lesenswert?


von Sven (Gast)


Lesenswert?

Danke.

Mein Fehler, ich hätte gleich nach Masochist und nicht nach ASM suchen 
sollen. ;-)

von MarioT (Gast)


Lesenswert?

Wenn Du nur 5 feste Dateien Abspielen willst, geht das aber auch ohne 
dem ganzen FAT Zeug.

von Sven (Gast)


Lesenswert?

Aber wie bekomme ich die Dateien ohne Fat vom PC direkt auf die Karte?

Den Umweg, die Daten über den AVR reinzuschreiben würde ich gern 
vermeiden. Die Kommunikation über Serielle wäre sicher kein Problem, 
aber ich müsste die Klingel immer abbauen, wenn ich mal die Sounds 
ändern will. So muss nur Karte raus, Sounds aufspielen, Karte wieder 
rein.

Und der Karte ohne Filesystem im Cardreader Daten zu verpassen wie 
früher bei den alten Festplatten, wo man einzelne Bytes ansprechen 
konnte, wird wohl der Treiber / das Betriebssystem nicht mitmachen.

von Bob (Gast)


Lesenswert?

Mit rlinux kann man ganz einfach die daten an bestimmte stellen der 
karte schreiben... so habe ich damals schrittweise die vs1011-ausgabe 
getestet.
einfach die karte im hexfenster anzeigen lassen. unter options write 
aktivieren, stelle wählen und dann die daten aus binary-file laden.

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.