Bläddra i källkod

MBIC Version 01.43

FRBT IDLE 상태일 때 Atten 제어 되도록 수정.
UL ALC Atten의 범위 적용Path#0이 아닌 모든 패스에 적용 하도록 수정
PYJ 4 år sedan
förälder
incheckning
9cc7ab8fd4
2 ändrade filer med 37 tillägg och 18 borttagningar
  1. 2 2
      .settings/language.settings.xml
  2. 35 16
      Bluecell_Src/Bluecell_operate.c

+ 2 - 2
.settings/language.settings.xml

@@ -4,7 +4,7 @@
4 4
 		<extension point="org.eclipse.cdt.core.LanguageSettingsProvider">
5 5
 			<provider copy-of="extension" id="org.eclipse.cdt.ui.UserLanguageSettingsProvider"/>
6 6
 			<provider-reference id="org.eclipse.cdt.managedbuilder.core.MBSLanguageSettingsProvider" ref="shared-provider"/>
7
-			<provider class="com.atollic.truestudio.mbs.GCCSpecsDetectorAtollicArm" console="false" env-hash="1726537617709614172" id="com.atollic.truestudio.mbs.provider" keep-relative-paths="false" name="Atollic ARM Tools Language Settings" parameter="${COMMAND} -E -P -v -dD &quot;${INPUTS}&quot;" prefer-non-shared="true">
7
+			<provider class="com.atollic.truestudio.mbs.GCCSpecsDetectorAtollicArm" console="false" env-hash="-603886259554499058" id="com.atollic.truestudio.mbs.provider" keep-relative-paths="false" name="Atollic ARM Tools Language Settings" parameter="${COMMAND} -E -P -v -dD &quot;${INPUTS}&quot;" prefer-non-shared="true">
8 8
 				<language-scope id="org.eclipse.cdt.core.gcc"/>
9 9
 				<language-scope id="org.eclipse.cdt.core.g++"/>
10 10
 			</provider>
@@ -14,7 +14,7 @@
14 14
 		<extension point="org.eclipse.cdt.core.LanguageSettingsProvider">
15 15
 			<provider copy-of="extension" id="org.eclipse.cdt.ui.UserLanguageSettingsProvider"/>
16 16
 			<provider-reference id="org.eclipse.cdt.managedbuilder.core.MBSLanguageSettingsProvider" ref="shared-provider"/>
17
-			<provider class="com.atollic.truestudio.mbs.GCCSpecsDetectorAtollicArm" console="false" env-hash="1726537617709614172" id="com.atollic.truestudio.mbs.provider" keep-relative-paths="false" name="Atollic ARM Tools Language Settings" parameter="${COMMAND} -E -P -v -dD &quot;${INPUTS}&quot;" prefer-non-shared="true">
17
+			<provider class="com.atollic.truestudio.mbs.GCCSpecsDetectorAtollicArm" console="false" env-hash="-603886259554499058" id="com.atollic.truestudio.mbs.provider" keep-relative-paths="false" name="Atollic ARM Tools Language Settings" parameter="${COMMAND} -E -P -v -dD &quot;${INPUTS}&quot;" prefer-non-shared="true">
18 18
 				<language-scope id="org.eclipse.cdt.core.gcc"/>
19 19
 				<language-scope id="org.eclipse.cdt.core.g++"/>
20 20
 			</provider>

+ 35 - 16
Bluecell_Src/Bluecell_operate.c

