资源简介
SD卡驱动代码,使用SPI接口(模拟+硬件都有),附带FATFS文件系统及测试样例,不是整个工程,但也很方便移植的(只需要在main.c中初始化IO口,即可直接使用文件系统的函数驱动SD卡了)。

代码片段和文件信息
/**
******************************************************************************
* @file SPI_MSD0_Driver.c
* $Author: wdluo $
* $Revision: 17 $
* $Date:: 2012-07-06 11:16:48 +0800 #$
* @brief 主函数.
******************************************************************************
* @attention
*
*© Copyright 2009-2012 ViewTool
*http://www.viewtool.com
*All Rights Reserved
*
******************************************************************************
*/
/* Includes ------------------------------------------------------------------*/
#include “sd_spi.h“
#include “delay.h“
#include “usart2.h“
/* Private define ------------------------------------------------------------*/
#ifdef PRINT_INFO
uint8_t SD_SPI_Printf_Buff[SD_SPI_PRINTF_BUFF_LEN] = {0};
uint8_t SD_SPI_Printf_Len = 0;
#endif
/* Private variables ---------------------------------------------------------*/
MSD_CARDINFO SD0_CardInfo;
/*******************************************************************************
* Function Name : MSD0_spi_read_write
* Description : None
* Input : - data:
* Output : None
* Return : None
* Attention : None
*******************************************************************************/
//__inline int MSD0_spi_read_write(uint8_t data)
//{
// /* Loop while DR register in not emplty */
// //while (SPI_I2S_GetFlagStatus(SPI1 SPI_I2S_FLAG_TXE) == RESET);
// while(!(SPI1->SR & SPI_I2S_FLAG_TXE));
// /* Send byte through the SPI1 peripheral */
// //SPI_I2S_SendData(SPI1 data);
// SPI1->DR = data;
// /* Wait to receive a byte */
// //while (SPI_I2S_GetFlagStatus(SPI1 SPI_I2S_FLAG_RXNE) == RESET);
// while(!(SPI1->SR & SPI_I2S_FLAG_RXNE));
// /* Return the byte read from the SPI1 bus */
// //return SPI_I2S_ReceiveData(SPI1);
// return SPI1->DR;
//}
u8 flag_speed = 0; //0--低速 1--高速
u8 MSD0_spi_read_write(u8 byte)
{
u8 i Dat = 0;
// SD_CS_LOW();
if(flag_speed == 0)
{
delay_ms(1);
}
for(i=0;i<8;i++)
{
Dat<<=1;
SD_SCK_LOW();
if(flag_speed == 0)
{
delay_ms(1);
}
(byte&0x80)? SD_MOSI_HIGH() : SD_MOSI_LOW(); //三目运算符传输数据
SD_SCK_HIGH();
if(flag_speed == 0)
{
delay_ms(1);
}
Dat |= READ_SD_MISO();
byte<<=1;
if(flag_speed == 0)
{
delay_ms(1);
}
}
// SD_CS_HIGH();
delay_ms(1);
// SD_MOSI_HIGH(); // 释放MOSI
return Dat;
}
/*******************************************************************************
* Function Name : MSD0_SPI_Configuration
* Description : SD Card SPI Configuration
* Input : None
* Output : None
* Return : None
* Attention : None
*******************************************************************************/
void MSD0_SPI_Configuration(void)
属性 大小 日期 时间 名称
----------- --------- ---------- ----- ----
文件 6505 2011-09-06 00:06 FATFS\00readme.txt
文件 7585 2020-07-31 09:56 FATFS\diskio.c
文件 2438 2011-01-03 21:11 FATFS\diskio.h
文件 141694 2020-08-03 15:57 FATFS\ff.c
文件 12334 2011-09-05 13:42 FATFS\ff.h
文件 7519 2020-08-10 16:11 FATFS\ffconf.h
文件 856 2010-04-24 23:45 FATFS\integer.h
文件 249488 2010-05-09 23:52 FATFS\option\cc932.c
文件 724232 2010-04-29 17:38 FATFS\option\cc936.c
文件 567684 2010-05-08 23:28 FATFS\option\cc949.c
文件 450696 2010-04-29 17:38 FATFS\option\cc950.c
文件 30169 2010-08-25 00:22 FATFS\option\ccsbcs.c
文件 4709 2011-05-21 18:01 FATFS\option\syscall.c
文件 9286 2020-08-14 09:49 sd_spi.h
文件 25988 2020-08-14 09:50 sd_spi.c
文件 1652 2020-08-14 10:53 sd_task.h
文件 8418 2020-08-26 16:18 sd_task.c
..AD... 0 2020-08-26 16:16 FATFS\option
目录 0 2020-08-26 16:16 FATFS
----------- --------- ---------- ----- ----
2251253 19
- 上一篇:川大数据库考试试题
- 下一篇:EndNotechinesest
yle.rar
相关资源
- SD卡,TF卡修复工具 能够恢复SD卡的真
- 51模拟SPI读写SD卡(包括Fat和Fat32文件
- 51单片机读取温度数据存储到SD卡中并
- Surface pro 7 SD卡固定硬盘X64驱动带数字
- 基于stm32F103vct6的SD卡FATFS文件系统移植
- stm32利用spi驱动tm1803
- ADC采集数据存储SD卡和读取程序
- STM32F429DISCOVERY外接SD卡使用SDIO4BIT方式
- SD协议中文2.0 3.0
- Surface pro 7 SD卡固定硬盘X64驱动带数字
- STM32F407 SD卡IAP升级
- fpga读写sd卡Verilog代码
- stm32F103RVT6与vs1003/1053/SD卡做成的MP3
- STM32的SD/MicroSD卡读卡器(通过spi驱动
- zedboard官方SD卡启动文件
- stm32f103的sdio方式读sd卡,带fatfs文件系
- BMP280 硬件SPI驱动程序 STM32F103C8T6
- 基于FPGA的sd卡控制器
- STM32+SD卡+ov7670视频播放
- Stm32驱动SDCard移植FATFS文件系统
- 单片机SD卡读写(PROTEUS仿真)
- ENC28J60中英文资料+SPI驱动源代码+应用
- 室内温度报警控制系统设计SD卡文件
- stm32GPIO模拟spi驱动NRF2401
- stm32f429+FATFS+SD卡项目模版
- stm32+MPU6050+GPS+SD卡读写+ad采集+串口输
- STM32 SDIO方式读写SD卡
- 实验1:PCM5102播放SD卡音乐STM32F103ZET
- IROM_Fusing_ToolSD卡烧写工具源码包
- STM32 SPI读写SD卡
评论
共有 条评论