flash.h

来自「Atmeag162-k9f5608-pdiusbd12-u usb接口 u盘源码」· C头文件 代码 · 共 50 行

H
50
字号
#define  BOOL   unsigned char
#define FALSE   0
#define TRUE    (!FALSE)
  

/*K9f5608U0A 命令定义*/
#define READ0  0x00
#define READ1  0x01
#define READ2  0x50
#define READID 0x90
#define RESET  0xff 
#define PAGEPROGRAM_1C 0x80
#define PAGEPROGRAM_2C 0x10
#define COPY_BACK_1C   0x00
#define COPY_BACK_2C   0x8A
#define BLOCK_ERASE_1C 0x60
#define BLOCK_ERASE_2C 0xD0
#define READSTATUS     0x70
         
/*K9f5608U0A IO定义*/
#define RB           (0x10)
#define CLE          (0x20)
#define ALE          (0x10)
#define CE           (0x40)
//#define rPDATA       (PORTC)
#define SectorLength (512)

/*K9f5608U0A操作定义*/
#define FC_CMD      (*(volatile char*)0xa000)    
#define FC_ADDR     (*(volatile char*)0x9000)
#define FC_DATA     (*(volatile char*)0x8000)  
#define FC_INACTIVE asm("sts 0xfc01,R22");
#define WAITRB      while(!(PIND&RB))  
#define K9F5608_ID  (0xec75)
#define WRITEVERIFY (1)
#define fWPs asm("SBI 0x12,5");
#define fWPc asm("CBI 0x12,5");
 
/*K9f5608U0A函数声明*/
void Flash_Reset(void);
unsigned int Check_Flash_Id(void);
BOOL Erase_Cluster(unsigned int cluster);
void ReadPage(unsigned int block,unsigned int page,unsigned char *pPage);
BOOL WritePage(unsigned int block,unsigned int page,unsigned char *pPage);
BOOL CopyBlack(unsigned int sblock,unsigned int spage,
               unsigned int dblock,unsigned int dpage);
void Format_Fat16Media();//
			   
  

⌨️ 快捷键说明

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