Hallo zusammen, habe hier mal wieder ein kleines Problem, ich bin gerade bei der Planung meiner 2. Heizungssteuerung. Bevor ich mir mit der Software alles verbaue, möchte ich mal einen Gedankengang weiterverfolgen. Ich möchte die eingehenden Messwerte speichern und anschließend zum PC übertragen. TCP/IP & co fällt aus wegen zu schwer und zu komplex. Externes EEprom (begrenzter Speicher) über I²C oder MMC (viel Speicher)Karte, anschließend die Daten über RS-232 abrufen. Wenn die Karte im System verbleibt, kann man diese einfach Sektor für Sektor beschreiben ohne FAT16 zu benötigen? Nachteil immer mit dem Laptop in den Heizungskeller. Über einen gesonderten Menüpunkt würde ich - Daten auslesen (übertragen) - Daten löschen anwählen können um damit den kompletten Inhalt der Karte zum Laptop zu übertragen bzw. nach erfolgreicher Übertragung die Karte zu löschen oder einfach weiterzuschreiben. Wenn die Daten alle 2-12 Monate ausgelesen werden, hält sich der Aufwand in grenzen ;) Noch günstiger wäre natürlich ein linearer Speicherzugriff an ADDR 0 steht die Position des letzten Eintrages und dann könnte ich die Daten nur noch reinschieben. Ist sowas mit einer MMC Karte möglich? Gruß, Tubie
So... habe mich mal ein wenig in die ganze sache eingelesen... Ich meine irgendwo mal gelesen zu haben, das die Sectorengröße bei den meisten MMC Cards variabel ist. hier: http://elm-chan.org/docs/mmc/mmc_e.html habe ich mich informiert und habe noch ein paar fragen: Nach der initialisierung CMD1 ist die Karte normal geöffnet und ich kann lese /schreib Operationen durchführen? Mit CMD16(SET_BLOCKLEN) kann man die größe der Blöcke, die geschrieben werden verändern. Wenn ich pro Schreibvorgang nun 30 Bytes schreiben möchte, so könnte ich doch diesen wert auch auf 30 setzen und mit CMD17 (READ_SINGLE_BLOCK) den entsprechenden Datensatz aus der karte wieder laden (eben diese 30 Bytes) gruß, Tubie
Hi! <Mit CMD16(SET_BLOCKLEN) kann man die größe der Blöcke, die geschrieben <werden verändern. Nein, richtig lesen. Die Schreibblocklänge ist immer auf 512 Byte festgelegt, nur lesen geht auch kürzer. MFG Uwe
Hallo Uwe, in der Beschreibung hinter CMD16 steht aber "Change R/W block size". Mal sehen, vielleicht schaffe ich es morgen mal eine MMC Karte an einen µC zu klemmen. Dann weiß ich genaueres. Wäre natürlich absolut Genial. Dann könnte ich wirklich die einzelnen Datensätze adressieren und bräuchte mir um deren Anfang keine Gedanken machen. Vielleicht aber nur ein Tippfehler. Gruß, Tubie
Na da bin ich gespannt, denn die Block-size bleibt auf 512. Steht in jeder MMC-Spezifikation. Da gibts keine Ausnahme...
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.