| | |
| | | OutputIO(EEPROM_CS1_PORT,EEPROM_CS1_PIN,OUT_PUSHPULL); |
| | | OutputIO(EEPROM_CS2_PORT,EEPROM_CS2_PIN,OUT_PUSHPULL); |
| | | CloseIO(EEPROM_WP_PORT,EEPROM_WP_PIN); |
| | | E2P_PWR_ON; |
| | | EEPROM_CS_HIGH; |
| | | EEPROM_CS_2_HIGH; |
| | | } |
| | | |
| | | |
| | | void E2P_Ctrl_Gpio_sleep(void) |
| | | { |
| | | CMU_PERCLK_SetableEx(PADCLK, ENABLE); //PADʱÖÓ£¨GPIO£©Ê¹Äܺ¯Êý |
| | | OutputIO(EEPROM_PWR_PORT,EEPROM_PWR_PIN,OUT_PUSHPULL); |
| | | OutputIO(EEPROM_CS1_PORT,EEPROM_CS1_PIN,OUT_PUSHPULL); |
| | | OutputIO(EEPROM_CS2_PORT,EEPROM_CS2_PIN,OUT_PUSHPULL); |
| | | CloseIO(EEPROM_WP_PORT,EEPROM_WP_PIN); |
| | | E2P_PWR_OFF; |
| | | EEPROM_CS_LOW; |
| | | EEPROM_CS_2_LOW; |
| | |
| | | FM_ReadWriteByte((uint8_t)(addr)); |
| | | for(index = 0;index < bytes;index ++) |
| | | data[index] = FM_ReadWriteByte(0xff); |
| | | EEPROM_CS_DISABLE; |
| | | EEPROM_Wait_Busy(); |
| | | EEPROM_CS_DISABLE; |
| | | |
| | | } |
| | | |
| | | |
| | | uint8_t EEPROM_MultipleWrite_CS_2(uint8_t *data,u32 addr,u16 bytes) |
| | | { |
| | | Fram_cs_flag = EEPROM_CS_2; |
| | | EEPROM_MultipleWrite(data, addr, bytes) ; |
| | | |
| | | Fram_cs_flag = EEPROM_CS_1; |
| | | return 0; |
| | | } |
| | | |
| | | uint8_t EEPROM_MultipleRead_CS_2(uint8_t *data,u32 addr,u16 bytes) |
| | | { |
| | | Fram_cs_flag = EEPROM_CS_2; |
| | | EEPROM_MultipleRead(data, addr, bytes) ; |
| | | |
| | | Fram_cs_flag = EEPROM_CS_1; |
| | | return 0; |
| | | } |
| | | |
| | | |
| | | |
| | |
| | | uint8_t u8_temp; |
| | | uint8_t u8_temp_s[256]; |
| | | uint8_t u8_temp_s2[256]; |
| | | uint8_t buf_test[10] = {0}; |
| | | static uint16_t WR_times = 0; |
| | | static uint16_t WR_times_suc = 0; |
| | | |
| | | u16 count_i = 0; |
| | | |
| | | E2P_Ctrl_Gpio_Init(); |
| | | SPI3_Init(); |
| | | EEPROM_CTRL_ENABLE; |
| | | |
| | | EEPROM_MultipleRead(u8_temp_s2,1000,1); //?²âÊÔ·¢ÏÖµÚÒ»´Î²Ù×÷ÎÞЧ£¬ÐèÒªÏȲÙ×÷Ò»´Î£¬ºóÐø²Ù×÷¶¼ÊÇÕý³£µÄ¡£ |
| | | |
| | | for(count_i=0;count_i<256;count_i++) |
| | | { |
| | | u8_temp_s[count_i] = count_i; |
| | | u8_temp_s2[count_i] = 0; |
| | | } |
| | | EEPROM_CTRL_DISABLE; |
| | | |
| | | |
| | | delay_ms(10); |
| | | delay_ms(100); |
| | | EEPROM_CTRL_ENABLE; |
| | | delay_ms(100); |
| | | EEPROM_MultipleRead(buf_test, 256, 10); |
| | | |
| | | |
| | | EEPROM_CTRL_DISABLE; |
| | | |
| | | delay_ms(10); |
| | | memset(buf_test,0,sizeof(buf_test)); |
| | | |
| | | |
| | | EEPROM_CTRL_ENABLE; |
| | | |
| | | EEPROM_MultipleWrite(u8_temp_s,0,256); |
| | | delay_ms(1); |
| | | EEPROM_MultipleRead(u8_temp_s2,0,256); |
| | | |
| | | |
| | | delay_ms(10); |
| | | EEPROM_MultipleRead(buf_test, 256, 10); |
| | | |
| | | EEPROM_CTRL_DISABLE; |
| | | |
| | | |
| | | |
| | | E2P_Ctrl_Gpio_Init(); |
| | | SPI3_Init(); |
| | | |
| | | for(count_i=0;count_i<256;count_i++) |
| | | { |
| | | u8_temp_s[count_i] = 255-count_i; |
| | | u8_temp_s2[count_i] = 0; |
| | | while(1){ |
| | | IWDT_Clr(); |
| | | delay_ms(500); |
| | | } |
| | | |
| | | |
| | | EEPROM_CTRL_ENABLE; |
| | | |
| | | EEPROM_MultipleWrite(u8_temp_s,0,256); |
| | | delay_ms(1); |
| | | EEPROM_MultipleRead(u8_temp_s2,0,256); |
| | | |
| | | EEPROM_CTRL_DISABLE; |
| | | |
| | | |
| | | |
| | | |
| | | E2P_Ctrl_Gpio_Init(); |
| | | SPI3_Init(); |
| | | |
| | | for(count_i=0;count_i<256;count_i++) |
| | | { |
| | | u8_temp_s[count_i] = 8; |
| | | u8_temp_s2[count_i] = 0; |
| | | } |
| | | |
| | | |
| | | EEPROM_CTRL_ENABLE; |
| | | |
| | | EEPROM_MultipleWrite(u8_temp_s,0,256); |
| | | delay_ms(1); |
| | | EEPROM_MultipleRead(u8_temp_s2,0,256); |
| | | |
| | | EEPROM_CTRL_DISABLE; |
| | | |
| | | // while(WR_times <1024) |
| | | // { |