当前位置: 首页 > news >正文

岚山区建设局网站广州seo顾问服务

岚山区建设局网站,广州seo顾问服务,做企业网站申请域名,企业信用信息公示系统湖南一、sd和fatfs的配置流程界面 1、选择sd4bits 根据自己的sd卡的硬件插槽进行选择。 2、fatfs配置由于使用的是sd卡所以直接选择sd选项 3、程序中对sd卡的初始化需要进行改动,直接使用默认的参数sd卡是挂载不上的。 4、在sd卡挂载好后,就可以使用文件系统…

一、sd和fatfs的配置流程界面

1、选择sd4bits 根据自己的sd卡的硬件插槽进行选择。

在这里插入图片描述

2、fatfs配置由于使用的是sd卡所以直接选择sd选项

在这里插入图片描述

3、程序中对sd卡的初始化需要进行改动,直接使用默认的参数sd卡是挂载不上的。

在这里插入图片描述

4、在sd卡挂载好后,就可以使用文件系统的函数进行操作了。
写入

在这里插入图片描述

读取

在这里插入图片描述
注意:f_open后写和读取要分开操作,即写完后f_close以保持写入的内容,当需要读取时重新打开文件进行读取。

调试结果显示:

在这里插入图片描述

二、sd和fatfs的配置打开dma进行处理的流程界面

在这里插入图片描述

在使用f_write和f_read时会调用disk_write和disk_read。
下图就是其调用关系,f_read同理。
在这里插入图片描述

默认的disk_write和disk_read没用使用到dma,需要自己编辑对应的dma调用函数。
在这里插入图片描述

1、重新编写disk_write和disk_read函数
DRESULT disk_write (BYTE pdrv,		/* Physical drive nmuber to identify the drive */const BYTE *buff,	/* Data to be written */DWORD sector,		/* Sector address in LBA */UINT count        	/* Number of sectors to write */
)
//{
//  DRESULT res;//  res = disk.drv[pdrv]->disk_write(disk.lun[pdrv], buff, sector, count);
//  return res;
//}{uint8_t res=0;  if (!count)return RES_PARERR;//count不能等于0,否则返回参数错误		 	 switch(pdrv){case 0://SD卡res=SD_WriteDisk((uint8_t*)buff,sector,count);while(res)//写出错{MX_SDIO_SD_Init();	//重新初始化SD卡res=SD_WriteDisk((uint8_t*)buff,sector,count);	//printf("sd wr error:%d\r\n",res);}res=0;break;default:res=1; }if(res == 0x00)return RES_OK;	 else return RES_ERROR;	
} DRESULT disk_read (BYTE pdrv,		/* Physical drive nmuber to identify the drive */BYTE *buff,		/* Data buffer to store read data */DWORD sector,	        /* Sector address in LBA */UINT count		/* Number of sectors to read */
)
//{
//  DRESULT res;//  res = disk.drv[pdrv]->disk_read(disk.lun[pdrv], buff, sector, count);
//  return res;
//}
{uint8_t res=0; if (!count)return RES_PARERR;//count不能等于0,否则返回参数错误		 	 switch(pdrv){case 0://SD卡res=SD_ReadDisk(buff,sector,count);	 while(res)//读出错{MX_SDIO_SD_Init();	//重新初始化SD卡res=SD_ReadDisk(buff,sector,count);	//printf("sd rd error:%d\r\n",res);}res=0;break;default:res=1; }if(res==0x00)return RES_OK;	 else return RES_ERROR;	   
}
2、编写写sd卡的写入操作函数
//获取SD运行状态
uint8_t SD_GetCardState(void)
{return((HAL_SD_GetCardState(&hsd)==HAL_SD_CARD_TRANSFER )?SD_TRANSFER_OK:SD_TRANSFER_BUSY);
}//写SD卡
//buf:写数据缓存区
//sector:扇区地址
//blocksize:扇区大小(一般都是512字节)
//cnt:扇区个数	
//返回值:错误状态;0,正常;其他,错误代码;	
uint8_t SD_WriteBlocks_DMA(uint32_t *buf,uint64_t sector,uint32_t blocksize,uint32_t cnt)
{uint8_t err=0; uint32_t timeout=100000000;err=HAL_SD_WriteBlocks_DMA(&hsd,(uint8_t*)buf,sector,cnt);//通过DMA写SD卡n个扇区if(err==0){//等待SD卡写完while(SD_GetCardState()!=SD_TRANSFER_OK){if(timeout-- == 0){	err=SD_TRANSFER_BUSY;}} }return err;
}//写SD卡操作
//buf:写数据缓存区
//sector:扇区地址
//cnt:扇区个数	
//返回值:错误状态;0,正常;其他,错误代码;	
uint8_t SD_WriteDisk(uint8_t *buf,uint32_t sector,uint32_t cnt)
{   uint8_t sta=HAL_OK;long long lsector=sector;sta=SD_WriteBlocks_DMA((uint32_t*)buf,lsector,512,cnt);//多个sector的写操作return sta;
} 
3、编写写sd卡的读取操作函数
//通过DMA读取SD卡一个扇区
//buf:读数据缓存区
//sector:扇区地址
//blocksize:扇区大小(一般都是512字节)
//cnt:扇区个数	
//返回值:错误状态;0,正常;其他,错误代码;
uint8_t SD_ReadBlocks_DMA(uint32_t *buf,uint64_t sector,uint32_t blocksize,uint32_t cnt)
{uint8_t err=0;uint32_t timeout=100000000;err=HAL_SD_ReadBlocks_DMA(&hsd,(uint8_t*)buf,sector,cnt);//通过DMA读取SD卡n个扇区if(err==0){//等待SD卡读完while(SD_GetCardState()!=SD_TRANSFER_OK){if(timeout-- == 0){	err=SD_TRANSFER_BUSY;}} }return err;
}//读SD卡
//buf:读数据缓存区
//sector:扇区地址
//cnt:扇区个数	
//返回值:错误状态;0,正常;其他,错误代码;
uint8_t SD_ReadDisk(uint8_t* buf,uint32_t sector,uint32_t cnt)
{uint8_t sta=HAL_OK;long long lsector=sector;sta=SD_ReadBlocks_DMA((uint32_t*)buf,lsector, 512,cnt);return sta;
}  
http://www.khdw.cn/news/41638.html

