|
@@ -148,7 +148,24 @@ int16_t DL_AGC_StartAtten[AGC_Alarm_DL_Index_MAX] = {0,};
|
148
|
148
|
int16_t DL_PrevIwillgiveAtten[AGC_Alarm_DL_Index_MAX] = {0,};
|
149
|
149
|
bool DL_PathUserHandl[4] = {0,};
|
150
|
150
|
bool UL_PathUserHandl[4] = {0,};
|
|
151
|
+typedef enum{
|
|
152
|
+ DLI_FRBT_Time_Year = 0,
|
|
153
|
+ DLI_FRBT_Time_Month,
|
|
154
|
+ DLI_FRBT_Time_Day,
|
|
155
|
+ DLI_FRBT_Time_Hour,
|
|
156
|
+ DLI_FRBT_Time_Minute,
|
|
157
|
+ DLI_FRBT_Time_Second,
|
|
158
|
+ DLI_FRBT_Time_Index_Max,
|
|
159
|
+};
|
|
160
|
+volatile uint8_t StartTimeFRBT_Day[6] = {0,}; /*Start day Register*/
|
|
161
|
+uint8_t FRBT_Day[6] = {0,}; /*Curr day Register*/
|
|
162
|
+uint8_t PrevFRBT_Day[6] = {0,}; /*Prev day Register*/
|
151
|
163
|
|
|
164
|
+typedef enum{
|
|
165
|
+ FRBT_IDEL = 0,
|
|
166
|
+ FRBT_TRACKING,
|
|
167
|
+ FRBT_RUNNING,
|
|
168
|
+}FRBT_Status_I;
|
152
|
169
|
|
153
|
170
|
|
154
|
171
|
#if 0 // PYJ.2020.05.21_BEGIN --
|
|
@@ -789,7 +806,7 @@ void CompareAttenData(BLUESTATUS_st Curr,BLUESTATUS_st Prev){
|
789
|
806
|
val = MBIC_DL_PE43711_Calc(&Att_DL3.Table_0_0_dBm,// Table Offset
|
790
|
807
|
MBIC_Val,// Hidden Atten Low bit
|
791
|
808
|
MBIC_UserVal);// User Atten Low Bit
|
792
|
|
- printf("%d val = %x \r\n",__LINE__,val);
|
|
809
|
+// printf("%d val = %x \r\n",__LINE__,val);
|
793
|
810
|
PE43711_atten_ctrl(ALL_ATT.ATT_DL3,val);
|
794
|
811
|
}
|
795
|
812
|
// printf("\r\nCurr.ATT_DL3_H : %x \r\nPrev.ATT_DL3_H : %x \r\n",Curr.ATT_DL3_H,Prev.ATT_DL3_H);
|
|
@@ -805,14 +822,14 @@ void CompareAttenData(BLUESTATUS_st Curr,BLUESTATUS_st Prev){
|
805
|
822
|
bluecell_Prevdatastatus.bluecell_User_DL4_H = bluecell_Currdatastatus.bluecell_User_DL4_H;
|
806
|
823
|
bluecell_Prevdatastatus.bluecell_User_DL4_L = bluecell_Currdatastatus.bluecell_User_DL4_L;
|
807
|
824
|
MBIC_Val = (Curr.ATT_DL4_H << 8 | Curr.ATT_DL4_L);
|
808
|
|
- printf("\r\nCurr.ATT_DL4_H : %x \rCurr.ATT_DL4_L : %x \r\n",Curr.ATT_DL4_H,Curr.ATT_DL4_L);
|
|
825
|
+// printf("\r\nCurr.ATT_DL4_H : %x \rCurr.ATT_DL4_L : %x \r\n",Curr.ATT_DL4_H,Curr.ATT_DL4_L);
|
809
|
826
|
MBIC_UserVal = Curr.bluecell_User_DL4_H << 8 | Curr.bluecell_User_DL4_L;
|
810
|
|
- printf("\r\nCurr.bluecell_User_DL4_H : %x \rCurr.bluecell_User_DL4_L : %x \r\n",Curr.bluecell_User_DL4_H,Curr.bluecell_User_DL4_L);
|
811
|
|
- printf("MBIC_UserVal : %x \r\n",MBIC_UserVal); // 2
|
|
827
|
+// printf("\r\nCurr.bluecell_User_DL4_H : %x \rCurr.bluecell_User_DL4_L : %x \r\n",Curr.bluecell_User_DL4_H,Curr.bluecell_User_DL4_L);
|
|
828
|
+// printf("MBIC_UserVal : %x \r\n",MBIC_UserVal); // 2
|
812
|
829
|
val = MBIC_DL_PE43711_Calc(&Att_DL4.Table_0_0_dBm,// Table Offset
|
813
|
830
|
MBIC_Val,// Hidden Atten Low bit
|
814
|
831
|
MBIC_UserVal);// User Atten Low Bit
|
815
|
|
- printf("%d val = %x \r\n",__LINE__,val);
|
|
832
|
+// printf("%d val = %x \r\n",__LINE__,val);
|
816
|
833
|
PE43711_atten_ctrl(ALL_ATT.ATT_DL4,val);
|
817
|
834
|
}
|
818
|
835
|
#else
|
|
@@ -2340,8 +2357,6 @@ bool Bluecell_Operate(uint8_t* data){
|
2340
|
2357
|
}
|
2341
|
2358
|
CompareAttenData(bluecell_Currdatastatus,bluecell_Prevdatastatus);
|
2342
|
2359
|
|
2343
|
|
-
|
2344
|
|
-
|
2345
|
2360
|
printf("LINE : %d Curr ATTEN : %d \r\n",__LINE__,CurrAtten);
|
2346
|
2361
|
|
2347
|
2362
|
/*
|
|
@@ -2726,27 +2741,60 @@ bool Bluecell_Operate(uint8_t* data){
|
2726
|
2741
|
#if 1 // PYJ.2020.07.01_BEGIN --
|
2727
|
2742
|
printf("===================START=======================\r\n");
|
2728
|
2743
|
printf("ALC ON %d | AGC ON %d\r\n",bluecell_Currdatastatus.ULO_ALC_ON_OFF,bluecell_Currdatastatus.DLI_AGC_ON_OFF);
|
2729
|
|
- printf("Shutdown DL ON OFF %d | Shutdown UL ON OFF %d \r\n",bluecell_Currdatastatus.DLI_Shutdown_ON_OFF,bluecell_Currdatastatus.ULO_Shutdown_ON_OFF);
|
2730
|
|
- printf("PATH1 %d|Shutdown DL1 CNT %d | PATH1 %d|Shutdown UL1 CNT %d\r\n",bluecell_Currdatastatus.ATT_DL1_PATH,bluecell_Currdatastatus.DLI_Shutdown_Retry_Count1,bluecell_Currdatastatus.ATT_DL1_PATH,bluecell_Currdatastatus.ULO_Shutdown_Retry_Count1);
|
|
2744
|
+// printf("Shutdown DL ON OFF %d | Shutdown UL ON OFF %d \r\n",bluecell_Currdatastatus.DLI_Shutdown_ON_OFF,bluecell_Currdatastatus.ULO_Shutdown_ON_OFF);
|
|
2745
|
+// printf("PATH1 %d|Shutdown DL1 CNT %d | PATH1 %d|Shutdown UL1 CNT %d\r\n",bluecell_Currdatastatus.ATT_DL1_PATH,bluecell_Currdatastatus.DLI_Shutdown_Retry_Count1,bluecell_Currdatastatus.ATT_DL1_PATH,bluecell_Currdatastatus.ULO_Shutdown_Retry_Count1);
|
2731
|
2746
|
// printf("PATH2 %d|Shutdown DL2 CNT %d | PATH2 %d|Shutdown UL2 CNT %d\r\n",bluecell_Currdatastatus.ATT_DL2_PATH,bluecell_Currdatastatus.DLI_Shutdown_Retry_Count2,bluecell_Currdatastatus.ATT_UL2_PATH,bluecell_Currdatastatus.ULO_Shutdown_Retry_Count2);
|
2732
|
2747
|
// printf("PATH3 %d|Shutdown DL3 CNT %d | PATH3 %d|Shutdown UL3 CNT %d\r\n",bluecell_Currdatastatus.ATT_DL3_PATH,bluecell_Currdatastatus.DLI_Shutdown_Retry_Count3,bluecell_Currdatastatus.ATT_UL3_PATH,bluecell_Currdatastatus.ULO_Shutdown_Retry_Count3);
|
2733
|
2748
|
// printf("PATH4 %d|Shutdown DL4 CNT %d | PATH4 %d|Shutdown UL4 CNT %d\r\n",bluecell_Currdatastatus.ATT_DL4_PATH,bluecell_Currdatastatus.DLI_Shutdown_Retry_Count4,bluecell_Currdatastatus.ATT_UL4_PATH,bluecell_Currdatastatus.ULO_Shutdown_Retry_Count4);
|
2734
|
2749
|
tempdata = (( bluecell_Currdatastatus.DLI_Level_Low_Threshold_H << 8) & 0xFF00) ;
|
2735
|
2750
|
tempdata += bluecell_Currdatastatus.DLI_Level_Low_Threshold_L ;
|
2736
|
2751
|
tempdata /= 10;
|
2737
|
|
- printf("DL Thread Hold : %d \r\n",tempdata);
|
2738
|
|
-
|
|
2752
|
+// printf("DL Thread Hold : %d \r\n",tempdata);
|
|
2753
|
+ tempdata = (( bluecell_Currdatastatus.ATT_DL1_H << 8) & 0xFF00) ;
|
|
2754
|
+ tempdata += bluecell_Currdatastatus.ATT_DL1_L ;
|
|
2755
|
+ tempdata /= 10;
|
|
2756
|
+ printf("ATT_DL1 : %d \r\n",tempdata);
|
|
2757
|
+ tempdata = (( bluecell_Currdatastatus.ATT_DL4_H << 8) & 0xFF00) ;
|
|
2758
|
+ tempdata += bluecell_Currdatastatus.ATT_DL4_L ;
|
|
2759
|
+ tempdata /= 10;
|
|
2760
|
+ printf("ATT_DL4 : %d \r\n",tempdata);
|
|
2761
|
+
|
|
2762
|
+ tempdata = (( bluecell_Currdatastatus.DLI_FRBT_Atten1_H << 8) & 0xFF00) ;
|
|
2763
|
+ tempdata += bluecell_Currdatastatus.DLI_FRBT_Atten1_L ;
|
|
2764
|
+ tempdata /= 10;
|
|
2765
|
+ printf("FRBT 1 : %d \r\n",tempdata);
|
|
2766
|
+
|
|
2767
|
+ tempdata = (( bluecell_Currdatastatus.DLI_FRBT_Atten2_H << 8) & 0xFF00) ;
|
|
2768
|
+ tempdata += bluecell_Currdatastatus.DLI_FRBT_Atten2_L ;
|
|
2769
|
+ tempdata /= 10;
|
|
2770
|
+ printf("FRBT 2 : %d \r\n",tempdata);
|
|
2771
|
+
|
|
2772
|
+ tempdata = (( bluecell_Currdatastatus.DLI_FRBT_Atten3_H << 8) & 0xFF00) ;
|
|
2773
|
+ tempdata += bluecell_Currdatastatus.DLI_FRBT_Atten3_L ;
|
|
2774
|
+ tempdata /= 10;
|
|
2775
|
+ printf("FRBT 3 : %d \r\n",tempdata);
|
|
2776
|
+
|
|
2777
|
+ tempdata = (( bluecell_Currdatastatus.DLI_FRBT_Atten4_H << 8) & 0xFF00) ;
|
|
2778
|
+ tempdata += bluecell_Currdatastatus.DLI_FRBT_Atten4_L ;
|
|
2779
|
+ tempdata /= 10;
|
|
2780
|
+ printf("FRBT 4 : %d \r\n",tempdata);
|
|
2781
|
+ printf("DLI_FRBT_D_Day : %d \r\n",bluecell_Currdatastatus.DLI_FRBT_D_Day);
|
|
2782
|
+ printf("DLI_FRBT_Status : %d \r\n",bluecell_Currdatastatus.DLI_FRBT_Status);
|
2739
|
2783
|
tempdata = (( bluecell_Currdatastatus.DLI_Level1_H << 8) & 0xFF00) ;
|
2740
|
2784
|
tempdata += bluecell_Currdatastatus.DLI_Level1_L ;
|
2741
|
2785
|
// tempdata *= 0.1;
|
2742
|
2786
|
printf("DLI_Level1 : %d \r\n",tempdata);
|
|
2787
|
+ tempdata = (( bluecell_Currdatastatus.DLI_Level4_H << 8) & 0xFF00) ;
|
|
2788
|
+ tempdata += bluecell_Currdatastatus.DLI_Level4_L ;
|
|
2789
|
+// tempdata *= 0.1;
|
|
2790
|
+ printf("DLI_Level4 : %d \r\n",tempdata);
|
2743
|
2791
|
|
2744
|
|
- printf("DL HIGH ALARM : %d \r\n", bluecell_Currdatastatus.DLI_Level_High_Alarm1);
|
2745
|
|
- printf("DL LOW ALARM : %d \r\n", bluecell_Currdatastatus.DLI_Level_Low_Alarm1);
|
|
2792
|
+// printf("DL HIGH ALARM : %d \r\n", bluecell_Currdatastatus.DLI_Level_High_Alarm1);
|
|
2793
|
+// printf("DL LOW ALARM : %d \r\n", bluecell_Currdatastatus.DLI_Level_Low_Alarm1);
|
2746
|
2794
|
tempdata = (( bluecell_Currdatastatus.DLI_Shutdown_Threshold_H << 8) & 0xFF00) ;
|
2747
|
2795
|
tempdata += bluecell_Currdatastatus.DLI_Shutdown_Threshold_L ;
|
2748
|
2796
|
tempdata /= 10;
|
2749
|
|
- printf("DL Shutdown Threas : %d \r\n",tempdata);
|
|
2797
|
+// printf("DL Shutdown Threas : %d \r\n",tempdata);
|
2750
|
2798
|
#if 0 // PYJ.2020.07.01_BEGIN --
|
2751
|
2799
|
tempdata = (( bluecell_Currdatastatus.ULO_Shutdown_Threshold_H << 8) & 0xFF00) ;
|
2752
|
2800
|
tempdata += bluecell_Currdatastatus.ULO_Shutdown_Threshold_L ;
|
|
@@ -3053,7 +3101,6 @@ bool Bluecell_Operate(uint8_t* data){
|
3053
|
3101
|
printf("Temp_High_Threshold : %d : Det %d \r\n",bluecell_Currdatastatus.Temp_High_Threshold,bluecell_Currdatastatus.DET_TEMP);
|
3054
|
3102
|
printf("Temp_High_Alarm : %d \r\n",bluecell_Currdatastatus.Temp_High_Alarm);
|
3055
|
3103
|
printf("Txdata : %d \r\n",Txdata[201]);
|
3056
|
|
-
|
3057
|
3104
|
break;
|
3058
|
3105
|
case Bluecell_Temp_High_Threshold_Default :
|
3059
|
3106
|
bluecell_Currdatastatus.Temp_High_Threshold_Default = data[BLUECELL_DATA + i++];
|
|
@@ -3169,7 +3216,53 @@ bool Bluecell_Operate(uint8_t* data){
|
3169
|
3216
|
bluecell_Currdatastatus.CPU_Bank_Select = data[BLUECELL_DATA + i++];
|
3170
|
3217
|
printf("bluecell_Currdatastatus.CPU_Bank_Select : %d \r\n",bluecell_Currdatastatus.CPU_Bank_Select);
|
3171
|
3218
|
break;
|
3172
|
|
-
|
|
3219
|
+ case Bluecell_TimeSetting:
|
|
3220
|
+ if(bluecell_Currdatastatus.DLI_AGC_ON_OFF == true
|
|
3221
|
+ && bluecell_Currdatastatus.DLI_FRBT_D_Day < 7
|
|
3222
|
+ && bluecell_Currdatastatus.DLI_FRBT_Status != FRBT_RUNNING){
|
|
3223
|
+ for(int i = 0; i < DLI_FRBT_Time_Index_Max; i++){
|
|
3224
|
+ FRBT_Day[DLI_FRBT_Time_Year + i] = data[BLUECELL_CRCINDEX + i]; /* Curr day */
|
|
3225
|
+ printf("data[BLUECELL_CRCINDEX + i] : %d \r\n",data[BLUECELL_CRCINDEX + i]);
|
|
3226
|
+ }
|
|
3227
|
+
|
|
3228
|
+ printf("BLUECELL TIME APPLY : %d - %d - %d - %d - %d - %d \r\n",
|
|
3229
|
+ FRBT_Day[DLI_FRBT_Time_Year],
|
|
3230
|
+ FRBT_Day[DLI_FRBT_Time_Month],
|
|
3231
|
+ FRBT_Day[DLI_FRBT_Time_Day],
|
|
3232
|
+ FRBT_Day[DLI_FRBT_Time_Hour],
|
|
3233
|
+ FRBT_Day[DLI_FRBT_Time_Minute],
|
|
3234
|
+ FRBT_Day[DLI_FRBT_Time_Second]);
|
|
3235
|
+
|
|
3236
|
+ if(FRBT_Day[DLI_FRBT_Time_Day] != PrevFRBT_Day[DLI_FRBT_Time_Day]){
|
|
3237
|
+ printf("FRBT_Day[DLI_FRBT_Time_Day] : %d PrevFRBT_Day[DLI_FRBT_D_Day] : %d \r\n",
|
|
3238
|
+ FRBT_Day[DLI_FRBT_Time_Day] ,
|
|
3239
|
+ PrevFRBT_Day[DLI_FRBT_Time_Day]);
|
|
3240
|
+#if 1 // PYJ.2020.07.02_BEGIN --
|
|
3241
|
+ bluecell_Currdatastatus.DLI_FRBT_D_Day++;
|
|
3242
|
+ bluecell_Currdatastatus.DLI_FRBT_Status = FRBT_TRACKING;
|
|
3243
|
+#else
|
|
3244
|
+ bluecell_Currdatastatus.DLI_FRBT_D_Day = 7;
|
|
3245
|
+ bluecell_Currdatastatus.DLI_FRBT_Status = FRBT_TRACKING;
|
|
3246
|
+#endif // PYJ.2020.07.02_END --
|
|
3247
|
+ printf("D day Plus : %d \r\n",bluecell_Currdatastatus.DLI_FRBT_D_Day);
|
|
3248
|
+ }
|
|
3249
|
+
|
|
3250
|
+ for(int i = 0; i < DLI_FRBT_Time_Index_Max; i++){
|
|
3251
|
+ PrevFRBT_Day[DLI_FRBT_Time_Year + i] = FRBT_Day[DLI_FRBT_Time_Year + i]; /* Curr day */
|
|
3252
|
+ }
|
|
3253
|
+ printf("BLUECELL TIME APPLY : %d - %d - %d - %d - %d - %d \r\n",
|
|
3254
|
+ PrevFRBT_Day[DLI_FRBT_Time_Year],
|
|
3255
|
+ PrevFRBT_Day[DLI_FRBT_Time_Month],
|
|
3256
|
+ PrevFRBT_Day[DLI_FRBT_Time_Day],
|
|
3257
|
+ PrevFRBT_Day[DLI_FRBT_Time_Hour],
|
|
3258
|
+ PrevFRBT_Day[DLI_FRBT_Time_Minute],
|
|
3259
|
+ PrevFRBT_Day[DLI_FRBT_Time_Second]);
|
|
3260
|
+ printf("FRBT_Day[DLI_FRBT_Time_Day] : %d PrevFRBT_Day[DLI_FRBT_D_Day] : %d \r\n",
|
|
3261
|
+ FRBT_Day[DLI_FRBT_Time_Day] ,
|
|
3262
|
+ PrevFRBT_Day[DLI_FRBT_Time_Day]);
|
|
3263
|
+ }
|
|
3264
|
+ printf("Time Set Complete\r\n");
|
|
3265
|
+ break;
|
3173
|
3266
|
}
|
3174
|
3267
|
|
3175
|
3268
|
if(datatype != Bluecell_StatusReq
|
|
@@ -3553,7 +3646,7 @@ uint32_t MBIC_DataSend(uint8_t* data){
|
3553
|
3646
|
data[MBIC_PAYLOADSTART + i++] = Manufacture;
|
3554
|
3647
|
data[MBIC_PAYLOADSTART + i++] = 1; // LENGTH
|
3555
|
3648
|
Length += 1 ;
|
3556
|
|
- data[MBIC_PAYLOADSTART + i++] = bluecell_Currdatastatus.Manufacture;
|
|
3649
|
+ data[MBIC_PAYLOADSTART + i++] = bluecell_Currdatastatus.Manufacture = 0x01;
|
3557
|
3650
|
|
3558
|
3651
|
|
3559
|
3652
|
|
|
@@ -4148,6 +4241,8 @@ void Factory_Set(){
|
4148
|
4241
|
|
4149
|
4242
|
|
4150
|
4243
|
}
|
|
4244
|
+
|
|
4245
|
+
|
4151
|
4246
|
bool MBIC_Operate(uint8_t* data){
|
4152
|
4247
|
uint8_t datatype = data[MBIC_PAYLOADSTART + 1];
|
4153
|
4248
|
// uint8_t Length = (data[MBIC_PROT_SUB_DATA_INDEX + 2]);
|
|
@@ -4159,6 +4254,21 @@ bool MBIC_Operate(uint8_t* data){
|
4159
|
4254
|
//double temp = 0;
|
4160
|
4255
|
//int16_t Level = 0;
|
4161
|
4256
|
//int16_t tmpdata = 0;
|
|
4257
|
+ /*Day Save*/
|
|
4258
|
+ if(bluecell_Currdatastatus.DLI_AGC_ON_OFF == true && bluecell_Currdatastatus.DLI_FRBT_D_Day < 7
|
|
4259
|
+ && bluecell_Currdatastatus.DLI_FRBT_Status != FRBT_RUNNING){
|
|
4260
|
+ for(int i = 0; i < DLI_FRBT_Time_Index_Max; i++){
|
|
4261
|
+ FRBT_Day[DLI_FRBT_Time_Year + i] = data[MBIC_TIME_0 + i]; /* Curr day */
|
|
4262
|
+ }
|
|
4263
|
+
|
|
4264
|
+ if(FRBT_Day[DLI_FRBT_Time_Day] != PrevFRBT_Day[DLI_FRBT_D_Day])
|
|
4265
|
+ bluecell_Currdatastatus.DLI_FRBT_D_Day++;
|
|
4266
|
+
|
|
4267
|
+ for(int i = 0; i < DLI_FRBT_Time_Index_Max; i++){
|
|
4268
|
+ PrevFRBT_Day[DLI_FRBT_Time_Year + i] = FRBT_Day[DLI_FRBT_Time_Year + i]; /* Curr day */
|
|
4269
|
+ }
|
|
4270
|
+ }
|
|
4271
|
+
|
4162
|
4272
|
for(int k = 0; k < 2048; k++)
|
4163
|
4273
|
TxData[k] = data[k];
|
4164
|
4274
|
|
|
@@ -4421,7 +4531,26 @@ bool MBIC_Operate(uint8_t* data){
|
4421
|
4531
|
AGC_AlarmSet[AGC_Alarm_DL2_Index] = false;
|
4422
|
4532
|
AGC_AlarmSet[AGC_Alarm_DL3_Index] = false;
|
4423
|
4533
|
AGC_AlarmSet[AGC_Alarm_DL4_Index] = false;
|
|
4534
|
+ for(int i = 0; i < DLI_FRBT_Time_Index_Max; i++){
|
|
4535
|
+ PrevFRBT_Day[DLI_FRBT_Time_Year + i] = FRBT_Day[DLI_FRBT_Time_Year + i] = 0;
|
|
4536
|
+ }
|
|
4537
|
+
|
|
4538
|
+ bluecell_Currdatastatus.DLI_FRBT_D_Day = 0;
|
|
4539
|
+ bluecell_Currdatastatus.DLI_FRBT_Status = FRBT_IDEL;
|
4424
|
4540
|
bluecell_Currdatastatus.ALARM_DLI_AGC_Alarm = 0;
|
|
4541
|
+ }else{
|
|
4542
|
+ for(int i = 0; i < DLI_FRBT_Time_Index_Max; i++){
|
|
4543
|
+ StartTimeFRBT_Day[DLI_FRBT_Time_Year + i] = data[MBIC_TIME_0 + i]; /* Curr day */
|
|
4544
|
+ }
|
|
4545
|
+ bluecell_Currdatastatus.DLI_FRBT_Status = FRBT_TRACKING;
|
|
4546
|
+ printf("FRBT Tracking START \r\n");
|
|
4547
|
+ printf("FRBT Start Time Save : %d Y %d M %d D %d H %d M %d S\r\n",
|
|
4548
|
+ StartTimeFRBT_Day[DLI_FRBT_Time_Year],
|
|
4549
|
+ StartTimeFRBT_Day[DLI_FRBT_Time_Month],
|
|
4550
|
+ StartTimeFRBT_Day[DLI_FRBT_Time_Day],
|
|
4551
|
+ StartTimeFRBT_Day[DLI_FRBT_Time_Hour],
|
|
4552
|
+ StartTimeFRBT_Day[DLI_FRBT_Time_Minute],
|
|
4553
|
+ StartTimeFRBT_Day[DLI_FRBT_Time_Second]);
|
4425
|
4554
|
}
|
4426
|
4555
|
DL_AGC_StartAtten[AGC_Alarm_DL1_Index]
|
4427
|
4556
|
= bluecell_Currdatastatus.ATT_DL1_H << 8 | bluecell_Currdatastatus.ATT_DL1_L;
|
|
@@ -6785,6 +6914,13 @@ void AGC_Package_Operate(uint8_t* Threshold,uint8_t* DL_MainAtten,uint8_t Tablei
|
6785
|
6914
|
int16_t IwillgiveAtten = 0;
|
6786
|
6915
|
int16_t ResultData = 0;
|
6787
|
6916
|
int8_t* AGC_Table;// = &DL_DET_Table_ref[MBIC_Table_DL1_INDEX][TABLE_MAX_VALUE];
|
|
6917
|
+ int16_t FRBT_Atten = 0;
|
|
6918
|
+
|
|
6919
|
+
|
|
6920
|
+
|
|
6921
|
+ FRBT_Atten = FRBT[DLI_AGC_H] << 8 | FRBT[DLI_AGC_L];
|
|
6922
|
+ FRBT_Atten *= 0.1;
|
|
6923
|
+
|
6788
|
6924
|
Limitdata = Threshold[DLI_AGC_H] << 8;
|
6789
|
6925
|
Limitdata += Threshold[DLI_AGC_L];
|
6790
|
6926
|
Limitdata *= 0.1;
|
|
@@ -6795,6 +6931,7 @@ void AGC_Package_Operate(uint8_t* Threshold,uint8_t* DL_MainAtten,uint8_t Tablei
|
6795
|
6931
|
ret *= 0.001;
|
6796
|
6932
|
|
6797
|
6933
|
CurrAtten = (int16_t)(DL_MainAtten[DLI_AGC_H] << 8 | DL_MainAtten[DLI_AGC_L]);
|
|
6934
|
+ CurrAtten *= 0.1;
|
6798
|
6935
|
ResdBm = (int8_t)Bluecell_TestPro(AGC_AutoControl_ADC_Compare(ret,&DL_Table->Table_Det5_dBm_H,DL_Table->Table_Length,AGC_Table));
|
6799
|
6936
|
DLI_Level[DLI_AGC_H] = ((int16_t)ResdBm & 0xFF00) >> 8;
|
6800
|
6937
|
DLI_Level[DLI_AGC_L] = ((int16_t)ResdBm & 0x00FF);
|
|
@@ -6810,8 +6947,8 @@ void AGC_Package_Operate(uint8_t* Threshold,uint8_t* DL_MainAtten,uint8_t Tablei
|
6810
|
6947
|
// printf("ResdBm : DL%d : %d \r\n",Tableindex+1,ResdBm);
|
6811
|
6948
|
// printf("I WILL GIVE YOU ATTEN : %d\r\n",IwillgiveAtten);
|
6812
|
6949
|
// printf("AGC : %d\r\n",Limitdata);
|
6813
|
|
- if((CurrAtten / 10) < IwillgiveAtten)
|
6814
|
|
- IwillgiveAtten = (CurrAtten / 10);
|
|
6950
|
+ if((CurrAtten) < IwillgiveAtten)
|
|
6951
|
+ IwillgiveAtten = (CurrAtten );
|
6815
|
6952
|
|
6816
|
6953
|
if(ResdBm > Limitdata && DL_PrevIwillgiveAtten[Tableindex] > IwillgiveAtten){
|
6817
|
6954
|
// printf("IwillgiveAtten : %d \r\n",IwillgiveAtten);
|
|
@@ -6819,12 +6956,25 @@ void AGC_Package_Operate(uint8_t* Threshold,uint8_t* DL_MainAtten,uint8_t Tablei
|
6819
|
6956
|
IwillgiveAtten = (DL_AGC_StartAtten[Tableindex]*0.1) + IwillgiveAtten;
|
6820
|
6957
|
// printf("WILLATTEN RET : %d \r\n",IwillgiveAtten);
|
6821
|
6958
|
AGC_Alarm_Check(AGC_Alarm_DL1_Index + Tableindex,ret,&DL_Table->Table_Det5_dBm_H,IwillgiveAtten);
|
|
6959
|
+
|
6822
|
6960
|
DL_MainAtten[DLI_AGC_H] = (((IwillgiveAtten * 10) & 0xFF00) >> 8) ;
|
6823
|
6961
|
DL_MainAtten[DLI_AGC_L] = (((IwillgiveAtten * 10) & 0x00FF));
|
6824
|
|
- FRBT[DLI_AGC_H] = DL_MainAtten[DLI_AGC_H];
|
6825
|
|
- FRBT[DLI_AGC_L] = DL_MainAtten[DLI_AGC_L];
|
6826
|
6962
|
CompareAttenData(bluecell_Currdatastatus,bluecell_Prevdatastatus);
|
6827
|
6963
|
}
|
|
6964
|
+ else if(bluecell_Currdatastatus.DLI_FRBT_Status == FRBT_RUNNING){
|
|
6965
|
+ if(CurrAtten == FRBT_Atten)
|
|
6966
|
+ return;
|
|
6967
|
+
|
|
6968
|
+ if(CurrAtten + ResdBm <= Limitdata - 1){
|
|
6969
|
+ IwillgiveAtten = ((CurrAtten) + 1);
|
|
6970
|
+
|
|
6971
|
+ DL_PrevIwillgiveAtten[Tableindex] = IwillgiveAtten;
|
|
6972
|
+ DL_MainAtten[DLI_AGC_H] = (((IwillgiveAtten * 10) & 0xFF00) >> 8) ;
|
|
6973
|
+ DL_MainAtten[DLI_AGC_L] = (((IwillgiveAtten * 10) & 0x00FF));
|
|
6974
|
+ CompareAttenData(bluecell_Currdatastatus,bluecell_Prevdatastatus);
|
|
6975
|
+ }
|
|
6976
|
+ }
|
|
6977
|
+
|
6828
|
6978
|
|
6829
|
6979
|
}
|
6830
|
6980
|
#endif // PYJ.2020.06.27_END --
|
|
@@ -6860,7 +7010,7 @@ void AGC_Function(){//DL
|
6860
|
7010
|
bluecell_Currdatastatus.ATT_DL4_H << 8 | bluecell_Currdatastatus.ATT_DL4_L,
|
6861
|
7011
|
};
|
6862
|
7012
|
|
6863
|
|
- if(AGCTimerCnt > 100){
|
|
7013
|
+ if(AGCTimerCnt > 500){
|
6864
|
7014
|
|
6865
|
7015
|
|
6866
|
7016
|
if(bluecell_Currdatastatus.DLI_AGC_ON_OFF == true){
|
|
@@ -7146,10 +7296,10 @@ void AGC_Function(){//DL
|
7146
|
7296
|
bluecell_Currdatastatus.DLI_Level1_H = (Levelret & 0xFF00) >> 8;
|
7147
|
7297
|
bluecell_Currdatastatus.DLI_Level1_L = (Levelret & 0x00FF);
|
7148
|
7298
|
#else
|
7149
|
|
- DL_Det_Function(MBIC_Table_DL1_INDEX,&bluecell_Currdatastatus.DLI_P1_Level1_H,&Det_DL1.Table_Det5_dBm_H,&bluecell_Currdatastatus.DLI_Level1_H);
|
7150
|
|
- DL_Det_Function(MBIC_Table_DL2_INDEX,&bluecell_Currdatastatus.DLI_P2_Level2_H,&Det_DL2.Table_Det5_dBm_H,&bluecell_Currdatastatus.DLI_Level2_H);
|
7151
|
|
- DL_Det_Function(MBIC_Table_DL3_INDEX,&bluecell_Currdatastatus.DLI_P3_Level3_H,&Det_DL3.Table_Det5_dBm_H,&bluecell_Currdatastatus.DLI_Level3_H);
|
7152
|
|
- DL_Det_Function(MBIC_Table_DL4_INDEX,&bluecell_Currdatastatus.DLI_P4_Level4_H,&Det_DL4.Table_Det5_dBm_H,&bluecell_Currdatastatus.DLI_Level4_H);
|
|
7299
|
+// DL_Det_Function(MBIC_Table_DL1_INDEX,&bluecell_Currdatastatus.DLI_P1_Level1_H,&Det_DL1.Table_Det5_dBm_H,&bluecell_Currdatastatus.DLI_Level1_H);
|
|
7300
|
+// DL_Det_Function(MBIC_Table_DL2_INDEX,&bluecell_Currdatastatus.DLI_P2_Level2_H,&Det_DL2.Table_Det5_dBm_H,&bluecell_Currdatastatus.DLI_Level2_H);
|
|
7301
|
+// DL_Det_Function(MBIC_Table_DL3_INDEX,&bluecell_Currdatastatus.DLI_P3_Level3_H,&Det_DL3.Table_Det5_dBm_H,&bluecell_Currdatastatus.DLI_Level3_H);
|
|
7302
|
+// DL_Det_Function(MBIC_Table_DL4_INDEX,&bluecell_Currdatastatus.DLI_P4_Level4_H,&Det_DL4.Table_Det5_dBm_H,&bluecell_Currdatastatus.DLI_Level4_H);
|
7153
|
7303
|
|
7154
|
7304
|
|
7155
|
7305
|
#endif // PYJ.2020.07.01_END --
|
|
@@ -7204,6 +7354,10 @@ void AGC_Function(){//DL
|
7204
|
7354
|
|
7205
|
7355
|
|
7206
|
7356
|
}
|
|
7357
|
+ DL_Det_Function(MBIC_Table_DL1_INDEX,&bluecell_Currdatastatus.DLI_P1_Level1_H,&Det_DL1.Table_Det5_dBm_H,&bluecell_Currdatastatus.DLI_Level1_H);
|
|
7358
|
+ DL_Det_Function(MBIC_Table_DL2_INDEX,&bluecell_Currdatastatus.DLI_P2_Level2_H,&Det_DL2.Table_Det5_dBm_H,&bluecell_Currdatastatus.DLI_Level2_H);
|
|
7359
|
+ DL_Det_Function(MBIC_Table_DL3_INDEX,&bluecell_Currdatastatus.DLI_P3_Level3_H,&Det_DL3.Table_Det5_dBm_H,&bluecell_Currdatastatus.DLI_Level3_H);
|
|
7360
|
+ DL_Det_Function(MBIC_Table_DL4_INDEX,&bluecell_Currdatastatus.DLI_P4_Level4_H,&Det_DL4.Table_Det5_dBm_H,&bluecell_Currdatastatus.DLI_Level4_H);
|
7207
|
7361
|
AGCTimerCnt = 0;
|
7208
|
7362
|
}
|
7209
|
7363
|
}
|
|
@@ -8556,36 +8710,72 @@ long totalday(int y, int m, int d)
|
8556
|
8710
|
return total;
|
8557
|
8711
|
}
|
8558
|
8712
|
#endif // PYJ.2020.06.28_END --
|
|
8713
|
+typedef enum{
|
|
8714
|
+ FRBT_H = 0,
|
|
8715
|
+ FRBT_L,
|
8559
|
8716
|
|
8560
|
|
-void FRBT_Operate(){
|
8561
|
|
- int16_t DL_Atten[DET_Alarm_DL_Index_MAX] = {0,};
|
8562
|
|
- int16_t FRBT_DL_Atten[DET_Alarm_DL_Index_MAX] = {0,};
|
|
8717
|
+};
|
8563
|
8718
|
|
8564
|
|
- FRBT_DL_Atten[DET_Alarm_DL1_Index] = bluecell_Currdatastatus.DLI_FRBT_Atten1_H << 8 | bluecell_Currdatastatus.DLI_FRBT_Atten1_L;
|
8565
|
|
- FRBT_DL_Atten[DET_Alarm_DL1_Index] = bluecell_Currdatastatus.DLI_FRBT_Atten2_H << 8 | bluecell_Currdatastatus.DLI_FRBT_Atten2_L;
|
8566
|
|
- FRBT_DL_Atten[DET_Alarm_DL1_Index] = bluecell_Currdatastatus.DLI_FRBT_Atten3_H << 8 | bluecell_Currdatastatus.DLI_FRBT_Atten3_L;
|
8567
|
|
- FRBT_DL_Atten[DET_Alarm_DL1_Index] = bluecell_Currdatastatus.DLI_FRBT_Atten4_H << 8 | bluecell_Currdatastatus.DLI_FRBT_Atten4_L;
|
|
8719
|
+/*
|
|
8720
|
+uint8_t DLI_FRBT_D_Day;
|
|
8721
|
+uint8_t DLI_FRBT_Status;
|
|
8722
|
+*/
|
|
8723
|
+void FRBT_Tracking_Package(uint8_t Index, uint8_t* FRBT,uint8_t* DL_MainAtten,uint8_t path){
|
|
8724
|
+ int16_t DL_Atten = 0;
|
|
8725
|
+ int16_t FRBT_Atten = 0;
|
|
8726
|
+
|
|
8727
|
+ if(path == false)
|
|
8728
|
+ return;
|
8568
|
8729
|
|
8569
|
|
- DL_Atten[DET_Alarm_DL1_Index] = bluecell_Currdatastatus.ATT_DL1_H << 8 | bluecell_Currdatastatus.ATT_DL1_L;
|
8570
|
|
- DL_Atten[DET_Alarm_DL2_Index] = bluecell_Currdatastatus.ATT_DL2_H << 8 | bluecell_Currdatastatus.ATT_DL2_L;
|
8571
|
|
- DL_Atten[DET_Alarm_DL3_Index] = bluecell_Currdatastatus.ATT_DL3_H << 8 | bluecell_Currdatastatus.ATT_DL3_L;
|
8572
|
|
- DL_Atten[DET_Alarm_DL4_Index] = bluecell_Currdatastatus.ATT_DL4_H << 8 | bluecell_Currdatastatus.ATT_DL4_L;
|
|
8730
|
+ FRBT_Atten = FRBT[FRBT_H] << 8 | FRBT[FRBT_L];
|
|
8731
|
+ DL_Atten = DL_MainAtten[FRBT_H] << 8 | DL_MainAtten[FRBT_L];
|
|
8732
|
+ if(FRBT_Atten == DL_Atten){
|
|
8733
|
+// printf("Tracking Return %d \r\n ");
|
|
8734
|
+// printf("FRBT_Atten : %d DL_Atten : %d \r\n",FRBT_Atten,DL_Atten);
|
|
8735
|
+ return;
|
|
8736
|
+ }
|
|
8737
|
+
|
|
8738
|
+ printf("FRBT_Atten : %d DL_Atten : %d \r\n",FRBT_Atten,DL_Atten);
|
|
8739
|
+
|
|
8740
|
+ FRBT[FRBT_H] = DL_MainAtten[FRBT_H];
|
|
8741
|
+ FRBT[FRBT_L] = DL_MainAtten[FRBT_L];
|
|
8742
|
+
|
|
8743
|
+}
|
|
8744
|
+
|
|
8745
|
+
|
|
8746
|
+void FRBT_Operate(){
|
8573
|
8747
|
|
8574
|
|
-// 14 06 09 00 0c 28
|
8575
|
|
- if(bluecell_Currdatastatus.DLI_AGC_ON_OFF){
|
8576
|
|
- FRBT_DL_Atten[DET_Alarm_DL1_Index] = DL_Atten[DET_Alarm_DL1_Index];
|
8577
|
|
- FRBT_DL_Atten[DET_Alarm_DL2_Index] = DL_Atten[DET_Alarm_DL2_Index];
|
8578
|
|
- FRBT_DL_Atten[DET_Alarm_DL3_Index] = DL_Atten[DET_Alarm_DL3_Index];
|
8579
|
|
- FRBT_DL_Atten[DET_Alarm_DL4_Index] = DL_Atten[DET_Alarm_DL4_Index];
|
8580
|
|
- bluecell_Currdatastatus.DLI_FRBT_Atten1_H = (FRBT_DL_Atten[DET_Alarm_DL1_Index] & 0xFF00) >> 8;
|
8581
|
|
- bluecell_Currdatastatus.DLI_FRBT_Atten1_L =(FRBT_DL_Atten[DET_Alarm_DL1_Index] & 0x00FF);
|
8582
|
|
- bluecell_Currdatastatus.DLI_FRBT_Atten2_H = (FRBT_DL_Atten[DET_Alarm_DL2_Index] & 0xFF00) >> 8;
|
8583
|
|
- bluecell_Currdatastatus.DLI_FRBT_Atten2_L =(FRBT_DL_Atten[DET_Alarm_DL2_Index] & 0x00FF);
|
8584
|
|
- bluecell_Currdatastatus.DLI_FRBT_Atten3_H = (FRBT_DL_Atten[DET_Alarm_DL3_Index] & 0xFF00) >> 8;
|
8585
|
|
- bluecell_Currdatastatus.DLI_FRBT_Atten3_L =(FRBT_DL_Atten[DET_Alarm_DL3_Index] & 0x00FF);
|
8586
|
|
- bluecell_Currdatastatus.DLI_FRBT_Atten4_H = (FRBT_DL_Atten[DET_Alarm_DL4_Index] & 0xFF00) >> 8;
|
8587
|
|
- bluecell_Currdatastatus.DLI_FRBT_Atten4_L =(FRBT_DL_Atten[DET_Alarm_DL4_Index] & 0x00FF);
|
|
8748
|
+ if(bluecell_Currdatastatus.DLI_AGC_ON_OFF == false){ /*AGC ON ONLY*/
|
|
8749
|
+// printf("AGC OFF \r\n");
|
|
8750
|
+ return;
|
8588
|
8751
|
}
|
|
8752
|
+
|
|
8753
|
+ /*Time Cale*/
|
|
8754
|
+ if(bluecell_Currdatastatus.DLI_FRBT_D_Day == 7
|
|
8755
|
+ && StartTimeFRBT_Day[DLI_FRBT_Time_Hour] <= FRBT_Day[DLI_FRBT_Time_Hour]
|
|
8756
|
+ && StartTimeFRBT_Day[DLI_FRBT_Time_Minute] <= FRBT_Day[DLI_FRBT_Time_Minute]
|
|
8757
|
+ && StartTimeFRBT_Day[DLI_FRBT_Time_Second] <= FRBT_Day[DLI_FRBT_Time_Second]
|
|
8758
|
+ && bluecell_Currdatastatus.DLI_FRBT_Status == FRBT_TRACKING)
|
|
8759
|
+ {
|
|
8760
|
+ bluecell_Currdatastatus.DLI_FRBT_Status = FRBT_RUNNING;
|
|
8761
|
+ printf("FRBT Running Start \r\n");
|
|
8762
|
+ }
|
|
8763
|
+
|
|
8764
|
+ if(bluecell_Currdatastatus.DLI_FRBT_Status == FRBT_TRACKING){
|
|
8765
|
+ FRBT_Tracking_Package(DET_Alarm_DL1_Index,&bluecell_Currdatastatus.DLI_FRBT_Atten1_H,&bluecell_Currdatastatus.ATT_DL1_H,bluecell_Currdatastatus.ATT_DL1_PATH);
|
|
8766
|
+ FRBT_Tracking_Package(DET_Alarm_DL2_Index,&bluecell_Currdatastatus.DLI_FRBT_Atten2_H,&bluecell_Currdatastatus.ATT_DL2_H,bluecell_Currdatastatus.ATT_DL2_PATH);
|
|
8767
|
+ FRBT_Tracking_Package(DET_Alarm_DL3_Index,&bluecell_Currdatastatus.DLI_FRBT_Atten3_H,&bluecell_Currdatastatus.ATT_DL3_H,bluecell_Currdatastatus.ATT_DL3_PATH);
|
|
8768
|
+ FRBT_Tracking_Package(DET_Alarm_DL4_Index,&bluecell_Currdatastatus.DLI_FRBT_Atten4_H,&bluecell_Currdatastatus.ATT_DL4_H,bluecell_Currdatastatus.ATT_DL4_PATH);
|
|
8769
|
+// printf("Tracking ... \r\n");
|
|
8770
|
+ }
|
|
8771
|
+// else if(bluecell_Currdatastatus.DLI_FRBT_Status == FRBT_RUNNING){
|
|
8772
|
+// FRBT_Running_Package(DET_Alarm_DL1_Index,&bluecell_Currdatastatus.DLI_FRBT_Atten1_H,&bluecell_Currdatastatus.ATT_DL1_H);
|
|
8773
|
+// FRBT_Running_Package(DET_Alarm_DL2_Index,&bluecell_Currdatastatus.DLI_FRBT_Atten2_H,&bluecell_Currdatastatus.ATT_DL2_H);
|
|
8774
|
+// FRBT_Running_Package(DET_Alarm_DL3_Index,&bluecell_Currdatastatus.DLI_FRBT_Atten3_H,&bluecell_Currdatastatus.ATT_DL3_H);
|
|
8775
|
+// FRBT_Running_Package(DET_Alarm_DL4_Index,&bluecell_Currdatastatus.DLI_FRBT_Atten4_H,&bluecell_Currdatastatus.ATT_DL4_H);
|
|
8776
|
+//
|
|
8777
|
+//
|
|
8778
|
+// }
|
8589
|
8779
|
}
|
8590
|
8780
|
void Alarm_Check(){
|
8591
|
8781
|
// double temp = 0;
|