forked from SZV10X_Software/SZV103_FM33A0xxEV_SiZhu

jinlicong
2024-06-12 f03cf3ae7a36954e64fc014e6bb7afd20c5a5247
Function/E2P/EEPROM.c
@@ -30,6 +30,19 @@
   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;
@@ -473,29 +486,11 @@
   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;
}
@@ -504,75 +499,37 @@
   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)
//   {