|
@@ -19,8 +19,10 @@ void Alarm_Check();
|
19
|
19
|
uint8_t Alarm_Status[MAX_ALARM_Len] = {0,};
|
20
|
20
|
//uint8_t data123[10000];
|
21
|
21
|
uint8_t ResultData[1024] = {0,};
|
22
|
|
-uint8_t DataWrite[512] = {0,};
|
|
22
|
+uint8_t DataWrite[sizeof(BLUESTATUS_st)] = {0,};
|
23
|
23
|
uint8_t DataRead[512] = {0,};
|
|
24
|
+extern volatile bool AlarmTimerSet;
|
|
25
|
+extern volatile uint32_t AlarmTimerCnt;
|
24
|
26
|
|
25
|
27
|
|
26
|
28
|
typedef enum{
|
|
@@ -258,19 +260,41 @@ double TableAtteGuarantee(uint8_t* Table,double AttenValue);
|
258
|
260
|
uint8_t PE43711_Calc(uint8_t* Table,uint8_t high_bit,uint8_t low_bit,uint8_t offset_h,uint8_t offset_l);
|
259
|
261
|
uint8_t PE43711_Calc_NoTable(uint8_t high_bit,uint8_t low_bit);
|
260
|
262
|
double PE43711_Double(uint8_t high_bit,uint8_t low_bit);
|
|
263
|
+void Booting_LED_Check(void);
|
|
264
|
+
|
261
|
265
|
int8_t AutoControl_Save[sizeof(ALC_dBm_t)];
|
262
|
266
|
|
263
|
267
|
uint8_t MBIC_TxDataArray[256] = {0,};
|
|
268
|
+void Booting_LED_Check(void){
|
|
269
|
+ for(int i = 0; i < 6; i ++){
|
|
270
|
+ HAL_GPIO_TogglePin(BOOT_LED_GPIO_Port,BOOT_LED_Pin);
|
|
271
|
+ HAL_GPIO_TogglePin(LED_ACT_GPIO_Port,LED_ACT_Pin);
|
|
272
|
+ HAL_GPIO_TogglePin(LED_FAIL_GPIO_Port,LED_FAIL_Pin);
|
|
273
|
+ HAL_Delay(1000);
|
|
274
|
+ }
|
|
275
|
+}
|
264
|
276
|
|
265
|
277
|
|
266
|
278
|
void Boot_LED_Toggle(void){
|
267
|
|
- if(LedTimerCnt > 500){
|
|
279
|
+ if(LedTimerCnt > 1000){
|
268
|
280
|
HAL_GPIO_TogglePin(BOOT_LED_GPIO_Port,BOOT_LED_Pin);
|
269
|
281
|
HAL_GPIO_TogglePin(LED_ACT_GPIO_Port,LED_ACT_Pin);
|
270
|
|
- HAL_GPIO_TogglePin(LED_FAIL_GPIO_Port,LED_FAIL_Pin);
|
|
282
|
+ if((bluecell_Currdatastatus.ALARM_TEMP_HIGH > 0
|
|
283
|
+ || bluecell_Currdatastatus.ALARM_DLI_Level > 0
|
|
284
|
+ || bluecell_Currdatastatus.ALARM_DLI_AGC_SHTUTDOWN > 0
|
|
285
|
+ || bluecell_Currdatastatus.ALARM_DLI_AGC_Alarm > 0
|
|
286
|
+ || bluecell_Currdatastatus.ALARM_ULO_ALC_Alarm > 0
|
|
287
|
+ || bluecell_Currdatastatus.ALARM_ULO_Level > 0
|
|
288
|
+ || bluecell_Currdatastatus.ALARM_ULO_ALC_SHTUTDOWN > 0)
|
|
289
|
+ && bluecell_Currdatastatus.ALARM_MASK1 > 0){
|
|
290
|
+ HAL_GPIO_WritePin(LED_FAIL_GPIO_Port,LED_FAIL_Pin,GPIO_PIN_SET);
|
|
291
|
+ }else{
|
|
292
|
+ HAL_GPIO_WritePin(LED_FAIL_GPIO_Port,LED_FAIL_Pin,GPIO_PIN_RESET);
|
|
293
|
+ }
|
271
|
294
|
LedTimerCnt = 0;
|
272
|
295
|
// printf("LED OF OFF\r\n");
|
273
|
296
|
}
|
|
297
|
+
|
274
|
298
|
}
|
275
|
299
|
|
276
|
300
|
|
|
@@ -705,7 +729,6 @@ void Bluecell_TableLoad(uint8_t* data,uint8_t type){
|
705
|
729
|
switch(tabletype){
|
706
|
730
|
case DLI_P1_ATT_Accuracy_Table_Number:
|
707
|
731
|
EEPROM_M24C08_Read(EEPROM_M24C08_ID ,EEPROM_ATT_BASE ,&Att_DL1.Table_0_0_dBm,sizeof(ATT_TABLE_st) );
|
708
|
|
-// EEPROM_M24C08_Read(EEPROM_M24C08_ID ,EEPROM_WINDOW_STATUS_ADDRESDS ,&Att_DL1.Table_0_0_dBm,sizeof(ATT_TABLE_st) );
|
709
|
732
|
Bluecell_DataCopy(&data[BLUECELL_DATA + 1],&Att_DL1.Table_0_0_dBm,sizeof(ATT_TABLE_st));
|
710
|
733
|
// Bluecell_structprintf(&Att_DL1.Table_0_0_dBm,sizeof(ATT_TABLE_st));
|
711
|
734
|
data[BLUECELL_LENGTH] = (sizeof(ATT_TABLE_st)) + 7 - 3;
|
|
@@ -849,9 +872,6 @@ void Bluecell_TableSave(uint8_t* data,uint8_t type){
|
849
|
872
|
case DLI_P1_ATT_Accuracy_Table_Number:
|
850
|
873
|
Bluecell_DataCopy(&Att_DL1.Table_0_0_dBm,&data[BLUECELL_DATA + 1],sizeof(ATT_TABLE_st));
|
851
|
874
|
EEPROM_M24C08_write(EEPROM_M24C08_ID ,(EEPROM_ATT_BASE) ,&Att_DL1.Table_0_0_dBm,sizeof(ATT_TABLE_st) );
|
852
|
|
-// Bluecell_structprintf(&Att_DL1.Table_0_0_dBm,sizeof(ATT_TABLE_st));
|
853
|
|
-// printf("ADDRESS : %d \r\n",EEPROM_WINDOW_STATUS_ADDRESDS );
|
854
|
|
-// Bluecell_structprintf(&Att_DL1.Table_0_0_dBm,sizeof(ATT_TABLE_st));
|
855
|
875
|
break;
|
856
|
876
|
case DLI_P2_ATT_Accuracy_Table_Number:
|
857
|
877
|
Bluecell_DataCopy(&Att_DL2.Table_0_0_dBm,&data[BLUECELL_DATA + 1],sizeof(ATT_TABLE_st));
|
|
@@ -972,55 +992,82 @@ bool Bluecell_Operate(uint8_t* data){
|
972
|
992
|
case BLUECELL_SOFTWARERESET:
|
973
|
993
|
NVIC_SystemReset();
|
974
|
994
|
break;
|
975
|
|
- case ATTSET :
|
|
995
|
+ case Bluecell_ATT_DL1 :
|
976
|
996
|
// printf("Function : %s Line %d \r\n",__func__,__LINE__);
|
977
|
997
|
bluecell_Currdatastatus.ATT_DL1_H = data[BLUECELL_DATA + i++];
|
978
|
998
|
bluecell_Currdatastatus.ATT_DL1_L = data[BLUECELL_DATA + i++];
|
979
|
999
|
// printf("bluecell_Currdatastatus.ATT_DL1_H : %x\r\n",bluecell_Currdatastatus.ATT_DL1_H);
|
980
|
1000
|
// printf("bluecell_Currdatastatus.ATT_DL1_L : %x\r\n",bluecell_Currdatastatus.ATT_DL1_L);
|
|
1001
|
+ /*
|
|
1002
|
+ Atten Ctrl Function
|
|
1003
|
+ */
|
|
1004
|
+ CompareAttenData(bluecell_Currdatastatus,bluecell_Prevdatastatus);
|
|
1005
|
+ break;
|
|
1006
|
+ case Bluecell_ATT_DL2 :
|
981
|
1007
|
bluecell_Currdatastatus.ATT_DL2_H = data[BLUECELL_DATA + i++];
|
982
|
1008
|
bluecell_Currdatastatus.ATT_DL2_L = data[BLUECELL_DATA + i++];
|
|
1009
|
+
|
|
1010
|
+ /*
|
|
1011
|
+ Atten Ctrl Function
|
|
1012
|
+ */
|
|
1013
|
+ CompareAttenData(bluecell_Currdatastatus,bluecell_Prevdatastatus);
|
|
1014
|
+ break;
|
|
1015
|
+ case Bluecell_ATT_DL3 :
|
983
|
1016
|
bluecell_Currdatastatus.ATT_DL3_H = data[BLUECELL_DATA + i++];
|
984
|
1017
|
bluecell_Currdatastatus.ATT_DL3_L = data[BLUECELL_DATA + i++];
|
|
1018
|
+
|
|
1019
|
+ /*
|
|
1020
|
+ Atten Ctrl Function
|
|
1021
|
+ */
|
|
1022
|
+ CompareAttenData(bluecell_Currdatastatus,bluecell_Prevdatastatus);
|
|
1023
|
+ break;
|
|
1024
|
+ case Bluecell_ATT_DL4 :
|
985
|
1025
|
bluecell_Currdatastatus.ATT_DL4_H = data[BLUECELL_DATA + i++];
|
986
|
1026
|
bluecell_Currdatastatus.ATT_DL4_L = data[BLUECELL_DATA + i++];
|
|
1027
|
+
|
|
1028
|
+ /*
|
|
1029
|
+ Atten Ctrl Function
|
|
1030
|
+ */
|
|
1031
|
+ CompareAttenData(bluecell_Currdatastatus,bluecell_Prevdatastatus);
|
|
1032
|
+ break;
|
|
1033
|
+ case Bluecell_ATT_UL1 :
|
987
|
1034
|
|
988
|
1035
|
bluecell_Currdatastatus.ATT_UL1_H = data[BLUECELL_DATA + i++];
|
989
|
1036
|
bluecell_Currdatastatus.ATT_UL1_L = data[BLUECELL_DATA + i++];
|
|
1037
|
+
|
|
1038
|
+ /*
|
|
1039
|
+ Atten Ctrl Function
|
|
1040
|
+ */
|
|
1041
|
+ CompareAttenData(bluecell_Currdatastatus,bluecell_Prevdatastatus);
|
|
1042
|
+ // printf("bluecell_Currdatastatus.ATT_UL1_H : %x\r\n",bluecell_Currdatastatus.ATT_UL1_H);
|
|
1043
|
+ // printf("bluecell_Currdatastatus.ATT_UL1_L : %x\r\n",bluecell_Currdatastatus.ATT_UL1_L);
|
|
1044
|
+ break;
|
|
1045
|
+ case Bluecell_ATT_UL2 :
|
990
|
1046
|
bluecell_Currdatastatus.ATT_UL2_H = data[BLUECELL_DATA + i++];
|
991
|
1047
|
bluecell_Currdatastatus.ATT_UL2_L = data[BLUECELL_DATA + i++];
|
|
1048
|
+
|
|
1049
|
+ /*
|
|
1050
|
+ Atten Ctrl Function
|
|
1051
|
+ */
|
|
1052
|
+ CompareAttenData(bluecell_Currdatastatus,bluecell_Prevdatastatus);
|
|
1053
|
+ break;
|
|
1054
|
+ case Bluecell_ATT_UL3 :
|
992
|
1055
|
bluecell_Currdatastatus.ATT_UL3_H = data[BLUECELL_DATA + i++];
|
993
|
1056
|
bluecell_Currdatastatus.ATT_UL3_L = data[BLUECELL_DATA + i++];
|
|
1057
|
+
|
|
1058
|
+ /*
|
|
1059
|
+ Atten Ctrl Function
|
|
1060
|
+ */
|
|
1061
|
+ CompareAttenData(bluecell_Currdatastatus,bluecell_Prevdatastatus);
|
|
1062
|
+ break;
|
|
1063
|
+ case Bluecell_ATT_UL4 :
|
994
|
1064
|
bluecell_Currdatastatus.ATT_UL4_H = data[BLUECELL_DATA + i++];
|
995
|
1065
|
bluecell_Currdatastatus.ATT_UL4_L = data[BLUECELL_DATA + i++];
|
996
|
|
-
|
997
|
|
- bluecell_Currdatastatus.ATT_ALC1_MAX_H = data[BLUECELL_DATA + i++];
|
998
|
|
- bluecell_Currdatastatus.ATT_ALC1_MAX_L = data[BLUECELL_DATA + i++];
|
999
|
|
- bluecell_Currdatastatus.ATT_ALC2_MAX_H = data[BLUECELL_DATA + i++];
|
1000
|
|
- bluecell_Currdatastatus.ATT_ALC2_MAX_L = data[BLUECELL_DATA + i++];
|
1001
|
|
- bluecell_Currdatastatus.ATT_ALC3_MAX_H = data[BLUECELL_DATA + i++];
|
1002
|
|
- bluecell_Currdatastatus.ATT_ALC3_MAX_L = data[BLUECELL_DATA + i++];
|
1003
|
|
- bluecell_Currdatastatus.ATT_ALC4_MAX_H = data[BLUECELL_DATA + i++];
|
1004
|
|
- bluecell_Currdatastatus.ATT_ALC4_MAX_L = data[BLUECELL_DATA + i++];
|
1005
|
|
- bluecell_Currdatastatus.ATT_ALC_Threshold_H = data[BLUECELL_DATA + i++]; // 20
|
1006
|
|
- bluecell_Currdatastatus.ATT_ALC_Threshold_L = data[BLUECELL_DATA + i++];
|
1007
|
|
- bluecell_Currdatastatus.ATT_ALC2_MIN_H = data[BLUECELL_DATA + i++];
|
1008
|
|
- bluecell_Currdatastatus.ATT_ALC2_MIN_L = data[BLUECELL_DATA + i++];
|
1009
|
|
- bluecell_Currdatastatus.ATT_ALC3_MIN_H = data[BLUECELL_DATA + i++];
|
1010
|
|
- bluecell_Currdatastatus.ATT_ALC3_MIN_L = data[BLUECELL_DATA + i++];
|
1011
|
|
- bluecell_Currdatastatus.ATT_ALC4_MIN_H = data[BLUECELL_DATA + i++];
|
1012
|
|
- bluecell_Currdatastatus.ATT_ALC4_MIN_L = data[BLUECELL_DATA + i++];
|
1013
|
|
-// printf("ALC 1 H: %x \r\n", bluecell_Currdatastatus.ATT_ALC1_MAX_H);
|
1014
|
|
-// printf("ALC 1 L: %x \r\n", bluecell_Currdatastatus.ATT_ALC1_MAX_L);
|
1015
|
|
-// printf("bluecell_Currdatastatus.ATT_ALC4_MAX_H : %x \r\nbluecell_Currdatastatus.ATT_ALC4_MAX_L : %x\r\n",
|
1016
|
|
- //bluecell_Currdatastatus.ATT_ALC4_MAX_H,bluecell_Currdatastatus.ATT_ALC4_MAX_L);
|
1017
|
|
- // memcpy(&bluecell_Currdatastatus.ATT_DL1_H,&data[BLUECELL_DATA],32);
|
1018
|
|
-// bluecell_Currdatastatus.ATT_DL1_H = data[BLUECELL_DATA + i++];
|
1019
|
|
-// bluecell_Currdatastatus.ATT_DL1_L = data[BLUECELL_DATA + 1];
|
1020
|
1066
|
/*
|
1021
|
1067
|
Atten Ctrl Function
|
1022
|
1068
|
*/
|
1023
|
1069
|
CompareAttenData(bluecell_Currdatastatus,bluecell_Prevdatastatus);
|
|
1070
|
+ break;
|
1024
|
1071
|
// printf("ret : %f ,tmp %f \r\n",ret,tmp );
|
1025
|
1072
|
break;
|
1026
|
1073
|
case ATT_DL1_PATH :
|
|
@@ -1180,10 +1227,10 @@ bool Bluecell_Operate(uint8_t* data){
|
1180
|
1227
|
break;
|
1181
|
1228
|
case ALC1_EN :
|
1182
|
1229
|
if(data[BLUECELL_DATA]==0){
|
1183
|
|
- bluecell_Currdatastatus.ATT_ALC1_ONOFF = false;
|
|
1230
|
+ bluecell_Currdatastatus.ULO_ALC_ON_OFF = false;
|
1184
|
1231
|
}
|
1185
|
1232
|
else{
|
1186
|
|
- bluecell_Currdatastatus.ATT_ALC1_ONOFF = true;
|
|
1233
|
+ bluecell_Currdatastatus.ULO_ALC_ON_OFF = true;
|
1187
|
1234
|
}
|
1188
|
1235
|
break;
|
1189
|
1236
|
case ALC2_EN :
|
|
@@ -1264,7 +1311,7 @@ bool Bluecell_Operate(uint8_t* data){
|
1264
|
1311
|
break;
|
1265
|
1312
|
case Bluecell_StatusReq:
|
1266
|
1313
|
DataStatusSet();
|
1267
|
|
- Bluecell_StructCpy(&Txdata[0],&bluecell_Currdatastatus.bluecell_header,sizeof(BLUESTATUS_st));
|
|
1314
|
+ Bluecell_StructCpy(&Txdata[0],&bluecell_Currdatastatus.bluecell_header,94);
|
1268
|
1315
|
Txdata[BLUECELL_LENGTH] = 94 - 3;//sizeof(BLUESTATUS_st) - 3;
|
1269
|
1316
|
Txdata[94 - 2] = STH30_CreateCrc(&Txdata[BLUECELL_TYPE], Txdata[BLUECELL_LENGTH]);
|
1270
|
1317
|
#if 0 // PYJ.2020.04.22_BEGIN --
|
|
@@ -1347,7 +1394,7 @@ bool Bluecell_Operate(uint8_t* data){
|
1347
|
1394
|
|
1348
|
1395
|
break;
|
1349
|
1396
|
case Bluecell_ULO_ALC_ON_OFF:
|
1350
|
|
- bluecell_Currdatastatus.ATT_ALC1_ONOFF = data[BLUECELL_DATA + i];
|
|
1397
|
+ bluecell_Currdatastatus.ULO_ALC_ON_OFF = data[BLUECELL_DATA + i];
|
1351
|
1398
|
break;
|
1352
|
1399
|
case Bluecell_DLI_AGC_Threshold:
|
1353
|
1400
|
bluecell_Currdatastatus.DLI_AGC_Threshold_H = data[BLUECELL_DATA + i++];
|
|
@@ -1403,8 +1450,8 @@ bool Bluecell_Operate(uint8_t* data){
|
1403
|
1450
|
bluecell_Currdatastatus.DLI_Level_High_Threshold_L = data[BLUECELL_DATA + i++];
|
1404
|
1451
|
tempdata = (( bluecell_Currdatastatus.DLI_Level_High_Threshold_H << 8) & 0xFF00) ;
|
1405
|
1452
|
tempdata += bluecell_Currdatastatus.DLI_Level_High_Threshold_L ;
|
1406
|
|
-// tempdata /= 10;
|
1407
|
|
-// printf("tempdata : %d\r\n",tempdata);
|
|
1453
|
+ tempdata /= 10;
|
|
1454
|
+ printf("tempdata : %d\r\n",tempdata);
|
1408
|
1455
|
// bluecell_Currdatastatus.DLI_Level_High_Threshold_H = ((tempdata & 0xFF00) >> 8);
|
1409
|
1456
|
// bluecell_Currdatastatus.DLI_Level_High_Threshold_L = (tempdata & 0x00FF);
|
1410
|
1457
|
break;
|
|
@@ -1473,8 +1520,8 @@ bool Bluecell_Operate(uint8_t* data){
|
1473
|
1520
|
bluecell_Currdatastatus.ATT_ALC_Threshold_L = data[BLUECELL_DATA + i++];
|
1474
|
1521
|
tempdata = (( bluecell_Currdatastatus.ATT_ALC_Threshold_H << 8) & 0xFF00) ;
|
1475
|
1522
|
tempdata += bluecell_Currdatastatus.ATT_ALC_Threshold_L ;
|
1476
|
|
-// tempdata /= 10;
|
1477
|
|
-// printf("tempdata : %d\r\n",tempdata);
|
|
1523
|
+ tempdata /= 10;
|
|
1524
|
+ printf("tempdata : %d\r\n",tempdata);
|
1478
|
1525
|
// bluecell_Currdatastatus.ATT_ALC_Threshold_H = ((tempdata & 0xFF00) >> 8);
|
1479
|
1526
|
// bluecell_Currdatastatus.ATT_ALC_Threshold_L = (tempdata & 0x00FF);
|
1480
|
1527
|
|
|
@@ -1514,10 +1561,15 @@ bool Bluecell_Operate(uint8_t* data){
|
1514
|
1561
|
break;
|
1515
|
1562
|
case Bluecell_ULO_Shutdown_Retry_Count :
|
1516
|
1563
|
break;
|
|
1564
|
+ case Bluecell_Alarm_Mask:
|
|
1565
|
+ bluecell_Currdatastatus.ALARM_MASK1 = data[BLUECELL_DATA + i+ 1];
|
|
1566
|
+ printf("%s : %d ALARM_MASK1 : %d \r\n",__func__,__LINE__,bluecell_Currdatastatus.ALARM_MASK1);
|
|
1567
|
+ break;
|
1517
|
1568
|
}
|
1518
|
1569
|
if(datatype != Bluecell_StatusReq){
|
1519
|
1570
|
Bluecell_StructCpy(&DataWrite[0],&bluecell_Currdatastatus.bluecell_header,sizeof(BLUESTATUS_st));
|
1520
|
1571
|
EEPROM_M24C08_write(EEPROM_M24C08_ID ,(EEPROM_WINDOW_STATUS_ADDRESDS),&DataWrite[0],sizeof(BLUESTATUS_st));
|
|
1572
|
+// EEPROM_M24C08_Read(EEPROM_M24C08_ID,EEPROM_WINDOW_STATUS_ADDRESDS,&bluecell_Currdatastatus.bluecell_header,sizeof(BLUESTATUS_st) );
|
1521
|
1573
|
// Bluecell_StructCpy(&Txdata[0],&DataWrite[0],sizeof(BLUESTATUS_st));
|
1522
|
1574
|
// Txdata[sizeof(BLUESTATUS_st) - 2] = STH30_CreateCrc(&Txdata[BLUECELL_TYPE], sizeof(BLUESTATUS_st) - 3);
|
1523
|
1575
|
// Uart1_Data_Send(&Txdata[0], sizeof(BLUESTATUS_st));
|
|
@@ -2543,7 +2595,6 @@ uint16_t Descendingcompare(const void *a, const void *b) // 내림차순 비
|
2543
|
2595
|
return 0; // a와 b가 같을 때는 0 반환
|
2544
|
2596
|
}
|
2545
|
2597
|
void DascendigFunc(uint16_t* data,uint32_t size ){
|
2546
|
|
-
|
2547
|
2598
|
int temp;
|
2548
|
2599
|
for(int i = 0 ; i < size - 1 ; i ++) {
|
2549
|
2600
|
for(int j = i+1 ; j < size ; j ++) {
|
|
@@ -2914,7 +2965,11 @@ int32_t MinusConvert(uint8_t Temp_h, int32_t Value){
|
2914
|
2965
|
|
2915
|
2966
|
return ret;
|
2916
|
2967
|
}
|
2917
|
|
-
|
|
2968
|
+int8_t ALC_Calc(int8_t threshold,double CurrDet){
|
|
2969
|
+ int8_t ret = 0;
|
|
2970
|
+ ret = CurrDet - threshold;
|
|
2971
|
+ return ret;
|
|
2972
|
+}
|
2918
|
2973
|
void ALC_Function(){ //DL
|
2919
|
2974
|
double Volt_Calc_val = 3.3 / 4095;
|
2920
|
2975
|
double ret = 0;
|
|
@@ -2923,13 +2978,17 @@ void ALC_Function(){ //DL
|
2923
|
2978
|
int32_t CurrnALC_MAX_SettingValue = 0;
|
2924
|
2979
|
int32_t CurrnALC_MIN_SettingValue = 0;
|
2925
|
2980
|
int32_t ALC_Result = 0;
|
|
2981
|
+ int16_t Limitdata = 0;
|
2926
|
2982
|
double ResdBm = 0;
|
|
2983
|
+ uint16_t IwillGiveAtten = 0;
|
2927
|
2984
|
uint8_t tempadc[100];
|
2928
|
2985
|
Bluecell_StructCpy(&AutoControl_Save[0],&ALC_Table_ref.DET_UL_0,sizeof(ALC_dBm_t));
|
2929
|
2986
|
Bluecell_StructCpy(&tempadc[0],&Det_UL1.Table_Det_15_dBm_H,sizeof(DET_TABLEUL_st));
|
2930
|
2987
|
if(ALCTimerCnt > 100){
|
2931
|
|
- if(bluecell_Currdatastatus.ATT_ALC1_ONOFF == true){
|
2932
|
|
-#if 1 // PYJ.2020.04.29_BEGIN --
|
|
2988
|
+ if(bluecell_Currdatastatus.ULO_ALC_ON_OFF == true){
|
|
2989
|
+ /***************************************************************************************************************/
|
|
2990
|
+ /* ALC 1 */
|
|
2991
|
+ /***************************************************************************************************************/
|
2933
|
2992
|
//ret 현재 Voltage 값 출력
|
2934
|
2993
|
//ret 에 따른 현재 DBM 구현
|
2935
|
2994
|
ret = bluecell_Currdatastatus.DET_UL1_IN_H << 8;
|
|
@@ -2938,178 +2997,100 @@ void ALC_Function(){ //DL
|
2938
|
2997
|
ResdBm = AutoControl_ADC_Compare(ret,&Det_UL1.Table_Det_15_dBm_H,sizeof(DET_TABLEUL_st));
|
2939
|
2998
|
// printf("db %f \r\n",ResdBm);
|
2940
|
2999
|
// HAL_Delay(1000);
|
2941
|
|
-#if 0 // PYJ.2020.05.14_BEGIN --
|
2942
|
|
- // printf("==================================\r\n");
|
|
3000
|
+// printf("==================================\r\n");
|
2943
|
3001
|
// printf("Current UL ADC VALUE : %f \r\n",ret);
|
2944
|
|
- // printf("ResdBm : UL1 : %f \r\n",ResdBm);
|
2945
|
|
- // HAL_Delay(1000);
|
2946
|
|
- CurrnALC_MAX_SettingValue = bluecell_Currdatastatus.ATT_ALC1_MAX_H << 8;
|
2947
|
|
- CurrnALC_MAX_SettingValue += bluecell_Currdatastatus.ATT_ALC1_MAX_L;
|
2948
|
|
- CurrnALC_MAX_SettingValue = MinusConvert(bluecell_Currdatastatus.DET_UL1_IN_H,CurrnALC_MAX_SettingValue);
|
2949
|
|
-
|
2950
|
|
- CurrnALC_MIN_SettingValue = bluecell_Currdatastatus.ATT_ALC1_MIN_H << 8;
|
2951
|
|
- CurrnALC_MIN_SettingValue += bluecell_Currdatastatus.ATT_ALC1_MIN_L;
|
2952
|
|
- CurrnALC_MIN_SettingValue = MinusConvert(bluecell_Currdatastatus.DET_UL1_IN_H,CurrnALC_MIN_SettingValue);
|
2953
|
|
-
|
2954
|
|
-// printf("CurrnALC_MAX_SettingValue : %d \r\n",CurrnALC_MAX_SettingValue);
|
2955
|
|
-// printf("CurrnALC_MIN_SettingValue : %d \r\n",CurrnALC_MIN_SettingValue);
|
2956
|
|
-// printf("I WILL GIVE YOU ATTEN MAX : %d \r\n",ResdBm - CurrnALC_MAX_SettingValue);
|
2957
|
|
-// printf("I WILL GIVE YOU ATTEN MIN : %d \r\n",ResdBm - CurrnALC_MIN_SettingValue);
|
2958
|
|
-// printf("==================================\r\n");
|
2959
|
|
- ALC_Result = ResdBm - CurrnALC_MAX_SettingValue;
|
2960
|
|
- if(ALC_Result > 0){
|
2961
|
|
- ALC_Result *= 100;
|
2962
|
|
- ALC_Result += bluecell_Currdatastatus.ATT_UL1_H << 8 | bluecell_Currdatastatus.ATT_UL1_L;
|
2963
|
|
- bluecell_Currdatastatus.ATT_UL1_H = ((ALC_Result & 0xFF00) >> 8);
|
2964
|
|
- bluecell_Currdatastatus.ATT_UL1_L = ALC_Result & 0x00FF;
|
2965
|
|
- CompareAttenData(bluecell_Currdatastatus,bluecell_Prevdatastatus);
|
2966
|
|
- }else{
|
2967
|
|
- }
|
2968
|
|
-#endif // PYJ.2020.05.14_END --
|
2969
|
|
- CurrnALC_MIN_SettingValue = bluecell_Currdatastatus.ATT_ALC_Threshold_H << 8;
|
2970
|
|
- CurrnALC_MIN_SettingValue += bluecell_Currdatastatus.ATT_ALC_Threshold_L;
|
2971
|
|
- CurrnALC_MIN_SettingValue = MinusConvert(bluecell_Currdatastatus.DET_UL1_IN_H,CurrnALC_MIN_SettingValue);
|
|
3002
|
+// printf("ResdBm : UL1 : %f \r\n",ResdBm);
|
|
3003
|
+ Limitdata = (( bluecell_Currdatastatus.DLI_Level_High_Threshold_H << 8) & 0xFF00) ;
|
|
3004
|
+ Limitdata += bluecell_Currdatastatus.DLI_Level_High_Threshold_L ;
|
|
3005
|
+
|
|
3006
|
+ Limitdata /= 10;
|
|
3007
|
+
|
|
3008
|
+ //CurrnALC_MIN_SettingValue = MinusConvert(bluecell_Currdatastatus.DET_UL1_IN_H,CurrnALC_MIN_SettingValue);
|
|
3009
|
+// Limitdata = (( bluecell_Currdatastatus.ATT_UL1_H << 8) & 0xFF00) ;
|
|
3010
|
+// Limitdata += bluecell_Currdatastatus.ATT_UL1_L ;
|
|
3011
|
+//
|
|
3012
|
+// Limitdata /= 10;
|
2972
|
3013
|
|
2973
|
3014
|
CurrentATTENVALUE = PE43711_Double(bluecell_Currdatastatus.ATT_UL1_H,bluecell_Currdatastatus.ATT_UL1_L);
|
2974
|
|
- uint16_t tempValue = 0;
|
2975
|
|
- if(CurrnALC_MIN_SettingValue > ResdBm && CurrentATTENVALUE > 0){
|
2976
|
|
- tempValue = (CurrentATTENVALUE*10);
|
2977
|
|
- tempValue %= 10;
|
2978
|
|
- if(tempValue > 0){
|
2979
|
|
- ALC_Result = CurrentATTENVALUE *10 -50;
|
2980
|
|
- }else{
|
2981
|
|
- ALC_Result = CurrentATTENVALUE *10 -100;
|
2982
|
|
- }
|
2983
|
|
- bluecell_Currdatastatus.ATT_UL1_H = ((ALC_Result & 0xFF00) >> 8);
|
2984
|
|
- bluecell_Currdatastatus.ATT_UL1_L = ALC_Result & 0x00FF;
|
|
3015
|
+ IwillGiveAtten = ALC_Calc(Limitdata,ResdBm);
|
|
3016
|
+// printf("%f %d : I WILL GIVE ATTEN : %d \r\n",ResdBm , Limitdata,IwillGiveAtten);
|
|
3017
|
+
|
|
3018
|
+// printf("CurrentATTENVALUE %f \r\n",CurrentATTENVALUE);
|
|
3019
|
+ IwillGiveAtten *=10;
|
2985
|
3020
|
|
|
3021
|
+ if((ResdBm > (Limitdata + 0.5)) || (ResdBm < (Limitdata - 0.5))){
|
|
3022
|
+ bluecell_Currdatastatus.ATT_UL1_H = ((IwillGiveAtten & 0xFF00) >> 8);
|
|
3023
|
+ bluecell_Currdatastatus.ATT_UL1_L = IwillGiveAtten & 0x00FF;
|
2986
|
3024
|
CompareAttenData(bluecell_Currdatastatus,bluecell_Prevdatastatus);
|
2987
|
|
-
|
2988
|
|
- }else{
|
2989
|
3025
|
}
|
2990
|
|
-#else
|
|
3026
|
+ /***************************************************************************************************************/
|
|
3027
|
+ /* ALC 2 */
|
|
3028
|
+ /***************************************************************************************************************/
|
2991
|
3029
|
|
2992
|
|
-#endif // PYJ.2020.04.29_END --
|
2993
|
|
- }
|
2994
|
|
- if(bluecell_Currdatastatus.ATT_ALC2_ONOFF == true){
|
2995
|
3030
|
ret = bluecell_Currdatastatus.DET_UL2_IN_H << 8;
|
2996
|
3031
|
ret += bluecell_Currdatastatus.DET_UL2_IN_L;
|
2997
|
3032
|
ret *= Volt_Calc_val;
|
2998
|
3033
|
ResdBm = AutoControl_ADC_Compare(ret,&Det_UL2.Table_Det_15_dBm_H,sizeof(DET_TABLEUL_st));
|
2999
|
|
-// printf("db %f \r\n",ResdBm);
|
|
3034
|
+ Limitdata = (( bluecell_Currdatastatus.DLI_Level_High_Threshold_H << 8) & 0xFF00) ;
|
|
3035
|
+ Limitdata += bluecell_Currdatastatus.DLI_Level_High_Threshold_L ;
|
|
3036
|
+ Limitdata /= 10;
|
3000
|
3037
|
|
3001
|
|
-#if 0 // PYJ.2020.05.14_BEGIN --
|
3002
|
|
- CurrnALC_MAX_SettingValue = bluecell_Currdatastatus.ATT_ALC2_MAX_H << 8;
|
3003
|
|
- CurrnALC_MAX_SettingValue += bluecell_Currdatastatus.ATT_ALC2_MAX_L;
|
3004
|
|
- CurrnALC_MAX_SettingValue = MinusConvert(bluecell_Currdatastatus.DET_UL2_IN_H,CurrnALC_MAX_SettingValue);
|
3005
|
|
- ALC_Result = ResdBm - CurrnALC_MAX_SettingValue;
|
3006
|
|
-
|
3007
|
|
- if(ALC_Result > 0){
|
3008
|
|
- ALC_Result *= 100;
|
3009
|
|
- ALC_Result += bluecell_Currdatastatus.ATT_UL2_H << 8 | bluecell_Currdatastatus.ATT_UL2_L;
|
3010
|
|
- bluecell_Currdatastatus.ATT_UL2_H = ((ALC_Result & 0xFF00) >> 8);
|
3011
|
|
- bluecell_Currdatastatus.ATT_UL2_L = ALC_Result & 0x00FF;
|
|
3038
|
+ CurrentATTENVALUE = PE43711_Double(bluecell_Currdatastatus.ATT_UL2_H,bluecell_Currdatastatus.ATT_UL2_L);
|
|
3039
|
+ IwillGiveAtten = ALC_Calc(Limitdata,ResdBm);
|
|
3040
|
+ IwillGiveAtten *=10;
|
|
3041
|
+ if((ResdBm > (Limitdata + 0.5)) || (ResdBm < (Limitdata - 0.5))){
|
|
3042
|
+ bluecell_Currdatastatus.ATT_UL2_H = ((IwillGiveAtten & 0xFF00) >> 8);
|
|
3043
|
+ bluecell_Currdatastatus.ATT_UL2_L = IwillGiveAtten & 0x00FF;
|
3012
|
3044
|
CompareAttenData(bluecell_Currdatastatus,bluecell_Prevdatastatus);
|
3013
|
3045
|
}
|
3014
|
|
-#endif // PYJ.2020.05.14_END --
|
3015
|
|
- CurrnALC_MIN_SettingValue = bluecell_Currdatastatus.ATT_ALC_Threshold_H << 8;
|
3016
|
|
- CurrnALC_MIN_SettingValue += bluecell_Currdatastatus.ATT_ALC_Threshold_L;
|
3017
|
|
- CurrentATTENVALUE = PE43711_Double(bluecell_Currdatastatus.ATT_UL2_H,bluecell_Currdatastatus.ATT_UL2_L);
|
3018
|
|
- uint16_t tempValue = 0;
|
3019
|
|
- if(CurrnALC_MIN_SettingValue > ResdBm && CurrentATTENVALUE > 0){
|
3020
|
|
- tempValue = (CurrentATTENVALUE*10);
|
3021
|
|
- tempValue %= 10;
|
3022
|
|
- if(tempValue > 0){
|
3023
|
|
- ALC_Result = CurrentATTENVALUE *10 -50;
|
3024
|
|
- }else{
|
3025
|
|
- ALC_Result = CurrentATTENVALUE *10 -100;
|
3026
|
|
- }
|
3027
|
|
- bluecell_Currdatastatus.ATT_UL2_H = ((ALC_Result & 0xFF00) >> 8);
|
3028
|
|
- bluecell_Currdatastatus.ATT_UL2_L = ALC_Result & 0x00FF;
|
|
3046
|
+
|
|
3047
|
+ /***************************************************************************************************************/
|
|
3048
|
+ /* ALC 3 */
|
|
3049
|
+ /***************************************************************************************************************/
|
|
3050
|
+ ret = bluecell_Currdatastatus.DET_UL3_IN_H << 8;
|
|
3051
|
+ ret += bluecell_Currdatastatus.DET_UL3_IN_L;
|
|
3052
|
+ ret *= Volt_Calc_val;
|
|
3053
|
+ ResdBm = AutoControl_ADC_Compare(ret,&Det_UL3.Table_Det_15_dBm_H,sizeof(DET_TABLEUL_st));
|
|
3054
|
+ Limitdata = (( bluecell_Currdatastatus.DLI_Level_High_Threshold_H << 8) & 0xFF00) ;
|
|
3055
|
+ Limitdata += bluecell_Currdatastatus.DLI_Level_High_Threshold_L ;
|
3029
|
3056
|
|
|
3057
|
+ Limitdata /= 10;
|
|
3058
|
+
|
|
3059
|
+
|
|
3060
|
+ CurrentATTENVALUE = PE43711_Double(bluecell_Currdatastatus.ATT_UL3_H,bluecell_Currdatastatus.ATT_UL3_L);
|
|
3061
|
+ IwillGiveAtten = ALC_Calc(Limitdata,ResdBm);
|
|
3062
|
+ IwillGiveAtten *=10;
|
|
3063
|
+
|
|
3064
|
+ if((ResdBm > (Limitdata + 0.5)) || (ResdBm < (Limitdata - 0.5))){
|
|
3065
|
+ bluecell_Currdatastatus.ATT_UL3_H = ((IwillGiveAtten & 0xFF00) >> 8);
|
|
3066
|
+ bluecell_Currdatastatus.ATT_UL3_L = IwillGiveAtten & 0x00FF;
|
3030
|
3067
|
CompareAttenData(bluecell_Currdatastatus,bluecell_Prevdatastatus);
|
3031
|
|
-
|
3032
|
|
- }
|
3033
|
|
- }
|
3034
|
|
- if(bluecell_Currdatastatus.ATT_ALC3_ONOFF == true){
|
3035
|
|
- ret = bluecell_Currdatastatus.DET_UL3_IN_H << 8;
|
3036
|
|
- ret += bluecell_Currdatastatus.DET_UL3_IN_L;
|
3037
|
|
- ret *= Volt_Calc_val;
|
3038
|
|
- ResdBm = AutoControl_ADC_Compare(ret,&Det_UL3.Table_Det_15_dBm_H,sizeof(DET_TABLEUL_st));
|
3039
|
|
-#if 0 // PYJ.2020.05.14_BEGIN --
|
3040
|
|
- CurrnALC_MAX_SettingValue = bluecell_Currdatastatus.ATT_ALC3_MAX_H << 8;
|
3041
|
|
- CurrnALC_MAX_SettingValue += bluecell_Currdatastatus.ATT_ALC3_MAX_L;
|
3042
|
|
- CurrnALC_MAX_SettingValue = MinusConvert(bluecell_Currdatastatus.DET_UL3_IN_H,CurrnALC_MAX_SettingValue);
|
3043
|
|
- ALC_Result = ResdBm - CurrnALC_MAX_SettingValue;
|
3044
|
|
-
|
3045
|
|
- if(ALC_Result > 0){
|
3046
|
|
- ALC_Result *= 100;
|
3047
|
|
- ALC_Result += bluecell_Currdatastatus.ATT_UL3_H << 8 | bluecell_Currdatastatus.ATT_UL3_L;
|
3048
|
|
- bluecell_Currdatastatus.ATT_UL3_H = ((ALC_Result & 0xFF00) >> 8);
|
3049
|
|
- bluecell_Currdatastatus.ATT_UL3_L = ALC_Result & 0x00FF;
|
3050
|
|
- CompareAttenData(bluecell_Currdatastatus,bluecell_Prevdatastatus);
|
3051
|
|
- }
|
3052
|
|
-#endif // PYJ.2020.05.14_END --
|
3053
|
|
- CurrnALC_MIN_SettingValue = bluecell_Currdatastatus.ATT_ALC_Threshold_H << 8;
|
3054
|
|
- CurrnALC_MIN_SettingValue += bluecell_Currdatastatus.ATT_ALC_Threshold_L;
|
3055
|
|
- CurrentATTENVALUE = PE43711_Double(bluecell_Currdatastatus.ATT_UL3_H,bluecell_Currdatastatus.ATT_UL3_L);
|
3056
|
|
- uint16_t tempValue = 0;
|
3057
|
|
- if(CurrnALC_MIN_SettingValue > ResdBm && CurrentATTENVALUE > 0){
|
3058
|
|
- tempValue = (CurrentATTENVALUE*10);
|
3059
|
|
- tempValue %= 10;
|
3060
|
|
- if(tempValue > 0){
|
3061
|
|
- ALC_Result = CurrentATTENVALUE *10 -50;
|
3062
|
|
- }else{
|
3063
|
|
- ALC_Result = CurrentATTENVALUE *10 -100;
|
3064
|
|
- }
|
3065
|
|
- bluecell_Currdatastatus.ATT_UL3_H = ((ALC_Result & 0xFF00) >> 8);
|
3066
|
|
- bluecell_Currdatastatus.ATT_UL3_L = ALC_Result & 0x00FF;
|
3067
|
|
-
|
3068
|
|
- CompareAttenData(bluecell_Currdatastatus,bluecell_Prevdatastatus);
|
3069
|
|
-
|
3070
|
3068
|
}
|
|
3069
|
+ /***************************************************************************************************************/
|
|
3070
|
+ /* ALC 4 */
|
|
3071
|
+ /***************************************************************************************************************/
|
3071
|
3072
|
|
3072
|
|
- }
|
3073
|
|
- if(bluecell_Currdatastatus.ATT_ALC4_ONOFF == true){
|
3074
|
|
- ret = bluecell_Currdatastatus.DET_UL4_IN_H << 8;
|
3075
|
|
- ret += bluecell_Currdatastatus.DET_UL4_IN_L;
|
3076
|
|
- ret *= Volt_Calc_val;
|
3077
|
|
- ResdBm = AutoControl_ADC_Compare(ret,&Det_UL4.Table_Det_15_dBm_H,sizeof(DET_TABLEUL_st));
|
3078
|
|
-#if 0 // PYJ.2020.05.14_BEGIN --
|
3079
|
|
- CurrnALC_MAX_SettingValue = bluecell_Currdatastatus.ATT_ALC4_MAX_H << 8;
|
3080
|
|
- CurrnALC_MAX_SettingValue += bluecell_Currdatastatus.ATT_ALC4_MAX_L;
|
3081
|
|
- CurrnALC_MAX_SettingValue = MinusConvert(bluecell_Currdatastatus.DET_UL4_IN_H,CurrnALC_MAX_SettingValue);
|
3082
|
|
- ALC_Result = ResdBm - CurrnALC_MAX_SettingValue;
|
3083
|
|
- if(ALC_Result > 0){
|
3084
|
|
- ALC_Result *= 100;
|
3085
|
|
- ALC_Result += bluecell_Currdatastatus.ATT_UL4_H << 8 | bluecell_Currdatastatus.ATT_UL4_L;
|
3086
|
|
- bluecell_Currdatastatus.ATT_UL4_H = ((ALC_Result & 0xFF00) >> 8);
|
3087
|
|
- bluecell_Currdatastatus.ATT_UL4_L = ALC_Result & 0x00FF;
|
3088
|
|
- CompareAttenData(bluecell_Currdatastatus,bluecell_Prevdatastatus);
|
3089
|
|
- }
|
3090
|
|
-#endif // PYJ.2020.05.14_END --
|
3091
|
|
-
|
3092
|
|
- CurrnALC_MIN_SettingValue = bluecell_Currdatastatus.ATT_ALC4_MIN_H << 8;
|
3093
|
|
- CurrnALC_MIN_SettingValue += bluecell_Currdatastatus.ATT_ALC4_MIN_L;
|
3094
|
|
- CurrentATTENVALUE = PE43711_Double(bluecell_Currdatastatus.ATT_UL4_H,bluecell_Currdatastatus.ATT_UL4_L);
|
3095
|
|
- uint16_t tempValue = 0;
|
3096
|
|
- if(CurrnALC_MIN_SettingValue > ResdBm && CurrentATTENVALUE > 0){
|
3097
|
|
- tempValue = (CurrentATTENVALUE*10);
|
3098
|
|
- tempValue %= 10;
|
3099
|
|
- if(tempValue > 0){
|
3100
|
|
- ALC_Result = CurrentATTENVALUE *10 -50;
|
3101
|
|
- }else{
|
3102
|
|
- ALC_Result = CurrentATTENVALUE *10 -100;
|
3103
|
|
- }
|
3104
|
|
- bluecell_Currdatastatus.ATT_UL4_H = ((ALC_Result & 0xFF00) >> 8);
|
3105
|
|
- bluecell_Currdatastatus.ATT_UL4_L = ALC_Result & 0x00FF;
|
3106
|
|
-
|
3107
|
|
- CompareAttenData(bluecell_Currdatastatus,bluecell_Prevdatastatus);
|
3108
|
|
-
|
3109
|
|
- }
|
|
3073
|
+ ret = bluecell_Currdatastatus.DET_UL4_IN_H << 8;
|
|
3074
|
+ ret += bluecell_Currdatastatus.DET_UL4_IN_L;
|
|
3075
|
+ ret *= Volt_Calc_val;
|
|
3076
|
+ ResdBm = AutoControl_ADC_Compare(ret,&Det_UL4.Table_Det_15_dBm_H,sizeof(DET_TABLEUL_st));
|
|
3077
|
+ Limitdata = (( bluecell_Currdatastatus.DLI_Level_High_Threshold_H << 8) & 0xFF00) ;
|
|
3078
|
+ Limitdata += bluecell_Currdatastatus.DLI_Level_High_Threshold_L ;
|
3110
|
3079
|
|
3111
|
|
- }
|
|
3080
|
+ Limitdata /= 10;
|
|
3081
|
+
|
|
3082
|
+
|
|
3083
|
+ CurrentATTENVALUE = PE43711_Double(bluecell_Currdatastatus.ATT_UL4_H,bluecell_Currdatastatus.ATT_UL4_L);
|
|
3084
|
+ IwillGiveAtten = ALC_Calc(Limitdata,ResdBm);
|
|
3085
|
+ IwillGiveAtten *=10;
|
|
3086
|
+
|
|
3087
|
+ if((ResdBm > (Limitdata + 0.5)) || (ResdBm < (Limitdata - 0.5))){
|
|
3088
|
+ bluecell_Currdatastatus.ATT_UL4_H = ((IwillGiveAtten & 0xFF00) >> 8);
|
|
3089
|
+ bluecell_Currdatastatus.ATT_UL4_L = IwillGiveAtten & 0x00FF;
|
|
3090
|
+ CompareAttenData(bluecell_Currdatastatus,bluecell_Prevdatastatus);
|
|
3091
|
+ }
|
3112
|
3092
|
ALCTimerCnt = 0;
|
|
3093
|
+ }
|
3113
|
3094
|
}
|
3114
|
3095
|
}
|
3115
|
3096
|
//-15 ~ -5
|
|
@@ -3240,163 +3221,223 @@ void Alarm_Check(){
|
3240
|
3221
|
double Volt_Calc_val = 3.3 / 4095;
|
3241
|
3222
|
double ret = 0;
|
3242
|
3223
|
int8_t ResdBm[4] = {0,};
|
3243
|
|
-#if 0 // PYJ.2020.05.18_BEGIN --
|
3244
|
|
- if(bluecell_Currdatastatus.ALARM_MASK1 != true)
|
|
3224
|
+ if(bluecell_Currdatastatus.ALARM_MASK1 == false)
|
3245
|
3225
|
return;
|
3246
|
|
-#endif // PYJ.2020.05.18_END --
|
|
3226
|
+
|
|
3227
|
+ if(bluecell_Currdatastatus.ALARM_TEMP_HIGH > 0
|
|
3228
|
+ || bluecell_Currdatastatus.ALARM_DLI_Level > 0
|
|
3229
|
+ || bluecell_Currdatastatus.ALARM_DLI_AGC_SHTUTDOWN > 0
|
|
3230
|
+ || bluecell_Currdatastatus.ALARM_DLI_AGC_Alarm > 0
|
|
3231
|
+ || bluecell_Currdatastatus.ALARM_ULO_ALC_Alarm > 0
|
|
3232
|
+ || bluecell_Currdatastatus.ALARM_ULO_Level > 0
|
|
3233
|
+ || bluecell_Currdatastatus.ALARM_ULO_ALC_SHTUTDOWN > 0){
|
|
3234
|
+ AlarmTimerSet = true;
|
|
3235
|
+ }else{
|
|
3236
|
+ AlarmTimerSet = false;
|
|
3237
|
+ }
|
3247
|
3238
|
|
3248
|
3239
|
/******************************TEMP START*******************************************/
|
3249
|
|
- if(bluecell_Currdatastatus.Temp_High_Threshold > bluecell_Currdatastatus.DET_TEMP){
|
3250
|
|
- bluecell_Currdatastatus.ALARM_TEMP_HIGH == ENVIRONMENT_TEMPHIGH;
|
|
3240
|
+ if(bluecell_Currdatastatus.Temp_High_Threshold < (bluecell_Currdatastatus.DET_TEMP )){
|
|
3241
|
+ bluecell_Currdatastatus.ALARM_TEMP_HIGH |= ENVIRONMENT_TEMPHIGH;
|
|
3242
|
+
|
|
3243
|
+ }else{
|
|
3244
|
+ bluecell_Currdatastatus.ALARM_TEMP_HIGH &= ~ENVIRONMENT_TEMPHIGH;
|
|
3245
|
+
|
3251
|
3246
|
}
|
3252
|
3247
|
/******************************TEMP END*******************************************/
|
3253
|
3248
|
|
3254
|
3249
|
/******************************ULO LEVEL START*******************************************/
|
3255
|
3250
|
|
3256
|
|
- temp = ((bluecell_Currdatastatus.ULO_Level_High_Threshold_H << 8) & 0xFF00);
|
3257
|
|
- temp += (bluecell_Currdatastatus.ULO_Level_High_Threshold_L & 0x00FF);
|
3258
|
|
-
|
3259
|
|
- ret = bluecell_Currdatastatus.DET_UL1_IN_H << 8;
|
3260
|
|
- ret += bluecell_Currdatastatus.DET_UL1_IN_L;
|
3261
|
|
- ret *= Volt_Calc_val;
|
3262
|
|
- ResdBm[0] = AutoControl_ADC_Compare(ret,&Det_UL1.Table_Det_15_dBm_H,sizeof(DET_TABLEUL_st));
|
3263
|
|
- ret = bluecell_Currdatastatus.DET_UL1_IN_H << 8;
|
3264
|
|
- ret += bluecell_Currdatastatus.DET_UL1_IN_L;
|
3265
|
|
- ret *= Volt_Calc_val;
|
3266
|
|
- ResdBm[1] = AutoControl_ADC_Compare(ret,&Det_UL2.Table_Det_15_dBm_H,sizeof(DET_TABLEUL_st));
|
3267
|
|
-
|
3268
|
|
- ret = bluecell_Currdatastatus.DET_UL1_IN_H << 8;
|
3269
|
|
- ret += bluecell_Currdatastatus.DET_UL1_IN_L;
|
3270
|
|
- ret *= Volt_Calc_val;
|
3271
|
|
- ResdBm[2] = AutoControl_ADC_Compare(ret,&Det_UL3.Table_Det_15_dBm_H,sizeof(DET_TABLEUL_st));
|
3272
|
|
- ret = bluecell_Currdatastatus.DET_UL1_IN_H << 8;
|
3273
|
|
- ret += bluecell_Currdatastatus.DET_UL1_IN_L;
|
3274
|
|
- ret *= Volt_Calc_val;
|
3275
|
|
- ResdBm[3] = AutoControl_ADC_Compare(ret,&Det_UL4.Table_Det_15_dBm_H,sizeof(DET_TABLEUL_st));
|
3276
|
|
-
|
3277
|
|
- /*4개의 디텍 중에 한개라도 상한치를 넘었을 경우 알림 */
|
3278
|
|
- if(temp > ResdBm[0]){
|
3279
|
|
- bluecell_Currdatastatus.ALARM_ULO_Level |= ALARM_ULO_P1_LEVEL_HIGH;
|
3280
|
|
- }
|
3281
|
|
- if( temp > ResdBm[1]){
|
3282
|
|
- bluecell_Currdatastatus.ALARM_ULO_Level |= ALARM_ULO_P2_LEVEL_HIGH;
|
3283
|
|
- }
|
3284
|
|
- if(temp > ResdBm[2]){
|
3285
|
|
- bluecell_Currdatastatus.ALARM_ULO_Level |= ALARM_ULO_P3_LEVEL_HIGH;
|
3286
|
|
- }
|
3287
|
|
- if(temp > ResdBm[3]){
|
3288
|
|
- bluecell_Currdatastatus.ALARM_ULO_Level |= ALARM_ULO_P4_LEVEL_HIGH;
|
3289
|
|
- }
|
3290
|
|
- /******************************ULO LEVEL END*******************************************/
|
3291
|
|
- /******************************ULO ALC Start*******************************************/
|
3292
|
|
- temp = ((bluecell_Currdatastatus.ATT_ALC_Threshold_H << 8) & 0xFF00);
|
3293
|
|
- temp += (bluecell_Currdatastatus.ATT_ALC_Threshold_L & 0x00FF);
|
3294
|
|
- if(temp > ResdBm[0]){
|
3295
|
|
- bluecell_Currdatastatus.ALARM_ULO_ALC_SHTUTDOWN |= ALARM_ALC_P1;
|
3296
|
|
- }
|
3297
|
|
- if( temp > ResdBm[1]){
|
3298
|
|
- bluecell_Currdatastatus.ALARM_ULO_ALC_SHTUTDOWN |= ALARM_ALC_P2;
|
3299
|
|
- }
|
3300
|
|
- if(temp > ResdBm[2]){
|
3301
|
|
- bluecell_Currdatastatus.ALARM_ULO_ALC_SHTUTDOWN |= ALARM_ALC_P3;
|
3302
|
|
- }
|
3303
|
|
- if(temp > ResdBm[3]){
|
3304
|
|
- bluecell_Currdatastatus.ALARM_ULO_ALC_SHTUTDOWN |= ALARM_ALC_P4;
|
3305
|
|
- }
|
3306
|
|
- /******************************ULO ALC END*******************************************/
|
3307
|
|
- temp = ((bluecell_Currdatastatus.ULO_Shutdown_Threshold_H << 8) & 0xFF00);
|
3308
|
|
- temp += (bluecell_Currdatastatus.ULO_Shutdown_Threshold_L & 0x00FF);
|
3309
|
|
- if(temp > ResdBm[0]){
|
3310
|
|
- bluecell_Currdatastatus.ALARM_ULO_ALC_SHTUTDOWN |= ALARM_ULO_SHUTDOWN_P1;
|
3311
|
|
- }
|
3312
|
|
- if( temp > ResdBm[1]){
|
3313
|
|
- bluecell_Currdatastatus.ALARM_ULO_ALC_SHTUTDOWN |= ALARM_ULO_SHUTDOWN_P2;
|
3314
|
|
- }
|
3315
|
|
- if(temp > ResdBm[2]){
|
3316
|
|
- bluecell_Currdatastatus.ALARM_ULO_ALC_SHTUTDOWN |= ALARM_ULO_SHUTDOWN_P3;
|
3317
|
|
- }
|
3318
|
|
- if(temp > ResdBm[3]){
|
3319
|
|
- bluecell_Currdatastatus.ALARM_ULO_ALC_SHTUTDOWN |= ALARM_ULO_SHUTDOWN_P4;
|
3320
|
|
- }
|
|
3251
|
+ if(bluecell_Currdatastatus.ULO_ALC_ON_OFF == true){
|
|
3252
|
+ temp = ((bluecell_Currdatastatus.ULO_Level_High_Threshold_H << 8) & 0xFF00);
|
|
3253
|
+ temp += (bluecell_Currdatastatus.ULO_Level_High_Threshold_L & 0x00FF);
|
|
3254
|
+
|
|
3255
|
+ ret = bluecell_Currdatastatus.DET_UL1_IN_H << 8;
|
|
3256
|
+ ret += bluecell_Currdatastatus.DET_UL1_IN_L;
|
|
3257
|
+ ret *= Volt_Calc_val;
|
|
3258
|
+ ResdBm[0] = AutoControl_ADC_Compare(ret,&Det_UL1.Table_Det_15_dBm_H,sizeof(DET_TABLEUL_st));
|
|
3259
|
+ ret = bluecell_Currdatastatus.DET_UL1_IN_H << 8;
|
|
3260
|
+ ret += bluecell_Currdatastatus.DET_UL1_IN_L;
|
|
3261
|
+ ret *= Volt_Calc_val;
|
|
3262
|
+ ResdBm[1] = AutoControl_ADC_Compare(ret,&Det_UL2.Table_Det_15_dBm_H,sizeof(DET_TABLEUL_st));
|
|
3263
|
+
|
|
3264
|
+ ret = bluecell_Currdatastatus.DET_UL1_IN_H << 8;
|
|
3265
|
+ ret += bluecell_Currdatastatus.DET_UL1_IN_L;
|
|
3266
|
+ ret *= Volt_Calc_val;
|
|
3267
|
+ ResdBm[2] = AutoControl_ADC_Compare(ret,&Det_UL3.Table_Det_15_dBm_H,sizeof(DET_TABLEUL_st));
|
|
3268
|
+ ret = bluecell_Currdatastatus.DET_UL1_IN_H << 8;
|
|
3269
|
+ ret += bluecell_Currdatastatus.DET_UL1_IN_L;
|
|
3270
|
+ ret *= Volt_Calc_val;
|
|
3271
|
+ ResdBm[3] = AutoControl_ADC_Compare(ret,&Det_UL4.Table_Det_15_dBm_H,sizeof(DET_TABLEUL_st));
|
|
3272
|
+
|
|
3273
|
+ /*4개의 디텍 중에 한개라도 상한치를 넘었을 경우 알림 */
|
|
3274
|
+ if(temp > ResdBm[0]){
|
|
3275
|
+ printf("ULO_ALC_Alarm1 OCCUR\r\n");
|
|
3276
|
+ bluecell_Currdatastatus.ALARM_ULO_Level |= ALARM_ULO_P1_LEVEL_HIGH;
|
|
3277
|
+ bluecell_Currdatastatus.ULO_ALC_Alarm1 = true;
|
|
3278
|
+ }else{
|
|
3279
|
+ bluecell_Currdatastatus.ALARM_ULO_Level &= ~ALARM_ULO_P1_LEVEL_HIGH;
|
|
3280
|
+ bluecell_Currdatastatus.ULO_ALC_Alarm1 = false;
|
3321
|
3281
|
|
3322
|
|
- /******************************DLI LEVEL START*******************************************/
|
|
3282
|
+ }
|
|
3283
|
+ if( temp > ResdBm[1]){
|
|
3284
|
+ printf("ULO_ALC_Alarm2 OCCUR\r\n");
|
|
3285
|
+ bluecell_Currdatastatus.ALARM_ULO_Level |= ALARM_ULO_P2_LEVEL_HIGH;
|
|
3286
|
+ bluecell_Currdatastatus.ULO_ALC_Alarm2 = true;
|
|
3287
|
+ }else{
|
|
3288
|
+ bluecell_Currdatastatus.ALARM_ULO_Level &= ~ALARM_ULO_P2_LEVEL_HIGH;
|
|
3289
|
+ bluecell_Currdatastatus.ULO_ALC_Alarm2 = false;
|
3323
|
3290
|
|
3324
|
|
- ret = bluecell_Currdatastatus.DET_DL1_IN_H << 8;
|
3325
|
|
- ret += bluecell_Currdatastatus.DET_DL1_IN_L;
|
3326
|
|
- ret *= Volt_Calc_val;
|
3327
|
|
- ResdBm[0] = AutoControl_ADC_Compare(ret,&Det_DL1.Table_Det5_dBm_H,sizeof(DET_TABLEUL_st));
|
3328
|
|
-
|
3329
|
|
- ret = bluecell_Currdatastatus.DET_DL2_IN_H << 8;
|
3330
|
|
- ret += bluecell_Currdatastatus.DET_DL2_IN_L;
|
3331
|
|
- ret *= Volt_Calc_val;
|
3332
|
|
- ResdBm[1] = AutoControl_ADC_Compare(ret,&Det_DL2.Table_Det5_dBm_H,sizeof(DET_TABLEUL_st));
|
3333
|
|
-
|
3334
|
|
- ret = bluecell_Currdatastatus.DET_DL3_IN_H << 8;
|
3335
|
|
- ret += bluecell_Currdatastatus.DET_DL3_IN_L;
|
3336
|
|
- ret *= Volt_Calc_val;
|
3337
|
|
- ResdBm[2] = AutoControl_ADC_Compare(ret,&Det_DL3.Table_Det5_dBm_H,sizeof(DET_TABLEUL_st));
|
3338
|
|
-
|
3339
|
|
- ret = bluecell_Currdatastatus.DET_DL4_IN_H << 8;
|
3340
|
|
- ret += bluecell_Currdatastatus.DET_DL4_IN_L;
|
3341
|
|
- ret *= Volt_Calc_val;
|
3342
|
|
- ResdBm[3] = AutoControl_ADC_Compare(ret,&Det_DL4.Table_Det5_dBm_H,sizeof(DET_TABLEUL_st));
|
3343
|
|
-
|
3344
|
|
- temp = ((bluecell_Currdatastatus.DLI_Level_High_Threshold_H << 8) & 0xFF00);
|
3345
|
|
- temp += (bluecell_Currdatastatus.DLI_Level_High_Threshold_L & 0x00FF);
|
3346
|
|
- /*4개의 디텍 중에 한개라도 상한치를 넘었을 경우 알림 */
|
3347
|
|
- if(temp < ResdBm[0]){
|
3348
|
|
- bluecell_Currdatastatus.ALARM_DLI_Level |= ALARM_DLI_P1_LEVEL_HIGH;
|
3349
|
|
- }
|
3350
|
|
- if( temp < ResdBm[1]){
|
3351
|
|
- bluecell_Currdatastatus.ALARM_DLI_Level |= ALARM_DLI_P2_LEVEL_HIGH;
|
3352
|
|
- }
|
3353
|
|
- if(temp < ResdBm[2]){
|
3354
|
|
- bluecell_Currdatastatus.ALARM_DLI_Level |= ALARM_DLI_P3_LEVEL_HIGH;
|
3355
|
|
- }
|
3356
|
|
- if(temp < ResdBm[3]){
|
3357
|
|
- bluecell_Currdatastatus.ALARM_DLI_Level |= ALARM_DLI_P4_LEVEL_HIGH;
|
3358
|
|
- }
|
|
3291
|
+ }
|
|
3292
|
+ if(temp > ResdBm[2]){
|
|
3293
|
+ printf("ULO_ALC_Alarm3 OCCUR\r\n");
|
|
3294
|
+ bluecell_Currdatastatus.ALARM_ULO_Level |= ALARM_ULO_P3_LEVEL_HIGH;
|
|
3295
|
+ bluecell_Currdatastatus.ULO_ALC_Alarm3 = true;
|
|
3296
|
+ }else{
|
|
3297
|
+ bluecell_Currdatastatus.ALARM_ULO_Level &= ~ALARM_ULO_P3_LEVEL_HIGH;
|
|
3298
|
+ bluecell_Currdatastatus.ULO_ALC_Alarm3 = false;
|
3359
|
3299
|
|
3360
|
|
- temp = ((bluecell_Currdatastatus.DLI_Level_Low_Threshold_H << 8) & 0xFF00);
|
3361
|
|
- temp += (bluecell_Currdatastatus.DLI_Level_Low_Threshold_L & 0x00FF);
|
3362
|
|
- /*4개의 디텍 중에 한개라도 상한치를 넘었을 경우 알림 */
|
3363
|
|
- if(temp > ResdBm[0]){
|
3364
|
|
- bluecell_Currdatastatus.ALARM_DLI_Level |= ALARM_DLI_P1_LEVEL_HIGH;
|
3365
|
|
- }
|
3366
|
|
- if( temp > ResdBm[1]){
|
3367
|
|
- bluecell_Currdatastatus.ALARM_DLI_Level |= ALARM_DLI_P2_LEVEL_HIGH;
|
3368
|
|
- }
|
3369
|
|
- if(temp > ResdBm[2]){
|
3370
|
|
- bluecell_Currdatastatus.ALARM_DLI_Level |= ALARM_DLI_P3_LEVEL_HIGH;
|
|
3300
|
+ }
|
|
3301
|
+ if(temp > ResdBm[3]){
|
|
3302
|
+ printf("ULO_ALC_Alarm4 OCCUR\r\n");
|
|
3303
|
+ bluecell_Currdatastatus.ALARM_ULO_Level |= ALARM_ULO_P4_LEVEL_HIGH;
|
|
3304
|
+ bluecell_Currdatastatus.ULO_ALC_Alarm4 = true;
|
|
3305
|
+ }else{
|
|
3306
|
+ bluecell_Currdatastatus.ALARM_ULO_Level &= ~ALARM_ULO_P4_LEVEL_HIGH;
|
|
3307
|
+ bluecell_Currdatastatus.ULO_ALC_Alarm4 = false;
|
|
3308
|
+ }
|
|
3309
|
+ /******************************ULO LEVEL END*******************************************/
|
|
3310
|
+ /******************************ULO ALC Start*******************************************/
|
|
3311
|
+ temp = ((bluecell_Currdatastatus.ATT_ALC_Threshold_H << 8) & 0xFF00);
|
|
3312
|
+ temp += (bluecell_Currdatastatus.ATT_ALC_Threshold_L & 0x00FF);
|
|
3313
|
+ if(temp > ResdBm[0]){
|
|
3314
|
+ bluecell_Currdatastatus.ALARM_ULO_ALC_Alarm |= ALARM_ALC_P1;
|
|
3315
|
+ }
|
|
3316
|
+ if( temp > ResdBm[1]){
|
|
3317
|
+ bluecell_Currdatastatus.ALARM_ULO_ALC_Alarm |= ALARM_ALC_P2;
|
|
3318
|
+ }
|
|
3319
|
+ if(temp > ResdBm[2]){
|
|
3320
|
+ bluecell_Currdatastatus.ALARM_ULO_ALC_Alarm |= ALARM_ALC_P3;
|
|
3321
|
+ }
|
|
3322
|
+ if(temp > ResdBm[3]){
|
|
3323
|
+ bluecell_Currdatastatus.ALARM_ULO_ALC_Alarm |= ALARM_ALC_P4;
|
|
3324
|
+ }
|
|
3325
|
+ /******************************ULO ALC END*******************************************/
|
|
3326
|
+ temp = ((bluecell_Currdatastatus.ULO_Shutdown_Threshold_H << 8) & 0xFF00);
|
|
3327
|
+ temp += (bluecell_Currdatastatus.ULO_Shutdown_Threshold_L & 0x00FF);
|
|
3328
|
+ if(temp > ResdBm[0]){
|
|
3329
|
+ bluecell_Currdatastatus.ALARM_ULO_ALC_SHTUTDOWN |= ALARM_ULO_SHUTDOWN_P1;
|
|
3330
|
+ }
|
|
3331
|
+ if( temp > ResdBm[1]){
|
|
3332
|
+ bluecell_Currdatastatus.ALARM_ULO_ALC_SHTUTDOWN |= ALARM_ULO_SHUTDOWN_P2;
|
|
3333
|
+ }
|
|
3334
|
+ if(temp > ResdBm[2]){
|
|
3335
|
+ bluecell_Currdatastatus.ALARM_ULO_ALC_SHTUTDOWN |= ALARM_ULO_SHUTDOWN_P3;
|
|
3336
|
+ }
|
|
3337
|
+ if(temp > ResdBm[3]){
|
|
3338
|
+ bluecell_Currdatastatus.ALARM_ULO_ALC_SHTUTDOWN |= ALARM_ULO_SHUTDOWN_P4;
|
|
3339
|
+ }
|
3371
|
3340
|
}
|
3372
|
|
- if(temp > ResdBm[3]){
|
3373
|
|
- bluecell_Currdatastatus.ALARM_DLI_Level |= ALARM_DLI_P4_LEVEL_HIGH;
|
3374
|
|
- }
|
3375
|
|
- /******************************DLI LEVEL END*******************************************/
|
3376
|
|
- /******************************DLI AGC START******************************************/
|
3377
|
|
-
|
|
3341
|
+ /******************************DLI LEVEL START*******************************************/
|
|
3342
|
+ if(bluecell_Currdatastatus.DLI_AGC_ON_OFF == true){
|
|
3343
|
+ ret = bluecell_Currdatastatus.DET_DL1_IN_H << 8;
|
|
3344
|
+ ret += bluecell_Currdatastatus.DET_DL1_IN_L;
|
|
3345
|
+ ret *= Volt_Calc_val;
|
|
3346
|
+ ResdBm[0] = AutoControl_ADC_Compare(ret,&Det_DL1.Table_Det5_dBm_H,sizeof(DET_TABLEUL_st));
|
|
3347
|
+
|
|
3348
|
+ ret = bluecell_Currdatastatus.DET_DL2_IN_H << 8;
|
|
3349
|
+ ret += bluecell_Currdatastatus.DET_DL2_IN_L;
|
|
3350
|
+ ret *= Volt_Calc_val;
|
|
3351
|
+ ResdBm[1] = AutoControl_ADC_Compare(ret,&Det_DL2.Table_Det5_dBm_H,sizeof(DET_TABLEUL_st));
|
|
3352
|
+
|
|
3353
|
+ ret = bluecell_Currdatastatus.DET_DL3_IN_H << 8;
|
|
3354
|
+ ret += bluecell_Currdatastatus.DET_DL3_IN_L;
|
|
3355
|
+ ret *= Volt_Calc_val;
|
|
3356
|
+ ResdBm[2] = AutoControl_ADC_Compare(ret,&Det_DL3.Table_Det5_dBm_H,sizeof(DET_TABLEUL_st));
|
|
3357
|
+
|
|
3358
|
+ ret = bluecell_Currdatastatus.DET_DL4_IN_H << 8;
|
|
3359
|
+ ret += bluecell_Currdatastatus.DET_DL4_IN_L;
|
|
3360
|
+ ret *= Volt_Calc_val;
|
|
3361
|
+ ResdBm[3] = AutoControl_ADC_Compare(ret,&Det_DL4.Table_Det5_dBm_H,sizeof(DET_TABLEUL_st));
|
|
3362
|
+
|
|
3363
|
+ temp = ((bluecell_Currdatastatus.DLI_Level_High_Threshold_H << 8) & 0xFF00);
|
|
3364
|
+ temp += (bluecell_Currdatastatus.DLI_Level_High_Threshold_L & 0x00FF);
|
|
3365
|
+ /*4개의 디텍 중에 한개라도 상한치를 넘었을 경우 알림 */
|
|
3366
|
+ if(temp < ResdBm[0]){
|
|
3367
|
+ bluecell_Currdatastatus.ALARM_DLI_Level |= ALARM_DLI_P1_LEVEL_HIGH;
|
|
3368
|
+ }
|
|
3369
|
+ if( temp < ResdBm[1]){
|
|
3370
|
+ bluecell_Currdatastatus.ALARM_DLI_Level |= ALARM_DLI_P2_LEVEL_HIGH;
|
|
3371
|
+ }
|
|
3372
|
+ if(temp < ResdBm[2]){
|
|
3373
|
+ bluecell_Currdatastatus.ALARM_DLI_Level |= ALARM_DLI_P3_LEVEL_HIGH;
|
|
3374
|
+ }
|
|
3375
|
+ if(temp < ResdBm[3]){
|
|
3376
|
+ bluecell_Currdatastatus.ALARM_DLI_Level |= ALARM_DLI_P4_LEVEL_HIGH;
|
|
3377
|
+ }
|
|
3378
|
+
|
|
3379
|
+#if 0 // PYJ.2020.05.20_BEGIN --
|
|
3380
|
+ temp = ((bluecell_Currdatastatus.DLI_Level_Low_Threshold_H << 8) & 0xFF00);
|
|
3381
|
+ temp += (bluecell_Currdatastatus.DLI_Level_Low_Threshold_L & 0x00FF);
|
|
3382
|
+ /*4개의 디텍 중에 한개라도 상한치를 넘었을 경우 알림 */
|
|
3383
|
+ if(temp > ResdBm[0]){
|
|
3384
|
+ bluecell_Currdatastatus.ALARM_DLI_Level |= ALARM_DLI_P1_LEVEL_HIGH;
|
|
3385
|
+ }
|
|
3386
|
+ if( temp > ResdBm[1]){
|
|
3387
|
+ bluecell_Currdatastatus.ALARM_DLI_Level |= ALARM_DLI_P2_LEVEL_HIGH;
|
|
3388
|
+ }
|
|
3389
|
+ if(temp > ResdBm[2]){
|
|
3390
|
+ bluecell_Currdatastatus.ALARM_DLI_Level |= ALARM_DLI_P3_LEVEL_HIGH;
|
|
3391
|
+ }
|
|
3392
|
+ if(temp > ResdBm[3]){
|
|
3393
|
+ bluecell_Currdatastatus.ALARM_DLI_Level |= ALARM_DLI_P4_LEVEL_HIGH;
|
|
3394
|
+ }
|
|
3395
|
+#endif // PYJ.2020.05.20_END --
|
|
3396
|
+ /******************************DLI LEVEL END*******************************************/
|
|
3397
|
+ /******************************DLI AGC START******************************************/
|
|
3398
|
+
|
3378
|
3399
|
|
3379
|
|
-
|
3380
|
|
- temp = ((bluecell_Currdatastatus.ATT_DL1_H << 8) & 0xFF00);
|
3381
|
|
- temp += (bluecell_Currdatastatus.ATT_DL1_L & 0x00FF);
|
3382
|
|
- temp /= 10;
|
3383
|
|
- if(temp >= 15){
|
3384
|
|
- printf("ALARM_AGC_P1 OCCUR\r\n");
|
3385
|
|
- bluecell_Currdatastatus.DLI_AGC_Alarm1 |= ALARM_AGC_P1;
|
3386
|
|
- }
|
3387
|
|
- if( temp < ResdBm[1]){
|
3388
|
|
- bluecell_Currdatastatus.DLI_AGC_Alarm2 |= ALARM_AGC_P2;
|
3389
|
|
- }
|
3390
|
|
- if(temp < ResdBm[2]){
|
3391
|
|
- bluecell_Currdatastatus.DLI_AGC_Alarm3 |= ALARM_AGC_P3;
|
|
3400
|
+
|
|
3401
|
+ temp = ((bluecell_Currdatastatus.ATT_DL1_H << 8) & 0xFF00);
|
|
3402
|
+ temp += (bluecell_Currdatastatus.ATT_DL1_L & 0x00FF);
|
|
3403
|
+ temp /= 10;
|
|
3404
|
+ if(temp >= 15){
|
|
3405
|
+ printf("ALARM_AGC_P1 OCCUR\r\n");
|
|
3406
|
+ bluecell_Currdatastatus.ALARM_DLI_AGC_Alarm |= ALARM_AGC_P1;
|
|
3407
|
+ bluecell_Currdatastatus.DLI_AGC_Alarm1 = true;
|
|
3408
|
+ }else{
|
|
3409
|
+ bluecell_Currdatastatus.ALARM_DLI_AGC_Alarm &= ~ALARM_AGC_P1;
|
|
3410
|
+ }
|
|
3411
|
+ if( temp < ResdBm[1]){
|
|
3412
|
+ printf("ALARM_AGC_P2 OCCUR\r\n");
|
|
3413
|
+ bluecell_Currdatastatus.ALARM_DLI_AGC_Alarm |= ALARM_AGC_P2;
|
|
3414
|
+ bluecell_Currdatastatus.DLI_AGC_Alarm2 = true;
|
|
3415
|
+ }else{
|
|
3416
|
+ bluecell_Currdatastatus.ALARM_DLI_AGC_Alarm &= ~ALARM_AGC_P2;
|
|
3417
|
+ bluecell_Currdatastatus.DLI_AGC_Alarm2 = false;
|
|
3418
|
+
|
|
3419
|
+ }
|
|
3420
|
+ if(temp < ResdBm[2]){
|
|
3421
|
+ printf("ALARM_AGC_P3 OCCUR\r\n");
|
|
3422
|
+ bluecell_Currdatastatus.ALARM_DLI_AGC_Alarm |= ALARM_AGC_P3;
|
|
3423
|
+ bluecell_Currdatastatus.DLI_AGC_Alarm3 = true;
|
|
3424
|
+ }else{
|
|
3425
|
+ bluecell_Currdatastatus.ALARM_DLI_AGC_Alarm &= ~ALARM_AGC_P3;
|
|
3426
|
+ bluecell_Currdatastatus.DLI_AGC_Alarm3 = false;
|
|
3427
|
+
|
|
3428
|
+ }
|
|
3429
|
+ if(temp < ResdBm[3]){
|
|
3430
|
+ printf("ALARM_AGC_P4 OCCUR\r\n");
|
|
3431
|
+ bluecell_Currdatastatus.ALARM_DLI_AGC_Alarm |= ALARM_AGC_P4;
|
|
3432
|
+ bluecell_Currdatastatus.DLI_AGC_Alarm4 = true;
|
|
3433
|
+ }else{
|
|
3434
|
+ bluecell_Currdatastatus.ALARM_DLI_AGC_Alarm &= ~ALARM_AGC_P4;
|
|
3435
|
+ bluecell_Currdatastatus.DLI_AGC_Alarm4 = false;
|
|
3436
|
+
|
|
3437
|
+ }
|
3392
|
3438
|
}
|
3393
|
|
- if(temp < ResdBm[3]){
|
3394
|
|
- bluecell_Currdatastatus.DLI_AGC_Alarm4 |= ALARM_AGC_P4;
|
3395
|
|
- }
|
3396
|
3439
|
/******************************DLI AGC END******************************************/
|
3397
|
3440
|
/******************************DLI ShutDown Start******************************************/
|
3398
|
|
-
|
3399
|
|
-
|
3400
|
3441
|
temp = ((bluecell_Currdatastatus.DLI_Shutdown_Threshold_H << 8) & 0xFF00);
|
3401
|
3442
|
temp += (bluecell_Currdatastatus.DLI_Shutdown_Threshold_L & 0x00FF);
|
3402
|
3443
|
|