5.3 SPI模式下: 向SD卡发送数据包步骤(SDCardSendData) 5.4 SPI模式下: 从SD卡读取数据包步骤(SDCardRecvData) 5.5 SPI模式下: 向SD卡指定扇区写数据(SDCardWriteData) 5.6 SPI模式下: 从SD卡读取指定扇区数据(SDCardReadData) 5.7 SPI模式下: 获取SD卡的总扇区数(GetSDCardSectorCount) 六、示例代码 6.1 ...
mount()函数挂载TF卡,接下来根据待写入字符串的长度,通过sd_write_data()函数和sd_read_data()函数...
如果主机使用的部分块的累计长度没有块对齐,并且不允许块错位(CSD参数WRITE_BLK_MISALIGN未设置),则卡应在第一个错位块开始之前检测到块错位错误并中止编程。 卡应该在状态寄存器中设置ADDRESS_ERROR错误位,同时忽略所有进一步的数据传输,在Receive-data-State中等待停止命令。 注意,第一个数据块对于写命令是不对齐的(...
u8 SDCardReadWriteOneByte(u8 data);//底层接口,SPI读写字节函数 u8 SDCardDeviceInit(void);//初始化void SDCardReadData(u8*buf,u32 sector,u32 cnt);//读块(扇区) void SDCardWriteData(u8*buf,u32 sector,u32 cnt);//写块(扇区) u8 SDCardSendData(u8*buf,u8 cmd);//发送数据包 u8 SDCard...
70 int sd_read_data(char *file_name,u32 src_addr,u32 byte_len) 71 { 72 FIL fil; //文件对象 73 UINT br; //f_read函数返回已读出的字节数 74 75 //打开一个只读的文件 76 f_open(&fil,file_name,FA_READ); ...
< SDMMC data length register, Address offset: 0x28 */__IO uint32_tDCTRL;/*!< SDMMC data control register, Address offset: 0x2C */__I uint32_tDCOUNT;/*!< SDMMC data counter register, Address offset: 0x30 */__I uint32_tSTA;/*!< SDMMC status register, Address offset: 0x34 *...
res = f_open(&file, "/file.c", FA_OPEN_ALWAYS | FA_READ | FA_WRITE); if(res==0) { printf("文件创建成功!!\n"); } else { printf("文件创建失败!!\n"); } res =f_write(&file,buff,strlen((const char*)buff),&data); if(res==0) { printf("数据写入成功...
while(SdRead()==0); dataResp=dataResp&0x0f; //mask the high byte of the DATA RESPONSE token SD_CS=1; SdWrite(0xff); if(dataResp==0x0b) { //printf(“DATA WAS NOTACCEPTED BY CARD -- CRC ERROR\n”); return 0; } if(dataResp==0x05) ...
函数参数:data是要写入的数据 返回值:读到的数据 */u8SDCardReadWriteOneByte(u8DataTx) {u8i;u8data=0;for(i=0;i<8;i++) { SDCARD_SCK=0;if(DataTx&0x80)SDCARD_MOSI=1;elseSDCARD_MOSI=0; SDCARD_SCK=1; DataTx< <=1; data< <=1;if(SDCARD_MISO)data|=0x01; ...
这个处理数据响应的函数SD_GetDataResponse与R1响应的处理类似,它循环调用SD_ReadByte读取SD返回的响应,把接收到的响应与 代码清单:SD-6 定义的数据响应枚举类型SD_DATA_OK、 SD_DATA_CRC_ERROR及SD_DATA_WRITE_ERROR进行比较,直到检测到SD_DATA_OK(即响应正常)或检测超时才退出,最后把检测结果以函数返回值返回。