|
忙里偷闲学习ufun_17] SDIO_MMC、SD+FatFs
[复制链接]
网上下载别人的例程修改而来,现在完全可以跑了
/**********************************************************
主函数
**********************************************************/
int main(void)
{
u8 SDtatus; //SD卡初始化状态
u8 i;
RCC_Config();
NVIC_PriorityGroupConfig(NVIC_PriorityGroup_2); //设置中断分组
USARTx_Init(9600); //初始化串口,设置波特率为9600bps
printf("Software Compiled Time: %s, %s.\r\n",__DATE__, __TIME__); //获取软件编译时间
delay_init(72); //初始化延时函数
mem_init(SRAMIN); //初始化内部内存池
myf_init(); //为文件系统申请内存
printf("Software Compiled Time: %s, %s.\r\n",__DATE__, __TIME__); //获取软件编译时间
/*******************我是美丽的分割线******************/
/******************************************************
SD卡初始化
******************************************************/
if(SD_Init() != SD_OK) //初始化失败
{
SDtatus = SD_Init();
printf("The Faild is:%d\r\n", SDtatus);
}
else //初始化成功了
{
SD_Card_Printf_Info(); //打印卡信息到串口
}
/*******************我是美丽的分割线******************/
/******************************************************
测试FatFs用函数
******************************************************/
f_res = f_mount(0, fs[0]); //挂载SD卡
printf("f_mount res :%d\r\n", f_res);
//读测试
f_res = f_open(filescr, "0:/demo.txt", FA_OPEN_DEFAULT); //打开文件
printf("f_open res :%d\r\n", f_res);
if(f_res == FR_OK) //打开文件成功
{
f_res = f_read(filescr, SDdatabuff, 30, &br); //读取文件内容
printf("f_read res :%d\r\n", f_res);
f_res = f_close(filescr); //关闭文件
printf("f_close res :%d\r\n", f_res);
printf("read string is: %s", SDdatabuff); //打印到串口
}
else //打开失败
{
}
//写测试
f_res = f_open(filedst, "0:/test.txt", FA_OPEN_NEW_COVER); //创建文件,如果存在则覆盖
printf("\r\nf_open res :%d\r\n", f_res);
f_res = f_write(filedst, test_buff, sizeof(test_buff), &bw); //写入字符串
printf("f_write res :%d\r\n", f_res);
f_res = f_close(filedst); //关闭文件
printf("f_close res :%d\r\n", f_res);
//打开刚才创建的文件
f_res = f_open(filescr, "0:/test.txt", FA_OPEN_DEFAULT); //打开文件
printf("f_open res :%d\r\n", f_res);
f_res = f_read(filescr, SDdatabuff, 30, &br); //读取文件内容
printf("f_read res :%d\r\n", f_res);
f_res = f_close(filescr); //关闭文件
printf("f_close res :%d\r\n", f_res);
printf("read string is: %s", SDdatabuff);
/*******************我是美丽的分割线******************/
18SDIO_MemSDFatFs.rar
(754 KB, 下载次数: 18)
|
|