hallo, wer kann diese schleife von winavr-c erklären : While (mmc_read_byte() != 0xfe){}; danke. mfg
Sieht so aus, als wird die Funktion "mmc_read_byte" wiederholt aufgerufen, bis sie ein bestimmtes Ergebnis (0xfe) zurückliefert; man könnte hier spekulieren, daß vielleicht an dem 0xfe ein Dateiende oder ähnliches erkannt wird.
Wenn man von der MMC/SD Karte einen Sektor anfordert, antwortet die Karte solange mit 0xFF bis sie Daten intern bereitgestellt hat. Das 0xFE signalisiert dann den Beginn der Nutzdaten. Das nächste Byte ist das erste Byte des angeforderdeten Sektors. Ebenso beim Schreiben auf die Karte. Vor den eigentlichen Nutzdaten muss man ein 0xFE senden. Die foldenden (n=SektorSize) Bytes werden dann (hoffentlich ;) auf die Karte geschrieben. Werner
Wobei Du Dir die leere Klammer "{}" komplett sparen kannst...
Alternativ kann man auch das Semikolon sparen (aber nicht Klammern UND Semikolon, nur eins von beiden). Außerdem fehlt noch ein
1 | #define While while
|
;-)
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
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.