📄 flash.h
字号:
#ifndef __FLASH_H__
#define __FLASH_H__
// Flash Command
#define NAND_FLASH_CMD_RDID (0x90)
#define NAND_FLASH_CMD_READ_STATUS (0x70)
#define NAND_FLASH_CMD_ERASE0 (0x60)
#define NAND_FLASH_CMD_ERASE1 (0xD0)
#define NAND_FLASH_CMD_PAGE_PROG0 (0x80)
#define NAND_FLASH_CMD_PAGE_PROG1 (0x10)
#define NAND_FLASH_CMD_READ (0x00)
// Constant
#define FLASH_SUCCESS (1)
#define FLASH_FAIL (0)
// Data structure
typedef struct flash_mem
{
unsigned int column; // A[7:0]
unsigned int half; // A[8]
unsigned int row; // A[25:9]
unsigned int linear_addr;
} flash_mem;
// Function prototype
void NandBoot(void);
void Flash_fill_mem_addr(unsigned int linear_addr, flash_mem *f_addr);
int Flash_ReadPage(flash_mem *f_addr, unsigned char *data);
int Flash_WritePage(flash_mem *f_addr, unsigned char *data);
int Flash_EraseBlock(flash_mem *f_addr);
unsigned char Flash_ReadStatus(void);
unsigned int Flash_ReadID(void);
void Flash_init(void);
#endif // __FLASH_H__
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -