资源简介
在stm32f103中, 移植好的全部FATFS源码,并且封装了file_read ,file_write两个接口,二次开发只要根据自己的硬件,替换掉硬件读写口就行。有问题可以找我交流。
代码片段和文件信息
/*-----------------------------------------------------------------------*/
/* Low level disk I/O module skeleton for FatFs (C)ChaN 2014 */
/*-----------------------------------------------------------------------*/
/* If a working storage control module is available it should be */
/* attached to the FatFs via a glue function rather than modifying it. */
/* This is an example of glue functions to attach various exsisting */
/* storage control modules to the FatFs module with a defined API. */
/*-----------------------------------------------------------------------*/
#include “includes.h“
#include “stm32f10x.h“
#include “system_api.h“
#include “mx25xx.h“
#include “diskio.h“
/*
*cluster/block: 同一个东西的不同叫法
* 在Windows下如NTFS等文件系统中叫做簇;
* 在Linux下如Ext4等文件系统中叫做块(block)
*
*sector: 即为扇区
*
*每个簇/块包含2的N次方个扇区
*/
#define MX25L32
#if defined MX25L16
#define MX25_DENST 0x15
#define FS_SECTOR_SIZE 512 /*512字节一个sector*/
#define FS_SECTOR_COUNT (2048*2) /*MX25L16一共2M,2*1024*1024/512 = 4096个sector*/
#define FS_BLOCK_SIZE 8 /*8个sector划为一个block\cluster*/
#elif defined MX25L32
#define MX25_DENST 0x16
#define FS_SECTOR_SIZE 512 /*512字节一个sector*/
#define FS_SECTOR_COUNT (2048*4) /*MX25L32一共4M,4*1024*1024/512 = 8192个sector*/
#define FS_BLOCK_SIZE 8 /*8个sector划为一个block\cluster*/
#else
#define MX25_DENST 0x17
#define FS_SECTOR_SIZE 512 /*512字节一个sector*/
#define FS_SECTOR_COUNT (2048*8) /*MX25L64一共8M,8*1024*1024/512 = 16384个sector*/
#define FS_BLOCK_SIZE 8 /*8个sector划为一个block\cluster*/
#endif
/**
* @brief
* @param
* This parameter can be one of the following values:
@
@param
@param
* @retval
* This parameter can be one of the following values:
*/
DSTATUS disk_initialize (
BYTE drv /* Physical drive nmuber (0..) */
)
{
struct exflash_id flashid;
mx25_init();
mx25_id_read(&flashid);
if(flashid.vendor!= MX25_DENST)
return RES_ERROR;
return RES_OK;
}
/**
* @brief
* @param
* This parameter can be one of the following values:
@
@param
@param
* @retval
* This parameter can be one of the following values:
*/
DSTATUS disk_status (
BYTE drv /* Physical drive nmuber (0..) */
)
{
return RES_OK;
}
/**
* @brief
* @param
* This parameter can be one of the following values:
@
@param
@param
* @retval
* This parameter can be one of the following values:
*/
DRESULT disk_read (
BYTE drv /* Physical drive nmuber to identify the drive */
BYTE *pbuf /* Data buffer to store read data */
DWORD sector /* Sector address in LBA */
UINT count /* Number of sectors to read */
)
{
for(; count > 0; count--)
{
mx25_read(sector*FS_SECTOR_SIZE pbuf FS_SECTOR_SIZE);
sector++;
pbuf += FS_SECTOR_SIZE;
}
return R
属性 大小 日期 时间 名称
----------- --------- ---------- ----- ----
文件 796 2015-09-05 12:51 fatfs\00readme.txt
文件 5133 2018-04-25 13:20 fatfs\diskio.c
文件 2724 2017-03-20 12:47 fatfs\diskio.h
文件 154279 2017-03-20 11:31 fatfs\ff.c
文件 13549 2017-03-20 16:18 fatfs\ff.h
文件 11350 2017-03-08 18:13 fatfs\ffconf.h
文件 3644 2018-03-31 21:46 fatfs\fs_api.c
文件 1139 2018-03-24 13:21 fatfs\fs_api.h
文件 704 2017-03-20 16:30 fatfs\integer.h
文件 249488 2014-05-19 00:56 fatfs\option\cc932.c
文件 724232 2014-05-19 00:56 fatfs\option\cc936.c
文件 567684 2014-05-19 00:56 fatfs\option\cc949.c
文件 450696 2014-05-19 00:56 fatfs\option\cc950.c
文件 30169 2014-05-19 00:56 fatfs\option\ccsbcs.c
文件 4705 2014-06-21 12:17 fatfs\option\syscall.c
文件 397 2014-05-19 00:56 fatfs\option\unicode.c
目录 0 2018-03-24 11:50 fatfs\option
目录 0 2018-08-03 11:14 fatfs
----------- --------- ---------- ----- ----
2220689 18
- 上一篇:MCNP计算
- 下一篇:利用栈求表达式的值,可供小学生作业,并能给出分数
相关资源
- STM32F407驱动LCD12864代码 LCD12864带中文
- 四线两相步进电机控制 Stm32F407 定时
- 基于STM32F407的 DMA + DAC 定时器触发实现
- stm32 tsl2561测试
- STM32 CAN发送和接收最详细介绍
- BUCK充电板
- STM32的通用定时器Timer(库函数)
- sht31 温湿度传感器stm32 实现
- STM32HAL_BH1750驱动_模拟IIC
- stm32f030+PWM->IR红外(38K)自定义格式
- 基于STM32的ICM20602陀螺仪数据获取
- HY-STM32 电路原理图
- Keil5配置GCC编译器编译STM32工程
- 论文研究-基于STM32的WiFi数据收发模块
- 学好 STM32,只要弄懂这 20 个经典项目
- STM32f103c8t6编码器.zip
- 基于STM32智能窗户的设计与实现.pdf
- 电子-KBPC610.pdf
- 基于stm32的典型工控板-立创基于stm3
- bootloader+上位机.rar
- 贝一特 STM32F103ZET6 V3.0核心板电路图
- STM32F1-MPU9250陀螺仪源码
- 基于stm32的GPRS通信
- STM32F105_OBDII_CAN CODE
- HI226HI229 6轴姿态传感器在STM32下的串口
- ADS1256 包含.c.h文件 stm32f407 SPI
- stm32 f407 各个模块引脚整理
- stm32f4+emwin电子日历
- STM32F407系列ZG/VG/IG原理图封装全
- STM32 tcp/ip通讯
评论
共有 条评论