Цитата(inventor @ May 19 2015, 14:29)

если карта полудохлая - то время записи на нее может меняться.
Нет объективных причин ждать и ничего не делать пока карта готовится к записи.
У меня работа с sd-картой построена так, что в mainloop я вызываю асинхронные запросы для карты (выполняются очень быстро),
а она по результату выполнения вызывает callback. Вся основная работа выполнена через прерывания и DMA. Причем интерфейс
подключения хоть SDIO, хоть SPI. Советую подумать над архитектурой или задействовать RTOS. Ждать у моря погоды - дурной
тон в программировании.