📄 mmc.h
字号:
#ifndef __MMC_H__
#define __Mmc_H__
#include "file_sys_cfg.h"
void Set_1bit_bus(void);
void Set_4bit_bus(void);
int Chk_MMC_OCR(void);
int Chk_SD_OCR(void);
int CMD55(void);
int CMD13(void);
int CMD9(void);
void CMD0(void);
int Chk_CMDend(int cmd, int be_resp);
void Card_sel_desel(char sel_desel);
void SetBus(void);
void Set_Prt(void);
void Clr_Prt(void);
S8 Mmc_Init(void);
S8 Mmc_Read_Sector(U32 addr,U8 *Buffer);
S8 Mmc_Write_Sector(U32 addr,U8 *Buffer);
int Chk_DATend(void);
int Chk_BUSYend(void);
uchar initialize_media(void);
#define _FF_read Mmc_Read_Sector
#define _FF_write Mmc_Write_Sector
/*
#ifdef _ALL_SD_CMDS_
enum {CMD0=0, CMD1, CMD9, CMD10, CMD12, CMD13, CMD16,
CMD17, CMD18, CMD24, CMD25, CMD27, CMD28, CMD29,
CMD30, CMD32, CMD33, CMD34, CMD35, CMD36, CMD37,
CMD38, CMD42, CMD58, CMD59, ACMD41, CMD_TOT};
#else
enum {CMD0=0, CMD1, CMD17, CMD24, CMD_TOT};
#endif
*/
/* enum {GO_IDLE_STATE=0, SEND_OP_COND, SEND_CSD, SEND_CID,
STOP_TRANSMISSION, SEND_STATUS, SET_BLOCKLEN,
READ_SINGLE_BLOCK, READ_MULTIPLE_BLOCK, WRITE_BLOCK,
WRITE_MULTIPLE_BLOCK, PROGRAM_CSD, SET_WRITE_PROT,
CLR_WRITE_PROT, SEND_WRITE_PROT, TAG_SECTOR_START,
TAG_SECTOR_END, UNTAG_SECTOR, TAG_ERASE_GROUP_START,
TAG_ERASE_GROUP_END, UNTAG_ERASE_GROUP, ERASE,
LOCK_UNLOCK, READ_OCR, CRC_ON_OFF};*/
/*enum {RESP_1, RESP_1b, RESP_2, RESP_3};
enum {NO_ARG, BLOCK_LEN, DATA_ADDR, STUFF_BITS};*/
/*
uint send_cmd(U8 command, ulong argument);
U8 reset_sd(void);
U8 init_sd(void);
U8 _FF_read(ulong sd_addr, U8 *sd_read_buff);
U8 initialize_media(void);
#ifndef _READ_ONLY_
U8 _FF_write(ulong sd_addr, U8 *sd_write_buff);
#endif
*/
#ifndef _BIG_ENDIAN_
typedef struct {
uchar LO;
uchar ML;
uchar MH;
uchar HI;
} sHILO32c;
typedef struct {
uchar LO;
uchar HI;
} sHILO16c;
typedef struct {
uint LO;
uint HI;
} sHILO32i;
#else
typedef struct {
uchar HI;
uchar MH;
uchar ML;
uchar LO;
} sHILO32c;
typedef struct {
uchar HI;
uchar LO;
} sHILO16c;
typedef struct {
uint HI;
uint LO;
} sHILO32i;
#endif
typedef union {
ulong lval;
sHILO32c cval;
sHILO32i ival;
} uHILO32;
typedef union {
uint ival;
sHILO16c cval;
} uHILO16;
#endif
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -