📄 spi_mmc.h
字号:
/*----------------------------------------------------------------------
* Name: SPI_MMC.H
* Purpose: SPI mode SD/MMC card interface driver
* Version: V1.03
* Copyright (c) 2006 NXP Semiconductor. All rights reserved.
*---------------------------------------------------------------------*/
#ifndef __SPI_MMC_H__
#define __SPI_MMC_H__
#define SPI_SEL 0x00100000 //P0.20 SSEL CS
#define SPI_PWR 0x00001000 //P0.12
#define MMC_CMD_SIZE 6 //命令长度6B
//最大容量256MB
#define MMC_DATA_SIZE 512 //每块512B
#define MAX_TIMEOUT 0xFF
#define IDLE_STATE_TIMEOUT 1
#define OP_COND_TIMEOUT 2
#define SET_BLOCKLEN_TIMEOUT 3
#define WRITE_BLOCK_TIMEOUT 4
#define WRITE_BLOCK_FAIL 5
#define READ_BLOCK_TIMEOUT 6
#define READ_BLOCK_DATA_TOKEN_MISSING 7
#define DATA_TOKEN_TIMEOUT 8
#define SELECT_CARD_TIMEOUT 9
#define SET_RELATIVE_ADDR_TIMEOUT 10
void SPI_Init( void );
void SPI_Send( uint8 *Buf, uint32 Length );
void SPI_Receive( uint8 *Buf, uint32 Length );
uint8 SPI_ReceiveByte( void );
int mmc_init(void);
int mmc_response(uint8 response);
int mmc_read_block(uint32 block_number,uint8 buf[512]);
int mmc_write_block(uint32 block_number,uint8 buf[512]);
int mmc_read_csd(uint8 reg[16]);
int mmc_read_state(uint8 st[1]);
#endif
/* ________________________________SPI_MMC_H______________________________ */
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -