📄 sd.h
字号:
#ifdef __SD
#define EXTERN
#else
#define EXTERN extern
#endif
#include "c8051F120.h"
#define SD_NOT_SELECTED 1
#define SD_SELECTED 0
#define SPI_RESULT_BYTE SPI0DAT
#define SPIPutChar(c) {SPIWait();SPI0DAT=(c);}
#define SPIPutCharWithoutWaiting(c) {SPI0DAT=(c);}
#define SPIWait() {while(!(SPI0CFG & 0x80));;}
#define LINE_BUSY 0x01
#define ERR 0x01
#define DATA_COMING 0x00
#define CMD17 0x51
#define CMD24 0x58
#define START_BLOCK_TOKEN 0xfe
#define DATA_REC_NO_ERR 0x00
#define TIMEOUT 0x01
sbit SD_XCS = P1^0;
unsigned char xdata * dataBufPtr;
EXTERN unsigned char SDCommand( unsigned char c1,
unsigned char c2,
unsigned char c3,
unsigned char c4,
unsigned char c5);
EXTERN unsigned char SDWaitForData();
EXTERN void SDGetData(unsigned int amountOctets);
EXTERN void PerformBlockRead();
EXTERN unsigned char SeekSector(unsigned char cmd_sn,unsigned long sectorN);
EXTERN unsigned char ReadSector();
EXTERN unsigned char ReadDiskSector ( unsigned long sectorN );
EXTERN unsigned char WriteSector();
EXTERN unsigned char WriteDiskSector(unsigned long sectorN);
EXTERN unsigned char GetCID();
EXTERN unsigned char RebootSD();
EXTERN unsigned char InitSD();
EXTERN void SPI8Clocks ( unsigned char nClocks );
EXTERN unsigned char SPIGetChar (void) ;
EXTERN void Delay(unsigned short i);
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -