Hi,
ich versuche gerade die FAT-Bibliothek von Elm Chan in Betrieb zu
nehmen. Soweit klappt die Kommunikation mit der SD-Card, aber jetzt hab
ich ein ganz anderes Problem. Eine Stringkonstante in der ich den
Dateinamen definiere kommt nicht in der aufgerufenen Funktion an.
1 | main{
|
2 | f_mount(0,&fs);
|
3 |
|
4 | err= f_open(&file1,"test2.txt",FA_CREATE_ALWAYS | FA_WRITE);
|
5 | }
|
6 |
|
7 | und so sieht der Anfang der Funktion aus
|
8 |
|
9 | FRESULT f_open (
|
10 | FIL *fp, /* Pointer to the blank file object */
|
11 | const XCHAR *path, /* Pointer to the file name */
|
12 | BYTE mode /* Access mode and file open mode flags */
|
13 | )
|
14 | {
|
15 | FRESULT res;
|
16 | DIR dj;
|
17 | NAMEBUF(sfn, lfn);
|
18 | BYTE *dir;
|
19 |
|
20 |
|
21 | fp->fs = NULL; /* Clear file object */
|
Wenn ich in f_open mir den Wert von path ausgeben lasse bekomme ich nur
einen leeren String angezeigt. (JTAG Debugging)
Woran kann das liegen?
Noch eine andere Sache die mich etwas beunruhigt: Der Compiler spukt am
Ende die Message:
Program: 7726 bytes (23.6% Full)
(.text + .data + .bootloader)
Data: 2378 bytes (116.1% Full)
(.data + .bss + .noinit)
Woher kommen die 116,1%? Kann das was mit meinem Problem zu tun haben?
Gruß
Tom