From f03cf3ae7a36954e64fc014e6bb7afd20c5a5247 Mon Sep 17 00:00:00 2001
From: jinlicong <493886250@qq.com>
Date: Wed, 12 Jun 2024 17:22:08 +0800
Subject: [PATCH] 增加IAP功能,准备测试上位机升级
---
Function/E2P/EEPROM.c | 109 ++++++++++++++++--------------------------------------
1 files changed, 33 insertions(+), 76 deletions(-)
diff --git a/Function/E2P/EEPROM.c b/Function/E2P/EEPROM.c
index fef2712..f5249cd 100644
--- a/Function/E2P/EEPROM.c
+++ b/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)
// {
--
Gitblit v1.9.3