compactflash.h

来自「PIC读写CF卡的C程序(含原理图)」· C头文件 代码 · 共 62 行

H
62
字号
#ifndef _compactflash.h
#define _compactflash.h

// ports
#define CF_DATA   portb
#define CF_ADDR   porte
#define CF_CONTROL porta

// flags
#define CE1 5 
#define CD2 0
#define RESET 1
#define OE 4
#define WE 3
#define RDY 2

// addresses
#define DATA_REG 0
#define ERROR_REG 1
#define FEATURES_REG 1
#define BLOCKCOUNT_REG 2
#define BLOCKLOW_REG 3
#define BLOCKMIDDLE_REG 4
#define BLOCKHIGH_REG 5
#define HEAD_REG 6
#define STATUS_REG 7
#define COMMAND_REG 7

// commands
#define DIAGNOSTIC 0x90
#define IDENTIFY 0xEC
#define WRITE_BLOCK 0x30
#define READ_BLOCK 0x20

char compactFlashPosition = 0;
char compactFlashBufferSize = 4;
char compactFlashBuffer[64];                                      // 128 or 256 is not possible! Could be a bug!

void compactFlashInit();

void compactFlashWrite(char addr, char data);
char compactFlashRead(char addr);
void compactFlashReadBuffer(char offset, char length);
void compactFlashWriteBuffer(char offset, char length);
void compactFlashFillBuffer();
void compactFlashClearBuffer();

char compactFlashPresent();
void compactFlashWait();
void compactFlashReset();

void compactFlashReadBlock(char blockHigh, char blockMiddle, char blockLow);
void compactFlashWriteBlock(char blockHigh, char blockMiddle, char blockLow);
void compactFlashIdentify();
char compactFlashDiagnostic();

#include "compactflash.c"

#endif


⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?