浏览代码

ALC AGC 기능 추가 / USER 프로토콜 추가 //EEPROM 메모리 이름 변경

ALC AGC Table 추가
PYJ 5 年之前
父节点
当前提交
f8708c2ad9
共有 7 个文件被更改,包括 983 次插入318 次删除
  1. 53 16
      Bluecell_Inc/Bluecell_operate.h
  2. 3 1
      Bluecell_Inc/eeprom.h
  3. 893 288
      Bluecell_Src/Bluecell_operate.c
  4. 6 2
      Bluecell_Src/eeprom.c
  5. 4 2
      Inc/main.h
  6. 2 0
      STM32F103ZET_JDASMBIC.ioc
  7. 22 9
      Src/main.c

+ 53 - 16
Bluecell_Inc/Bluecell_operate.h

@@ -309,6 +309,7 @@ struct Alarm_UL {
309
 };
309
 };
310
 enum DATATYPE
310
 enum DATATYPE
311
 {
311
 {
312
+    BLUECELL_SOFTWARERESET = 0,
312
 	ATTSET  = 0x11,
313
 	ATTSET  = 0x11,
313
 	ATT_DL1_PATH = 0x12,
314
 	ATT_DL1_PATH = 0x12,
314
 	ATT_UL1_PATH = 0x16,
315
 	ATT_UL1_PATH = 0x16,
@@ -334,6 +335,16 @@ enum DATATYPE
334
     ATT_TableGet = 0x71,
335
     ATT_TableGet = 0x71,
335
 	Bluecell_StatusReq = 0x77,
336
 	Bluecell_StatusReq = 0x77,
336
 	Bluecell_StatusSave = 0x78,
337
 	Bluecell_StatusSave = 0x78,
338
+    Bluecell_DL1_USER = 0x80,
339
+    Bluecell_DL2_USER = 0x81,
340
+    Bluecell_DL3_USER = 0x82,
341
+    Bluecell_DL4_USER = 0x83,    
342
+    Bluecell_UL1_USER = 0x84,
343
+    Bluecell_UL2_USER = 0x85,
344
+    Bluecell_UL3_USER = 0x86,
345
+    Bluecell_UL4_USER = 0x87,    
346
+    Bluecell_TEMP_USER = 0x88,    
347
+    
337
 };
348
 };
338
 
349
 
339
 
350
 
@@ -435,6 +446,17 @@ typedef struct{
435
   uint16_t m24_dBm;
446
   uint16_t m24_dBm;
436
   uint16_t m25_dBm;
447
   uint16_t m25_dBm;
437
 }DET_DL;
448
 }DET_DL;
