Pārlūkot izejas kodu

VGS_TEST_1차 수정

YJ 5 gadi atpakaļ
vecāks
revīzija
f11e5f6bff
36 mainītis faili ar 10468 papildinājumiem un 9802 dzēšanām
  1. BIN
      Debug/STM32F103_ATTEN_PLL_Zig.binary
  2. BIN
      Debug/STM32F103_ATTEN_PLL_Zig.elf
  3. 1348 1375
      Debug/STM32F103_ATTEN_PLL_Zig.hex
  4. 7615 7821
      Debug/STM32F103_ATTEN_PLL_Zig.list
  5. 555 557
      Debug/STM32F103_ATTEN_PLL_Zig.map
  6. BIN
      Debug/Src/AD5318.o
  7. 1 1
      Debug/Src/AD5318.su
  8. BIN
      Debug/Src/main.o
  9. 2 2
      Debug/Src/zig_operate.su
  10. 106 26
      Src/AD5318.c
  11. 1 1
      Src/main.c
  12. 38 19
      Src/zig_operate.c
  13. 788 0
      insight/STM32F103_ATTEN_PLL_Zig.si4project/Backup/zig_operate(328).c
  14. 7 0
      insight/STM32F103_ATTEN_PLL_Zig.si4project/STM32F103_ATTEN_PLL_Zig.bookmarks.xml
  15. BIN
      insight/STM32F103_ATTEN_PLL_Zig.si4project/STM32F103_ATTEN_PLL_Zig.siwork
  16. 7 0
      insight/STM32F103_ATTEN_PLL_Zig.si4project/STM32F103_ATTEN_PLL_Zig.snippets.xml
  17. BIN
      insight/STM32F103_ATTEN_PLL_Zig.si4project/cache/parse/.._Drivers_CMSIS_Device_ST_STM32F1xx_Include_stm32f103xe.h.sisc
  18. BIN
      insight/STM32F103_ATTEN_PLL_Zig.si4project/cache/parse/.._Drivers_CMSIS_Include_core_cm3.h.sisc
  19. BIN
      insight/STM32F103_ATTEN_PLL_Zig.si4project/cache/parse/.._Drivers_CMSIS_Include_core_cm4.h.sisc
  20. BIN
      insight/STM32F103_ATTEN_PLL_Zig.si4project/cache/parse/.._Drivers_CMSIS_Include_core_cm7.h.sisc
  21. BIN
      insight/STM32F103_ATTEN_PLL_Zig.si4project/cache/parse/.._Drivers_CMSIS_Include_core_sc300.h.sisc
  22. BIN
      insight/STM32F103_ATTEN_PLL_Zig.si4project/cache/parse/.._Drivers_STM32F1xx_HAL_Driver_Inc_Legacy_stm32_hal_legacy.h.sisc
  23. BIN
      insight/STM32F103_ATTEN_PLL_Zig.si4project/cache/parse/.._Drivers_STM32F1xx_HAL_Driver_Inc_stm32f1xx_hal_gpio.h.sisc
  24. BIN
      insight/STM32F103_ATTEN_PLL_Zig.si4project/cache/parse/.._Drivers_STM32F1xx_HAL_Driver_Src_stm32f1xx_hal_gpio.c.sisc
  25. BIN
      insight/STM32F103_ATTEN_PLL_Zig.si4project/cache/parse/.._Inc_AD5318.h.sisc
  26. BIN
      insight/STM32F103_ATTEN_PLL_Zig.si4project/cache/parse/.._Inc_PE43711.h.sisc
  27. BIN
      insight/STM32F103_ATTEN_PLL_Zig.si4project/cache/parse/.._Inc_adf4153.h.sisc
  28. BIN
      insight/STM32F103_ATTEN_PLL_Zig.si4project/cache/parse/.._Inc_main.h.sisc
  29. BIN
      insight/STM32F103_ATTEN_PLL_Zig.si4project/cache/parse/.._Inc_pll_4113.h.sisc
  30. BIN
      insight/STM32F103_ATTEN_PLL_Zig.si4project/cache/parse/.._Inc_zig_operate.h.sisc
  31. BIN
      insight/STM32F103_ATTEN_PLL_Zig.si4project/cache/parse/.._Src_AD5318.c.sisc
  32. BIN
      insight/STM32F103_ATTEN_PLL_Zig.si4project/cache/parse/.._Src_PE43711.c.sisc
  33. BIN
      insight/STM32F103_ATTEN_PLL_Zig.si4project/cache/parse/.._Src_adf4153.c.sisc
  34. BIN
      insight/STM32F103_ATTEN_PLL_Zig.si4project/cache/parse/.._Src_includes.c.sisc
  35. BIN
      insight/STM32F103_ATTEN_PLL_Zig.si4project/cache/parse/.._Src_main.c.sisc
  36. BIN
      insight/STM32F103_ATTEN_PLL_Zig.si4project/cache/parse/.._Src_zig_operate.c.sisc

BIN
Debug/STM32F103_ATTEN_PLL_Zig.binary


BIN
Debug/STM32F103_ATTEN_PLL_Zig.elf


Failā izmaiņas netiks attēlotas, jo tās ir par lielu
+ 1348 - 1375
Debug/STM32F103_ATTEN_PLL_Zig.hex


Failā izmaiņas netiks attēlotas, jo tās ir par lielu
+ 7615 - 7821
Debug/STM32F103_ATTEN_PLL_Zig.list


Failā izmaiņas netiks attēlotas, jo tās ir par lielu
+ 555 - 557
Debug/STM32F103_ATTEN_PLL_Zig.map


BIN
Debug/Src/AD5318.o


+ 1 - 1
Debug/Src/AD5318.su

@@ -1,2 +1,2 @@
1
-AD5318.c:25:6:AD5318_Ctrl	16	static
1
+AD5318.c:30:6:AD5318_Ctrl	16	static
2 2
 AD5318.c:10:7:AD5318_Initialize	8	static

BIN
Debug/Src/main.o


+ 2 - 2
Debug/Src/zig_operate.su

@@ -1,5 +1,5 @@
1 1
 zig_operate.c:201:6:RF_Data_Check	8	static
2 2
 zig_operate.c:234:6:RF_Status_Get	8	static
3 3
 zig_operate.c:248:6:RF_Status_Ack	8	static
4
-zig_operate.c:262:6:RF_Operate	184	static
5
-zig_operate.c:719:6:RF_Ctrl_Main	16	static
4
+zig_operate.c:262:6:RF_Operate	176	static
5
+zig_operate.c:738:6:RF_Ctrl_Main	16	static

+ 106 - 26
Src/AD5318.c

@@ -8,41 +8,121 @@
8 8
 
9 9
 extern void Pol_Delay_us(volatile uint32_t microseconds);
10 10
  void AD5318_Initialize(void){
11
-   /* * * *DAC Setting* * * * */
11
+    HAL_Delay(1);
12
+    /* * * *DAC Setting* * * * */
12 13
     AD5318_Ctrl(0x800C);
14
+    HAL_Delay(1);
13 15
     AD5318_Ctrl(0xA000);
16
+    HAL_Delay(1);    
14 17
     /* * * *DAC OPERATE* * * * */
15
-    AD5318_Ctrl(0x0FFF);
16
-    AD5318_Ctrl(0x13FF);
17
-    AD5318_Ctrl(0x24FF);
18
-    AD5318_Ctrl(0x35FF);
19
-    AD5318_Ctrl(0x46FF);
20
-    AD5318_Ctrl(0x57FF);
21
-    AD5318_Ctrl(0x68FF);
22
-    AD5318_Ctrl(0x79FF);
18
+#if 0 // PYJ.2019.10.21_BEGIN -- 
19
+    AD5318_Ctrl(0x0000);
20
+    AD5318_Ctrl(0x1000);
21
+    AD5318_Ctrl(0x2000);
22
+    AD5318_Ctrl(0x3000);
23
+    AD5318_Ctrl(0x4000);
24
+    AD5318_Ctrl(0x5000);
25
+    AD5318_Ctrl(0x6000);
26
+    AD5318_Ctrl(0x7000);
23 27
     HAL_Delay(1);
28
+#endif // PYJ.2019.10.21_END -- 
24 29
  }
