HAL_Project/Project -APP-V1.0/Hardware/W25QXX/w25qxx.h

37 lines
1.5 KiB
C
Raw Normal View History

2025-05-09 15:43:42 +08:00
#ifndef __W25QXX_H
#define __W25QXX_H
#include "main.h"
#define Flash_CS_Pin GPIO_PIN_4
#define Flash_CS_Port GPIOA
#define CS_DISENABLE HAL_GPIO_WritePin(Flash_CS_Port, Flash_CS_Pin, GPIO_PIN_SET); //CS<43><53>Ч<EFBFBD>ź<EFBFBD>
#define CS_ENABLE HAL_GPIO_WritePin(Flash_CS_Port, Flash_CS_Pin, GPIO_PIN_RESET); //CS<43><53>Ч<EFBFBD>ź<EFBFBD>
#define W25QxxID 0XEF16 //W25Qxx ID
#define W25Qxx_WriteEnable 0x06 //дʹ<D0B4><CAB9>
#define W25Qxx_WriteDisable 0x04 //д<><D0B4>ֹ
#define W25Qxx_ReadStatusReg1 0x05 //<2F><>״̬<D7B4>Ĵ<EFBFBD><C4B4><EFBFBD><31><D6B8>
#define W25Qxx_SectorErase 0x20 //<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>4KB<4B><42><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ָ<EFBFBD><D6B8>
#define W25Qxx_BlockErase 0xD8 //<2F>飨64KB<4B><42><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ָ<EFBFBD><D6B8>
#define W25Qxx_PageProgram 0x02 //ҳ<><D2B3>256B<36><42>д<EFBFBD><D0B4>ָ<EFBFBD><D6B8>
#define W25Qxx_ReadData 0x03 //<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ָ<EFBFBD><D6B8>
#define W25Qxx_Powerdown 0xB9 //Powerdownָ<6E><D6B8>
void w25qxxInit(void); //<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʼ<EFBFBD><CABC>W25Qxx
void w25qxxWriteEnable(void); //<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>W25Qxx<78><78>дʹ<D0B4><CAB9>
void w25qxxWrite_Disable(void); //<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>W25Qxx<78><78>д<EFBFBD><D0B4>ֹ
uint16_t w25qxxReadID(void); //<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ȡW25QxxоƬID
void w25qxxWaitBusy(void); //<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>W25Qxx<78>ȴ<EFBFBD><C8B4><EFBFBD><EFBFBD><EFBFBD>
void w25qxxErase_Sector(uint16_t); //<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>W25Qxx<78><78><EFBFBD><EFBFBD>һ<EFBFBD><D2BB><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>4KB<4B><42>
void w25qxxErase_Block(uint8_t); //<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>W25Qxx<78><78><EFBFBD><EFBFBD>һ<EFBFBD><D2BB><EFBFBD>飨64KB<4B><42>
void w25qxxWrite_Page(uint8_t*, uint16_t); //<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>W25Qxxд<78><D0B4>һҳ<D2BB><D2B3><EFBFBD>ݣ<EFBFBD>256<35>ֽڣ<D6BD>
void w25qxxRead(uint8_t*,uint32_t,uint32_t); //<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>W25Qxx<78><78>ȡ<EFBFBD><C8A1><EFBFBD><EFBFBD>
#endif