通过阅读FatFs源码发现,diskio.c文件中提供了4个接口函数(API):- extern int MMC_disk_status(); $ V7 u m& u& T
- extern int MMC_disk_initialize(); p$ `7 S& i$ ^
- extern int MMC_disk_read(8 M3 [) {( k" R. E6 Y
- BYTE *buff, /* Data buffer to store read data */+ a9 M2 T/ o2 T/ d! B' {) j
- DWORD sector, /* Sector address in LBA *// b% t7 ], n1 M$ D D$ Z
- UINT count /* Number of sectors to read */0 ~$ ] ]' @7 o
- ); 7 o% }8 z3 ]& V3 f2 A. S
- extern int MMC_disk_write(
2 U- i0 U7 m7 K# J: y - const BYTE *buff, /* Data buffer to store read data */
. p% E# X' c- A. { - DWORD sector, /* Sector address in LBA */
) u% e# D5 ? n( i x/ u - UINT count /* Number of sectors to read */" K7 g: R+ T* @1 F+ ?5 \
- );
复制代码 它只有一个框架,这个函数需要我们自己去实现它,你可以在diskio.c中实现,为了层次清晰,我新建了驱动层spi_sd.c文件,并实现了初始化。 W; h5 p! \* N! ?5 c
朋友们以后移植的时候只修改此文件即可,ff.c是不需要修改的哦~~·. F3 v; F ^( {- }3 F
8 U1 c6 r( B& u4 G5 X4 g% k1 T) W
3 Q* d5 Z$ N7 J
4 f& z7 y! w4 u0 N2 ]7 y
6 b- c# ~, p- T& H6 I9 z9 g% @" G0 ~* T) G) }4 ]
|