449
+typedef struct{
450
+    uint8_t bluecell_User_DL1_H;  uint8_t bluecell_User_DL1_L;
451
+    uint8_t bluecell_User_DL2_H;  uint8_t bluecell_User_DL2_L;
452
+    uint8_t bluecell_User_DL3_H;  uint8_t bluecell_User_DL3_L;
453
+    uint8_t bluecell_User_DL4_H;  uint8_t bluecell_User_DL4_L;
454
+    uint8_t bluecell_User_UL1_H;  uint8_t bluecell_User_UL1_L;
455
+    uint8_t bluecell_User_UL2_H;  uint8_t bluecell_User_UL2_L;
456
+    uint8_t bluecell_User_UL3_H;  uint8_t bluecell_User_UL3_L;
457
+    uint8_t bluecell_User_UL4_H;  uint8_t bluecell_User_UL4_L;
458
+}USER_ATTEN_st;
459
+
438
 typedef struct{
460
 typedef struct{
439
     uint8_t bluecell_header;
461
     uint8_t bluecell_header;
440
     uint8_t bluecell_type;
462
     uint8_t bluecell_type;
@@ -494,22 +516,31 @@ typedef struct{
494
     uint8_t ATT_ALC3_ONOFF;
516
     uint8_t ATT_ALC3_ONOFF;
495
     uint8_t ATT_AGC4_ONOFF;
517
     uint8_t ATT_AGC4_ONOFF;
496
     uint8_t ATT_ALC4_ONOFF;
518
     uint8_t ATT_ALC4_ONOFF;
497
-    uint8_t ATT_ALC1_H;
498
-    uint8_t ATT_ALC1_L;
499
-    uint8_t ATT_ALC2_H;
500
-    uint8_t ATT_ALC2_L;
501
-    uint8_t ATT_ALC3_H;
502
-    uint8_t ATT_ALC3_L;
503
-    uint8_t ATT_ALC4_H;
504
-    uint8_t ATT_ALC4_L;
505
-    uint8_t ATT_AGC1_H;
506
-    uint8_t ATT_AGC1_L;
507
-    uint8_t ATT_AGC2_H;
508
-    uint8_t ATT_AGC2_L;
509
-    uint8_t ATT_AGC3_H;
510
-    uint8_t ATT_AGC3_L;
511
-    uint8_t ATT_AGC4_H;
512
-    uint8_t ATT_AGC4_L;
519
+    uint8_t ATT_ALC1_MAX_H;
520
+    uint8_t ATT_ALC1_MAX_L;
521
+    uint8_t ATT_ALC2_MAX_H;
522
+    uint8_t ATT_ALC2_MAX_L;
523
+    uint8_t ATT_ALC3_MAX_H;
524
+    uint8_t ATT_ALC3_MAX_L;
525
+    uint8_t ATT_ALC4_MAX_H;
526
+    uint8_t ATT_ALC4_MAX_L;
527
+    uint8_t ATT_ALC1_MIN_H;
528
+    uint8_t ATT_ALC1_MIN_L;
529
+    uint8_t ATT_ALC2_MIN_H;
530
+    uint8_t ATT_ALC2_MIN_L;
531
+    uint8_t ATT_ALC3_MIN_H;
532
+    uint8_t ATT_ALC3_MIN_L;
533
+    uint8_t ATT_ALC4_MIN_H;
534
+    uint8_t ATT_ALC4_MIN_L;
535
+    uint8_t bluecell_User_DL1_H;  uint8_t bluecell_User_DL1_L;
536
+    uint8_t bluecell_User_DL2_H;  uint8_t bluecell_User_DL2_L;
537
+    uint8_t bluecell_User_DL3_H;  uint8_t bluecell_User_DL3_L;
538
+    uint8_t bluecell_User_DL4_H;  uint8_t bluecell_User_DL4_L;
539
+    uint8_t bluecell_User_UL1_H;  uint8_t bluecell_User_UL1_L;
540
+    uint8_t bluecell_User_UL2_H;  uint8_t bluecell_User_UL2_L;
541
+    uint8_t bluecell_User_UL3_H;  uint8_t bluecell_User_UL3_L;
542
+    uint8_t bluecell_User_UL4_H;  uint8_t bluecell_User_UL4_L;
543
+    uint8_t bluecell_User_TEMP_H;  uint8_t bluecell_User_TEMP_L;
513
     uint8_t bluecell_crc;
544
     uint8_t bluecell_crc;
514
     uint8_t bluecell_etx;
545
     uint8_t bluecell_etx;
515
 
546
 
@@ -829,9 +860,15 @@ extern TEMP_TABLE_st Temp_UL3;
829
 extern TEMP_TABLE_st Temp_UL4;
860
 extern TEMP_TABLE_st Temp_UL4;
830
 
861
 
831
 extern BLUESTATUS_st bluecell_Currdatastatus;
862
 extern BLUESTATUS_st bluecell_Currdatastatus;
863
+extern USER_ATTEN_st bluecell_UserData;
864
+extern volatile uint32_t ALCTimerCnt;
865
+extern volatile uint32_t AGCTimerCnt;
832
 
866
 
833
 
867
 
834
 
868
 
835
 extern void Bluecell_DataInit();
869
 extern void Bluecell_DataInit();
870
+extern void ALC_Function();
871
+extern void AGC_Function();
872
+
836
 
873
 
837
 #endif /* BLUECELL_OPERATE_H_ */
874
 #endif /* BLUECELL_OPERATE_H_ */

+ 3 - 1
Bluecell_Inc/eeprom.h

@@ -14,7 +14,7 @@
14
 #define EEPROM_ATT_BASE					  0x0000
14
 #define EEPROM_ATT_BASE					  0x0000
15
 
15
 
16
 #if 1 // PYJ.2020.04.25_BEGIN -- 
16
 #if 1 // PYJ.2020.04.25_BEGIN -- 
17
-#define EEPROM_WINDOW_STATUS_ADDRESDS	 ((EEPROM_ATT_BASE + (sizeof(BLUESTATUS_st) + 20)) & 0xFFFF) //96byte
17
+#define EEPROM_WINDOW_STATUS_ADDRESDS	 ((EEPROM_ATT_BASE + (sizeof(BLUESTATUS_st) + 2)) & 0xFFFF) //96byte
18
 #define EEPROM_ATT_DL1_TABLE_ADDRESDS	 (( EEPROM_WINDOW_STATUS_ADDRESDS  + (sizeof(ATT_TABLE_st))  )& 0xFFFF) //128
18
 #define EEPROM_ATT_DL1_TABLE_ADDRESDS	 (( EEPROM_WINDOW_STATUS_ADDRESDS  + (sizeof(ATT_TABLE_st))  )& 0xFFFF) //128
19
 #define EEPROM_ATT_DL2_TABLE_ADDRESDS	 (( EEPROM_ATT_DL1_TABLE_ADDRESDS  + (sizeof(ATT_TABLE_st))  ) & 0xFFFF) 
19
 #define EEPROM_ATT_DL2_TABLE_ADDRESDS	 (( EEPROM_ATT_DL1_TABLE_ADDRESDS  + (sizeof(ATT_TABLE_st))  ) & 0xFFFF) 
20
 #define EEPROM_ATT_DL3_TABLE_ADDRESDS	 (( EEPROM_ATT_DL2_TABLE_ADDRESDS  + (sizeof(ATT_TABLE_st))  ) & 0xFFFF)
20
 #define EEPROM_ATT_DL3_TABLE_ADDRESDS	 (( EEPROM_ATT_DL2_TABLE_ADDRESDS  + (sizeof(ATT_TABLE_st))  ) & 0xFFFF)
@@ -39,6 +39,8 @@
39
 #define EEPROM_TEMP_UL2_TABLE_ADDRESDS	 (( EEPROM_TEMP_UL1_TABLE_ADDRESDS +( sizeof(TEMP_TABLE_st)+12))     & 0xFFFF)
39
 #define EEPROM_TEMP_UL2_TABLE_ADDRESDS	 (( EEPROM_TEMP_UL1_TABLE_ADDRESDS +( sizeof(TEMP_TABLE_st)+12))     & 0xFFFF)
40
 #define EEPROM_TEMP_UL3_TABLE_ADDRESDS	 (( EEPROM_TEMP_UL2_TABLE_ADDRESDS +( sizeof(TEMP_TABLE_st)+12))     & 0xFFFF)
40
 #define EEPROM_TEMP_UL3_TABLE_ADDRESDS	 (( EEPROM_TEMP_UL2_TABLE_ADDRESDS +( sizeof(TEMP_TABLE_st)+12))     & 0xFFFF)
41
 #define EEPROM_TEMP_UL4_TABLE_ADDRESDS	 (( EEPROM_TEMP_UL3_TABLE_ADDRESDS +( sizeof(TEMP_TABLE_st)+12))     & 0xFFFF)
41
 #define EEPROM_TEMP_UL4_TABLE_ADDRESDS	 (( EEPROM_TEMP_UL3_TABLE_ADDRESDS +( sizeof(TEMP_TABLE_st)+12))     & 0xFFFF)
42
+#define EEPROM_USER_ATTEN_VALUE_ADDRESDS (( EEPROM_TEMP_UL4_TABLE_ADDRESDS +( sizeof(USER_ATTEN_st)+16))     & 0xFFFF)
43
+
42
 #else
44
 #else
43
 #define EEPROM_WINDOW_STATUS_ADDRESDS	 ((EEPROM_ATT_BASE + (sizeof(BLUESTATUS_st))) & 0xFFFF) //96byte
45
 #define EEPROM_WINDOW_STATUS_ADDRESDS	 ((EEPROM_ATT_BASE + (sizeof(BLUESTATUS_st))) & 0xFFFF) //96byte
44
 #define EEPROM_ATT_DL1_TABLE_ADDRESDS	 (( EEPROM_WINDOW_STATUS_ADDRESDS  + (sizeof(ATT_TABLE_st))  )& 0xFFFF) //128
46
 #define EEPROM_ATT_DL1_TABLE_ADDRESDS	 (( EEPROM_WINDOW_STATUS_ADDRESDS  + (sizeof(ATT_TABLE_st))  )& 0xFFFF) //128

文件差异内容过多而无法显示
+ 893 - 288
Bluecell_Src/Bluecell_operate.c


+ 6 - 2
Bluecell_Src/eeprom.c

@@ -30,8 +30,9 @@ bool		EEPROM24XX_Load(uint16_t Address,void *data,size_t size_of_data);
30
 
30
 
31
 
31
 
32
 void EEPROM_M24C08_Init(void){
32
 void EEPROM_M24C08_Init(void){
33
+    EEPROM_M24C08_Read(EEPROM_M24C08_ID,EEPROM_ATT_BASE,&bluecell_Currdatastatus.bluecell_header,sizeof(BLUESTATUS_st) );
34
+    
33
     EEPROM_M24C08_Read(EEPROM_M24C08_ID,EEPROM_WINDOW_STATUS_ADDRESDS,&Att_DL1.Table_0_0_dBm_H,sizeof(ATT_TABLE_st) );
35
     EEPROM_M24C08_Read(EEPROM_M24C08_ID,EEPROM_WINDOW_STATUS_ADDRESDS,&Att_DL1.Table_0_0_dBm_H,sizeof(ATT_TABLE_st) );
34
-//    printf("%x\r\n",Att_DL1.Table_0_0_dBm_H);
35
     EEPROM_M24C08_Read(EEPROM_M24C08_ID,EEPROM_ATT_DL1_TABLE_ADDRESDS,&Att_DL2.Table_0_0_dBm_H,sizeof(ATT_TABLE_st) );
36
     EEPROM_M24C08_Read(EEPROM_M24C08_ID,EEPROM_ATT_DL1_TABLE_ADDRESDS,&Att_DL2.Table_0_0_dBm_H,sizeof(ATT_TABLE_st) );
36
     EEPROM_M24C08_Read(EEPROM_M24C08_ID,EEPROM_ATT_DL2_TABLE_ADDRESDS,&Att_DL3.Table_0_0_dBm_H,sizeof(ATT_TABLE_st) );
37
     EEPROM_M24C08_Read(EEPROM_M24C08_ID,EEPROM_ATT_DL2_TABLE_ADDRESDS,&Att_DL3.Table_0_0_dBm_H,sizeof(ATT_TABLE_st) );
37
     EEPROM_M24C08_Read(EEPROM_M24C08_ID,EEPROM_ATT_DL3_TABLE_ADDRESDS,&Att_DL4.Table_0_0_dBm_H,sizeof(ATT_TABLE_st) );
38
     EEPROM_M24C08_Read(EEPROM_M24C08_ID,EEPROM_ATT_DL3_TABLE_ADDRESDS,&Att_DL4.Table_0_0_dBm_H,sizeof(ATT_TABLE_st) );
@@ -63,8 +64,11 @@ void EEPROM_M24C08_Init(void){
63
     EEPROM_M24C08_Read(EEPROM_M24C08_ID,EEPROM_TEMP_UL1_TABLE_ADDRESDS,&Temp_UL2.Table_10_Temp_H,sizeof(TEMP_TABLE_st) );
64
     EEPROM_M24C08_Read(EEPROM_M24C08_ID,EEPROM_TEMP_UL1_TABLE_ADDRESDS,&Temp_UL2.Table_10_Temp_H,sizeof(TEMP_TABLE_st) );
64
     EEPROM_M24C08_Read(EEPROM_M24C08_ID,EEPROM_TEMP_UL2_TABLE_ADDRESDS,&Temp_UL3.Table_10_Temp_H,sizeof(TEMP_TABLE_st) );
65
     EEPROM_M24C08_Read(EEPROM_M24C08_ID,EEPROM_TEMP_UL2_TABLE_ADDRESDS,&Temp_UL3.Table_10_Temp_H,sizeof(TEMP_TABLE_st) );
65
     EEPROM_M24C08_Read(EEPROM_M24C08_ID,EEPROM_TEMP_UL3_TABLE_ADDRESDS,&Temp_UL4.Table_10_Temp_H,sizeof(TEMP_TABLE_st) );
66
     EEPROM_M24C08_Read(EEPROM_M24C08_ID,EEPROM_TEMP_UL3_TABLE_ADDRESDS,&Temp_UL4.Table_10_Temp_H,sizeof(TEMP_TABLE_st) );
67
+    EEPROM_M24C08_Read(EEPROM_M24C08_ID,EEPROM_USER_ATTEN_VALUE_ADDRESDS,&bluecell_UserData.bluecell_User_DL1_H,sizeof(USER_ATTEN_st) );
68
+
66
 
69
 
67
-    EEPROM_M24C08_Read(EEPROM_M24C08_ID,EEPROM_TEMP_UL4_TABLE_ADDRESDS,&bluecell_Currdatastatus.bluecell_header,sizeof(BLUESTATUS_st) );
70
+
71
+    
68
 //    printf("bluecell_Currdatastatus.ATT_DL1_H : %x\r\n",bluecell_Currdatastatus.ATT_DL1_H);
72
 //    printf("bluecell_Currdatastatus.ATT_DL1_H : %x\r\n",bluecell_Currdatastatus.ATT_DL1_H);
69
 //    printf("bluecell_Currdatastatus.ATT_DL1_L : %x\r\n",bluecell_Currdatastatus.ATT_DL1_L);        
73
 //    printf("bluecell_Currdatastatus.ATT_DL1_L : %x\r\n",bluecell_Currdatastatus.ATT_DL1_L);        
70
 //    
74
 //    

+ 4 - 2
Inc/main.h

@@ -60,8 +60,8 @@ extern volatile uint16_t ADC3value[5];
60
 extern volatile uint32_t ADC1_Average_value[4];
60
 extern volatile uint32_t ADC1_Average_value[4];
61
 extern volatile uint32_t ADC3_Average_value[5];
61
 extern volatile uint32_t ADC3_Average_value[5];
62
 
62
 
63
-extern uint8_t adc1cnt;
64
-extern uint8_t adc3cnt;
63
+extern uint16_t adc1cnt;
64
+extern uint16_t adc3cnt;
65
 
65
 
66
 extern ADC_HandleTypeDef hadc1;
66
 extern ADC_HandleTypeDef hadc1;
67
 extern ADC_HandleTypeDef hadc3;
67
 extern ADC_HandleTypeDef hadc3;
@@ -71,6 +71,8 @@ extern I2C_HandleTypeDef hi2c2;
71
 /* USER CODE END EFP */
71
 /* USER CODE END EFP */
72
 
72
 
73
 /* Private defines -----------------------------------------------------------*/
73
 /* Private defines -----------------------------------------------------------*/
74
+#define LED_FAIL_Pin GPIO_PIN_3
75
+#define LED_FAIL_GPIO_Port GPIOE
74
 #define FAIL_MBIC_Pin GPIO_PIN_4
76
 #define FAIL_MBIC_Pin GPIO_PIN_4
75
 #define FAIL_MBIC_GPIO_Port GPIOE
77
 #define FAIL_MBIC_GPIO_Port GPIOE
76
 #define BOOT_LED_Pin GPIO_PIN_15
78
 #define BOOT_LED_Pin GPIO_PIN_15

+ 2 - 0
STM32F103ZET_JDASMBIC.ioc

@@ -309,6 +309,8 @@ PE15.GPIOParameters=GPIO_Label
309
 PE15.GPIO_Label=PATH_EN_UL4
309
 PE15.GPIO_Label=PATH_EN_UL4
310
 PE15.Locked=true
310
 PE15.Locked=true
311
 PE15.Signal=GPIO_Output
311
 PE15.Signal=GPIO_Output
312
+PE3.GPIOParameters=GPIO_Label
313
+PE3.GPIO_Label=LED_FAIL
312
 PE3.Locked=true
314
 PE3.Locked=true
313
 PE3.Signal=GPIO_Output
315
 PE3.Signal=GPIO_Output
314
 PE4.GPIOParameters=GPIO_Label
316
 PE4.GPIOParameters=GPIO_Label

+ 22 - 9
Src/main.c

@@ -71,6 +71,10 @@ volatile uint32_t AdcTimerCnt = 0;
71
 volatile uint32_t LedTimerCnt = 0;
71
 volatile uint32_t LedTimerCnt = 0;
72
 volatile uint32_t UartRxTimerCnt = 0;
72
 volatile uint32_t UartRxTimerCnt = 0;
73
 volatile uint32_t LDTimerCnt = 0;
73
 volatile uint32_t LDTimerCnt = 0;
74
+volatile uint32_t ALCTimerCnt = 0;
75
+volatile uint32_t AGCTimerCnt = 0;
76
+
77
+
74
 /* USER CODE END PV */
78
 /* USER CODE END PV */
75
 
79
 
76
 /* Private function prototypes -----------------------------------------------*/
80
 /* Private function prototypes -----------------------------------------------*/
@@ -106,8 +110,8 @@ int _write (int file, uint8_t *ptr, uint16_t len)
106
     HAL_UART_Transmit(&huart1, ptr, len,10);
110
     HAL_UART_Transmit(&huart1, ptr, len,10);
107
     return len;
111
     return len;
108
 }
112
 }
109
-uint8_t adc1cnt = 0 ;
110
-uint8_t adc3cnt = 0 ;
113
+uint16_t adc1cnt = 0 ;
114
+uint16_t adc3cnt = 0 ;
111
 
115
 
112
 
116
 
113
 void HAL_ADC_ConvCpltCallback(ADC_HandleTypeDef* hadc)
117
 void HAL_ADC_ConvCpltCallback(ADC_HandleTypeDef* hadc)
@@ -117,7 +121,7 @@ void HAL_ADC_ConvCpltCallback(ADC_HandleTypeDef* hadc)
117
 
121
 
118
     if(hadc->Instance == hadc1.Instance)
122
     if(hadc->Instance == hadc1.Instance)
119
     {
123
     {
120
-        if(adc1cnt < 100){
124
+        if(adc1cnt < 500){
121
             for(int i = 0; i < 4; i++){
125
             for(int i = 0; i < 4; i++){
122
                 ADC1_Average_value[i] += ADC1value[i]  ;
126
                 ADC1_Average_value[i] += ADC1value[i]  ;
123
             }
127
             }
@@ -126,7 +130,7 @@ void HAL_ADC_ConvCpltCallback(ADC_HandleTypeDef* hadc)
126
     }
130
     }
127
     if(hadc->Instance == hadc3.Instance)
131
     if(hadc->Instance == hadc3.Instance)
128
     {
132
     {
129
-        if(adc3cnt < 100){
133
+        if(adc3cnt < 500){
130
             for(int i = 0; i < 5; i++){
134
             for(int i = 0; i < 5; i++){
131
                 ADC3_Average_value[i] += ADC3value[i]  ;
135
                 ADC3_Average_value[i] += ADC3value[i]  ;
132
             }
136
             }
@@ -211,7 +215,7 @@ uint8_t eepromtestarray1[EEPROM_WINDOW_STATUS_ADDRESDS];
211
 uint8_t eepromtestReadarray1[EEPROM_WINDOW_STATUS_ADDRESDS];
215
 uint8_t eepromtestReadarray1[EEPROM_WINDOW_STATUS_ADDRESDS];
212
 #define TESTINDEX  sizeof(TEMP_TABLE_st) 
216
 #define TESTINDEX  sizeof(TEMP_TABLE_st) 
213
 void EEPROMTEST_J(){
217
 void EEPROMTEST_J(){
214
-#if 1 // PYJ.2020.04.25_BEGIN -- 
218
+#if 0 // PYJ.2020.04.25_BEGIN -- 
215
       for(int i = 0; i< TESTINDEX; i++)
219
       for(int i = 0; i< TESTINDEX; i++)
216
           eepromtestarray[i] = i;
220
           eepromtestarray[i] = i;
217
       printf("Value %x\r\n",eepromtestarray[1]);
221
       printf("Value %x\r\n",eepromtestarray[1]);
@@ -225,6 +229,11 @@ void EEPROMTEST_J(){
225
         for(int i = 0; i< TESTINDEX; i++)
229
         for(int i = 0; i< TESTINDEX; i++)
226
             printf("%d ",eepromtestReadarray[i]);
230
             printf("%d ",eepromtestReadarray[i]);
227
                printf("\r\n");
231
                printf("\r\n");
232
+#else        
233
+    EEPROM_M24C08_Read(EEPROM_M24C08_ID,EEPROM_ATT_BASE,&eepromtestReadarray[0],sizeof(BLUESTATUS_st) );
234
+    for(int i = 0; i< sizeof(BLUESTATUS_st); i++)
235
+               printf("%d ",eepromtestReadarray[i]);
236
+
228
 #endif // PYJ.2020.04.25_END -- 
237
 #endif // PYJ.2020.04.25_END -- 
229
 
238
 
230
 
239
 
@@ -289,6 +298,7 @@ void eepromtest_j1(){
289
 }
298
 }
290
 #endif // PYJ.2020.04.23_END -- 
299
 #endif // PYJ.2020.04.23_END -- 
291
 
300
 
301
+extern void ALC_Function();
292
 
302
 
293
 /* USER CODE END 0 */
303
 /* USER CODE END 0 */
294
 
304
 
@@ -369,6 +379,8 @@ int main(void)
369
     Boot_LED_Toggle();
379
     Boot_LED_Toggle();
370
     Uart_Check();
380
     Uart_Check();
371
     ADC_Check();
381
     ADC_Check();
382
+    ALC_Function();
383
+    AGC_Function();
372
     /* USER CODE END WHILE */
384
     /* USER CODE END WHILE */
373
 
385
 
374
     /* USER CODE BEGIN 3 */
386
     /* USER CODE BEGIN 3 */
@@ -641,7 +653,6 @@ static void MX_I2C2_Init(void)
641
   hi2c2.Instance = I2C2;
653
   hi2c2.Instance = I2C2;
642
   hi2c2.Init.ClockSpeed = 400000;
654
   hi2c2.Init.ClockSpeed = 400000;
643
   hi2c2.Init.DutyCycle = I2C_DUTYCYCLE_2;
655
   hi2c2.Init.DutyCycle = I2C_DUTYCYCLE_2;
644
-  
645
   hi2c2.Init.OwnAddress1 = 0;
656
   hi2c2.Init.OwnAddress1 = 0;
646
   hi2c2.Init.AddressingMode = I2C_ADDRESSINGMODE_7BIT;
657
   hi2c2.Init.AddressingMode = I2C_ADDRESSINGMODE_7BIT;
647
   hi2c2.Init.DualAddressMode = I2C_DUALADDRESS_DISABLE;
658
   hi2c2.Init.DualAddressMode = I2C_DUALADDRESS_DISABLE;
@@ -793,7 +804,7 @@ static void MX_GPIO_Init(void)
793
   __HAL_RCC_GPIOD_CLK_ENABLE();
804
   __HAL_RCC_GPIOD_CLK_ENABLE();
794
 
805
 
795
   /*Configure GPIO pin Output Level */
806
   /*Configure GPIO pin Output Level */
796
-  HAL_GPIO_WritePin(GPIOE, GPIO_PIN_3|FAIL_MBIC_Pin|ATT_CLOCK4_Pin|ATT_DATA4_Pin 
807
+  HAL_GPIO_WritePin(GPIOE, LED_FAIL_Pin|FAIL_MBIC_Pin|ATT_CLOCK4_Pin|ATT_DATA4_Pin 
797
                           |ATT_EN_DL4_Pin|ATT_EN_UL4_Pin|PATH_EN_DL4_Pin|PATH_EN_UL4_Pin, GPIO_PIN_RESET);
808
                           |ATT_EN_DL4_Pin|ATT_EN_UL4_Pin|PATH_EN_DL4_Pin|PATH_EN_UL4_Pin, GPIO_PIN_RESET);
798
 
809
 
799
   /*Configure GPIO pin Output Level */
810
   /*Configure GPIO pin Output Level */
@@ -813,9 +824,9 @@ static void MX_GPIO_Init(void)
813
   HAL_GPIO_WritePin(GPIOD, PATH_EN_DL2_Pin|PATH_EN_UL2_Pin|LED_ACT_Pin|GPIO_PIN_15 
824
   HAL_GPIO_WritePin(GPIOD, PATH_EN_DL2_Pin|PATH_EN_UL2_Pin|LED_ACT_Pin|GPIO_PIN_15 
814
                           |ATT_CLOCK2_Pin|ATT_DATA2_Pin|ATT_EN_DL2_Pin|ATT_EN_UL2_Pin, GPIO_PIN_RESET);
825
                           |ATT_CLOCK2_Pin|ATT_DATA2_Pin|ATT_EN_DL2_Pin|ATT_EN_UL2_Pin, GPIO_PIN_RESET);
815
 
826
 
816
-  /*Configure GPIO pins : PE3 FAIL_MBIC_Pin ATT_CLOCK4_Pin ATT_DATA4_Pin 
827
+  /*Configure GPIO pins : LED_FAIL_Pin FAIL_MBIC_Pin ATT_CLOCK4_Pin ATT_DATA4_Pin 
817
                            ATT_EN_DL4_Pin ATT_EN_UL4_Pin PATH_EN_DL4_Pin PATH_EN_UL4_Pin */
828
                            ATT_EN_DL4_Pin ATT_EN_UL4_Pin PATH_EN_DL4_Pin PATH_EN_UL4_Pin */
818
-  GPIO_InitStruct.Pin = GPIO_PIN_3|FAIL_MBIC_Pin|ATT_CLOCK4_Pin|ATT_DATA4_Pin 
829
+  GPIO_InitStruct.Pin = LED_FAIL_Pin|FAIL_MBIC_Pin|ATT_CLOCK4_Pin|ATT_DATA4_Pin 
819
                           |ATT_EN_DL4_Pin|ATT_EN_UL4_Pin|PATH_EN_DL4_Pin|PATH_EN_UL4_Pin;
830
                           |ATT_EN_DL4_Pin|ATT_EN_UL4_Pin|PATH_EN_DL4_Pin|PATH_EN_UL4_Pin;
820
   GPIO_InitStruct.Mode = GPIO_MODE_OUTPUT_PP;
831
   GPIO_InitStruct.Mode = GPIO_MODE_OUTPUT_PP;
821
   GPIO_InitStruct.Pull = GPIO_NOPULL;
832
   GPIO_InitStruct.Pull = GPIO_NOPULL;
@@ -888,6 +899,8 @@ void HAL_TIM_PeriodElapsedCallback(TIM_HandleTypeDef *htim)
888
       LedTimerCnt++;
899
       LedTimerCnt++;
889
       AdcTimerCnt++;
900
       AdcTimerCnt++;
890
       LDTimerCnt++;
901
       LDTimerCnt++;
902
+      ALCTimerCnt++;
903
+      AGCTimerCnt++;
891
   }
904
   }
892
   /* USER CODE END Callback 1 */
905
   /* USER CODE END Callback 1 */
893
 }
906
 }