#ifndef DS35M1GA_H #define DS35M1GA_H #include #include #include "am_mcu_apollo.h" #include "am_hal_mspi.h" #ifdef __cplusplus extern "C" { #endif #define BSP_DS35M_CHIP_ID (0xE521) /* id */ #define BSP_DS35M_BLOCKS_PER_CHIP (1024) /* number of blocks in a chip */ #define BSP_DS35M_PAGES_PER_BLOCK (64) /* number of pages in a block */ #define BSP_DS35M_BYTES_PER_PAGE_DATA (2048) /* number of bytes in a page data area */ #define BSP_DS35M_BYTES_PER_PAGE_SPARE (64) /* number of bytes in a page spare area */ int Ds35m_Init(void); int Ds35m_Deinit(void); int Ds35m_ReadId(uint16_t *u16DeviceId); int Ds35m_WritePageData(uint32_t pageOffsetNum, uint16_t addrOffset, uint8_t *inData, uint16_t len); int Ds35m_ReadPageData(uint32_t pageOffsetNum, uint16_t addrOffset, uint8_t *outData, uint16_t len); int Ds35m_EraseBlock(int blockNum); int Ds35m_SwitchEcc(bool sw); //方便bootloader 操作nandflash而开放出来的接口 int Ds35m_ReadOnePage(uint32_t chunkNum, uint8_t *outData); int Ds35m_WriteOnePage(int chunkNum, uint8_t *inData); #ifdef __cplusplus } #endif #endif /* DS35M1GA_H */