| | |
| | | |
| | | /***********************EEP »ù±¾ÐÅÏ¢ÅäÖÃ*************************************/ |
| | | |
| | | #define EEPROM_PHYS_SIZE (32*1024) //EEP´óС |
| | | #define EEPROM_ADDR_BYTES2 //СÄÚ´æEEPÊý¾ÝµØÖ·Îª2×Ö½ÚÐ趨Òå |
| | | #define EEPROM_PHYS_SIZE (256*1024) //EEP´óС |
| | | //#define EEPROM_ADDR_BYTES2 //СÄÚ´æEEPÊý¾ÝµØÖ·Îª2×Ö½ÚÐ趨Òå |
| | | #define EEPROM_CFG_BLOCK_SIZE 4096 //EEP×Ô¶¨Òå¿é´óС |
| | | #define EEPROM_CFG_BLOCK_CNT (EEPROM_PHYS_SIZE/EEPROM_CFG_BLOCK_SIZE)//EEP×Ô¶¨Òå¿éÊýÁ¿ |
| | | #define EEPROM_PAGE_SIZE 64 //EEPÒ³´óС |
| | |
| | | |
| | | /***********************EEP Ïà¹ØÒý½ÅÅäÖÃ**************************************/ |
| | | #define EEPROM_PWR_PORT GPIOC |
| | | #define EEPROM_PWR_PIN GPIO_Pin_6 |
| | | #define EEPROM_PWR_PIN GPIO_Pin_11 |
| | | |
| | | #define EEPROM_CS1_PORT GPIOC |
| | | #define EEPROM_CS1_PIN GPIO_Pin_6 |
| | | |
| | | #define EEPROM_CS2_PORT GPIOC |
| | | #define EEPROM_CS2_PIN GPIO_Pin_14 |
| | | |
| | | #define EEPROM_WP_PORT GPIOC |
| | | #define EEPROM_WP_PIN GPIO_Pin_10 |
| | | |
| | | |
| | | #define EEPROM_CS_1 0 |
| | | #define EEPROM_CS_2 1 |
| | | |
| | | #define E2P_PWR_ON GPIO_ResetBits(EEPROM_PWR_PORT,EEPROM_PWR_PIN) ///jlc µçÔ´ÊÇ·ñ¿É¿Ø»¹Ã»¸ÄÍê |
| | | #define E2P_PWR_ON GPIO_ResetBits(EEPROM_PWR_PORT,EEPROM_PWR_PIN) //³¤¸ß£¬µÍÓÐЧ |
| | | #define E2P_PWR_OFF GPIO_SetBits(EEPROM_PWR_PORT,EEPROM_PWR_PIN) |
| | | |
| | | #define EEPROM_CS_LOW GPIO_ResetBits(EEPROM_CS1_PORT,EEPROM_CS1_PIN) |
| | | #define EEPROM_CS_HIGH GPIO_SetBits(EEPROM_CS1_PORT,EEPROM_CS1_PIN) |
| | | |
| | | #define EEPROM_CS_LOW do{GPIO_ResetBits(EEPROM_CS1_PORT,EEPROM_CS1_PIN);GPIO_SetBits(EEPROM_CS2_PORT,EEPROM_CS2_PIN);}while(0) |
| | | #define EEPROM_CS_HIGH do{GPIO_SetBits(EEPROM_CS1_PORT,EEPROM_CS1_PIN);GPIO_SetBits(EEPROM_CS2_PORT,EEPROM_CS2_PIN);}while(0) |
| | | #define EEPROM_CS_ENABLE do{EEPROM_CS_LOW;EEPROM_CS_2_HIGH;}while(0) |
| | | #define EEPROM_CS_DISABLE do{EEPROM_CS_HIGH;EEPROM_CS_2_HIGH;}while(0) |
| | | |
| | | ///×¢Ò⣬ǧÍò²»ÒªÔÙÖжÏÖжÁдEEPROM£¬Èç¹ûÖжÏ֮ǰÊÇÔÚ²Ù×÷EEPROM£¬ÓÖÔÚÖжÏÖжÁдEEPROM£¬Ôò¿ÉÄܳöÎÊÌâ |
| | | #define EEPROM_CS_2_LOW {GPIO_ResetBits(FRAM_CS2_GROUP,FRAM_CS2_NUM);GPIO_SetBits(FRAM_CS_GROUP,FRAM_CS_NUM);}//CS_2 = 0 |
| | | #define EEPROM_CS_2_HIGH GPIO_SetBits(FRAM_CS2_GROUP,FRAM_CS2_NUM) //CS_2 = 1 |
| | | |
| | | #define EEPROM_CS_2_LOW GPIO_ResetBits(EEPROM_CS2_PORT,EEPROM_CS2_PIN) |
| | | #define EEPROM_CS_2_HIGH GPIO_SetBits(EEPROM_CS2_PORT,EEPROM_CS2_PIN) |
| | | |
| | | #define EEPROM_CS_2_ENABLE do{EEPROM_CS_2_LOW;EEPROM_CS_HIGH;}while(0) |
| | | #define EEPROM_CS_2_DISABLE do{EEPROM_CS_HIGH;EEPROM_CS_2_HIGH;}while(0) |
| | | |
| | | |
| | | //¿ØÖÆÊ¹ÄÜ£¬E2P²Ù×÷ǰºóµ÷Óà |
| | | #define EEPROM_CTRL_ENABLE do{SPI3_Init();E2P_Ctrl_Gpio_Init();E2P_PWR_ON;EEPROM_CS_ENABLE;}while(0) |
| | | #define EEPROM_CTRL_DISABLE do{SPI3_sleep();E2P_Ctrl_Gpio_sleep();}while(0) |
| | | |
| | | #define EEPROM_2_CTRL_ENABLE do{SPI3_Init();E2P_Ctrl_Gpio_Init();E2P_PWR_ON;EEPROM_CS_2_ENABLE;}while(0) |
| | | #define EEPROM_2_CTRL_DISABLE do{SPI3_sleep();E2P_Ctrl_Gpio_sleep();}while(0) |
| | | |
| | | |
| | | #define FM_ReadWriteByte(dat) SpiWriteAndRead(dat) |
| | | #define EEPROM_ioconfig() SPI3_ioconfig() |
| | |
| | | uint8_t EEPROM_MultipleWrite(uint8_t *data,u32 addr,u16 bytes); |
| | | void EEPROM_MultipleRead(uint8_t *data, u32 addr, u16 bytes); |
| | | |
| | | void EEPROM_data_write(uint8 data,u32 addr16); |
| | | uint8 EEPROM_data_read(uint32 addr16); |
| | | //void EEPROM_data_write(uint8 data,u32 addr16); |
| | | //uint8 EEPROM_data_read(uint32 addr16); |
| | | void EEPROM_stat_write(uint8 stat); |
| | | uint8 EEPROM_stat_read(void); |
| | | void EEPROM_sleep(void); |
| | | void EEPROM_ID_read(uint8 *dst); |
| | | float EEPROM_data_read_float(uint32 addr16); |
| | | void EEPROM_data_write_float(uint32 addr16, float data); |
| | | double EEPROM_data_read_double(uint32 addr16); |
| | | void EEPROM_data_write_double(uint32 addr16, double data); |
| | | u32 EEPROM_data_read_uint32(uint32 addr16); |
| | | void EEPROM_data_write_uint32(uint32 addr16, uint32 data); |
| | | u16 EEPROM_data_read_uint16(uint32 addr16); |
| | | void EEPROM_data_write_uint16(uint32 addr16, uint16 data); |
| | | //float EEPROM_data_read_float(uint32 addr16); |
| | | //void EEPROM_data_write_float(uint32 addr16, float data); |
| | | //double EEPROM_data_read_double(uint32 addr16); |
| | | //void EEPROM_data_write_double(uint32 addr16, double data); |
| | | //u32 EEPROM_data_read_uint32(uint32 addr16); |
| | | //void EEPROM_data_write_uint32(uint32 addr16, uint32 data); |
| | | //u16 EEPROM_data_read_uint16(uint32 addr16); |
| | | //void EEPROM_data_write_uint16(uint32 addr16, uint16 data); |
| | | void EEPROM_WP_enable(void); |
| | | void EEPROM_WP_disable(void); |
| | | |
| | |
| | | |
| | | //uint8_t EEPROM_MultipleRead_CS_2(uint8_t *data,u32 addr,u16 bytes); |
| | | |
| | | void EEPROM_CS_2_test(void); |
| | | void EEPROM_test(void); |
| | | |
| | | void E2P_Ctrl_Gpio_Init(void); |
| | | void E2P_Ctrl_Gpio_sleep(void); |
| | | |
| | | #endif |
| | | |