25 30
 void AD5318_Ctrl(uint16_t ShiftTarget) {
26 31
     char i; /* serial counter */
27 32
 //    printf("ShiftTarget : %x \r\n",ShiftTarget);
28
-    HAL_GPIO_WritePin(DA_SYNC_GPIO_Port, DA_SYNC_Pin, GPIO_PIN_RESET);    
29
-    for (i=0;i < 16;i++) { /* loop through all 16 data bits */
30
-        HAL_GPIO_WritePin(DA_SCLK_GPIO_Port, DA_SCLK_Pin, GPIO_PIN_SET); /* rise clk line again */
31
-        if (ShiftTarget & 0x8000) HAL_GPIO_WritePin(DA_DIN_GPIO_Port, DA_DIN_Pin, GPIO_PIN_SET);
32
-        else HAL_GPIO_WritePin(DA_DIN_GPIO_Port, DA_DIN_Pin, GPIO_PIN_RESET); /* set data bit */
33
-        HAL_GPIO_WritePin(DA_SCLK_GPIO_Port, DA_SCLK_Pin, GPIO_PIN_RESET); /* lower clock line */
34
-        ShiftTarget <<= 1;
33
+#if 0 // PYJ.2019.11.14_BEGIN -- 
34
+    if(ShiftTarget & 0x1000){
35
+        HAL_GPIO_WritePin(DA_SYNC_GPIO_Port, DA_SYNC_Pin, GPIO_PIN_RESET);    
36
+        for (i=0;i < 16;i++) { /* loop through all 16 data bits */
37
+          HAL_GPIO_WritePin(DA_SCLK_GPIO_Port, DA_SCLK_Pin, GPIO_PIN_SET); /* rise clk line again */
38
+          Pol_Delay_us(10);
39
+          if (ShiftTarget & 0x8000) HAL_GPIO_WritePin(DA_DIN_GPIO_Port, DA_DIN_Pin, GPIO_PIN_SET);
40
+          else HAL_GPIO_WritePin(DA_DIN_GPIO_Port, DA_DIN_Pin, GPIO_PIN_RESET); /* set data bit */
41
+          Pol_Delay_us(10);
42
+          HAL_GPIO_WritePin(DA_SCLK_GPIO_Port, DA_SCLK_Pin, GPIO_PIN_RESET); /* lower clock line */
43
+          ShiftTarget <<= 1;
44
+          Pol_Delay_us(10);
45
+        }
46
+        HAL_GPIO_WritePin(DA_LDAC_GPIO_Port, DA_LDAC_Pin, GPIO_PIN_SET);        
47
+        Pol_Delay_us(10);
48
+        HAL_GPIO_WritePin(DA_LDAC_GPIO_Port, DA_LDAC_Pin, GPIO_PIN_RESET);    
49
+        Pol_Delay_us(10);
50
+        HAL_GPIO_WritePin(DA_SYNC_GPIO_Port, DA_SYNC_Pin, GPIO_PIN_SET);    
51
+        Pol_Delay_us(10);
52
+        HAL_GPIO_WritePin(DA_DIN_GPIO_Port, DA_DIN_Pin, GPIO_PIN_RESET);
53
+        Pol_Delay_us(10);
54
+        HAL_GPIO_WritePin(DA_LDAC_GPIO_Port, DA_LDAC_Pin, GPIO_PIN_SET);            
55
+        Pol_Delay_us(10);
56
+        /* rise DAC SYNC line again */
57
+        HAL_GPIO_WritePin(DA_SYNC_GPIO_Port, DA_SYNC_Pin, GPIO_PIN_RESET);    
58
+        Pol_Delay_us(10);
59
+        HAL_GPIO_WritePin(DA_LDAC_GPIO_Port, DA_LDAC_Pin, GPIO_PIN_RESET);            
60
+        Pol_Delay_us(10);
61
+    }
62
+    else{
63
+        HAL_GPIO_WritePin(DA_SYNC_GPIO_Port, DA_SYNC_Pin, GPIO_PIN_RESET);    
64
+        for (i=0;i < 16;i++) { /* loop through all 16 data bits */
65
+            HAL_GPIO_WritePin(DA_SCLK_GPIO_Port, DA_SCLK_Pin, GPIO_PIN_SET); /* rise clk line again */
66
+            Pol_Delay_us(10);
67
+            if (ShiftTarget & 0x8000) HAL_GPIO_WritePin(DA_DIN_GPIO_Port, DA_DIN_Pin, GPIO_PIN_SET);
68
+            else HAL_GPIO_WritePin(DA_DIN_GPIO_Port, DA_DIN_Pin, GPIO_PIN_RESET); /* set data bit */
69
+            Pol_Delay_us(10);
70
+            HAL_GPIO_WritePin(DA_SCLK_GPIO_Port, DA_SCLK_Pin, GPIO_PIN_RESET); /* lower clock line */
71
+            ShiftTarget <<= 1;
72
+            Pol_Delay_us(10);
73
+        }
74
+        HAL_GPIO_WritePin(DA_LDAC_GPIO_Port, DA_LDAC_Pin, GPIO_PIN_SET);        
75
+        Pol_Delay_us(10);
76
+        HAL_GPIO_WritePin(DA_LDAC_GPIO_Port, DA_LDAC_Pin, GPIO_PIN_RESET);    
77
+        Pol_Delay_us(10);
78
+        HAL_GPIO_WritePin(DA_SYNC_GPIO_Port, DA_SYNC_Pin, GPIO_PIN_SET);    
79
+        Pol_Delay_us(10);
80
+        HAL_GPIO_WritePin(DA_DIN_GPIO_Port, DA_DIN_Pin, GPIO_PIN_RESET);
81
+        Pol_Delay_us(10);
82
+        HAL_GPIO_WritePin(DA_LDAC_GPIO_Port, DA_LDAC_Pin, GPIO_PIN_SET);            
83
+        Pol_Delay_us(10);
84
+        /* rise DAC SYNC line again */
85
+        HAL_GPIO_WritePin(DA_SYNC_GPIO_Port, DA_SYNC_Pin, GPIO_PIN_RESET);    
86
+        Pol_Delay_us(10);
87
+        HAL_GPIO_WritePin(DA_LDAC_GPIO_Port, DA_LDAC_Pin, GPIO_PIN_RESET);            
88
+        Pol_Delay_us(10);
89
+      }
90
+#else
91
+    HAL_GPIO_WritePin(DA_LDAC_GPIO_Port, DA_LDAC_Pin, GPIO_PIN_SET); 
92
+    if(ShiftTarget & 0x1000){
93
+        HAL_GPIO_WritePin(DA_SYNC_GPIO_Port, DA_SYNC_Pin, GPIO_PIN_RESET);    
94
+        for (i=0;i < 16;i++) { /* loop through all 16 data bits */
95
+            if(i <= 2)
96
+                HAL_GPIO_WritePin(DA_SYNC_GPIO_Port, DA_SYNC_Pin, GPIO_PIN_SET);    
97
+            else
98
+                HAL_GPIO_WritePin(DA_SYNC_GPIO_Port, DA_SYNC_Pin, GPIO_PIN_RESET);    
99
+            
100
+          HAL_GPIO_WritePin(DA_SCLK_GPIO_Port, DA_SCLK_Pin, GPIO_PIN_SET); /* rise clk line again */
101
+          Pol_Delay_us(10);
102
+          if (ShiftTarget & 0x8000) HAL_GPIO_WritePin(DA_DIN_GPIO_Port, DA_DIN_Pin, GPIO_PIN_SET);
103
+          else HAL_GPIO_WritePin(DA_DIN_GPIO_Port, DA_DIN_Pin, GPIO_PIN_RESET); /* set data bit */
104
+          Pol_Delay_us(10);
105
+          HAL_GPIO_WritePin(DA_SCLK_GPIO_Port, DA_SCLK_Pin, GPIO_PIN_RESET); /* lower clock line */
106
+          ShiftTarget <<= 1;
107
+          Pol_Delay_us(10);
108
+        }
109
+       
110
+        Pol_Delay_us(10);
111
+        HAL_GPIO_WritePin(DA_LDAC_GPIO_Port, DA_LDAC_Pin, GPIO_PIN_RESET);    
112
+        Pol_Delay_us(10);
113
+        HAL_GPIO_WritePin(DA_SYNC_GPIO_Port, DA_SYNC_Pin, GPIO_PIN_SET);    
114
+        Pol_Delay_us(10);
115
+        HAL_GPIO_WritePin(DA_DIN_GPIO_Port, DA_DIN_Pin, GPIO_PIN_RESET);
116
+        Pol_Delay_us(10);
117
+        /* rise DAC SYNC line again */
118
+        HAL_GPIO_WritePin(DA_SYNC_GPIO_Port, DA_SYNC_Pin, GPIO_PIN_RESET);    
119
+        Pol_Delay_us(10);
120
+        HAL_GPIO_WritePin(DA_LDAC_GPIO_Port, DA_LDAC_Pin, GPIO_PIN_SET);            
121
+        Pol_Delay_us(10);
122
+#endif // PYJ.2019.11.14_END -- 
123
+
124
+
35 125
     }
36
-    HAL_GPIO_WritePin(DA_LDAC_GPIO_Port, DA_LDAC_Pin, GPIO_PIN_SET);        
37
-    Pol_Delay_us(10);
38
-    HAL_GPIO_WritePin(DA_LDAC_GPIO_Port, DA_LDAC_Pin, GPIO_PIN_RESET);    
39
-    HAL_GPIO_WritePin(DA_SYNC_GPIO_Port, DA_SYNC_Pin, GPIO_PIN_SET);    
40
-    HAL_GPIO_WritePin(DA_DIN_GPIO_Port, DA_DIN_Pin, GPIO_PIN_RESET);
41
-    HAL_GPIO_WritePin(DA_LDAC_GPIO_Port, DA_LDAC_Pin, GPIO_PIN_SET);            
42
-    /* rise DAC SYNC line again */
43
-    HAL_GPIO_WritePin(DA_SYNC_GPIO_Port, DA_SYNC_Pin, GPIO_PIN_RESET);    
44
-    HAL_GPIO_WritePin(DA_LDAC_GPIO_Port, DA_LDAC_Pin, GPIO_PIN_RESET);            
45
-    
46 126
 }
47 127
 
48 128
 

+ 1 - 1
Src/main.c

@@ -153,7 +153,7 @@ int main(void)
153 153
   Power_ON_OFF_Initialize();  
154 154
   Path_Init();
155 155
   while(!(HAL_ADCEx_Calibration_Start(&hadc1)==HAL_OK));
156
-  AD5318_Initialize();
156
+//  AD5318_Initialize();
157 157
   Bluecell_Flash_Read(&Flash_Save_data[INDEX_BLUE_HEADER]);
158 158
   ADF4153_Initialize();
159 159
   ADF4113_Initialize();

+ 38 - 19
Src/zig_operate.c

@@ -409,8 +409,8 @@ void RF_Operate(uint8_t* data_buf){
409 409
 #else
410 410
         temp_reg = ADF4153_Freq_Calc(3465500000,ADF4153_40MHzREFIN,ADF4153_2RCOUNTER,ADF4153_CHANNEL_SPACING);
411 411
 #endif // PYJ.2019.08.12_END -- 
412
-//        ADF4153_Module_Ctrl(Pll_3_5_L,temp_reg.N_reg,temp_reg.R_reg,0x13c2,0x3);
413
-      ADF4153_Module_Ctrl(Pll_3_5_L,0x385E48,0x163001,0x1442,3);
412
+        ADF4153_Module_Ctrl(Pll_3_5_L,temp_reg.N_reg,temp_reg.R_reg,0x14C2,0x3);
413
+//      ADF4153_Module_Ctrl(Pll_3_5_L,0x385E48,0x163001,0x1442,3);
414 414
 
415 415
     }
416 416
     if((Prev_data[INDEX_PLL_3_5G_HIGH_H] != data_buf[INDEX_PLL_3_5G_HIGH_H])
@@ -642,20 +642,20 @@ void RF_Operate(uint8_t* data_buf){
642 642
 
643 643
     if((Prev_data[INDEX_DAC_VCtrl_A_H] != data_buf[INDEX_DAC_VCtrl_A_H])
644 644
         ||(Prev_data[INDEX_DAC_VCtrl_A_L] != data_buf[INDEX_DAC_VCtrl_A_L])){
645
-        ADC_Modify = 1;
646
-        Prev_data[INDEX_DAC_VCtrl_A_H] = data_buf[INDEX_DAC_VCtrl_A_H];
645
+        ADC_Modify |= 0x01;
646
+          Prev_data[INDEX_DAC_VCtrl_A_H] = data_buf[INDEX_DAC_VCtrl_A_H];
647 647
         Prev_data[INDEX_DAC_VCtrl_A_L] = data_buf[INDEX_DAC_VCtrl_A_L];
648 648
     }
649 649
     if((Prev_data[INDEX_DAC_VCtrl_B_H] != data_buf[INDEX_DAC_VCtrl_B_H])
650 650
         ||(Prev_data[INDEX_DAC_VCtrl_B_L] != data_buf[INDEX_DAC_VCtrl_B_L])){
651
-        ADC_Modify = 1;
651
+        ADC_Modify |= 0x02;
652 652
         
653 653
         Prev_data[INDEX_DAC_VCtrl_B_H] = data_buf[INDEX_DAC_VCtrl_B_H];
654 654
         Prev_data[INDEX_DAC_VCtrl_B_L] = data_buf[INDEX_DAC_VCtrl_B_L];        
655 655
     }    
656 656
     if((Prev_data[INDEX_DAC_VCtrl_C_H] != data_buf[INDEX_DAC_VCtrl_C_H])
657 657
         ||(Prev_data[INDEX_DAC_VCtrl_C_L] != data_buf[INDEX_DAC_VCtrl_C_L])){
658
-        ADC_Modify = 1;
658
+        ADC_Modify |= 0x04;
659 659
 //        printf("Prev_data[INDEX_DAC_VCtrl_C_H] : %x \r\n",Prev_data[INDEX_DAC_VCtrl_C_H]);
660 660
 //        printf("Prev_data[INDEX_DAC_VCtrl_C_L] : %x \r\n",Prev_data[INDEX_DAC_VCtrl_C_L]);
661 661
 
@@ -664,32 +664,32 @@ void RF_Operate(uint8_t* data_buf){
664 664
     }
665 665
     if((Prev_data[INDEX_DAC_VCtrl_D_H] != data_buf[INDEX_DAC_VCtrl_D_H])
666 666
         ||(Prev_data[INDEX_DAC_VCtrl_D_L] != data_buf[INDEX_DAC_VCtrl_D_L])){
667
-        ADC_Modify = 1;
667
+        ADC_Modify |= 0x08;
668 668
         Prev_data[INDEX_DAC_VCtrl_D_H] = data_buf[INDEX_DAC_VCtrl_D_H];
669 669
         Prev_data[INDEX_DAC_VCtrl_D_L] = data_buf[INDEX_DAC_VCtrl_D_L];
670 670
     }
671 671
     if((Prev_data[INDEX_DAC_VCtrl_E_H] != data_buf[INDEX_DAC_VCtrl_E_H])
672 672
         ||(Prev_data[INDEX_DAC_VCtrl_E_L] != data_buf[INDEX_DAC_VCtrl_E_L])){
673
-        ADC_Modify = 1;
673
+        ADC_Modify |= 0x10;
674 674
 
675 675
         Prev_data[INDEX_DAC_VCtrl_E_H] = data_buf[INDEX_DAC_VCtrl_E_H];
676 676
         Prev_data[INDEX_DAC_VCtrl_E_L] = data_buf[INDEX_DAC_VCtrl_E_L];        
677 677
     }
678 678
     if((Prev_data[INDEX_DAC_VCtrl_F_H] != data_buf[INDEX_DAC_VCtrl_F_H])
679 679
         ||(Prev_data[INDEX_DAC_VCtrl_F_L] != data_buf[INDEX_DAC_VCtrl_F_L])){
680
-        ADC_Modify = 1;
680
+        ADC_Modify |= 0x20;
681 681
         Prev_data[INDEX_DAC_VCtrl_F_H] = data_buf[INDEX_DAC_VCtrl_F_H];
682 682
         Prev_data[INDEX_DAC_VCtrl_F_L] = data_buf[INDEX_DAC_VCtrl_F_L];        
683 683
     }
684 684
     if((Prev_data[INDEX_DAC_VCtrl_G_H] != data_buf[INDEX_DAC_VCtrl_G_H])
685 685
         ||(Prev_data[INDEX_DAC_VCtrl_G_L] != data_buf[INDEX_DAC_VCtrl_G_L])){
686
-        ADC_Modify = 1;
686
+        ADC_Modify |= 0x40;
687 687
         Prev_data[INDEX_DAC_VCtrl_G_H] = data_buf[INDEX_DAC_VCtrl_G_H];
688 688
         Prev_data[INDEX_DAC_VCtrl_G_L] = data_buf[INDEX_DAC_VCtrl_G_L];        
689 689
     }    
690 690
     if((Prev_data[INDEX_DAC_VCtrl_H_H] != data_buf[INDEX_DAC_VCtrl_H_H])
691 691
         ||(Prev_data[INDEX_DAC_VCtrl_H_L] != data_buf[INDEX_DAC_VCtrl_H_L])){
692
-        ADC_Modify = 1;
692
+        ADC_Modify |= 0x80;
693 693
         Prev_data[INDEX_DAC_VCtrl_H_H] = data_buf[INDEX_DAC_VCtrl_H_H];
694 694
         Prev_data[INDEX_DAC_VCtrl_H_L] = data_buf[INDEX_DAC_VCtrl_H_L];        
695 695
     }
@@ -703,14 +703,33 @@ void RF_Operate(uint8_t* data_buf){
703 703
 //        AD5318_Ctrl(0x800C);
704 704
 //        AD5318_Ctrl(0xA000);
705 705
 //        printf("DAC Change\r\n");
706
-        AD5318_Ctrl((Prev_data[INDEX_DAC_VCtrl_A_H] << 8 | Prev_data[INDEX_DAC_VCtrl_A_L]));    
707
-        AD5318_Ctrl((Prev_data[INDEX_DAC_VCtrl_B_H] << 8 | Prev_data[INDEX_DAC_VCtrl_B_L]));    
708
-        AD5318_Ctrl((Prev_data[INDEX_DAC_VCtrl_C_H] << 8 | Prev_data[INDEX_DAC_VCtrl_C_L]));
709
-        AD5318_Ctrl((Prev_data[INDEX_DAC_VCtrl_D_H] << 8 | Prev_data[INDEX_DAC_VCtrl_D_L]));
710
-        AD5318_Ctrl((Prev_data[INDEX_DAC_VCtrl_E_H] << 8 | Prev_data[INDEX_DAC_VCtrl_E_L]));    
711
-        AD5318_Ctrl((Prev_data[INDEX_DAC_VCtrl_F_H] << 8 | Prev_data[INDEX_DAC_VCtrl_F_L]));
712
-        AD5318_Ctrl((Prev_data[INDEX_DAC_VCtrl_G_H] << 8 | Prev_data[INDEX_DAC_VCtrl_G_L]));
713
-        AD5318_Ctrl((Prev_data[INDEX_DAC_VCtrl_H_H] << 8 | Prev_data[INDEX_DAC_VCtrl_H_L]));
706
+#if 0 // PYJ.2019.10.21_BEGIN -- 
707
+        if(ADC_Modify & 0x01){
708
+          AD5318_Ctrl((Prev_data[INDEX_DAC_VCtrl_A_H] << 8 | Prev_data[INDEX_DAC_VCtrl_A_L]));    
709
+        }
710
+        if(ADC_Modify & 0x02){
711
+          AD5318_Ctrl((Prev_data[INDEX_DAC_VCtrl_B_H] << 8 | Prev_data[INDEX_DAC_VCtrl_B_L]));    
712
+        }
713
+        if(ADC_Modify & 0x04){
714
+          AD5318_Ctrl((Prev_data[INDEX_DAC_VCtrl_C_H] << 8 | Prev_data[INDEX_DAC_VCtrl_C_L]));
715
+        }
716
+        if(ADC_Modify & 0x08){
717
+          AD5318_Ctrl((Prev_data[INDEX_DAC_VCtrl_D_H] << 8 | Prev_data[INDEX_DAC_VCtrl_D_L]));
718
+        }
719
+        if(ADC_Modify & 0x10){
720
+          AD5318_Ctrl((Prev_data[INDEX_DAC_VCtrl_E_H] << 8 | Prev_data[INDEX_DAC_VCtrl_E_L]));    
721
+        }
722
+        if(ADC_Modify & 0x20){
723
+          AD5318_Ctrl((Prev_data[INDEX_DAC_VCtrl_F_H] << 8 | Prev_data[INDEX_DAC_VCtrl_F_L]));
724
+        }
725
+        if(ADC_Modify & 0x40){
726
+          AD5318_Ctrl((Prev_data[INDEX_DAC_VCtrl_G_H] << 8 | Prev_data[INDEX_DAC_VCtrl_G_L]));
727
+        }
728
+        if(ADC_Modify & 0x80){
729
+          AD5318_Ctrl((Prev_data[INDEX_DAC_VCtrl_H_H] << 8 | Prev_data[INDEX_DAC_VCtrl_H_L]));
730
+        }
731
+#endif // PYJ.2019.10.21_END -- 
732
+                      
714 733
     }
715 734
     
716 735
 }

+ 788 - 0
insight/STM32F103_ATTEN_PLL_Zig.si4project/Backup/zig_operate(328).c

@@ -0,0 +1,788 @@
1
+/*
2
+ * zig_operate.c
3
+ *
4
+ *  Created on: 2019. 7. 26.
5
+ *      Author: parkyj
6
+ */
7
+#include "zig_operate.h"
8
+#include "main.h"
9
+#include "pll_4113.h"
10
+#include "ADF4153.h"
11
+#include "PE43711.h"
12
+#include "BDA4601.h"
13
+#include "uart.h"
14
+#include "CRC16.h"
15
+extern void AD5318_Ctrl(uint16_t ShiftTarget) ;
16
+extern etError STH30_CheckCrc(uint8_t *data, uint8_t nbrOfBytes, uint8_t checksum);
17
+extern void ADF4153_Module_Ctrl(PLL_Setting_st pll,uint32_t R0,uint32_t R1,uint32_t R2,uint32_t R3);
18
+extern bool Bluecell_Flash_Read(uint8_t* data);
19
+extern void PE43711_ALL_atten_ctrl(ALL_PE43711_st ATT);
20
+extern void Power_ON_OFF_Ctrl(uint8_t type,uint8_t cmd);
21
+extern uint8_t Bluecell_Flash_Write(uint8_t* data);
22
+uint8_t Prev_data[INDEX_BLUE_EOF + 1];
23
+uint8_t Flash_Save_data[INDEX_BLUE_EOF + 1];
24
+
25
+
26
+/* * * * * * * #define Struct* * * * * * * */
27
+PLL_Setting_st Pll_1_8GHz_DL = {
28
+  PLL_CLK_GPIO_Port,
29
+  PLL_CLK_Pin,
30
+  PLL_DATA_GPIO_Port,
31
+  PLL_DATA_Pin,
32
+  PLL_EN_1_8G_DL_GPIO_Port,    
33
+  PLL_EN_1_8G_DL_Pin,
34
+};
35
+PLL_Setting_st Pll_1_8GHz_UL = {
36
+    PLL_CLK_GPIO_Port,
37
+    PLL_CLK_Pin,
38
+    PLL_DATA_GPIO_Port,
39
+    PLL_DATA_Pin,
40
+    PLL_EN_1_8G_UL_GPIO_Port,    
41
+    PLL_EN_1_8G_UL_Pin,
42
+};
43
+PLL_Setting_st Pll_2_1GHz_DL = {
44
+    PLL_CLK_GPIO_Port,
45
+    PLL_CLK_Pin,
46
+    PLL_DATA_GPIO_Port,
47
+    PLL_DATA_Pin,
48
+    PLL_EN_2_1G_DL_GPIO_Port,    
49
+    PLL_EN_2_1G_DL_Pin,
50
+};
51
+PLL_Setting_st Pll_2_1GHz_UL = {
52
+    PLL_CLK_GPIO_Port,
53
+    PLL_CLK_Pin,
54
+    PLL_DATA_GPIO_Port,
55
+    PLL_DATA_Pin,
56
+    PLL_EN_2_1G_UL_GPIO_Port,    
57
+    PLL_EN_2_1G_UL_Pin,
58
+};
59
+/* * * * * * * * NOT YET * * * * * * * */
60
+PLL_Setting_st Pll_3_5GHz_DL = {
61
+    ATT_CLK_3_5G_GPIO_Port,
62
+    ATT_EN_3_5G_Pin,
63
+    PLL_DATA_GPIO_Port,
64
+    PLL_DATA_Pin,
65
+    PLL_EN_2_1G_DL_GPIO_Port,    
66
+    PLL_EN_2_1G_DL_Pin,
67
+};
68
+PLL_Setting_st Pll_3_5GHz_UL = {
69
+    PLL_CLK_GPIO_Port,
70
+    PLL_CLK_Pin,
71
+    PLL_DATA_GPIO_Port,
72
+    PLL_DATA_Pin,
73
+    PLL_EN_2_1G_UL_GPIO_Port,    
74
+    PLL_EN_2_1G_UL_Pin,
75
+};
76
+/* * * * * * * * ATTEN * * * * * * * */    
77
+ATTEN_Setting_st Atten_1_8Ghz_DL1 ={
78
+    ATT_CLK_GPIO_Port,
79
+    ATT_CLK_Pin,
80
+    ATT_DATA_GPIO_Port,
81
+    ATT_DATA_Pin,
82
+    ATT_EN_1_8G_DL1_GPIO_Port,    
83
+    ATT_EN_1_8G_DL1_Pin,
84
+    PATH_EN_1_8G_DL_GPIO_Port,
85
+    PATH_EN_1_8G_DL_Pin,
86
+};
87
+
88
+ATTEN_Setting_st Atten_1_8Ghz_DL2 ={
89
+    ATT_CLK_GPIO_Port,
90
+    ATT_CLK_Pin,
91
+    ATT_DATA_GPIO_Port,
92
+    ATT_DATA_Pin,
93
+    ATT_EN_1_8G_DL2_GPIO_Port,    
94
+    ATT_EN_1_8G_DL2_Pin,
95
+    PATH_EN_1_8G_DL_GPIO_Port,
96
+    PATH_EN_1_8G_DL_Pin,    
97
+};
98
+ATTEN_Setting_st Atten_1_8Ghz_UL1 ={
99
+    ATT_CLK_GPIO_Port,
100
+    ATT_CLK_Pin,
101
+    ATT_DATA_GPIO_Port,
102
+    ATT_DATA_Pin,
103
+    ATT_EN_1_8G_UL1_GPIO_Port,    
104
+    ATT_EN_1_8G_UL1_Pin,
105
+    PATH_EN_1_8G_UL_GPIO_Port,
106
+    PATH_EN_1_8G_UL_Pin,      
107
+};
108
+ATTEN_Setting_st Atten_1_8Ghz_UL2 ={
109
+    ATT_CLK_GPIO_Port,
110
+    ATT_CLK_Pin,
111
+    ATT_DATA_GPIO_Port,
112
+    ATT_DATA_Pin,
113
+    ATT_EN_1_8G_UL2_GPIO_Port,    
114
+    ATT_EN_1_8G_UL2_Pin,
115
+    PATH_EN_1_8G_UL_GPIO_Port,
116
+    PATH_EN_1_8G_UL_Pin,    
117
+};
118
+ATTEN_Setting_st Atten_1_8Ghz_UL3 ={
119
+    ATT_CLK_GPIO_Port,
120
+    ATT_CLK_Pin,
121
+    ATT_DATA_GPIO_Port,
122
+    ATT_DATA_Pin,
123
+    ATT_EN_1_8G_UL3_GPIO_Port,    
124
+    ATT_EN_1_8G_UL3_Pin,
125
+    PATH_EN_1_8G_UL_GPIO_Port,
126
+    PATH_EN_1_8G_UL_Pin,    
127
+};
128
+ATTEN_Setting_st Atten_1_8Ghz_UL4 ={
129
+    ATT_CLK_GPIO_Port,
130
+    ATT_CLK_Pin,
131
+    ATT_DATA_GPIO_Port,
132
+    ATT_DATA_Pin,
133
+    ATT_EN_1_8G_UL4_GPIO_Port,    
134
+    ATT_EN_1_8G_UL4_Pin,
135
+    PATH_EN_1_8G_UL_GPIO_Port,
136
+    PATH_EN_1_8G_UL_Pin,    
137
+};
138
+ATTEN_Setting_st Atten_2_1Ghz_DL1 ={
139
+    ATT_CLK_GPIO_Port,
140
+    ATT_CLK_Pin,
141
+    ATT_DATA_GPIO_Port,
142
+    ATT_DATA_Pin,
143
+    ATT_EN_2_1G_DL1_GPIO_Port,    
144
+    ATT_EN_2_1G_DL1_Pin,
145
+    PATH_EN_2_1G_DL_GPIO_Port,
146
+    PATH_EN_2_1G_DL_Pin,    
147
+};
148
+ATTEN_Setting_st Atten_2_1Ghz_DL2 ={
149
+    ATT_CLK_GPIO_Port,
150
+    ATT_CLK_Pin,
151
+    ATT_DATA_GPIO_Port,
152
+    ATT_DATA_Pin,
153
+    ATT_EN_2_1G_DL2_GPIO_Port,    
154
+    ATT_EN_2_1G_DL2_Pin,
155
+    PATH_EN_2_1G_DL_GPIO_Port,
156
+    PATH_EN_2_1G_DL_Pin,    
157
+};
158
+
159
+ATTEN_Setting_st Atten_2_1Ghz_UL1 ={
160
+    ATT_CLK_GPIO_Port,
161
+    ATT_CLK_Pin,
162
+    ATT_DATA_GPIO_Port,
163
+    ATT_DATA_Pin,
164
+    ATT_EN_2_1G_UL1_GPIO_Port,    
165
+    ATT_EN_2_1G_UL1_Pin,
166
+    PATH_EN_2_1G_UL_GPIO_Port,
167
+    PATH_EN_2_1G_UL_Pin,    
168
+};
169
+ATTEN_Setting_st Atten_2_1Ghz_UL2 ={
170
+    ATT_CLK_GPIO_Port,
171
+    ATT_CLK_Pin,
172
+    ATT_DATA_GPIO_Port,
173
+    ATT_DATA_Pin,
174
+    ATT_EN_2_1G_UL2_GPIO_Port,    
175
+    ATT_EN_2_1G_UL2_Pin,
176
+    PATH_EN_2_1G_UL_GPIO_Port,
177
+    PATH_EN_2_1G_UL_Pin,    
178
+};
179
+ATTEN_Setting_st Atten_2_1Ghz_UL3 ={
180
+    ATT_CLK_GPIO_Port,
181
+    ATT_CLK_Pin,
182
+    ATT_DATA_GPIO_Port,
183
+    ATT_DATA_Pin,
184
+    ATT_EN_2_1G_UL3_GPIO_Port,    
185
+    ATT_EN_2_1G_UL3_Pin,
186
+    PATH_EN_2_1G_UL_GPIO_Port,
187
+    PATH_EN_2_1G_UL_Pin,    
188
+};
189
+ATTEN_Setting_st Atten_2_1Ghz_UL4 ={
190
+    ATT_CLK_GPIO_Port,
191
+    ATT_CLK_Pin,
192
+    ATT_DATA_GPIO_Port,
193
+    ATT_DATA_Pin,
194
+    ATT_EN_2_1G_UL4_GPIO_Port,    
195
+    ATT_EN_2_1G_UL4_Pin,
196
+    PATH_EN_2_1G_UL_GPIO_Port,
197
+    PATH_EN_2_1G_UL_Pin,    
198
+};
199
+
200
+
201
+bool RF_Data_Check(uint8_t* data_buf){
202
+    bool ret = false;
203
+    bool crcret = STH30_CheckCrc(&data_buf[Type], data_buf[Length], data_buf[data_buf[Crcindex]]);
204
+    if(data_buf[Header] == BLUECELL_HEADER){ /*HEADER CHECK*/
205
+        ret= true;
206
+    }
207
+    if(crcret == true){/*CRC CHECK*/
208
+        ret = true;
209
+    }else{
210
+        ret = false;
211
+//        printf("Recv CRC Value : \"%d\"\r\n Create CRC Value : \"%d\"   \r\n",data_buf[data_buf[Crcindex]],STH30_CreateCrc(&data_buf[Type], data_buf[Length]));
212
+    }
213
+//    printf("CRC Result : \"%d\"   \r\n",ret);
214
+    return ret;
215
+
216
+}
217
+
218
+PLL_Setting_st Pll_3_5_H = {
219
+     PLL_CLK_3_5G_GPIO_Port,
220
+     PLL_CLK_3_5G_Pin,
221
+     PLL_DATA_3_5G_GPIO_Port,
222
+     PLL_DATA_3_5G_Pin,
223
+   PLL_EN_3_5G_H_GPIO_Port,    
224
+   PLL_EN_3_5G_H_Pin,
225
+ };
226
+ PLL_Setting_st Pll_3_5_L = {
227
+     PLL_CLK_3_5G_GPIO_Port,
228
+     PLL_CLK_3_5G_Pin,
229
+     PLL_DATA_3_5G_GPIO_Port,
230
+     PLL_DATA_3_5G_Pin,
231
+       PLL_EN_3_5G_L_GPIO_Port,    
232
+       PLL_EN_3_5G_L_Pin,
233
+ };
234
+void RF_Status_Get(void){
235
+//    printf("\r\nYJ2 : Prev_data[INDEX_DET_1_8G_DL_IN_L ] : %x\r\n",Prev_data[INDEX_DET_1_8G_DL_IN_L]);            
236
+    Prev_data[INDEX_BLUE_HEADER]   = BLUECELL_HEADER;
237
+    Prev_data[INDEX_BLUE_TYPE]     = TYPE_BLUECELL_GET;
238
+    Prev_data[INDEX_BLUE_LENGTH]   = INDEX_BLUE_EOF - 2;
239
+    Prev_data[INDEX_BLUE_CRCINDEX] = INDEX_BLUE_CRC;
240
+    Prev_data[INDEX_BLUE_CRC]      = STH30_CreateCrc(&Prev_data[Type], Prev_data[Length]);
241
+    Prev_data[INDEX_BLUE_EOF] = BLUECELL_TAILER;    
242
+    HAL_UART_Transmit_DMA(&huart1,&Prev_data[INDEX_BLUE_HEADER],INDEX_BLUE_EOF + 1); 
243
+//    printf("\r\nYJ : %x",ADCvalue[0]);
244
+//    printf("\r\n");
245
+
246
+}
247
+static uint8_t Ack_Buf[6];
248
+void RF_Status_Ack(void){
249
+//    printf("\r\nYJ2 : Prev_data[INDEX_DET_1_8G_DL_IN_L ] : %x\r\n",Prev_data[INDEX_DET_1_8G_DL_IN_L]);            
250
+    Ack_Buf[INDEX_BLUE_HEADER]       = BLUECELL_HEADER;
251
+    Ack_Buf[INDEX_BLUE_TYPE]         = TYPE_BLUECELL_ACK;
252
+    Ack_Buf[INDEX_BLUE_LENGTH]       = 3;
253
+    Ack_Buf[INDEX_BLUE_CRCINDEX + 0] = INDEX_BLUE_CRCINDEX + 1;
254
+    Ack_Buf[INDEX_BLUE_CRCINDEX + 1] = STH30_CreateCrc(&Ack_Buf[Type], Ack_Buf[Length]);
255
+    Ack_Buf[INDEX_BLUE_CRCINDEX + 2] = BLUECELL_TAILER;
256
+    HAL_UART_Transmit_DMA(&huart1,&Ack_Buf[INDEX_BLUE_HEADER],Ack_Buf[INDEX_BLUE_LENGTH]  + 3); 
257
+//    printf("\r\nYJ : %x",ADCvalue[0]);
258
+//    printf("\r\n");
259
+
260
+}
261
+
262
+void RF_Operate(uint8_t* data_buf){
263
+    uint32_t temp_val = 0;
264
+    uint8_t  ADC_Modify = 0;
265
+    ADF4153_R_N_Reg_st temp_reg;
266
+//    printf("Prev_data[INDEX_ATT_1_8G_DL1]  : %x  data_buf[INDEX_ATT_1_8G_DL1] : %x\r\n",Prev_data[INDEX_ATT_1_8G_DL1],data_buf[INDEX_ATT_1_8G_DL1]);
267
+    if(Prev_data[INDEX_ATT_1_8G_DL1] != data_buf[INDEX_ATT_1_8G_DL1]){
268
+        BDA4601_atten_ctrl(BDA4601_1_8G_DL1,(data_buf[INDEX_ATT_1_8G_DL1]));
269
+        Prev_data[INDEX_ATT_1_8G_DL1] = data_buf[INDEX_ATT_1_8G_DL1];
270
+    }
271
+    if(Prev_data[INDEX_ATT_1_8G_DL2] != data_buf[INDEX_ATT_1_8G_DL2]){
272
+        BDA4601_atten_ctrl(BDA4601_1_8G_DL2,(data_buf[INDEX_ATT_1_8G_DL2]));
273
+        Prev_data[INDEX_ATT_1_8G_DL2] = data_buf[INDEX_ATT_1_8G_DL2];
274
+    }
275
+    if(Prev_data[INDEX_ATT_1_8G_UL1] != data_buf[INDEX_ATT_1_8G_UL1]){
276
+        BDA4601_atten_ctrl(BDA4601_1_8G_UL1,(data_buf[INDEX_ATT_1_8G_UL1]));
277
+        Prev_data[INDEX_ATT_1_8G_UL1] = data_buf[INDEX_ATT_1_8G_UL1];
278
+    }
279
+    if(Prev_data[INDEX_ATT_1_8G_UL2] != data_buf[INDEX_ATT_1_8G_UL2]){
280
+        BDA4601_atten_ctrl(BDA4601_1_8G_UL2,(data_buf[INDEX_ATT_1_8G_UL2]));
281
+        Prev_data[INDEX_ATT_1_8G_UL2] = data_buf[INDEX_ATT_1_8G_UL2];
282
+    }
283
+    if(Prev_data[INDEX_ATT_1_8G_UL3] != data_buf[INDEX_ATT_1_8G_UL3]){
284
+        BDA4601_atten_ctrl(BDA4601_1_8G_UL3,(data_buf[INDEX_ATT_1_8G_UL3]));
285
+        Prev_data[INDEX_ATT_1_8G_UL3] = data_buf[INDEX_ATT_1_8G_UL3];
286
+    }
287
+    if(Prev_data[INDEX_ATT_1_8G_UL4] != data_buf[INDEX_ATT_1_8G_UL4]){
288
+        BDA4601_atten_ctrl(BDA4601_1_8G_UL4,(data_buf[INDEX_ATT_1_8G_UL4]));
289
+        Prev_data[INDEX_ATT_1_8G_UL4] = data_buf[INDEX_ATT_1_8G_UL4];
290
+    }
291
+    if(Prev_data[INDEX_ATT_2_1G_DL1] != data_buf[INDEX_ATT_2_1G_DL1]){
292
+        BDA4601_atten_ctrl(BDA4601_2_1G_DL1,(data_buf[INDEX_ATT_2_1G_DL1]));
293
+        Prev_data[INDEX_ATT_2_1G_DL1] = data_buf[INDEX_ATT_2_1G_DL1];
294
+
295
+    }
296
+    if(Prev_data[INDEX_ATT_2_1G_DL2] != data_buf[INDEX_ATT_2_1G_DL2]){
297
+        BDA4601_atten_ctrl(BDA4601_2_1G_DL2,(data_buf[INDEX_ATT_2_1G_DL2]));
298
+        Prev_data[INDEX_ATT_2_1G_DL2] = data_buf[INDEX_ATT_2_1G_DL2];
299
+
300
+    }
301
+    if(Prev_data[INDEX_ATT_2_1G_UL1] != data_buf[INDEX_ATT_2_1G_UL1]){
302
+        BDA4601_atten_ctrl(BDA4601_2_1G_UL1,(data_buf[INDEX_ATT_2_1G_UL1]));
303
+        Prev_data[INDEX_ATT_2_1G_UL1] = data_buf[INDEX_ATT_2_1G_UL1];
304
+
305
+    }
306
+    if(Prev_data[INDEX_ATT_2_1G_UL2] != data_buf[INDEX_ATT_2_1G_UL2]){
307
+        BDA4601_atten_ctrl(BDA4601_2_1G_UL2,(data_buf[INDEX_ATT_2_1G_UL2]));
308
+        Prev_data[INDEX_ATT_2_1G_UL2] = data_buf[INDEX_ATT_2_1G_UL2];
309
+
310
+    }
311
+    if(Prev_data[INDEX_ATT_2_1G_UL3] != data_buf[INDEX_ATT_2_1G_UL3]){
312
+        BDA4601_atten_ctrl(BDA4601_2_1G_UL3,(data_buf[INDEX_ATT_2_1G_UL3]));
313
+        Prev_data[INDEX_ATT_2_1G_UL3] = data_buf[INDEX_ATT_2_1G_UL3];
314
+    }
315
+    if(Prev_data[INDEX_ATT_2_1G_UL4] != data_buf[INDEX_ATT_2_1G_UL4]){
316
+        BDA4601_atten_ctrl(BDA4601_2_1G_UL4,(data_buf[INDEX_ATT_2_1G_UL4]));
317
+        Prev_data[INDEX_ATT_2_1G_UL4] = data_buf[INDEX_ATT_2_1G_UL4];
318
+    }
319
+    if(   (Prev_data[INDEX_ATT_3_5G_LOW1] != data_buf[INDEX_ATT_3_5G_LOW1])
320
+        ||(Prev_data[INDEX_ATT_3_5G_HIGH1] != data_buf[INDEX_ATT_3_5G_HIGH1])
321
+        ||(Prev_data[INDEX_ATT_3_5G_COM1] != data_buf[INDEX_ATT_3_5G_COM1])
322
+        ||(Prev_data[INDEX_ATT_3_5G_LOW2] != data_buf[INDEX_ATT_3_5G_LOW2])
323
+        ||(Prev_data[INDEX_ATT_3_5G_HIGH2] != data_buf[INDEX_ATT_3_5G_HIGH2])
324
+        ||(Prev_data[INDEX_ATT_3_5G_COM2] != data_buf[INDEX_ATT_3_5G_COM2])
325
+    ){
326
+        ALL_ATT_3_5G.data0 = Prev_data[INDEX_ATT_3_5G_LOW1]  = data_buf[INDEX_ATT_3_5G_LOW1];
327
+        ALL_ATT_3_5G.data1 = Prev_data[INDEX_ATT_3_5G_HIGH1] = data_buf[INDEX_ATT_3_5G_HIGH1];
328
+        ALL_ATT_3_5G.data2 = Prev_data[INDEX_ATT_3_5G_COM1]  = data_buf[INDEX_ATT_3_5G_COM1];
329
+        ALL_ATT_3_5G.data3 = Prev_data[INDEX_ATT_3_5G_LOW2]  = data_buf[INDEX_ATT_3_5G_LOW2];
330
+        ALL_ATT_3_5G.data4 = Prev_data[INDEX_ATT_3_5G_HIGH2] = data_buf[INDEX_ATT_3_5G_HIGH2];
331
+        ALL_ATT_3_5G.data5 = Prev_data[INDEX_ATT_3_5G_COM2]  = data_buf[INDEX_ATT_3_5G_COM2];
332
+        PE43711_ALL_atten_ctrl(ALL_ATT_3_5G);
333
+    }
334
+    if((Prev_data[INDEX_PLL_1_8G_DL_H] != data_buf[INDEX_PLL_1_8G_DL_H])
335
+        || (Prev_data[INDEX_PLL_1_8G_DL_L] != data_buf[INDEX_PLL_1_8G_DL_L])
336
+    ){
337
+        Prev_data[INDEX_PLL_1_8G_DL_H] = data_buf[INDEX_PLL_1_8G_DL_H];
338
+        Prev_data[INDEX_PLL_1_8G_DL_L] = data_buf[INDEX_PLL_1_8G_DL_L];
339
+//        printf("data_buf[INDEX_PLL_1_8G_DL_H] : %x \r\n",data_buf[INDEX_PLL_1_8G_DL_H]);
340
+//        printf("data_buf[INDEX_PLL_1_8G_DL_L] : %x\r\n",data_buf[INDEX_PLL_1_8G_DL_L]);
341
+        temp_val = (data_buf[INDEX_PLL_1_8G_DL_H] << 8) | (data_buf[INDEX_PLL_1_8G_DL_L]);
342
+        ADF4113_Module_Ctrl(ADF4113_1_8G_DL,0x410,halSynSetFreq(temp_val * 100000),0x9F8092);
343
+//        ADF4113_Module_Ctrl(ADF4113_1_8G_DL,0x410,halSynSetFreq(16050 * 100000),0x9F8092);
344
+        HAL_Delay(1);
345
+        BDA4601_atten_ctrl(BDA4601_1_8G_DL1,(data_buf[INDEX_ATT_1_8G_DL1]));
346
+        BDA4601_atten_ctrl(BDA4601_1_8G_DL2,(data_buf[INDEX_ATT_1_8G_DL2]));
347
+    }
348
+    if((Prev_data[INDEX_PLL_1_8G_UL_H] != data_buf[INDEX_PLL_1_8G_UL_H])
349
+        || (Prev_data[INDEX_PLL_1_8G_UL_L] != data_buf[INDEX_PLL_1_8G_UL_L])){
350
+        temp_val = (data_buf[INDEX_PLL_1_8G_UL_H] << 8) | (data_buf[INDEX_PLL_1_8G_UL_L]);
351
+//        printf("data_buf[INDEX_PLL_1_8G_UL_H] : %x \r\n",data_buf[INDEX_PLL_1_8G_UL_H]);
352
+//        printf("data_buf[INDEX_PLL_1_8G_UL_L] : %x\r\n",data_buf[INDEX_PLL_1_8G_UL_L]);
353
+        Prev_data[INDEX_PLL_1_8G_UL_H] = data_buf[INDEX_PLL_1_8G_UL_H];
354
+        Prev_data[INDEX_PLL_1_8G_UL_L] = data_buf[INDEX_PLL_1_8G_UL_L];
355
+//         ADF4113_Module_Ctrl(ADF4113_1_8G_UL,0x000410,0x038D31,0x9f8092);
356
+         ADF4113_Module_Ctrl(ADF4113_1_8G_UL,0x410,halSynSetFreq(temp_val * 100000),0x9F8092);
357
+//        ADF4113_Module_Ctrl(ADF4113_1_8G_UL,0x410,halSynSetFreq(14485 * 100000),0x9F8092);
358
+
359
+        HAL_Delay(1);
360
+        BDA4601_atten_ctrl(BDA4601_1_8G_UL1,(data_buf[INDEX_ATT_1_8G_UL1]));
361
+        BDA4601_atten_ctrl(BDA4601_1_8G_UL2,(data_buf[INDEX_ATT_1_8G_UL2]));
362
+        BDA4601_atten_ctrl(BDA4601_1_8G_UL3,(data_buf[INDEX_ATT_1_8G_UL3]));
363
+        BDA4601_atten_ctrl(BDA4601_1_8G_UL4,(data_buf[INDEX_ATT_1_8G_UL4]));
364
+    }
365
+    if((Prev_data[INDEX_PLL_2_1G_DL_H] != data_buf[INDEX_PLL_2_1G_DL_H])
366
+        || (Prev_data[INDEX_PLL_2_1G_DL_L] != data_buf[INDEX_PLL_2_1G_DL_L])){
367
+        temp_val = ((data_buf[INDEX_PLL_2_1G_DL_H] << 8) | (data_buf[INDEX_PLL_2_1G_DL_L]));
368
+//        printf("data_buf[INDEX_PLL_2_1G_DL_H] : %x \r\n",data_buf[INDEX_PLL_2_1G_DL_H]);
369
+//        printf("data_buf[INDEX_PLL_2_1G_DL_L] : %x\r\n",data_buf[INDEX_PLL_2_1G_DL_L]);
370
+        Prev_data[INDEX_PLL_2_1G_DL_H] = data_buf[INDEX_PLL_2_1G_DL_H];
371
+        Prev_data[INDEX_PLL_2_1G_DL_L] = data_buf[INDEX_PLL_2_1G_DL_L];        
372
+//         ADF4113_Module_Ctrl(ADF4113_2_1G_DL,0x410,0x4DE71,0x9F8092);
373
+      ADF4113_Module_Ctrl(ADF4113_2_1G_DL,0x410,halSynSetFreq(temp_val * 100000),0x9F8092);
374
+//      ADF4113_Module_Ctrl(ADF4113_2_1G_DL,0x410,halSynSetFreq(19864 * 100000),0x9F8092);
375
+
376
+      HAL_Delay(1);
377
+      BDA4601_atten_ctrl(BDA4601_2_1G_DL1,(data_buf[INDEX_ATT_2_1G_DL1]));
378
+      BDA4601_atten_ctrl(BDA4601_2_1G_DL2,(data_buf[INDEX_ATT_2_1G_DL2]));
379
+    }
380
+    if((Prev_data[INDEX_PLL_2_1G_UL_H] != data_buf[INDEX_PLL_2_1G_UL_H])
381
+        || (Prev_data[INDEX_PLL_2_1G_UL_L] != data_buf[INDEX_PLL_2_1G_UL_L])){
382
+        Prev_data[INDEX_PLL_2_1G_UL_H] = data_buf[INDEX_PLL_2_1G_UL_H];
383
+        Prev_data[INDEX_PLL_2_1G_UL_L] = data_buf[INDEX_PLL_2_1G_UL_L];    
384
+//        printf("data_buf[INDEX_PLL_2_1G_UL_H] : %x \r\n",data_buf[INDEX_PLL_2_1G_UL_H]);
385
+//        printf("data_buf[INDEX_PLL_2_1G_UL_L] : %x\r\n",data_buf[INDEX_PLL_2_1G_UL_L]);
386
+        temp_val = (data_buf[INDEX_PLL_2_1G_UL_H] << 8) | (data_buf[INDEX_PLL_2_1G_UL_L]);
387
+//        ADF4113_Module_Ctrl(ADF4113_2_1G_UL,0x000410,0x59A31,0x9f8092);
388
+      ADF4113_Module_Ctrl(ADF4113_2_1G_UL,0x410,halSynSetFreq(temp_val * 100000),0x9F8092);
389
+//      ADF4113_Module_Ctrl(ADF4113_2_1G_UL,0x410,halSynSetFreq(22879 * 100000),0x9F8092);
390
+      HAL_Delay(1);
391
+      BDA4601_atten_ctrl(BDA4601_2_1G_UL1,(data_buf[INDEX_ATT_2_1G_UL1]));
392
+      BDA4601_atten_ctrl(BDA4601_2_1G_UL2,(data_buf[INDEX_ATT_2_1G_UL2]));
393
+      BDA4601_atten_ctrl(BDA4601_2_1G_UL3,(data_buf[INDEX_ATT_2_1G_UL3]));      
394
+      BDA4601_atten_ctrl(BDA4601_2_1G_UL4,(data_buf[INDEX_ATT_2_1G_UL4]));      
395
+
396
+
397
+    }
398
+    if((Prev_data[INDEX_PLL_3_5G_LOW_H] != data_buf[INDEX_PLL_3_5G_LOW_H])
399
+        ||(Prev_data[INDEX_PLL_3_5G_LOW_M] != data_buf[INDEX_PLL_3_5G_LOW_M])
400
+        || (Prev_data[INDEX_PLL_3_5G_LOW_L] != data_buf[INDEX_PLL_3_5G_LOW_L])){
401
+        Prev_data[INDEX_PLL_3_5G_LOW_H] = data_buf[INDEX_PLL_3_5G_LOW_H];
402
+        Prev_data[INDEX_PLL_3_5G_LOW_M] = data_buf[INDEX_PLL_3_5G_LOW_M];        
403
+        Prev_data[INDEX_PLL_3_5G_LOW_L] = data_buf[INDEX_PLL_3_5G_LOW_L];
404
+        temp_val = (data_buf[INDEX_PLL_3_5G_LOW_H] << 16) | 
405
+                   (data_buf[INDEX_PLL_3_5G_LOW_M] << 8)  | 
406
+                   (data_buf[INDEX_PLL_3_5G_LOW_L]);
407
+#if 1 // PYJ.2019.08.12_BEGIN -- 
408
+        temp_reg = ADF4153_Freq_Calc(temp_val,ADF4153_122_88MHzREFIN,ADF4153_8RCOUNTER,ADF4153_CHANNEL_SPACING);
409
+#else
410
+        temp_reg = ADF4153_Freq_Calc(3465500000,ADF4153_40MHzREFIN,ADF4153_2RCOUNTER,ADF4153_CHANNEL_SPACING);
411
+#endif // PYJ.2019.08.12_END -- 
412
+//        ADF4153_Module_Ctrl(Pll_3_5_L,temp_reg.N_reg,temp_reg.R_reg,0x13c2,0x3);
413
+      ADF4153_Module_Ctrl(Pll_3_5_L,0x385E48,0x163001,0x1442,3);
414
+
415
+    }
416
+    if((Prev_data[INDEX_PLL_3_5G_HIGH_H] != data_buf[INDEX_PLL_3_5G_HIGH_H])
417
+        || (Prev_data[INDEX_PLL_3_5G_HIGH_M] != data_buf[INDEX_PLL_3_5G_HIGH_M])
418
+        || (Prev_data[INDEX_PLL_3_5G_HIGH_L] != data_buf[INDEX_PLL_3_5G_HIGH_L])){
419
+        Prev_data[INDEX_PLL_3_5G_HIGH_H] = data_buf[INDEX_PLL_3_5G_HIGH_H];
420
+        Prev_data[INDEX_PLL_3_5G_HIGH_M] = data_buf[INDEX_PLL_3_5G_HIGH_M];
421
+        Prev_data[INDEX_PLL_3_5G_HIGH_L] = data_buf[INDEX_PLL_3_5G_HIGH_L];
422
+        temp_val = (data_buf[INDEX_PLL_3_5G_HIGH_H] << 16) |
423
+                   (data_buf[INDEX_PLL_3_5G_HIGH_M] << 8)  |
424
+                   (data_buf[INDEX_PLL_3_5G_HIGH_L]);
425
+#if 1 // PYJ.2019.08.12_BEGIN -- 
426
+//        temp_reg = ADF4153_Freq_Calc(temp_val,ADF4153_122_88MHzREFIN,ADF4153_8RCOUNTER,ADF4153_CHANNEL_SPACING);
427
+        temp_reg = ADF4153_Freq_Calc(temp_val,ADF4153_122_88MHzREFIN,ADF4153_8RCOUNTER,ADF4153_CHANNEL_SPACING);
428
+//        printf("N_reg : %08x R_reg :%x\r\n",temp_reg.N_reg,temp_reg.R_reg);
429
+
430
+#else
431
+        temp_reg = ADF4153_Freq_Calc(3934500000,ADF4153_40MHzREFIN,ADF4153_2RCOUNTER,ADF4153_CHANNEL_SPACING);
432
+#endif // PYJ.2019.08.12_END -- 
433
+        ADF4153_Module_Ctrl(Pll_3_5_H,temp_reg.N_reg,temp_reg.R_reg,0x14C2,0x3);
434
+//        ADF4153_Module_Ctrl(Pll_3_5_H,0x4006C0,0x163001,0x14C2,3);
435
+    }
436
+    if(Prev_data[INDEX_PLL_LD_6_BIT] != data_buf[INDEX_PLL_LD_6_BIT]){
437
+
438
+    }
439
+#if 0 // PYJ.2019.07.28_BEGIN -- 
440
+    if(Prev_data[INDEX_DET_1_8G_DL_IN_H] != data_buf[INDEX_DET_1_8G_DL_IN_H]){
441
+
442
+    }
443
+    if(Prev_data[INDEX_DET_1_8G_DL_IN_L] != data_buf[INDEX_DET_1_8G_DL_IN_L]){
444
+
445
+    }
446
+    if(Prev_data[INDEX_DET_1_8G_DL_OUT_H] != data_buf[INDEX_DET_1_8G_DL_OUT_H]){
447
+
448
+    }
449
+    if(Prev_data[INDEX_DET_1_8G_DL_OUT_L] != data_buf[INDEX_DET_1_8G_DL_OUT_L]){
450
+
451
+    }
452
+    if(Prev_data[INDEX_DET_1_8G_UL_IN_H] != data_buf[INDEX_DET_1_8G_UL_IN_H]){
453
+
454
+    }
455
+    if(Prev_data[INDEX_DET_1_8G_UL_IN_L] != data_buf[INDEX_DET_1_8G_UL_IN_L]){
456
+
457
+    }
458
+    if(Prev_data[INDEX_DET_1_8G_UL_OUT_H] != data_buf[INDEX_DET_1_8G_UL_OUT_H]){
459
+
460
+    }
461
+    if(Prev_data[INDEX_DET_1_8G_UL_OUT_L] != data_buf[INDEX_DET_1_8G_UL_OUT_L]){
462
+
463
+    }
464
+    if(Prev_data[INDEX_DET_2_1G_DL_IN_H] != data_buf[INDEX_DET_2_1G_DL_IN_H]){
465
+
466
+    }
467
+    if(Prev_data[INDEX_DET_2_1G_DL_IN_L] != data_buf[INDEX_DET_2_1G_DL_IN_L]){
468
+
469
+    }
470
+    if(Prev_data[INDEX_DET_2_1G_DL_OUT_H] != data_buf[INDEX_DET_2_1G_DL_OUT_H]){
471
+
472
+    }
473
+    if(Prev_data[INDEX_DET_2_1G_DL_OUT_L] != data_buf[INDEX_DET_2_1G_DL_OUT_L]){
474
+
475
+    }
476
+    if(Prev_data[INDEX_DET_2_1G_UL_IN_H] != data_buf[INDEX_DET_2_1G_UL_IN_H]){
477
+
478
+    }
479
+    if(Prev_data[INDEX_DET_2_1G_UL_IN_L] != data_buf[INDEX_DET_2_1G_UL_IN_L]){
480
+
481
+    }
482
+
483
+    if(Prev_data[INDEX_DET_2_1G_UL_OUT_H] != data_buf[INDEX_DET_2_1G_UL_OUT_H]){
484
+
485
+    }
486
+    if(Prev_data[INDEX_DET_2_1G_UL_OUT_L] != data_buf[INDEX_DET_2_1G_UL_OUT_L]){
487
+
488
+    }
489
+    if(Prev_data[INDEX_DET_3_5G_DL_IN_H] != data_buf[INDEX_DET_3_5G_DL_IN_H]){
490
+
491
+    }
492
+    if(Prev_data[INDEX_DET_3_5G_DL_IN_L] != data_buf[INDEX_DET_3_5G_DL_IN_L]){
493
+
494
+    }
495
+    if(Prev_data[INDEX_DET_3_5G_DL_OUT_L] != data_buf[INDEX_DET_3_5G_DL_OUT_L]){
496
+
497
+    }
498
+    if(Prev_data[INDEX_DET_3_5G_DL_OUT_H] != data_buf[INDEX_DET_3_5G_DL_OUT_H]){
499
+
500
+    }
501
+    if(Prev_data[INDEX_DET_3_5G_UL_IN_H] != data_buf[INDEX_DET_3_5G_UL_IN_H]){
502
+
503
+    }
504
+    if(Prev_data[INDEX_DET_3_5G_UL_IN_L] != data_buf[INDEX_DET_3_5G_UL_IN_L]){
505
+
506
+    }
507
+
508
+    if(Prev_data[INDEX_DET_3_5G_UL_OUT_H] != data_buf[INDEX_DET_3_5G_UL_OUT_H]){
509
+
510
+    }
511
+    if(Prev_data[INDEX_DET_3_5G_UL_OUT_L] != data_buf[INDEX_DET_3_5G_UL_OUT_L]){
512
+
513
+    }
514
+    if(Prev_data[INDEX_RFU_TEMP_H] != data_buf[INDEX_RFU_TEMP_H]){
515
+
516
+    }
517
+    if(Prev_data[INDEX_RFU_TEMP_L] != data_buf[INDEX_RFU_TEMP_L]){
518
+
519
+    }
520
+    if(Prev_data[INDEX__28V_DET_H] != data_buf[INDEX__28V_DET_H]){
521
+
522
+    }
523
+    if(Prev_data[INDEX__28V_DET_L] != data_buf[INDEX__28V_DET_L]){
524
+
525
+    }
526
+#endif // PYJ.2019.07.28_END -- 
527
+    if(Prev_data[INDEX_ALARM_AC] != data_buf[INDEX_ALARM_AC]){
528
+
529
+    }
530
+    if(Prev_data[INDEX_ALARM_DC] != data_buf[INDEX_ALARM_DC]){
531
+
532
+    }
533
+    if(Prev_data[INDEX_PATH_EN_1_8G_DL] != data_buf[INDEX_PATH_EN_1_8G_DL]){
534
+        Power_ON_OFF_Ctrl(INDEX_PATH_EN_1_8G_DL,data_buf[INDEX_PATH_EN_1_8G_DL]);
535
+        Prev_data[INDEX_PATH_EN_1_8G_DL] = data_buf[INDEX_PATH_EN_1_8G_DL];
536
+    }
537
+    if(Prev_data[INDEX_PATH_EN_1_8G_UL] != data_buf[INDEX_PATH_EN_1_8G_UL]){
538
+        Power_ON_OFF_Ctrl(INDEX_PATH_EN_1_8G_UL,data_buf[INDEX_PATH_EN_1_8G_UL]);
539
+        Prev_data[INDEX_PATH_EN_1_8G_UL] = data_buf[INDEX_PATH_EN_1_8G_UL];
540
+
541
+    }
542
+
543
+    if(Prev_data[INDEX_PATH_EN_2_1G_DL] != data_buf[INDEX_PATH_EN_2_1G_DL]){
544
+        Power_ON_OFF_Ctrl(INDEX_PATH_EN_2_1G_DL,data_buf[INDEX_PATH_EN_2_1G_DL]);
545
+        Prev_data[INDEX_PATH_EN_2_1G_DL] = data_buf[INDEX_PATH_EN_2_1G_DL];
546
+    }
547
+    if(Prev_data[INDEX_PATH_EN_2_1G_UL] != data_buf[INDEX_PATH_EN_2_1G_UL]){
548
+        Power_ON_OFF_Ctrl(INDEX_PATH_EN_2_1G_UL,data_buf[INDEX_PATH_EN_2_1G_UL]);
549
+        Prev_data[INDEX_PATH_EN_2_1G_UL] = data_buf[INDEX_PATH_EN_2_1G_UL];
550
+
551
+    }
552
+    if(Prev_data[INDEX_PATH_EN_3_5G_L] != data_buf[INDEX_PATH_EN_3_5G_L]){
553
+        Power_ON_OFF_Ctrl(INDEX_PATH_EN_3_5G_L,data_buf[INDEX_PATH_EN_3_5G_L]);
554
+        Prev_data[INDEX_PATH_EN_3_5G_L] = data_buf[INDEX_PATH_EN_3_5G_L];
555
+
556
+    }
557
+    if(Prev_data[INDEX_PATH_EN_3_5G_H] != data_buf[INDEX_PATH_EN_3_5G_H]){
558
+        Power_ON_OFF_Ctrl(INDEX_PATH_EN_3_5G_H,data_buf[INDEX_PATH_EN_3_5G_H]);
559
+        Prev_data[INDEX_PATH_EN_3_5G_H] = data_buf[INDEX_PATH_EN_3_5G_H];
560
+    
561
+
562
+    }
563
+    if(Prev_data[INDEX_PATH_EN_3_5G_DL] != data_buf[INDEX_PATH_EN_3_5G_DL]){
564
+        Power_ON_OFF_Ctrl(INDEX_PATH_EN_3_5G_DL,data_buf[INDEX_PATH_EN_3_5G_DL]);
565
+        Prev_data[INDEX_PATH_EN_3_5G_DL] = data_buf[INDEX_PATH_EN_3_5G_DL];
566
+        ADC_Modify = 1;
567
+
568
+    }
569
+    if(Prev_data[INDEX_PATH_EN_3_5G_UL] != data_buf[INDEX_PATH_EN_3_5G_UL]){
570
+        Power_ON_OFF_Ctrl(INDEX_PATH_EN_3_5G_UL,data_buf[INDEX_PATH_EN_3_5G_UL]);
571
+        Prev_data[INDEX_PATH_EN_3_5G_UL] = data_buf[INDEX_PATH_EN_3_5G_UL];
572
+        ADC_Modify = 1;
573
+    }
574
+    if(Prev_data[INDEX_PLL_ON_OFF_3_5G_H] != data_buf[INDEX_PLL_ON_OFF_3_5G_H]){
575
+        Power_ON_OFF_Ctrl(INDEX_PLL_ON_OFF_3_5G_H,data_buf[INDEX_PLL_ON_OFF_3_5G_H]);
576
+        Prev_data[INDEX_PLL_ON_OFF_3_5G_H] = data_buf[INDEX_PLL_ON_OFF_3_5G_H];
577
+        HAL_Delay(1);
578
+//        printf("POWER : %d \r\n",Prev_data[INDEX_PLL_ON_OFF_3_5G_H]);
579
+        if(data_buf[INDEX_PLL_ON_OFF_3_5G_H]){
580
+//            printf("PLL CTRL START !! \r\n");
581
+#if 1 // PYJ.2019.08.12_BEGIN -- 
582
+//            temp_val = (Prev_data[INDEX_PLL_3_5G_LOW_H] << 16) |
583
+//                       (Prev_data[INDEX_PLL_3_5G_LOW_M] << 8) | 
584
+//                       (Prev_data[INDEX_PLL_3_5G_LOW_L]);
585
+            temp_val = (Prev_data[INDEX_PLL_3_5G_HIGH_H] << 16) | 
586
+                       (Prev_data[INDEX_PLL_3_5G_HIGH_M] << 8)  | 
587
+                       (Prev_data[INDEX_PLL_3_5G_HIGH_L]);
588
+
589
+
590
+//            temp_reg = ADF4153_Freq_Calc(temp_val  * 10000,ADF4153_40MHzREFIN,ADF4153_2RCOUNTER,ADF4153_CHANNEL_SPACING);
591
+            temp_reg = ADF4153_Freq_Calc(temp_val  * 10000,ADF4153_122_88MHzREFIN,ADF4153_8RCOUNTER,ADF4153_CHANNEL_SPACING);
592
+#else
593
+            temp_reg = ADF4153_Freq_Calc(3934500000,ADF4153_40MHzREFIN,ADF4153_2RCOUNTER,ADF4153_CHANNEL_SPACING);
594
+#endif // PYJ.2019.08.12_END -- 
595
+//            ADF4153_Module_Ctrl(Pll_3_5_H,temp_reg.N_reg,temp_reg.R_reg,0x13c2,0x3);
596
+//            ADF4153_Module_Ctrl(Pll_3_5_H,0x4006C0,0x163001,0x14C2,3);
597
+
598
+            PE43711_ALL_atten_ctrl(ALL_ATT_3_5G);
599
+        }
600
+    }
601
+    if(Prev_data[INDEX_PLL_ON_OFF_3_5G_L] != data_buf[INDEX_PLL_ON_OFF_3_5G_L]){
602
+        Power_ON_OFF_Ctrl(INDEX_PLL_ON_OFF_3_5G_L,data_buf[INDEX_PLL_ON_OFF_3_5G_L]);
603
+        Prev_data[INDEX_PLL_ON_OFF_3_5G_L] = data_buf[INDEX_PLL_ON_OFF_3_5G_L];
604
+        HAL_Delay(1);
605
+//        printf("POWER : %d \r\n",Prev_data[INDEX_PLL_ON_OFF_3_5G_L]);        
606
+        if(data_buf[INDEX_PLL_ON_OFF_3_5G_L]){
607
+//            printf("PLL CTRL START !! \r\n");
608
+#if 1 // PYJ.2019.08.12_BEGIN -- 
609
+//            temp_val = (Prev_data[INDEX_PLL_3_5G_HIGH_H] << 16) | 
610
+//                       (Prev_data[INDEX_PLL_3_5G_HIGH_M] << 8)  | 
611
+//                       (Prev_data[INDEX_PLL_3_5G_HIGH_L]);
612
+            temp_val = (Prev_data[INDEX_PLL_3_5G_LOW_H] << 16) |
613
+                       (Prev_data[INDEX_PLL_3_5G_LOW_M] << 8) | 
614
+                       (Prev_data[INDEX_PLL_3_5G_LOW_L]);
615
+            temp_reg = ADF4153_Freq_Calc(temp_val  * 10000,ADF4153_40MHzREFIN,ADF4153_2RCOUNTER,ADF4153_CHANNEL_SPACING);
616
+//            temp_reg = ADF4153_Freq_Calc(temp_val  * 10000,ADF4153_122_88MHzREFIN,ADF4153_8RCOUNTER,ADF4153_CHANNEL_SPACING);
617
+#else
618
+          temp_reg = ADF4153_Freq_Calc(3465500000,ADF4153_40MHzREFIN,ADF4153_2RCOUNTER,ADF4153_CHANNEL_SPACING);            
619
+#endif // PYJ.2019.08.12_END -- 
620
+//            ADF4153_Module_Ctrl(Pll_3_5_L,temp_reg.N_reg,temp_reg.R_reg,0x13c2,0x3);
621
+            PE43711_ALL_atten_ctrl(ALL_ATT_3_5G);
622
+        }
623
+    }
624
+
625
+    if(Prev_data[INDEX_T_SYNC_DL] != data_buf[INDEX_T_SYNC_DL]){
626
+        Prev_data[INDEX_T_SYNC_DL] = data_buf[INDEX_T_SYNC_DL];
627
+        Power_ON_OFF_Ctrl(INDEX_T_SYNC_DL,data_buf[INDEX_T_SYNC_DL]);
628
+    }
629
+    if(Prev_data[INDEX__T_SYNC_DL] != data_buf[INDEX__T_SYNC_DL]){
630
+        Prev_data[INDEX__T_SYNC_DL] = data_buf[INDEX__T_SYNC_DL];
631
+        Power_ON_OFF_Ctrl(INDEX__T_SYNC_DL,data_buf[INDEX__T_SYNC_DL]);
632
+    }
633
+    if(Prev_data[INDEX_T_SYNC_UL] != data_buf[INDEX_T_SYNC_UL]){
634
+        Prev_data[INDEX_T_SYNC_UL] = data_buf[INDEX_T_SYNC_UL];
635
+        Power_ON_OFF_Ctrl(INDEX_T_SYNC_UL,data_buf[INDEX_T_SYNC_UL]);
636
+    }
637
+    if(Prev_data[INDEX__T_SYNC_UL] != data_buf[INDEX__T_SYNC_UL]){
638
+        Prev_data[INDEX__T_SYNC_UL] = data_buf[INDEX__T_SYNC_UL];
639
+        Power_ON_OFF_Ctrl(INDEX__T_SYNC_UL,data_buf[INDEX__T_SYNC_UL]);
640
+    }
641
+
642
+
643
+    if((Prev_data[INDEX_DAC_VCtrl_A_H] != data_buf[INDEX_DAC_VCtrl_A_H])
644
+        ||(Prev_data[INDEX_DAC_VCtrl_A_L] != data_buf[INDEX_DAC_VCtrl_A_L])){
645
+        ADC_Modify |= 0x01;
646
+          Prev_data[INDEX_DAC_VCtrl_A_H] = data_buf[INDEX_DAC_VCtrl_A_H];
647
+        Prev_data[INDEX_DAC_VCtrl_A_L] = data_buf[INDEX_DAC_VCtrl_A_L];
648
+    }
649
+    if((Prev_data[INDEX_DAC_VCtrl_B_H] != data_buf[INDEX_DAC_VCtrl_B_H])
650
+        ||(Prev_data[INDEX_DAC_VCtrl_B_L] != data_buf[INDEX_DAC_VCtrl_B_L])){
651
+        ADC_Modify |= 0x02;
652
+        
653
+        Prev_data[INDEX_DAC_VCtrl_B_H] = data_buf[INDEX_DAC_VCtrl_B_H];
654
+        Prev_data[INDEX_DAC_VCtrl_B_L] = data_buf[INDEX_DAC_VCtrl_B_L];        
655
+    }    
656
+    if((Prev_data[INDEX_DAC_VCtrl_C_H] != data_buf[INDEX_DAC_VCtrl_C_H])
657
+        ||(Prev_data[INDEX_DAC_VCtrl_C_L] != data_buf[INDEX_DAC_VCtrl_C_L])){
658
+        ADC_Modify |= 0x04;
659
+//        printf("Prev_data[INDEX_DAC_VCtrl_C_H] : %x \r\n",Prev_data[INDEX_DAC_VCtrl_C_H]);
660
+//        printf("Prev_data[INDEX_DAC_VCtrl_C_L] : %x \r\n",Prev_data[INDEX_DAC_VCtrl_C_L]);
661
+
662
+        Prev_data[INDEX_DAC_VCtrl_C_H] = data_buf[INDEX_DAC_VCtrl_C_H];
663
+        Prev_data[INDEX_DAC_VCtrl_C_L] = data_buf[INDEX_DAC_VCtrl_C_L];        
664
+    }
665
+    if((Prev_data[INDEX_DAC_VCtrl_D_H] != data_buf[INDEX_DAC_VCtrl_D_H])
666
+        ||(Prev_data[INDEX_DAC_VCtrl_D_L] != data_buf[INDEX_DAC_VCtrl_D_L])){
667
+        ADC_Modify |= 0x08;
668
+        Prev_data[INDEX_DAC_VCtrl_D_H] = data_buf[INDEX_DAC_VCtrl_D_H];
669
+        Prev_data[INDEX_DAC_VCtrl_D_L] = data_buf[INDEX_DAC_VCtrl_D_L];
670
+    }
671
+    if((Prev_data[INDEX_DAC_VCtrl_E_H] != data_buf[INDEX_DAC_VCtrl_E_H])
672
+        ||(Prev_data[INDEX_DAC_VCtrl_E_L] != data_buf[INDEX_DAC_VCtrl_E_L])){
673
+        ADC_Modify |= 0x10;
674
+
675
+        Prev_data[INDEX_DAC_VCtrl_E_H] = data_buf[INDEX_DAC_VCtrl_E_H];
676
+        Prev_data[INDEX_DAC_VCtrl_E_L] = data_buf[INDEX_DAC_VCtrl_E_L];        
677
+    }
678
+    if((Prev_data[INDEX_DAC_VCtrl_F_H] != data_buf[INDEX_DAC_VCtrl_F_H])
679
+        ||(Prev_data[INDEX_DAC_VCtrl_F_L] != data_buf[INDEX_DAC_VCtrl_F_L])){
680
+        ADC_Modify |= 0x20;
681
+        Prev_data[INDEX_DAC_VCtrl_F_H] = data_buf[INDEX_DAC_VCtrl_F_H];
682
+        Prev_data[INDEX_DAC_VCtrl_F_L] = data_buf[INDEX_DAC_VCtrl_F_L];        
683
+    }
684
+    if((Prev_data[INDEX_DAC_VCtrl_G_H] != data_buf[INDEX_DAC_VCtrl_G_H])
685
+        ||(Prev_data[INDEX_DAC_VCtrl_G_L] != data_buf[INDEX_DAC_VCtrl_G_L])){
686
+        ADC_Modify |= 0x40;
687
+        Prev_data[INDEX_DAC_VCtrl_G_H] = data_buf[INDEX_DAC_VCtrl_G_H];
688
+        Prev_data[INDEX_DAC_VCtrl_G_L] = data_buf[INDEX_DAC_VCtrl_G_L];        
689
+    }    
690
+    if((Prev_data[INDEX_DAC_VCtrl_H_H] != data_buf[INDEX_DAC_VCtrl_H_H])
691
+        ||(Prev_data[INDEX_DAC_VCtrl_H_L] != data_buf[INDEX_DAC_VCtrl_H_L])){
692
+        ADC_Modify |= 0x80;
693
+        Prev_data[INDEX_DAC_VCtrl_H_H] = data_buf[INDEX_DAC_VCtrl_H_H];
694
+        Prev_data[INDEX_DAC_VCtrl_H_L] = data_buf[INDEX_DAC_VCtrl_H_L];        
695
+    }
696
+    if(ADC_Modify){
697
+//        AD5318_Ctrl(0xF000);
698
+//        HAL_Delay(1);
699
+//        AD5318_Ctrl(0x800C);
700
+//        AD5318_Ctrl(0x2FFF );
701
+//        AD5318_Ctrl(0xA000);
702
+//        printf("DAC CTRL START \r\n");
703
+//        AD5318_Ctrl(0x800C);
704
+//        AD5318_Ctrl(0xA000);
705
+//        printf("DAC Change\r\n");
706
+#if 0 // PYJ.2019.10.21_BEGIN -- 
707
+        if(ADC_Modify & 0x01){
708
+          AD5318_Ctrl((Prev_data[INDEX_DAC_VCtrl_A_H] << 8 | Prev_data[INDEX_DAC_VCtrl_A_L]));    
709
+        }
710
+        if(ADC_Modify & 0x02){
711
+          AD5318_Ctrl((Prev_data[INDEX_DAC_VCtrl_B_H] << 8 | Prev_data[INDEX_DAC_VCtrl_B_L]));    
712
+        }
713
+        if(ADC_Modify & 0x04){
714
+          AD5318_Ctrl((Prev_data[INDEX_DAC_VCtrl_C_H] << 8 | Prev_data[INDEX_DAC_VCtrl_C_L]));
715
+        }
716
+        if(ADC_Modify & 0x08){
717
+          AD5318_Ctrl((Prev_data[INDEX_DAC_VCtrl_D_H] << 8 | Prev_data[INDEX_DAC_VCtrl_D_L]));
718
+        }
719
+        if(ADC_Modify & 0x10){
720
+          AD5318_Ctrl((Prev_data[INDEX_DAC_VCtrl_E_H] << 8 | Prev_data[INDEX_DAC_VCtrl_E_L]));    
721
+        }
722
+        if(ADC_Modify & 0x20){
723
+          AD5318_Ctrl((Prev_data[INDEX_DAC_VCtrl_F_H] << 8 | Prev_data[INDEX_DAC_VCtrl_F_L]));
724
+        }
725
+        if(ADC_Modify & 0x40){
726
+          AD5318_Ctrl((Prev_data[INDEX_DAC_VCtrl_G_H] << 8 | Prev_data[INDEX_DAC_VCtrl_G_L]));
727
+        }
728
+        if(ADC_Modify & 0x80){
729
+          AD5318_Ctrl((Prev_data[INDEX_DAC_VCtrl_H_H] << 8 | Prev_data[INDEX_DAC_VCtrl_H_L]));
730
+        }
731
+#endif // PYJ.2019.10.21_END -- 
732
+                      
733
+    }
734
+    
735
+}
736
+
737
+uint8_t temp_crc = 0;
738
+bool RF_Ctrl_Main(uint8_t* data_buf){
739
+    bool ret = false;
740
+    Bluecell_Prot_t type = data_buf[Type];
741
+    ret = RF_Data_Check(&data_buf[Header]); /* ERROR CHECK */
742
+    if(ret == false){
743
+        HAL_UART_Transmit(&huart1,&data_buf[INDEX_BLUE_HEADER],data_buf[INDEX_BLUE_LENGTH] + 2 + 1,3000); 
744
+        return ret;
745
+    }
746
+    
747
+    switch(type){
748
+    case TYPE_BLUECELL_RESET:
749
+        for(uint8_t i =0 ; i < data_buf[Length] + 6; i++)
750
+            printf("%02x ",data_buf[i]);
751
+        printf("Reset Start \r\n");
752
+        NVIC_SystemReset();
753
+        break;
754
+    case TYPE_BLUECELL_SET:
755
+#if 0 // PYJ.2019.07.31_BEGIN -- 
756
+    printf("TYPE_BLUECELL_SET : ");
757
+    for(uint8_t i =0 ; i < INDEX_BLUE_EOF + 1; i++)
758
+        printf("%02x ",data_buf[i]);
759
+#endif // PYJ.2019.07.31_END -- 
760
+        RF_Operate(&data_buf[Header]);
761
+        RF_Status_Ack();
762
+
763
+//        ADF4153_Freq_Calc(3465500000,40000000,2,5000);
764
+//        ADF4153_Freq_Calc(3993450000,40000000,2,5000);
765
+//        halSynSetFreq(1995000000);
766
+//        halSynSetFreq(1600000000);
767
+//        halSynSetFreq(1455000000);        
768
+        break;
769
+    case TYPE_BLUECELL_GET:
770
+#if 0 // PYJ.2019.08.01_BEGIN -- 
771
+        printf("\r\nTYPE_BLUECELL_GET : \r\n");
772
+#endif // PYJ.2019.08.01_END -- 
773
+        RF_Status_Get();
774
+        break;
775
+    case TYPE_BLUECELL_SAVE:
776
+//        printf("\r\nFLASH Write\r\n");
777
+        Bluecell_Flash_Write(&Prev_data[INDEX_BLUE_HEADER]);
778
+        RF_Status_Ack();
779
+
780
+        break;
781
+        default:
782
+#ifdef DEBUG_PRINT // PYJ.2019.07.27_BEGIN --         
783
+            printf("Function : %s   LINE : %d    type : %d \r\n",__func__,__LINE__,type);
784
+#endif
785
+            break;
786
+    }
787
+    return ret;
788
+}

+ 7 - 0
insight/STM32F103_ATTEN_PLL_Zig.si4project/STM32F103_ATTEN_PLL_Zig.bookmarks.xml

@@ -0,0 +1,7 @@
1
+<?xml version="1.0" encoding="utf-8"?>
2
+<SourceInsightBookmarks
3
+	AppVer="4.00.0098"
4
+	AppVerMinReader="4.00.0009"
5
+	>
6
+	<Bookmarks/>
7
+</SourceInsightBookmarks>

BIN
insight/STM32F103_ATTEN_PLL_Zig.si4project/STM32F103_ATTEN_PLL_Zig.siwork


+ 7 - 0
insight/STM32F103_ATTEN_PLL_Zig.si4project/STM32F103_ATTEN_PLL_Zig.snippets.xml

@@ -0,0 +1,7 @@
1
+<?xml version="1.0" encoding="utf-8"?>
2
+<SourceInsightCodeSnippets
3
+	AppVer="4.00.0098"
4
+	AppVerMinReader="4.00.0019"
5
+	>
6
+	<SnippetList/>
7
+</SourceInsightCodeSnippets>

BIN
insight/STM32F103_ATTEN_PLL_Zig.si4project/cache/parse/.._Drivers_CMSIS_Device_ST_STM32F1xx_Include_stm32f103xe.h.sisc


BIN
insight/STM32F103_ATTEN_PLL_Zig.si4project/cache/parse/.._Drivers_CMSIS_Include_core_cm3.h.sisc


BIN
insight/STM32F103_ATTEN_PLL_Zig.si4project/cache/parse/.._Drivers_CMSIS_Include_core_cm4.h.sisc


BIN
insight/STM32F103_ATTEN_PLL_Zig.si4project/cache/parse/.._Drivers_CMSIS_Include_core_cm7.h.sisc


BIN
insight/STM32F103_ATTEN_PLL_Zig.si4project/cache/parse/.._Drivers_CMSIS_Include_core_sc300.h.sisc


BIN
insight/STM32F103_ATTEN_PLL_Zig.si4project/cache/parse/.._Drivers_STM32F1xx_HAL_Driver_Inc_Legacy_stm32_hal_legacy.h.sisc


BIN
insight/STM32F103_ATTEN_PLL_Zig.si4project/cache/parse/.._Drivers_STM32F1xx_HAL_Driver_Inc_stm32f1xx_hal_gpio.h.sisc


BIN
insight/STM32F103_ATTEN_PLL_Zig.si4project/cache/parse/.._Drivers_STM32F1xx_HAL_Driver_Src_stm32f1xx_hal_gpio.c.sisc


BIN
insight/STM32F103_ATTEN_PLL_Zig.si4project/cache/parse/.._Inc_AD5318.h.sisc


BIN
insight/STM32F103_ATTEN_PLL_Zig.si4project/cache/parse/.._Inc_PE43711.h.sisc


BIN
insight/STM32F103_ATTEN_PLL_Zig.si4project/cache/parse/.._Inc_adf4153.h.sisc


BIN
insight/STM32F103_ATTEN_PLL_Zig.si4project/cache/parse/.._Inc_main.h.sisc


BIN
insight/STM32F103_ATTEN_PLL_Zig.si4project/cache/parse/.._Inc_pll_4113.h.sisc


BIN
insight/STM32F103_ATTEN_PLL_Zig.si4project/cache/parse/.._Inc_zig_operate.h.sisc


BIN
insight/STM32F103_ATTEN_PLL_Zig.si4project/cache/parse/.._Src_AD5318.c.sisc


BIN
insight/STM32F103_ATTEN_PLL_Zig.si4project/cache/parse/.._Src_PE43711.c.sisc


BIN
insight/STM32F103_ATTEN_PLL_Zig.si4project/cache/parse/.._Src_adf4153.c.sisc


BIN
insight/STM32F103_ATTEN_PLL_Zig.si4project/cache/parse/.._Src_includes.c.sisc


BIN
insight/STM32F103_ATTEN_PLL_Zig.si4project/cache/parse/.._Src_main.c.sisc


BIN
insight/STM32F103_ATTEN_PLL_Zig.si4project/cache/parse/.._Src_zig_operate.c.sisc