@@ -5378,6 +5378,8 @@ bool MBIC_Operate(uint8_t* data){
5378 5378
     int16_t Tmpdata = 0;
5379 5379
     int16_t Tmpdata2 = 0;    
5380 5380
 	int16_t tempdata = 0;
5381
+    uint8_t* UL_Atten;
5382
+    uint8_t* ALC_Atten;
5381 5383
     /*Day Save*/
5382 5384
     TimeSetting(&data[MBIC_TIME_0]);
5383 5385
     
@@ -5627,7 +5629,7 @@ bool MBIC_Operate(uint8_t* data){
5627 5629
                 if(bluecell_Currdatastatus.SelfTest == true || bluecell_Currdatastatus.DLI_FRBT_Status == FRBT_RUNNING)break;
5628 5630
                 tempdata = bluecell_Currdatastatus.DLI_FRBT_Atten1_H << 8 | bluecell_Currdatastatus.DLI_FRBT_Atten1_L;
5629 5631
                 Tmpdata2 = data[MBIC_PAYLOADSTART + 3] << 8 | data[MBIC_PAYLOADSTART + 4]; 
5630
-                if(tempdata < Tmpdata2){
5632
+                if(tempdata < Tmpdata2 && bluecell_Currdatastatus.DLI_FRBT_Status == FRBT_TRACKING){
5631 5633
                     break;
5632 5634
                 }
5633 5635
 //                printf("DLI Gain Setting Complete: %d \r\n",Tmpdata2);
@@ -5643,7 +5645,7 @@ bool MBIC_Operate(uint8_t* data){
5643 5645
                 if(bluecell_Currdatastatus.SelfTest == true || bluecell_Currdatastatus.DLI_FRBT_Status == FRBT_RUNNING)break;
5644 5646
                 tempdata = bluecell_Currdatastatus.DLI_FRBT_Atten2_H << 8 | bluecell_Currdatastatus.DLI_FRBT_Atten2_L;
5645 5647
                 Tmpdata2 = data[MBIC_PAYLOADSTART + 3] << 8 | data[MBIC_PAYLOADSTART + 4]; 
5646
-                if(tempdata < Tmpdata2){
5648
+                if(tempdata < Tmpdata2 && bluecell_Currdatastatus.DLI_FRBT_Status == FRBT_TRACKING){
5647 5649
                     break;
5648 5650
                 }                
5649 5651
                 bluecell_Currdatastatus.ATT_DL2_H = data[MBIC_PAYLOADSTART + 3]; 
@@ -5658,7 +5660,7 @@ bool MBIC_Operate(uint8_t* data){
5658 5660
                 if(bluecell_Currdatastatus.SelfTest == true || bluecell_Currdatastatus.DLI_FRBT_Status == FRBT_RUNNING)break;
5659 5661
                 tempdata = bluecell_Currdatastatus.DLI_FRBT_Atten3_H << 8 | bluecell_Currdatastatus.DLI_FRBT_Atten3_L;
5660 5662
                 Tmpdata2 = data[MBIC_PAYLOADSTART + 3] << 8 | data[MBIC_PAYLOADSTART + 4]; 
5661
-                if(tempdata < Tmpdata2){
5663
+                if(tempdata < Tmpdata2 && bluecell_Currdatastatus.DLI_FRBT_Status == FRBT_TRACKING){
5662 5664
                     break;
5663 5665
                 }                
5664 5666
                 bluecell_Currdatastatus.ATT_DL3_H = data[MBIC_PAYLOADSTART + 3]; 
@@ -5671,7 +5673,7 @@ bool MBIC_Operate(uint8_t* data){
5671 5673
                 if(bluecell_Currdatastatus.SelfTest == true || bluecell_Currdatastatus.DLI_FRBT_Status == FRBT_RUNNING)break;
5672 5674
                 tempdata = bluecell_Currdatastatus.DLI_FRBT_Atten4_H << 8 | bluecell_Currdatastatus.DLI_FRBT_Atten4_L;
5673 5675
                 Tmpdata2 = data[MBIC_PAYLOADSTART + 3] << 8 | data[MBIC_PAYLOADSTART + 4]; 
5674
-                if(tempdata < Tmpdata2){
5676
+                if(tempdata < Tmpdata2 && bluecell_Currdatastatus.DLI_FRBT_Status == FRBT_TRACKING){
5675 5677
                     break;
5676 5678
                 }                
5677 5679
                 bluecell_Currdatastatus.ATT_DL4_H = data[MBIC_PAYLOADSTART + 3]; 
@@ -5924,12 +5926,12 @@ bool MBIC_Operate(uint8_t* data){
5924 5926
                 bluecell_Currdatastatus.ATT_UL2_H = data[MBIC_PAYLOADSTART + 3]; 
5925 5927
                 bluecell_Currdatastatus.ATT_UL2_L = data[MBIC_PAYLOADSTART + 4]; 
5926 5928
 //                if(bluecell_Currdatastatus.ULO_ALC_ON_OFF == true){
5927
-                    Tmpdata = bluecell_Currdatastatus.MBIC_ULO_ALC_Atten1_H << 8 | bluecell_Currdatastatus.MBIC_ULO_ALC_Atten1_L;
5928
-                    Tmpdata2 = bluecell_Currdatastatus.ATT_UL1_H << 8 | bluecell_Currdatastatus.ATT_UL1_L;
5929
+                    Tmpdata = bluecell_Currdatastatus.MBIC_ULO_ALC_Atten2_H << 8 | bluecell_Currdatastatus.MBIC_ULO_ALC_Atten2_L;
5930
+                    Tmpdata2 = bluecell_Currdatastatus.ATT_UL2_H << 8 | bluecell_Currdatastatus.ATT_UL2_L;
5929 5931
                     if(Tmpdata + Tmpdata2 <= -200){
5930 5932
                         Tmpdata2 = -200 + (Tmpdata * -1);
5931
-                        bluecell_Currdatastatus.ATT_UL1_H = ((Tmpdata2 & 0xFF00) >> 8);
5932
-                        bluecell_Currdatastatus.ATT_UL1_L = Tmpdata2 & 0x00FF;                    
5933
+                        bluecell_Currdatastatus.ATT_UL2_H = ((Tmpdata2 & 0xFF00) >> 8);
5934
+                        bluecell_Currdatastatus.ATT_UL2_L = Tmpdata2 & 0x00FF;                    
5933 5935
                     }                    
5934 5936
                     UL_ALC_GainAttenSet[ALC_Alarm_UL2_Index] = true;
5935 5937
                     ALC_Level_Save[ALC_Alarm_UL2_Index] = bluecell_Currdatastatus.ULO_Level2_H << 8 | bluecell_Currdatastatus.ULO_Level2_L;
@@ -5943,12 +5945,12 @@ bool MBIC_Operate(uint8_t* data){
5943 5945
                 bluecell_Currdatastatus.ATT_UL3_H = data[MBIC_PAYLOADSTART + 3]; 
5944 5946
                 bluecell_Currdatastatus.ATT_UL3_L = data[MBIC_PAYLOADSTART + 4]; 
5945 5947
 //                if(bluecell_Currdatastatus.ULO_ALC_ON_OFF == true){
5946
-                    Tmpdata = bluecell_Currdatastatus.MBIC_ULO_ALC_Atten1_H << 8 | bluecell_Currdatastatus.MBIC_ULO_ALC_Atten1_L;
5947
-                    Tmpdata2 = bluecell_Currdatastatus.ATT_UL1_H << 8 | bluecell_Currdatastatus.ATT_UL1_L;
5948
+                    Tmpdata = bluecell_Currdatastatus.MBIC_ULO_ALC_Atten3_H << 8 | bluecell_Currdatastatus.MBIC_ULO_ALC_Atten3_L;
5949
+                    Tmpdata2 = bluecell_Currdatastatus.ATT_UL3_H << 8 | bluecell_Currdatastatus.ATT_UL3_L;
5948 5950
                     if(Tmpdata + Tmpdata2 <= -200){
5949 5951
                         Tmpdata2 = -200 + (Tmpdata * -1);
5950
-                        bluecell_Currdatastatus.ATT_UL1_H = ((Tmpdata2 & 0xFF00) >> 8);
5951
-                        bluecell_Currdatastatus.ATT_UL1_L = Tmpdata2 & 0x00FF;                    
5952
+                        bluecell_Currdatastatus.ATT_UL3_H = ((Tmpdata2 & 0xFF00) >> 8);
5953
+                        bluecell_Currdatastatus.ATT_UL3_L = Tmpdata2 & 0x00FF;                    
5952 5954
                     }                    
5953 5955
                     UL_ALC_GainAttenSet[ALC_Alarm_UL3_Index] = true;
5954 5956
                     ALC_Level_Save[ALC_Alarm_UL3_Index] = bluecell_Currdatastatus.ULO_Level3_H << 8 | bluecell_Currdatastatus.ULO_Level3_L;
@@ -5962,12 +5964,12 @@ bool MBIC_Operate(uint8_t* data){
5962 5964
                 bluecell_Currdatastatus.ATT_UL4_H = data[MBIC_PAYLOADSTART + 3]; 
5963 5965
                 bluecell_Currdatastatus.ATT_UL4_L = data[MBIC_PAYLOADSTART + 4]; 
5964 5966
 //                if(bluecell_Currdatastatus.ULO_ALC_ON_OFF == true){
5965
-                    Tmpdata = bluecell_Currdatastatus.MBIC_ULO_ALC_Atten1_H << 8 | bluecell_Currdatastatus.MBIC_ULO_ALC_Atten1_L;
5966
-                    Tmpdata2 = bluecell_Currdatastatus.ATT_UL1_H << 8 | bluecell_Currdatastatus.ATT_UL1_L;
5967
+                    Tmpdata = bluecell_Currdatastatus.MBIC_ULO_ALC_Atten4_H << 8 | bluecell_Currdatastatus.MBIC_ULO_ALC_Atten4_L;
5968
+                    Tmpdata2 = bluecell_Currdatastatus.ATT_UL4_H << 8 | bluecell_Currdatastatus.ATT_UL4_L;
5967 5969
                     if(Tmpdata + Tmpdata2 <= -200){
5968 5970
                         Tmpdata2 = -200 + (Tmpdata * -1);
5969
-                        bluecell_Currdatastatus.ATT_UL1_H = ((Tmpdata2 & 0xFF00) >> 8);
5970
-                        bluecell_Currdatastatus.ATT_UL1_L = Tmpdata2 & 0x00FF;                    
5971
+                        bluecell_Currdatastatus.ATT_UL4_H = ((Tmpdata2 & 0xFF00) >> 8);
5972
+                        bluecell_Currdatastatus.ATT_UL4_L = Tmpdata2 & 0x00FF;                    
5971 5973
                     }                    
5972 5974
                     UL_ALC_GainAttenSet[ALC_Alarm_UL4_Index] = true;
5973 5975
                     ALC_Level_Save[ALC_Alarm_UL4_Index] = bluecell_Currdatastatus.ULO_Level4_H << 8 | bluecell_Currdatastatus.ULO_Level4_L  ;                      
@@ -6075,6 +6077,7 @@ bool MBIC_Operate(uint8_t* data){
6075 6077
 			    bluecell_Currdatastatus.ULO_Shutdown_Threshold_L = ((tempdata & 0x00FF));    
6076 6078
                 break;
6077 6079
             case ULO_ALC_Atten:
6080
+         
6078 6081
                 bluecell_Currdatastatus.MBIC_ULO_ALC_Atten1_H = data[MBIC_PAYLOADSTART + 3]; 
6079 6082
                 bluecell_Currdatastatus.MBIC_ULO_ALC_Atten1_L = data[MBIC_PAYLOADSTART + 4]; 
6080 6083
                 bluecell_Currdatastatus.MBIC_ULO_ALC_Atten2_H = data[MBIC_PAYLOADSTART + 5]; 
@@ -6083,6 +6086,22 @@ bool MBIC_Operate(uint8_t* data){
6083 6086
                 bluecell_Currdatastatus.MBIC_ULO_ALC_Atten3_L = data[MBIC_PAYLOADSTART + 8];                 
6084 6087
                 bluecell_Currdatastatus.MBIC_ULO_ALC_Atten4_H = data[MBIC_PAYLOADSTART + 9]; 
6085 6088
                 bluecell_Currdatastatus.MBIC_ULO_ALC_Atten4_L = data[MBIC_PAYLOADSTART + 10];  
6089
+
6090
+
6091
+
6092
+                ALC_Atten = &bluecell_Currdatastatus.MBIC_ULO_ALC_Atten1_H;
6093
+                UL_Atten = &bluecell_Currdatastatus.ATT_UL1_H;
6094
+                for(int aa = 0; aa < 4; aa++){
6095
+                    Tmpdata = ALC_Atten[aa * 2] << 8 | ALC_Atten[aa * 2 + 1];
6096
+                    Tmpdata2 =UL_Atten[aa * 2] << 8 | UL_Atten[aa * 2 + 1];
6097
+//                    printf("%d : ALC : %d / Atten : %d \r\n",aa,Tmpdata,Tmpdata2);
6098
+                    if(Tmpdata + Tmpdata2 <= -200){
6099
+                        
6100
+                        Tmpdata = -200 + (Tmpdata2 * -1);
6101
+                        ALC_Atten[aa * 2] = ((Tmpdata & 0xFF00) >> 8);
6102
+                        ALC_Atten[aa * 2 + 1] = Tmpdata & 0x00FF;          
6103
+                    }  
6104
+                }
6086 6105
                 CompareAttenData(bluecell_Currdatastatus,bluecell_Prevdatastatus);
6087 6106
                 break;
6088 6107
         }