Johannes Hofmann schrieb:
> hallo
>
> Ich habe einen fertigen Code für einen MP3-Player und würde gern wissen,
> was hinter diesem Funktionsaufruf steckt.
>
>
1 | fopenc(ps.file_index,'r', "* MP3", &fp);
|
>
Es wird diese Funktion aus fat.c aufgerufen
1 | // only the 'r' mode is supported so far
|
2 | bool fopenc(u08 count, u08 mode, u08 *mask, FILE *stream){
|
3 | if(mode=='r'){
|
4 | u08 ret;
|
5 | ret = fio_dir_ctl(FIO_FILENUM, stream, NULL, mask, count);
|
6 | stream->file_offset = 0;
|
7 | /*
|
8 | USART_sendhex(stream->file_current_sectorh>>8);
|
9 | USART_sendhex(stream->file_current_sectorh);
|
10 | USART_sendhex(stream->file_current_sectorl>>8);
|
11 | USART_sendhex(stream->file_current_sectorl);
|
12 | */
|
13 | return ret;
|
14 | };
|
15 | return false;
|
16 | };
|
so gut wie alle Parameter werden an fio_dir_ctl weitergereicht.
Wenn du also wissen willst, wies weitergeht, dann suchst du dir diese
Funktion und siehst nach, was damit gemacht wird.