Файловая система micrium получает оставшееся пространство
Мне интересно, есть ли какие-либо встроенные функции для uC/FS, чтобы получить объем памяти, оставшийся на моей SD-карте в формате FAT32.
Большое спасибо.
PS. Я посмотрел вокруг, но, кажется, не смог найти его в руководстве.
1 ответ
Решение
Чтобы получить объем свободного пространства на томе µC/FS, вы используете функцию FSVol_Query() и вычисляете объем свободного пространства, используя данные, возвращаемые в структуре FS_VOL_INFO.
FS_VOL_INFO vol_info;
CPU_INT64U size_rem;
FS_ERR err;
FSVol_Query("sdcard:0:", &vol_info, err);
if (err != FS_ERR_NONE) {
/* oops, something went wrong, handle error */
}
size_rem = vol_info.VolFreeSecCnt * vol_info.DevSecSize;
Где "sdcard:0:" следует заменить именем тома, для которого вы хотите получить объем свободного места. Эта функция описана в разделе A-7-12 руководства пользователя.
Если вы используете предыдущую (V3.X) версию, проверьте функцию FS_GetVolumeInfo().