相关文章:

  • 游戏网站建设项目规划书案例优化工具箱下载
  • 做网站首先必须切割图片吗优化网络的软件
  • 360建筑网 官方网站seo关键词优化策略
  • 深圳网站建设 罗湖灰色产业推广引流渠道
  • 建站公司的工作流程网页制作培训教程
  • 主要网站 开发语言商业推广软文范例
  • 建设厅执业注册中心网站网站排名优化培训课程
  • 网站网页不对称上海免费关键词排名优化
  • 网站制作完成后为了sem扫描电镜
  • 私自使用他人图片做网站宣传百度大全
  • 网站开发报价ppt谷歌竞价广告
  • 网站界面尺寸大小百度最怕哪个部门去投诉
  • 地方门户网站赚钱苏州搜索引擎优化
  • 安徽有几家做网站长沙百度快速优化排名
  • 怎么创建公司的个人网站电视剧百度风云榜
  • 怎么做和美团一样的网站深圳seo网站推广方案
  • 新疆建设云网站施工图审查靠谱的免费建站
  • 深圳专业网站建设seo快速排名优化公司
  • 网站建设费是百度指数查询工具app
  • 怎样创建公司网站中国500强最新排名
  • 达州北京网站建设成品网站源码在线看
  • 中国有什么网站做跨境零售郑州seo代理公司
  • 外贸公司网站推广关键词批量调词 软件
  • 西安网站开发的空间百度指数批量查询工具
  • 网站目录结构图线上运营推广方案
  • 阿里云做视频网站犯法吗网站品牌推广策略
  • 唐山医疗网站建设产品销售推广方案
  • 做百度网站每年的费用多少合适大连网站排名推广
  • 秦皇岛哪里做网站企业微信管理系统
  • 招商加盟网站开发关键词你们都搜什么