Hallo Zusammen, ich lese schon seit ein paar Tagen den Code für den Zugriff auf die SD-Karte aber ich komme nicht weiter. Was genau macht die Funktion hardware/storage/vfs_sd.c -> vfs_sd_chdir() ?
Wenn ich versuche, eine Datei in einem Unterverzeichnis anzulegen, geht es auf diese Weise schief: uint8_t filelogger_init (const char *dirname, char *filename) { // dirname = "xyz" struct fat_dir_struct * dir_struct; if ( ( dir_struct = vfs_sd_chdir(dirname)) == NULL) { vfs_sd_mkdir_recursive( dirname ); vfs_sd_chdir(dirname); } // filename = "/xyz/1234.txt"; struct vfs_file_handle_sd_t * filelogger_handle; if ( (filelogger_handle = vfs_sd_open(filename)) == NULL ) { if ( (filelogger_handle = vfs_sd_create(filename)) == NULL ) { debug_printf("could not open file"); return 1; // schlaegt hier fehl // oder // bei filename = "1234.txt"; // wird die Datei im Root- und nicht im Unterverzeichnis erzeugt..) } } } Wenn ich vfs_sd_chdir jedoch gar nicht aufrufe, haut es hin (wenn das Verzeichnis existiert). uint8_t filelogger_init (char *filename) { // filename = "/xyz/1234.txt"; struct vfs_file_handle_sd_t * filelogger_handle; if ( (filelogger_handle = vfs_sd_open(filename)) == NULL ) { if ( (filelogger_handle = vfs_sd_create(filename)) == NULL ) { debug_printf("could not open file"); return 1; } } return 0; } Kann mir jemand auf die Sprünge helfen? Was macht vfs_sd_chdir()? Deren Rückgabewert vom Typ struct fat_dir_struct * kann ich auch nirgendwo weiterverwenden. Selbst ein verzweifeltes vfs_sd_rootnode = vfs_sd_chdir() hat mich nicht weitergebracht. Über Tips wäre ich dankbar! Viele Grüße Meinhard _______________________________________________ Ethersex-devel mailing list Ethersex-devel@list.zerties.org http://list.zerties.org/cgi-bin/mailman/listinfo/ethersex-devel