Работаю по SPI с SD картой. Карта читается при разных размерах блока нормально, все отклики правильные. Если пробовать писать с размером блока отличным от 512 отвечает ошибкой на MMC_WRITE_BLOCK. Ставлю размер блока 512, начинается запись, после отправки 2х байт CRC читаю ответ ожидая получить MMC_DR_ACCEPT, но получаю 0хF2.
Код
// Data Response Token values
#define MMC_DR_MASK 0x1F // 00011111
#define MMC_DR_ACCEPT 0x05 // 00000101
#define MMC_DR_REJECT_CRC 0x0B // 00001011
#define MMC_DR_REJECT_WRITE_ERROR 0x0D // 00001101
// 00010010 f2
ничего похожего в ответе быть не должно, карточка рабочая. Несмотря на ошибку данные в карточку записываются.