12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485 |
- #ifndef __FLASH_H
- #define __FLASH_H
- #include "sys.h"
-
- #define W25Q80 0XEF13
- #define W25Q16 0XEF14
- #define W25Q32 0XEF15
- #define W25Q64 0XEF16
- #define W25Q128 0XEF17
- extern u16 W25QXX_TYPE;
- #define W25QXX_CS PBout(12)
-
-
- #define W25X_WriteEnable 0x06
- #define W25X_WriteDisable 0x04
- #define W25X_ReadStatusReg 0x05
- #define W25X_WriteStatusReg 0x01
- #define W25X_ReadData 0x03
- #define W25X_FastReadData 0x0B
- #define W25X_FastReadDual 0x3B
- #define W25X_PageProgram 0x02
- #define W25X_BlockErase 0xD8
- #define W25X_SectorErase 0x20
- #define W25X_ChipErase 0xC7
- #define W25X_PowerDown 0xB9
- #define W25X_ReleasePowerDown 0xAB
- #define W25X_DeviceID 0xAB
- #define W25X_ManufactDeviceID 0x90
- #define W25X_JedecDeviceID 0x9F
- void W25QXX_Init(void);
- u16 W25QXX_ReadID(void);
- u8 W25QXX_ReadSR(void);
- void W25QXX_Write_SR(u8 sr);
- void W25QXX_Write_Enable(void);
- void W25QXX_Write_Disable(void);
- void W25QXX_Write_NoCheck(u8* pBuffer,u32 WriteAddr,u16 NumByteToWrite);
- void W25QXX_Read(u8* pBuffer,u32 ReadAddr,u16 NumByteToRead);
- void W25QXX_Write(u8* pBuffer,u32 WriteAddr,u16 NumByteToWrite);
- void W25QXX_Erase_Chip(void);
- void W25QXX_Erase_Sector(u32 Dst_Addr);
- void W25QXX_Wait_Busy(void);
- void W25QXX_PowerDown(void);
- void W25QXX_WAKEUP(void);
- void W25QXX_Read(u8* pBuffer,u32 ReadAddr,u16 NumByteToRead) ;
- void W25QXX_Write_Page(u8* pBuffer,u32 WriteAddr,u16 NumByteToWrite);
- #endif
|