Quellcode durchsuchen

AD5318 함수 이름 변경 ,AD initialize 추가 / ADF4153 Initialize 실제 동작 안하고 변수만 변경 / 불필요한 define 삭제 /PLL Error Cnt 추가 / adf4153 init 추가 / Power Onoff Init 추가 /

YJ vor 5 Jahren
Ursprung
Commit
14ded5ac19
100 geänderte Dateien mit 12792 neuen und 9608 gelöschten Zeilen
  1. BIN
      Debug/STM32F103_ATTEN_PLL_Zig.elf
  2. 1296 1311
      Debug/STM32F103_ATTEN_PLL_Zig.hex
  3. 7540 7441
      Debug/STM32F103_ATTEN_PLL_Zig.list
  4. 661 623
      Debug/STM32F103_ATTEN_PLL_Zig.map
  5. BIN
      Debug/Src/BDA4601.o
  6. 5 6
      Debug/Src/main.su
  7. BIN
      Debug/Src/stm32f1xx_hal_msp.o
  8. BIN
      Debug/Src/stm32f1xx_it.o
  9. 1 1
      Inc/AD5318.h
  10. 2 1
      Inc/adf4153.h
  11. 13 0
      Inc/includes.h
  12. 2 0
      Inc/main.h
  13. 7 0
      Inc/pll_4113.h
  14. 2 0
      Inc/zig_operate.h
  15. 16 1
      Src/AD5318.c
  16. 30 1
      Src/adf4153.c
  17. 74 11
      Src/includes.c
  18. 18 154
      Src/main.c
  19. 90 7
      Src/pll_4113.c
  20. 9 8
      Src/uart.c
  21. 14 41
      Src/zig_operate.c
  22. 31 0
      insight/STM32F103_ATTEN_PLL_Zig.si4project/Backup/AD5318(3793).c
  23. 14 0
      insight/STM32F103_ATTEN_PLL_Zig.si4project/Backup/AD5318(7391).h
  24. 69 0
      insight/STM32F103_ATTEN_PLL_Zig.si4project/Backup/adf4153(4041).h
  25. 398 0
      insight/STM32F103_ATTEN_PLL_Zig.si4project/Backup/adf4153(7162).c
  26. 31 0
      insight/STM32F103_ATTEN_PLL_Zig.si4project/Backup/includes(6065).h
  27. 249 0
      insight/STM32F103_ATTEN_PLL_Zig.si4project/Backup/includes(7528).c
  28. 771 0
      insight/STM32F103_ATTEN_PLL_Zig.si4project/Backup/main(2511).c
  29. 248 0
      insight/STM32F103_ATTEN_PLL_Zig.si4project/Backup/main(2807).h
  30. 31 0
      insight/STM32F103_ATTEN_PLL_Zig.si4project/Backup/pll_4113(1173).h
  31. 241 0
      insight/STM32F103_ATTEN_PLL_Zig.si4project/Backup/pll_4113(2321).c
  32. 99 0
      insight/STM32F103_ATTEN_PLL_Zig.si4project/Backup/uart(5648).c
  33. 695 0
      insight/STM32F103_ATTEN_PLL_Zig.si4project/Backup/zig_operate(3796).c
  34. 133 0
      insight/STM32F103_ATTEN_PLL_Zig.si4project/Backup/zig_operate(6836).h
  35. 1 1
      insight/STM32F103_ATTEN_PLL_Zig.si4project/STM32F103_ATTEN_PLL_Zig.bookmarks.xml
  36. BIN
      insight/STM32F103_ATTEN_PLL_Zig.si4project/STM32F103_ATTEN_PLL_Zig.sip_sym
  37. BIN
      insight/STM32F103_ATTEN_PLL_Zig.si4project/STM32F103_ATTEN_PLL_Zig.sip_xab
  38. BIN
      insight/STM32F103_ATTEN_PLL_Zig.si4project/STM32F103_ATTEN_PLL_Zig.sip_xm
  39. 1 1
      insight/STM32F103_ATTEN_PLL_Zig.si4project/STM32F103_ATTEN_PLL_Zig.siproj_settings.xml
  40. BIN
      insight/STM32F103_ATTEN_PLL_Zig.si4project/STM32F103_ATTEN_PLL_Zig.siwork
  41. BIN
      insight/STM32F103_ATTEN_PLL_Zig.si4project/cache/parse/.._.._Drivers_CMSIS_Device_ST_STM32F1xx_Include_stm32f103xe.h.sisc
  42. BIN
      insight/STM32F103_ATTEN_PLL_Zig.si4project/cache/parse/.._.._Drivers_CMSIS_Device_ST_STM32F1xx_Include_stm32f1xx.h.sisc
  43. BIN
      insight/STM32F103_ATTEN_PLL_Zig.si4project/cache/parse/.._.._Drivers_CMSIS_Device_ST_STM32F1xx_Include_system_stm32f1xx.h.sisc
  44. BIN
      insight/STM32F103_ATTEN_PLL_Zig.si4project/cache/parse/.._.._Drivers_CMSIS_Include_arm_common_tables.h.sisc
  45. BIN
      insight/STM32F103_ATTEN_PLL_Zig.si4project/cache/parse/.._.._Drivers_CMSIS_Include_arm_const_structs.h.sisc
  46. BIN
      insight/STM32F103_ATTEN_PLL_Zig.si4project/cache/parse/.._.._Drivers_CMSIS_Include_arm_math.h.sisc
  47. BIN
      insight/STM32F103_ATTEN_PLL_Zig.si4project/cache/parse/.._.._Drivers_CMSIS_Include_cmsis_armcc.h.sisc
  48. BIN
      insight/STM32F103_ATTEN_PLL_Zig.si4project/cache/parse/.._.._Drivers_CMSIS_Include_cmsis_armcc_V6.h.sisc
  49. BIN
      insight/STM32F103_ATTEN_PLL_Zig.si4project/cache/parse/.._.._Drivers_CMSIS_Include_cmsis_gcc.h.sisc
  50. BIN
      insight/STM32F103_ATTEN_PLL_Zig.si4project/cache/parse/.._.._Drivers_CMSIS_Include_core_cm0.h.sisc
  51. BIN
      insight/STM32F103_ATTEN_PLL_Zig.si4project/cache/parse/.._.._Drivers_CMSIS_Include_core_cm0plus.h.sisc
  52. BIN
      insight/STM32F103_ATTEN_PLL_Zig.si4project/cache/parse/.._.._Drivers_CMSIS_Include_core_cm3.h.sisc
  53. BIN
      insight/STM32F103_ATTEN_PLL_Zig.si4project/cache/parse/.._.._Drivers_CMSIS_Include_core_cm4.h.sisc
  54. BIN
      insight/STM32F103_ATTEN_PLL_Zig.si4project/cache/parse/.._.._Drivers_CMSIS_Include_core_cm7.h.sisc
  55. BIN
      insight/STM32F103_ATTEN_PLL_Zig.si4project/cache/parse/.._.._Drivers_CMSIS_Include_core_cmFunc.h.sisc
  56. BIN
      insight/STM32F103_ATTEN_PLL_Zig.si4project/cache/parse/.._.._Drivers_CMSIS_Include_core_cmInstr.h.sisc
  57. BIN
      insight/STM32F103_ATTEN_PLL_Zig.si4project/cache/parse/.._.._Drivers_CMSIS_Include_core_cmSimd.h.sisc
  58. BIN
      insight/STM32F103_ATTEN_PLL_Zig.si4project/cache/parse/.._.._Drivers_CMSIS_Include_core_sc000.h.sisc
  59. BIN
      insight/STM32F103_ATTEN_PLL_Zig.si4project/cache/parse/.._.._Drivers_CMSIS_Include_core_sc300.h.sisc
  60. BIN
      insight/STM32F103_ATTEN_PLL_Zig.si4project/cache/parse/.._.._Drivers_STM32F1xx_HAL_Driver_Inc_Legacy_stm32_hal_legacy.h.sisc
  61. BIN
      insight/STM32F103_ATTEN_PLL_Zig.si4project/cache/parse/.._.._Drivers_STM32F1xx_HAL_Driver_Inc_stm32f1xx_hal.h.sisc
  62. BIN
      insight/STM32F103_ATTEN_PLL_Zig.si4project/cache/parse/.._.._Drivers_STM32F1xx_HAL_Driver_Inc_stm32f1xx_hal_adc.h.sisc
  63. BIN
      insight/STM32F103_ATTEN_PLL_Zig.si4project/cache/parse/.._.._Drivers_STM32F1xx_HAL_Driver_Inc_stm32f1xx_hal_adc_ex.h.sisc
  64. BIN
      insight/STM32F103_ATTEN_PLL_Zig.si4project/cache/parse/.._.._Drivers_STM32F1xx_HAL_Driver_Inc_stm32f1xx_hal_cortex.h.sisc
  65. BIN
      insight/STM32F103_ATTEN_PLL_Zig.si4project/cache/parse/.._.._Drivers_STM32F1xx_HAL_Driver_Inc_stm32f1xx_hal_def.h.sisc
  66. BIN
      insight/STM32F103_ATTEN_PLL_Zig.si4project/cache/parse/.._.._Drivers_STM32F1xx_HAL_Driver_Inc_stm32f1xx_hal_dma.h.sisc
  67. BIN
      insight/STM32F103_ATTEN_PLL_Zig.si4project/cache/parse/.._.._Drivers_STM32F1xx_HAL_Driver_Inc_stm32f1xx_hal_dma_ex.h.sisc
  68. BIN
      insight/STM32F103_ATTEN_PLL_Zig.si4project/cache/parse/.._.._Drivers_STM32F1xx_HAL_Driver_Inc_stm32f1xx_hal_flash.h.sisc
  69. BIN
      insight/STM32F103_ATTEN_PLL_Zig.si4project/cache/parse/.._.._Drivers_STM32F1xx_HAL_Driver_Inc_stm32f1xx_hal_flash_ex.h.sisc
  70. BIN
      insight/STM32F103_ATTEN_PLL_Zig.si4project/cache/parse/.._.._Drivers_STM32F1xx_HAL_Driver_Inc_stm32f1xx_hal_gpio.h.sisc
  71. BIN
      insight/STM32F103_ATTEN_PLL_Zig.si4project/cache/parse/.._.._Drivers_STM32F1xx_HAL_Driver_Inc_stm32f1xx_hal_gpio_ex.h.sisc
  72. BIN
      insight/STM32F103_ATTEN_PLL_Zig.si4project/cache/parse/.._.._Drivers_STM32F1xx_HAL_Driver_Inc_stm32f1xx_hal_pwr.h.sisc
  73. BIN
      insight/STM32F103_ATTEN_PLL_Zig.si4project/cache/parse/.._.._Drivers_STM32F1xx_HAL_Driver_Inc_stm32f1xx_hal_rcc.h.sisc
  74. BIN
      insight/STM32F103_ATTEN_PLL_Zig.si4project/cache/parse/.._.._Drivers_STM32F1xx_HAL_Driver_Inc_stm32f1xx_hal_rcc_ex.h.sisc
  75. BIN
      insight/STM32F103_ATTEN_PLL_Zig.si4project/cache/parse/.._.._Drivers_STM32F1xx_HAL_Driver_Inc_stm32f1xx_hal_tim.h.sisc
  76. BIN
      insight/STM32F103_ATTEN_PLL_Zig.si4project/cache/parse/.._.._Drivers_STM32F1xx_HAL_Driver_Inc_stm32f1xx_hal_tim_ex.h.sisc
  77. BIN
      insight/STM32F103_ATTEN_PLL_Zig.si4project/cache/parse/.._.._Drivers_STM32F1xx_HAL_Driver_Inc_stm32f1xx_hal_uart.h.sisc
  78. BIN
      insight/STM32F103_ATTEN_PLL_Zig.si4project/cache/parse/.._.._Drivers_STM32F1xx_HAL_Driver_Src_stm32f1xx_hal.c.sisc
  79. BIN
      insight/STM32F103_ATTEN_PLL_Zig.si4project/cache/parse/.._.._Drivers_STM32F1xx_HAL_Driver_Src_stm32f1xx_hal_adc.c.sisc
  80. BIN
      insight/STM32F103_ATTEN_PLL_Zig.si4project/cache/parse/.._.._Drivers_STM32F1xx_HAL_Driver_Src_stm32f1xx_hal_adc_ex.c.sisc
  81. BIN
      insight/STM32F103_ATTEN_PLL_Zig.si4project/cache/parse/.._.._Drivers_STM32F1xx_HAL_Driver_Src_stm32f1xx_hal_cortex.c.sisc
  82. BIN
      insight/STM32F103_ATTEN_PLL_Zig.si4project/cache/parse/.._.._Drivers_STM32F1xx_HAL_Driver_Src_stm32f1xx_hal_dma.c.sisc
  83. BIN
      insight/STM32F103_ATTEN_PLL_Zig.si4project/cache/parse/.._.._Drivers_STM32F1xx_HAL_Driver_Src_stm32f1xx_hal_flash.c.sisc
  84. BIN
      insight/STM32F103_ATTEN_PLL_Zig.si4project/cache/parse/.._.._Drivers_STM32F1xx_HAL_Driver_Src_stm32f1xx_hal_flash_ex.c.sisc
  85. BIN
      insight/STM32F103_ATTEN_PLL_Zig.si4project/cache/parse/.._.._Drivers_STM32F1xx_HAL_Driver_Src_stm32f1xx_hal_gpio.c.sisc
  86. BIN
      insight/STM32F103_ATTEN_PLL_Zig.si4project/cache/parse/.._.._Drivers_STM32F1xx_HAL_Driver_Src_stm32f1xx_hal_gpio_ex.c.sisc
  87. BIN
      insight/STM32F103_ATTEN_PLL_Zig.si4project/cache/parse/.._.._Drivers_STM32F1xx_HAL_Driver_Src_stm32f1xx_hal_pwr.c.sisc
  88. BIN
      insight/STM32F103_ATTEN_PLL_Zig.si4project/cache/parse/.._.._Drivers_STM32F1xx_HAL_Driver_Src_stm32f1xx_hal_rcc.c.sisc
  89. BIN
      insight/STM32F103_ATTEN_PLL_Zig.si4project/cache/parse/.._.._Drivers_STM32F1xx_HAL_Driver_Src_stm32f1xx_hal_rcc_ex.c.sisc
  90. BIN
      insight/STM32F103_ATTEN_PLL_Zig.si4project/cache/parse/.._.._Drivers_STM32F1xx_HAL_Driver_Src_stm32f1xx_hal_tim.c.sisc
  91. BIN
      insight/STM32F103_ATTEN_PLL_Zig.si4project/cache/parse/.._.._Drivers_STM32F1xx_HAL_Driver_Src_stm32f1xx_hal_tim_ex.c.sisc
  92. BIN
      insight/STM32F103_ATTEN_PLL_Zig.si4project/cache/parse/.._.._Drivers_STM32F1xx_HAL_Driver_Src_stm32f1xx_hal_uart.c.sisc
  93. BIN
      insight/STM32F103_ATTEN_PLL_Zig.si4project/cache/parse/.._.._Inc_AD5318.h.sisc
  94. BIN
      insight/STM32F103_ATTEN_PLL_Zig.si4project/cache/parse/.._.._Inc_BDA4601.h.sisc
  95. BIN
      insight/STM32F103_ATTEN_PLL_Zig.si4project/cache/parse/.._.._Inc_CRC16.h.sisc
  96. BIN
      insight/STM32F103_ATTEN_PLL_Zig.si4project/cache/parse/.._.._Inc_PE43711.h.sisc
  97. BIN
      insight/STM32F103_ATTEN_PLL_Zig.si4project/cache/parse/.._.._Inc_adf4153.h.sisc
  98. BIN
      insight/STM32F103_ATTEN_PLL_Zig.si4project/cache/parse/.._.._Inc_flash.h.sisc
  99. BIN
      insight/STM32F103_ATTEN_PLL_Zig.si4project/cache/parse/.._.._Inc_hal_types.h.sisc
  100. 0 0
      insight/STM32F103_ATTEN_PLL_Zig.si4project/cache/parse/.._.._Inc_includes.h.sisc

BIN
Debug/STM32F103_ATTEN_PLL_Zig.elf


Datei-Diff unterdrückt, da er zu groß ist
+ 1296 - 1311
Debug/STM32F103_ATTEN_PLL_Zig.hex


Datei-Diff unterdrückt, da er zu groß ist
+ 7540 - 7441
Debug/STM32F103_ATTEN_PLL_Zig.list


Datei-Diff unterdrückt, da er zu groß ist
+ 661 - 623
Debug/STM32F103_ATTEN_PLL_Zig.map


BIN
Debug/Src/BDA4601.o


+ 5 - 6
Debug/Src/main.su

@@ -1,6 +1,5 @@
1
-main.c:84:6:HAL_TIM_PeriodElapsedCallback	0	static
2
-main.c:93:5:_write	8	static
3
-main.c:99:6:Pol_Delay_us	8	static
4
-main.c:306:6:SystemClock_Config	96	static
5
-main.c:129:5:main	120	static
6
-main.c:747:6:Error_Handler	0	static
1
+main.c:83:6:HAL_TIM_PeriodElapsedCallback	0	static
2
+main.c:92:5:_write	8	static
3
+main.c:170:6:SystemClock_Config	96	static
4
+main.c:104:5:main	56	static
5
+main.c:611:6:Error_Handler	0	static

BIN
Debug/Src/stm32f1xx_hal_msp.o


BIN
Debug/Src/stm32f1xx_it.o


+ 1 - 1
Inc/AD5318.h

@@ -8,7 +8,7 @@
8 8
 #ifndef AD5318_H_
9 9
 #define AD5318_H_
10 10
 #include "main.h"
11
-void SubmitDAC(uint16_t);
11
+void AD5318_Ctrl(uint16_t);
12 12
 
13 13
 
14 14
 #endif /* AD5318_H_ */

+ 2 - 1
Inc/adf4153.h

@@ -63,7 +63,8 @@ typedef struct {
63 63
 //void ADF4153_Module_Ctrl(PLL_Setting_st pll,uint32_t R0,uint32_t R1,uint32_t R2,uint32_t R3);
64 64
 //void ADF4153_Module_Ctrl(PLL_Setting_st pll,uint32_t R0,uint32_t R1,uint32_t R2,uint32_t R3);
65 65
 ADF4153_R_N_Reg_st ADF4153_Freq_Calc(unsigned long long Freq,unsigned long long REFin,uint8_t R_Counter,uint32_t chspacing);
66
-void ADF4153_Init(void);
66
+void ADF4153_Initialize(void);
67
+void ADF4153_Check(void);
67 68
 
68 69
 
69 70
 #endif // __ADF4153_H__

+ 13 - 0
Inc/includes.h

@@ -22,10 +22,23 @@ typedef enum{
22 22
     TYPE_PLL_ON_OFF_3_5G_H,
23 23
 }Bluecell_Power_Index;
24 24
 #endif // PYJ.2019.07.28_END -- 
25
+typedef enum{
26
+  DL_1_8 = 0,
27
+  UL_1_8,
28
+  DL_2_1,
29
+  UL_2_1,
30
+}PLL_Error;
31
+
25 32
 void Power_ON_OFF_Ctrl(uint8_t type,uint8_t cmd);
26 33
 void Path_Init(void);
27 34
 void ATTEN_PLL_PATH_Initialize(void);
28 35
 char *Bluecell_Prot_IndexStr[];
29 36
 
37
+void Error_Message_Occur(PLL_Error mode);
38
+void Pol_Delay_us(volatile uint32_t microseconds);
39
+void Boot_LED_Toggle(void);
40
+void ADC_Check(void);
41
+void Uart_Check(void);
42
+
30 43
 
31 44
 #endif /* INCLUDES_H_ */

+ 2 - 0
Inc/main.h

@@ -71,6 +71,8 @@ typedef struct _ATTEN_Setting_st{
71 71
 /* USER CODE BEGIN EM */
72 72
 volatile uint32_t UartRxTimerCnt;
73 73
 volatile uint32_t AdcTimerCnt;
74
+volatile uint32_t LDTimerCnt;
75
+volatile uint32_t LedTimerCnt;
74 76
 
75 77
 /* USER CODE END EM */
76 78
 

+ 7 - 0
Inc/pll_4113.h

@@ -17,14 +17,21 @@ typedef struct _PLL_Setting_st{
17 17
     uint16_t       PLL_ENABLE_PIN;
18 18
 } PLL_Setting_st;
19 19
 
20
+
20 21
 PLL_Setting_st ADF4113_1_8G_DL;
21 22
 PLL_Setting_st ADF4113_1_8G_UL;
22 23
 PLL_Setting_st ADF4113_2_1G_DL;
23 24
 PLL_Setting_st ADF4113_2_1G_UL;
25
+uint8_t PLL_1_8_DL_Error_Cnt;
26
+uint8_t PLL_1_8_UL_Error_Cnt;
27
+uint8_t PLL_2_1_DL_Error_Cnt;
28
+uint8_t PLL_2_1_UL_Error_Cnt;
24 29
 
25 30
 uint8_t halSynSetFreq(uint32_t rf_Freq);
26 31
 void ADF4113_Module_Ctrl(PLL_Setting_st pll,uint32_t R0,uint32_t R1,uint32_t R2);
27 32
 void ADF4113_Initialize(void);
33
+void ADF4113_Check(void);
34
+
28 35
 
29 36
 //void ADF4113_Module_Ctrl(PLL_Setting_st pll,uint32_t R0,uint32_t R1,uint32_t R2);
30 37
 

+ 2 - 0
Inc/zig_operate.h

@@ -23,6 +23,7 @@ typedef enum {
23 23
     TYPE_BLUECELL_GET   = 2,
24 24
     TYPE_BLUECELL_SAVE   = 3,   
25 25
     TYPE_BLUECELL_ACK    = 4,
26
+    TYPE_BLUECELL_ERROR    = 5,    
26 27
 }Bluecell_Prot_t;
27 28
 
28 29
 typedef enum{
@@ -126,6 +127,7 @@ typedef enum{
126 127
 uint8_t Prev_data[INDEX_BLUE_EOF + 1];
127 128
 uint8_t Flash_Save_data[INDEX_BLUE_EOF + 1];
128 129
 
130
+
129 131
 //extern PLL_Setting_st Pll_3_5_H;
130 132
 //extern PLL_Setting_st Pll_3_5_L;
131 133
 

+ 16 - 1
Src/AD5318.c

@@ -5,7 +5,22 @@
5 5
  *      Author: parkyj
6 6
  */
7 7
  #include "ad5318.h"
8
-void SubmitDAC(uint16_t ShiftTarget) {
8
+ void AD5318_Initialize(void){
9
+   /* * * *DAC Setting* * * * */
10
+    AD5318_Ctrl(0x800C);
11
+    AD5318_Ctrl(0xA000);
12
+    /* * * *DAC OPERATE* * * * */
13
+    AD5318_Ctrl(0x0FFF);
14
+    AD5318_Ctrl(0x13FF);
15
+    AD5318_Ctrl(0x24FF);
16
+    AD5318_Ctrl(0x35FF);
17
+    AD5318_Ctrl(0x46FF);
18
+    AD5318_Ctrl(0x57FF);
19
+    AD5318_Ctrl(0x68FF);
20
+    AD5318_Ctrl(0x79FF);
21
+    HAL_Delay(1);
22
+ }
23
+void AD5318_Ctrl(uint16_t ShiftTarget) {
9 24
     char i; /* serial counter */
10 25
 //    printf("ShiftTarget : %x \r\n",ShiftTarget);
11 26
     HAL_GPIO_WritePin(DA_SYNC_GPIO_Port, DA_SYNC_Pin, GPIO_PIN_RESET);    

+ 30 - 1
Src/adf4153.c

@@ -50,6 +50,8 @@ typedef struct _adf4153_st{
50 50
     uint16_t INT_Value;    
51 51
     double N_Value;
52 52
 }adf4153_st;
53
+extern PLL_Setting_st Pll_3_5_H;
54
+extern PLL_Setting_st Pll_3_5_L;
53 55
 
54 56
 uint32_t pow2(uint32_t val,int32_t val2){
55 57
     for(uint8_t i = 0; i < val2 - 1; i++){
@@ -233,7 +235,8 @@ ADF4153_R_N_Reg_st ADF4153_Freq_Calc(unsigned long long Freq,unsigned long long
233 235
     return temp_reg;
234 236
 //    R_Divider_Reg_Create(temp_adf4153.MOD_Value,R_Counter,1,0,1,0); //prescaler 1 : 8/9 0: 4/5
235 237
 }
236
-void ADF4153_Init(void){
238
+void ADF4153_Initialize(void){
239
+#if 0 // PYJ.2019.08.09_BEGIN -- 
237 240
 PLL_Setting_st Pll_test = {
238 241
       PLL_CLK_3_5G_GPIO_Port,
239 242
       PLL_CLK_3_5G_Pin,
@@ -264,6 +267,32 @@ PLL_Setting_st Pll_test2 = {
264 267
         ADF4153_Module_Ctrl(Pll_test2,temp_reg.N_reg,temp_reg.R_reg,0x13c2,0x3);                  
265 268
     //  ADF4153_Module_Ctrl(Pll_test2,0x313840,0x14BE81,0x13C2,0x3);
266 269
       HAL_Delay(1);
270
+#endif // PYJ.2019.08.09_END -- 
271
+  if(Flash_Save_data[INDEX_PLL_3_5G_DL_H] == 0 && Flash_Save_data[INDEX_PLL_3_5G_DL_L] == 0){
272
+    Flash_Save_data[INDEX_PLL_3_5G_DL_H] = ((34655 & 0xFF00) >> 8);
273
+    Flash_Save_data[INDEX_PLL_3_5G_DL_L] = (34655 & 0x00FF);
274
+  }
275
+  if(Flash_Save_data[INDEX_PLL_3_5G_UL_H] == 0 && Flash_Save_data[INDEX_PLL_3_5G_UL_L] == 0){
276
+    Flash_Save_data[INDEX_PLL_3_5G_UL_H] = ((39345 & 0xFF00) >> 8);
277
+    Flash_Save_data[INDEX_PLL_3_5G_UL_L] = (39345  & 0x00FF);    
278
+  }
279
+
280
+
281
+}
282
+void ADF4153_Check(void){
283
+  ADF4153_R_N_Reg_st temp_reg;
284
+  if(HAL_GPIO_ReadPin(PLL_LD_3_5G_H_GPIO_Port, PLL_LD_3_5G_H_Pin) == GPIO_PIN_RESET 
285
+     && HAL_GPIO_ReadPin(PLL_ON_OFF_3_5G_H_GPIO_Port, PLL_ON_OFF_3_5G_H_Pin) == GPIO_PIN_SET){
286
+       temp_reg = ADF4153_Freq_Calc(3934500000,ADF4153_REFIN,ADF4153_RCOUNTER,ADF4153_CHANNEL_SPACING);
287
+       ADF4153_Module_Ctrl(Pll_3_5_H,temp_reg.N_reg,temp_reg.R_reg,0x13c2,0x3);
288
+       HAL_Delay(1);
289
+     }
290
+     if(HAL_GPIO_ReadPin(PLL_LD_3_5G_L_GPIO_Port, PLL_LD_3_5G_L_Pin) == GPIO_PIN_RESET
291
+     && HAL_GPIO_ReadPin(PLL_ON_OFF_3_5G_L_GPIO_Port, PLL_ON_OFF_3_5G_L_Pin) == GPIO_PIN_SET){
292
+       temp_reg = ADF4153_Freq_Calc(3465500000,ADF4153_REFIN,ADF4153_RCOUNTER,ADF4153_CHANNEL_SPACING);
293
+       ADF4153_Module_Ctrl(Pll_3_5_L,temp_reg.N_reg,temp_reg.R_reg,0x13c2,0x3);
294
+       HAL_Delay(1);
295
+     }
267 296
 
268 297
 
269 298
 }

+ 74 - 11
Src/includes.c

@@ -7,6 +7,7 @@
7 7
 #include "includes.h"
8 8
 
9 9
 #define MACROSTR(k) #k
10
+uint32_t ADCvalue[ADC_EA];
10 11
 
11 12
 
12 13
 char *Bluecell_Prot_IndexStr[] = {
@@ -235,15 +236,77 @@ void ATTEN_PLL_PATH_Initialize(void){
235 236
     RF_Status_Get();
236 237
 }
237 238
 void Power_ON_OFF_Initialize(void){
238
-    HAL_GPIO_WritePin(PATH_EN_3_5G_L_GPIO_Port,PATH_EN_3_5G_L_Pin, GPIO_PIN_RESET);
239
-    HAL_GPIO_WritePin(PATH_EN_3_5G_H_GPIO_Port,PATH_EN_3_5G_H_Pin, GPIO_PIN_RESET);
240
-    HAL_GPIO_WritePin(PATH_EN_3_5G_DL_GPIO_Port,PATH_EN_3_5G_DL_Pin, GPIO_PIN_RESET);
241
-    HAL_GPIO_WritePin(PATH_EN_3_5G_UL_GPIO_Port,PATH_EN_3_5G_UL_Pin, GPIO_PIN_RESET);
242
-    HAL_GPIO_WritePin(PATH_EN_3_5G_L_GPIO_Port,PATH_EN_3_5G_L_Pin, GPIO_PIN_RESET);  
243
-    HAL_GPIO_WritePin(PLL_ON_OFF_3_5G_H_GPIO_Port,PLL_ON_OFF_3_5G_H_Pin, GPIO_PIN_RESET);
244
-    HAL_GPIO_WritePin(PLL_ON_OFF_3_5G_L_GPIO_Port,PLL_ON_OFF_3_5G_L_Pin, GPIO_PIN_RESET);  
245
-    HAL_GPIO_WritePin(PATH_EN_2_1G_DL_GPIO_Port,PATH_EN_2_1G_DL_Pin, GPIO_PIN_RESET);
246
-    HAL_GPIO_WritePin(PATH_EN_2_1G_UL_GPIO_Port,PATH_EN_2_1G_UL_Pin, GPIO_PIN_RESET);
247
-    HAL_GPIO_WritePin(PATH_EN_1_8G_DL_GPIO_Port,PATH_EN_1_8G_DL_Pin, GPIO_PIN_RESET);
248
-    HAL_GPIO_WritePin(PATH_EN_1_8G_UL_GPIO_Port,PATH_EN_1_8G_UL_Pin, GPIO_PIN_RESET);
239
+  /* * * PATH PLL ON OFF SECTION* * */
240
+  HAL_GPIO_WritePin(PATH_EN_3_5G_L_GPIO_Port   ,PATH_EN_3_5G_L_Pin   , GPIO_PIN_RESET);
241
+  HAL_GPIO_WritePin(PATH_EN_3_5G_H_GPIO_Port   ,PATH_EN_3_5G_H_Pin   , GPIO_PIN_RESET);
242
+  HAL_GPIO_WritePin(PATH_EN_3_5G_DL_GPIO_Port  ,PATH_EN_3_5G_DL_Pin  , GPIO_PIN_RESET);
243
+  HAL_GPIO_WritePin(PATH_EN_3_5G_UL_GPIO_Port  ,PATH_EN_3_5G_UL_Pin  , GPIO_PIN_RESET);
244
+  HAL_GPIO_WritePin(PATH_EN_3_5G_L_GPIO_Port   ,PATH_EN_3_5G_L_Pin   , GPIO_PIN_RESET);  
245
+  HAL_GPIO_WritePin(PLL_ON_OFF_3_5G_H_GPIO_Port,PLL_ON_OFF_3_5G_H_Pin, GPIO_PIN_RESET);
246
+  HAL_GPIO_WritePin(PLL_ON_OFF_3_5G_L_GPIO_Port,PLL_ON_OFF_3_5G_L_Pin, GPIO_PIN_RESET);  
247
+  HAL_GPIO_WritePin(PATH_EN_2_1G_DL_GPIO_Port  ,PATH_EN_2_1G_DL_Pin  , GPIO_PIN_RESET);
248
+  HAL_GPIO_WritePin(PATH_EN_2_1G_UL_GPIO_Port  ,PATH_EN_2_1G_UL_Pin  , GPIO_PIN_RESET);
249
+  HAL_GPIO_WritePin(PATH_EN_1_8G_DL_GPIO_Port  ,PATH_EN_1_8G_DL_Pin  , GPIO_PIN_RESET);
250
+  HAL_GPIO_WritePin(PATH_EN_1_8G_UL_GPIO_Port  ,PATH_EN_1_8G_UL_Pin  , GPIO_PIN_RESET);
251
+  /* * * TDD SECTION* * */
252
+  HAL_GPIO_WritePin(_T_SYNC_UL_GPIO_Port,_T_SYNC_UL_Pin, GPIO_PIN_RESET);
253
+  HAL_GPIO_WritePin(T_SYNC_UL_GPIO_Port,T_SYNC_UL_Pin, GPIO_PIN_RESET);
254
+  HAL_GPIO_WritePin(_T_SYNC_DL_GPIO_Port,_T_SYNC_DL_Pin, GPIO_PIN_SET);
255
+  HAL_GPIO_WritePin(T_SYNC_DL_GPIO_Port,T_SYNC_DL_Pin, GPIO_PIN_SET);   
256
+  HAL_Delay(1);
249 257
 }
258
+
259
+void Error_Message_Occur(PLL_Error mode){
260
+  static uint8_t temp_data[7]; 
261
+  temp_data[INDEX_BLUE_HEADER]       = BLUECELL_HEADER;
262
+  temp_data[INDEX_BLUE_TYPE]         = TYPE_BLUECELL_ERROR;
263
+  temp_data[INDEX_BLUE_LENGTH]       = 4;
264
+  temp_data[INDEX_BLUE_CRCINDEX + 0] = INDEX_BLUE_CRCINDEX + 2;
265
+ 
266
+ 
267
+  switch(mode){
268
+    case DL_1_8:
269
+      temp_data[INDEX_BLUE_CRCINDEX + 1] = DL_1_8;
270
+      break;
271
+    case UL_1_8:
272
+      temp_data[INDEX_BLUE_CRCINDEX + 1] = UL_1_8;
273
+      break;
274
+    case DL_2_1:
275
+      temp_data[INDEX_BLUE_CRCINDEX + 1] = DL_2_1;
276
+      break;
277
+    case UL_2_1:
278
+      temp_data[INDEX_BLUE_CRCINDEX + 1] = UL_2_1;
279
+      break;
280
+  }
281
+  temp_data[INDEX_BLUE_CRCINDEX + 2] = STH30_CreateCrc(&temp_data[Type], temp_data[Length]);
282
+  temp_data[INDEX_BLUE_CRCINDEX + 3] = BLUECELL_TAILER;
283
+  HAL_UART_Transmit_DMA(&huart1,&temp_data[INDEX_BLUE_HEADER],temp_data[INDEX_BLUE_LENGTH]  + 3); 
284
+}
285
+void Pol_Delay_us(volatile uint32_t microseconds)
286
+{
287
+  /* Go to number of cycles for system */
288
+  microseconds *= (SystemCoreClock / 1000000);
289
+ 
290
+  /* Delay till end */
291
+  while (microseconds--);
292
+}
293
+void Boot_LED_Toggle(void){
294
+  if(LedTimerCnt > 500){HAL_GPIO_TogglePin(BOOT_LED_GPIO_Port,GPIO_PIN_14);LedTimerCnt = 0;}
295
+}
296
+void ADC_Check(void){
297
+      if(AdcTimerCnt > 2500){
298
+          for(uint8_t i = 0; i< ADC_EA; i++ ){
299
+          Prev_data[INDEX_DET_1_8G_DL_IN_H + i*2]     = (uint16_t)((ADCvalue[i] & 0xFF00) >> 8);
300
+          Prev_data[INDEX_DET_1_8G_DL_IN_L + i*2]     = (uint16_t)(ADCvalue[i] & 0x00FF);
301
+          AdcTimerCnt = 0;
302
+#if 0 // PYJ.2019.08.09_BEGIN -- 
303
+          printf("Prev_data[%d] : %x",i,Prev_data[INDEX_DET_1_8G_DL_IN_H + i]);
304
+          printf("%x\r\n",i,Prev_data[INDEX_DET_1_8G_DL_IN_L + i]);            
305
+#endif // PYJ.2019.08.09_END -- 
306
+         }
307
+      }
308
+}
309
+void Uart_Check(void){
310
+  while (TerminalQueue.data > 0 && UartRxTimerCnt > 100) GetDataFromUartQueue(&hTerminal);
311
+}
312
+

+ 18 - 154
Src/main.c

@@ -55,6 +55,8 @@ DMA_HandleTypeDef hdma_usart1_tx;
55 55
 volatile uint32_t AdcTimerCnt = 0;
56 56
 volatile uint32_t LedTimerCnt = 0;
57 57
 volatile uint32_t UartRxTimerCnt = 0;
58
+volatile uint32_t LDTimerCnt = 0;
59
+
58 60
 extern PLL_Setting_st Pll_3_5_H;
59 61
 extern PLL_Setting_st Pll_3_5_L;
60 62
 
@@ -77,9 +79,6 @@ void ADF4153_Module_Ctrl(PLL_Setting_st pll,uint32_t R0,uint32_t R1,uint32_t R2,
77 79
 /* Private user code ---------------------------------------------------------*/
78 80
 /* USER CODE BEGIN 0 */
79 81
 
80
-uint32_t ADCvalue[ADC_EA];
81
-
82
-#if 1 // PYJ.2019.07.26_BEGIN --
83 82
 
84 83
 void HAL_TIM_PeriodElapsedCallback(TIM_HandleTypeDef *htim)
85 84
 {
@@ -87,38 +86,14 @@ void HAL_TIM_PeriodElapsedCallback(TIM_HandleTypeDef *htim)
87 86
         UartRxTimerCnt++;
88 87
         LedTimerCnt++;
89 88
         AdcTimerCnt++;
89
+        LDTimerCnt++;
90 90
     }
91 91
 } 
92
-#endif // PYJ.2019.07.26_END -- 
93 92
 int _write (int file, uint8_t *ptr, uint16_t len)
94 93
 {
95 94
     HAL_UART_Transmit(&huart1, ptr, len,10);
96
-//    HAL_UART_Transmit_IT(&huart1, ptr, len);
97 95
     return len;
98 96
 }
99
-void Pol_Delay_us(volatile uint32_t microseconds)
100
-{
101
-  /* Go to number of cycles for system */
102
-  microseconds *= (SystemCoreClock / 1000000);
103
- 
104
-  /* Delay till end */
105
-  while (microseconds--);
106
-}
107
-/* define address bits for addressing dac outputs. */
108
-#define SPI_DAC_ADDR0  (1 << 12)
109
-#define SPI_DAC_ADDR1  (1 << 13)
110
-#define SPI_DAC_ADDR2  (1 << 14)
111
-
112
-/* define addresses for each dac output. */
113
-#define SPI_DAC_OUTPUT_A   0x00
114
-#define SPI_DAC_OUTPUT_B   SPI_DAC_ADDR0
115
-#define SPI_DAC_OUTPUT_C   SPI_DAC_ADDR1
116
-#define SPI_DAC_OUTPUT_D  (SPI_DAC_ADDR1 | SPI_DAC_ADDR0)
117
-#define SPI_DAC_OUTPUT_E   SPI_DAC_ADDR2
118
-#define SPI_DAC_OUTPUT_F  (SPI_DAC_ADDR2 | SPI_DAC_ADDR0)
119
-#define SPI_DAC_OUTPUT_G  (SPI_DAC_ADDR2 | SPI_DAC_ADDR1)
120
-#define SPI_DAC_OUTPUT_H  (SPI_DAC_ADDR2 | SPI_DAC_ADDR1 | SPI_DAC_ADDR0)
121
-
122 97
 
123 98
 /* USER CODE END 0 */
124 99
 
@@ -129,6 +104,7 @@ void Pol_Delay_us(volatile uint32_t microseconds)
129 104
 int main(void)
130 105
 {
131 106
   /* USER CODE BEGIN 1 */
107
+ 
132 108
 
133 109
   /* USER CODE END 1 */
134 110
   
@@ -159,139 +135,27 @@ int main(void)
159 135
   /* Initialize interrupts */
160 136
   MX_NVIC_Init();
161 137
   /* USER CODE BEGIN 2 */
162
-  setbuf(stdout, NULL);
163
-#ifdef DEBUG_PRINT
164
-  printf("UART Start \r\n");
165
-#endif /* DEBUG_PRINT */
166
-    HAL_UART_Receive_DMA(&huart1, TerminalQueue.Buffer, 1);
167
-    PE43711_PinInit();
168
-    /* * * PATH PLL ON OFF SECTION* * */
169
-    HAL_GPIO_WritePin(PATH_EN_1_8G_DL_GPIO_Port,PATH_EN_1_8G_DL_Pin, GPIO_PIN_RESET);
170
-    HAL_GPIO_WritePin(PATH_EN_1_8G_UL_GPIO_Port,PATH_EN_1_8G_UL_Pin, GPIO_PIN_RESET);
171
-    HAL_GPIO_WritePin(PATH_EN_2_1G_DL_GPIO_Port,PATH_EN_2_1G_DL_Pin, GPIO_PIN_RESET);
172
-    HAL_GPIO_WritePin(PATH_EN_2_1G_UL_GPIO_Port,PATH_EN_2_1G_UL_Pin, GPIO_PIN_RESET);
173
-    HAL_GPIO_WritePin(PATH_EN_3_5G_DL_GPIO_Port,PATH_EN_3_5G_DL_Pin, GPIO_PIN_RESET);
174
-    HAL_GPIO_WritePin(PATH_EN_3_5G_UL_GPIO_Port,PATH_EN_3_5G_UL_Pin, GPIO_PIN_RESET);
175
-    HAL_GPIO_WritePin(PATH_EN_3_5G_H_GPIO_Port,PATH_EN_3_5G_H_Pin, GPIO_PIN_RESET);
176
-    HAL_GPIO_WritePin(PATH_EN_3_5G_L_GPIO_Port,PATH_EN_3_5G_L_Pin, GPIO_PIN_RESET);
177
-
178
-    HAL_GPIO_WritePin(PLL_ON_OFF_3_5G_H_GPIO_Port,PLL_ON_OFF_3_5G_H_Pin, GPIO_PIN_SET);
179
-    HAL_GPIO_WritePin(PLL_ON_OFF_3_5G_L_GPIO_Port,PLL_ON_OFF_3_5G_L_Pin, GPIO_PIN_SET);  
180
-    
181
-    HAL_GPIO_WritePin(_T_SYNC_UL_GPIO_Port,_T_SYNC_UL_Pin, GPIO_PIN_RESET);
182
-    HAL_GPIO_WritePin(T_SYNC_UL_GPIO_Port,T_SYNC_UL_Pin, GPIO_PIN_RESET);
183
-    HAL_GPIO_WritePin(_T_SYNC_DL_GPIO_Port,_T_SYNC_DL_Pin, GPIO_PIN_SET);
184
-    HAL_GPIO_WritePin(T_SYNC_DL_GPIO_Port,T_SYNC_DL_Pin, GPIO_PIN_SET);     
185
-    
186
-    HAL_Delay(1);
187
-    Path_Init();
188
-    
189
-    ADF4153_Init();
190
-    SubmitDAC(0x800C);
191
-    SubmitDAC(0xA000);
192
-//    HAL_Delay(1);
193
-#if 1
194
-// PYJ.2019.07.30_BEGIN -- 
195
-    SubmitDAC(0x0FFF);
196
-    SubmitDAC(0x13FF);
197
-    SubmitDAC(0x24FF);
198
-    SubmitDAC(0x35FF);
199
-    SubmitDAC(0x46FF);
200
-    SubmitDAC(0x57FF);
201
-    SubmitDAC(0x68FF);
202
-    SubmitDAC(0x79FF);
203
-#endif // PYJ.2019.07.30_END -- 
204
-        
205
-//    ad53_write(0x2BFF);
206
-
207
-#ifdef DEBUG_PRINT
208
-  printf("\r\nPLL_EN_3_5G_L_GPIO_Port\r\n");
209
-#endif /* DEBUG_PRINT */
210
-  
211
-#ifdef DEBUG_PRINT
212
-  printf("\r\nPLL_EN_2_1G_UL_GPIO_Port\r\n");
213
-#endif /* DEBUG_PRINT */
214
-  HAL_Delay(1);
215
-  ADF4113_Initialize();
216
-//  BDA4601_Test();
217
-
138
+  InitUartQueue(&TerminalQueue);
139
+  PE43711_PinInit();
140
+  Power_ON_OFF_Initialize();  
141
+  Path_Init();
218 142
   while(!(HAL_ADCEx_Calibration_Start(&hadc1)==HAL_OK));
219
-//    HAL_ADCEx_Calibration_Start(&hadc1);
220
-    ADF4153_R_N_Reg_st temp_reg;
221
-    Bluecell_Flash_Read(&Flash_Save_data[INDEX_BLUE_HEADER]);
222
-    ATTEN_PLL_PATH_Initialize();
223
-
224
-//  ADF_Module_Ctrl(Pll_test,0x324000,0x144051,0x0017c2,0x0003c7);
225
-    HAL_ADC_Start_DMA(&hadc1, (uint32_t*)ADCvalue, 14);
226
-
143
+  Bluecell_Flash_Read(&Flash_Save_data[INDEX_BLUE_HEADER]);
144
+  ADF4153_Initialize();
145
+  ADF4113_Initialize();
146
+  ATTEN_PLL_PATH_Initialize();
147
+  HAL_ADC_Start_DMA(&hadc1, (uint32_t*)ADCvalue, 14);
227 148
   /* USER CODE END 2 */
228 149
 
229 150
   /* Infinite loop */
230 151
   /* USER CODE BEGIN WHILE */
231
-//  while(HAL_ADCEx_Calibration_Start(&hadc1) != HAL_OK); //ADC Calibration 
232
-//   HAL_ADC_Start_DMA(&hadc1, (uint32_t*)ADCvalue, ADC_EA);
233
- 
234 152
   while (1)
235 153
   {
236
-	    if(HAL_GPIO_ReadPin(PLL_LD_1_8G_DL_GPIO_Port, PLL_LD_1_8G_DL_Pin) == GPIO_PIN_RESET
237
-	        && HAL_GPIO_ReadPin(PLL_EN_1_8G_DL_GPIO_Port, PLL_EN_1_8G_DL_Pin) == GPIO_PIN_SET){
238
-	        ADF4113_Module_Ctrl(ADF4113_1_8G_DL,0x000410,0x03E801,0x9F8092);
239
-	        HAL_Delay(1);
240
-	    }
241
-	    if(HAL_GPIO_ReadPin(PLL_LD_1_8G_UL_GPIO_Port, PLL_LD_1_8G_UL_Pin) == GPIO_PIN_RESET
242
-	        && HAL_GPIO_ReadPin(PLL_EN_1_8G_UL_GPIO_Port, PLL_EN_1_8G_UL_Pin) == GPIO_PIN_SET){
243
-	        ADF4113_Module_Ctrl(ADF4113_1_8G_UL,0x000410,0x038D31,0x9f8092);
244
-	        HAL_Delay(1);
245
-	    }
246
-	    if(HAL_GPIO_ReadPin(PLL_LD_2_1G_DL_GPIO_Port, PLL_LD_2_1G_DL_Pin) == GPIO_PIN_RESET
247
-	        && HAL_GPIO_ReadPin(PLL_EN_2_1G_DL_GPIO_Port, PLL_EN_2_1G_DL_Pin) == GPIO_PIN_SET){
248
-	        ADF4113_Module_Ctrl(ADF4113_2_1G_DL,0x410,0x4DE71,0x9F8092);
249
-	        HAL_Delay(1);
250
-	    }
251
-	    if(HAL_GPIO_ReadPin(PLL_LD_2_1G_UL_GPIO_Port, PLL_LD_2_1G_UL_Pin) == GPIO_PIN_RESET
252
-	        && HAL_GPIO_ReadPin(PLL_EN_2_1G_UL_GPIO_Port, PLL_EN_2_1G_UL_Pin) == GPIO_PIN_SET){
253
-	        ADF4113_Module_Ctrl(ADF4113_2_1G_UL,0x000410,0x59A31,0x9f8092);
254
-	        HAL_Delay(1);
255
-	    }
256
-
257
-    if(HAL_GPIO_ReadPin(PLL_LD_3_5G_H_GPIO_Port, PLL_LD_3_5G_H_Pin) == GPIO_PIN_RESET 
258
-        && HAL_GPIO_ReadPin(PLL_ON_OFF_3_5G_H_GPIO_Port, PLL_ON_OFF_3_5G_H_Pin) == GPIO_PIN_SET){
259
-        temp_reg = ADF4153_Freq_Calc(3934500000,ADF4153_REFIN,ADF4153_RCOUNTER,ADF4153_CHANNEL_SPACING);
260
-        ADF4153_Module_Ctrl(Pll_3_5_H,temp_reg.N_reg,temp_reg.R_reg,0x13c2,0x3);
261
-        HAL_Delay(1);
262
-    }
263
-    if(HAL_GPIO_ReadPin(PLL_LD_3_5G_L_GPIO_Port, PLL_LD_3_5G_L_Pin) == GPIO_PIN_RESET
264
-        && HAL_GPIO_ReadPin(PLL_ON_OFF_3_5G_L_GPIO_Port, PLL_ON_OFF_3_5G_L_Pin) == GPIO_PIN_SET){
265
-        temp_reg = ADF4153_Freq_Calc(3465500000,ADF4153_REFIN,ADF4153_RCOUNTER,ADF4153_CHANNEL_SPACING);
266
-        ADF4153_Module_Ctrl(Pll_3_5_L,temp_reg.N_reg,temp_reg.R_reg,0x13c2,0x3);
267
-        HAL_Delay(1);
268
-    }
269
-    if(LedTimerCnt > 500){HAL_GPIO_TogglePin(BOOT_LED_GPIO_Port,GPIO_PIN_14);LedTimerCnt = 0;}
270
-    while (TerminalQueue.data > 0 && UartRxTimerCnt > 100) GetDataFromUartQueue(&hTerminal);
271
-    if(AdcTimerCnt > 2500){
272
-        
273
-        for(uint8_t i = 0; i< ADC_EA; i++ ){
274
-            Prev_data[INDEX_DET_1_8G_DL_IN_H + i*2]     = (uint16_t)((ADCvalue[i] & 0xFF00) >> 8);
275
-            Prev_data[INDEX_DET_1_8G_DL_IN_L + i*2]     = (uint16_t)(ADCvalue[i] & 0x00FF);
276
-//            printf("Prev_data[%d] : %x",i,Prev_data[INDEX_DET_1_8G_DL_IN_H + i]);
277
-//            printf("%x\r\n",i,Prev_data[INDEX_DET_1_8G_DL_IN_L + i]);            
278
-        }
279
-//        for(int i = 0; i < 14; i++)
280
-//            printf("\r\nYJ[%d] : %x \r\n",i,ADCvalue[i]);
281
-//        HAL_Delay(3000);
282
-#if 0 // PYJ.2019.07.29_BEGIN -- 
283
-        double tmp_volt = 3.3/4095;
284
-        printf("====================================\r\n");
285
-            for(uint8_t i = 0; i< ADC_EA; i++){
286
-                printf("%s :  %f V \r\n",  Bluecell_Prot_IndexStr[INDEX_DET_1_8G_DL_IN_H + i + 1],ADCvalue[i] * tmp_volt);
287
-            }
288
-//                printf("\r\nADC[%d] : %d\r\n ",i,ADCvalue[i]);
289
-        printf("====================================\r\n");
290
-#endif // PYJ.2019.07.29_END -- 
291
-        AdcTimerCnt = 0;
292
-
293
-    }
294
-
154
+    ADF4113_Check();
155
+    ADF4153_Check();
156
+    Boot_LED_Toggle();
157
+    Uart_Check();
158
+    ADC_Check();
295 159
     /* USER CODE END WHILE */
296 160
 
297 161
     /* USER CODE BEGIN 3 */

+ 90 - 7
Src/pll_4113.c

@@ -23,6 +23,13 @@ uint32_t N_Counter_Latch_Create(uint16_t _ACOUNTER,uint16_t _BCOUNTER,uint8_t _C
23 23
 #define ADF4113_CH_STEP          50000
24 24
 #define HAL_SYN_INVALID_PRESCALE  0x04
25 25
 #define ADF4113_REF_FREQ_MHZ    13000000
26
+
27
+uint8_t PLL_1_8_DL_Error_Cnt = 0;
28
+uint8_t PLL_1_8_UL_Error_Cnt = 0;
29
+uint8_t PLL_2_1_DL_Error_Cnt = 0;
30
+uint8_t PLL_2_1_UL_Error_Cnt = 0;
31
+
32
+
26 33
 PLL_Setting_st ADF4113_1_8G_DL = {
27 34
     PLL_CLK_GPIO_Port,
28 35
     PLL_CLK_Pin,
@@ -66,14 +73,90 @@ typedef struct{
66 73
     uint16_t N;       
67 74
 }Adf4113_st;
68 75
 void ADF4113_Initialize(void){
69
-    ADF4113_Module_Ctrl(ADF4113_1_8G_DL,0x000410,0x03E801,0x9F8092);
70
-    HAL_Delay(1);
71
-    ADF4113_Module_Ctrl(ADF4113_1_8G_UL,0x000410,0x038D31,0x9f8092);
72
-    HAL_Delay(1);
73
-    ADF4113_Module_Ctrl(ADF4113_2_1G_DL,0x410,0x4DE71,0x9F8092);
74
-    HAL_Delay(1);
75
-    ADF4113_Module_Ctrl(ADF4113_2_1G_UL,0x000410,0x59A31,0x9f8092);
76
+  if(Flash_Save_data[INDEX_PLL_1_8G_DL_H] == 0 && Flash_Save_data[INDEX_PLL_1_8G_DL_L] == 0){
77
+    Flash_Save_data[INDEX_PLL_1_8G_DL_H] = ((18425 & 0xFF00) >> 8);//0x47;
78
+    Flash_Save_data[INDEX_PLL_1_8G_DL_L] = (18425 & 0x00FF);
79
+  }
80
+  if(Flash_Save_data[INDEX_PLL_1_8G_UL_H] == 0 && Flash_Save_data[INDEX_PLL_1_8G_UL_L] == 0){
81
+    Flash_Save_data[INDEX_PLL_1_8G_UL_H] = ((17475 & 0xFF00) >> 8);
82
+    Flash_Save_data[INDEX_PLL_1_8G_UL_L] = (17475 & 0x00FF);
83
+  }
84
+  if(Flash_Save_data[INDEX_PLL_2_1G_DL_H] == 0 && Flash_Save_data[INDEX_PLL_2_1G_DL_L] == 0){
85
+    Flash_Save_data[INDEX_PLL_2_1G_DL_H] = ((21400 & 0xFF00) >> 8);
86
+    Flash_Save_data[INDEX_PLL_2_1G_DL_L] = (21400 & 0x00FF);
87
+  }
88
+  if(Flash_Save_data[INDEX_PLL_2_1G_UL_H] == 0 && Flash_Save_data[INDEX_PLL_2_1G_UL_L] == 0){
89
+    Flash_Save_data[INDEX_PLL_2_1G_UL_H] = ((19500 & 0xFF00) >> 8);
90
+    Flash_Save_data[INDEX_PLL_2_1G_UL_L] = (19500 & 0x00FF);    
91
+  }
92
+//    ADF4113_Module_Ctrl(ADF4113_1_8G_DL,0x000410,0x03E801,0x9F8092);
93
+//    HAL_Delay(1);
94
+//    ADF4113_Module_Ctrl(ADF4113_1_8G_UL,0x000410,0x038D31,0x9f8092);
95
+//    HAL_Delay(1);
96
+//    ADF4113_Module_Ctrl(ADF4113_2_1G_DL,0x410,0x4DE71,0x9F8092);
97
+//    HAL_Delay(1);
98
+//    ADF4113_Module_Ctrl(ADF4113_2_1G_UL,0x000410,0x59A31,0x9f8092);
99
+}
100
+
101
+
102
+void ADF4113_Check(void){
103
+  uint16_t temp_val = 0;
104
+    if(HAL_GPIO_ReadPin(PLL_LD_1_8G_DL_GPIO_Port, PLL_LD_1_8G_DL_Pin) == GPIO_PIN_RESET){
105
+      temp_val = (Prev_data[INDEX_PLL_1_8G_DL_H] << 8) | (Prev_data[INDEX_PLL_1_8G_DL_L]);
106
+      ADF4113_Module_Ctrl(ADF4113_1_8G_DL,0x410,halSynSetFreq((temp_val * 1000000) / 10 ),0x9F8092);
107
+      //      ADF4113_Module_Ctrl(ADF4113_1_8G_DL,0x000410,0x03E801,0x9F8092);
108
+      if(PLL_1_8_DL_Error_Cnt == 3){
109
+        Error_Message_Occur(DL_1_8);
110
+      }
111
+      if(PLL_1_8_DL_Error_Cnt < 4)
112
+        PLL_1_8_DL_Error_Cnt++;    
113
+      HAL_Delay(1);
114
+    }else{
115
+      PLL_1_8_DL_Error_Cnt = 0;
116
+    }
117
+    if(HAL_GPIO_ReadPin(PLL_LD_1_8G_UL_GPIO_Port, PLL_LD_1_8G_UL_Pin) == GPIO_PIN_RESET){
118
+      temp_val = (Prev_data[INDEX_PLL_1_8G_UL_H] << 8) | (Prev_data[INDEX_PLL_1_8G_UL_L]);
119
+      ADF4113_Module_Ctrl(ADF4113_1_8G_DL,0x410,halSynSetFreq((temp_val * 1000000) / 10 ),0x9F8092);
120
+    //      ADF4113_Module_Ctrl(ADF4113_1_8G_UL,0x000410,0x038D31,0x9f8092);
121
+      if(PLL_1_8_UL_Error_Cnt == 3){
122
+        Error_Message_Occur(UL_1_8);
123
+      }
124
+      if(PLL_1_8_UL_Error_Cnt < 4)
125
+        PLL_1_8_UL_Error_Cnt++;
126
+      HAL_Delay(1);
127
+    }else{
128
+      PLL_1_8_UL_Error_Cnt = 0;
129
+    }
130
+    if(HAL_GPIO_ReadPin(PLL_LD_2_1G_DL_GPIO_Port, PLL_LD_2_1G_DL_Pin) == GPIO_PIN_RESET){
131
+      temp_val = (Prev_data[INDEX_PLL_2_1G_DL_H] << 8) | (Prev_data[INDEX_PLL_2_1G_DL_L]);
132
+      ADF4113_Module_Ctrl(ADF4113_1_8G_DL,0x410,halSynSetFreq((temp_val * 1000000) / 10 ),0x9F8092);
133
+    //      ADF4113_Module_Ctrl(ADF4113_2_1G_DL,0x410,0x4DE71,0x9F8092);
134
+      if(PLL_2_1_DL_Error_Cnt == 3){
135
+        Error_Message_Occur(DL_2_1);
136
+      }
137
+      
138
+      if(PLL_2_1_DL_Error_Cnt < 4)
139
+        PLL_2_1_DL_Error_Cnt++;
140
+      HAL_Delay(1);
141
+    }else{
142
+      PLL_2_1_DL_Error_Cnt = 0;
143
+    }
144
+    if(HAL_GPIO_ReadPin(PLL_LD_2_1G_UL_GPIO_Port, PLL_LD_2_1G_UL_Pin) == GPIO_PIN_RESET){
145
+      temp_val = (Prev_data[INDEX_PLL_2_1G_UL_H] << 8) | (Prev_data[INDEX_PLL_2_1G_UL_L]);
146
+      ADF4113_Module_Ctrl(ADF4113_1_8G_DL,0x410,halSynSetFreq((temp_val * 1000000) / 10 ),0x9F8092);
147
+    //      ADF4113_Module_Ctrl(ADF4113_2_1G_UL,0x000410,0x59A31,0x9f8092);
148
+      if(PLL_2_1_UL_Error_Cnt == 3){
149
+        Error_Message_Occur(UL_2_1);
150
+      }
151
+      if(PLL_2_1_UL_Error_Cnt < 4)
152
+        PLL_2_1_UL_Error_Cnt++;
153
+      HAL_Delay(1);
154
+    }else{
155
+      PLL_2_1_UL_Error_Cnt = 0;
156
+    }
76 157
 }
158
+
159
+
77 160
 uint8_t halSynSetFreq(uint32_t rf_Freq)
78 161
 {
79 162
     uint32_t  R, B;

+ 9 - 8
Src/uart.c

@@ -13,14 +13,15 @@ uart_hal_tx_type uart_hal_tx;
13 13
 
14 14
 void InitUartQueue(pUARTQUEUE pQueue)
15 15
 {
16
-    pQueue->data = pQueue->head = pQueue->tail = 0;
17
-    uart_hal_tx.output_p = uart_hal_tx.input_p = 0;
18
-    if (HAL_UART_Receive_DMA(&hTerminal, TerminalQueue.Buffer, 1) != HAL_OK)
19
-    {
20
-      //_Error_Handler(__FILE__, __LINE__);
21
-    }
22
-    //HAL_UART_Receive_DMA(&hTerminal,  TerminalQueue.Buffer, 1);
23
-    //HAL_UART_Receive_IT(hTerminal, pQueue->Buffer + pQueue->head, 1);
16
+  setbuf(stdout, NULL);
17
+  pQueue->data = pQueue->head = pQueue->tail = 0;
18
+  uart_hal_tx.output_p = uart_hal_tx.input_p = 0;
19
+  if (HAL_UART_Receive_DMA(&hTerminal, TerminalQueue.Buffer, 1) != HAL_OK)
20
+  {
21
+    //_Error_Handler(__FILE__, __LINE__);
22
+  }
23
+  //HAL_UART_Receive_DMA(&hTerminal,  TerminalQueue.Buffer, 1);
24
+  //HAL_UART_Receive_IT(hTerminal, pQueue->Buffer + pQueue->head, 1);
24 25
 }
25 26
 
26 27
 void HAL_UART_RxCpltCallback(UART_HandleTypeDef *huart)

+ 14 - 41
Src/zig_operate.c

@@ -251,34 +251,20 @@ void RF_Operate(uint8_t* data_buf){
251 251
     ADF4153_R_N_Reg_st temp_reg;
252 252
 //    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]);
253 253
     if(Prev_data[INDEX_ATT_1_8G_DL1] != data_buf[INDEX_ATT_1_8G_DL1]){
254
-        
255
-#if 0 // PYJ.2019.07.31_BEGIN -- 
256
-        printf("\r\nLINE : %d  \r\n",__LINE__);    
257
-#endif // PYJ.2019.07.31_END -- 
258 254
         BDA4601_atten_ctrl(BDA4601_1_8G_DL1,(data_buf[INDEX_ATT_1_8G_DL1]));
259 255
         Prev_data[INDEX_ATT_1_8G_DL1] = data_buf[INDEX_ATT_1_8G_DL1];
260 256
     }
261 257
     if(Prev_data[INDEX_ATT_1_8G_DL2] != data_buf[INDEX_ATT_1_8G_DL2]){
262
-#ifdef DEBUG_PRINT
263
-        printf("\r\nLINE : %d  \r\n",__LINE__);    
264
-#endif /* DEBUG_PRINT */
265 258
         BDA4601_atten_ctrl(BDA4601_1_8G_DL2,(data_buf[INDEX_ATT_1_8G_DL2]));
266 259
         Prev_data[INDEX_ATT_1_8G_DL2] = data_buf[INDEX_ATT_1_8G_DL2];
267 260
     }
268 261
     if(Prev_data[INDEX_ATT_1_8G_UL1] != data_buf[INDEX_ATT_1_8G_UL1]){
269
-#ifdef DEBUG_PRINT
270
-        printf("\r\nLINE : %d  \r\n",__LINE__);    
271
-#endif /* DEBUG_PRINT */
272 262
         BDA4601_atten_ctrl(BDA4601_1_8G_UL1,(data_buf[INDEX_ATT_1_8G_UL1]));
273 263
         Prev_data[INDEX_ATT_1_8G_UL1] = data_buf[INDEX_ATT_1_8G_UL1];
274 264
     }
275 265
     if(Prev_data[INDEX_ATT_1_8G_UL2] != data_buf[INDEX_ATT_1_8G_UL2]){
276
-#ifdef DEBUG_PRINT
277
-        printf("\r\nLINE : %d  \r\n",__LINE__);    
278
-#endif /* DEBUG_PRINT */
279 266
         BDA4601_atten_ctrl(BDA4601_1_8G_UL2,(data_buf[INDEX_ATT_1_8G_UL2]));
280 267
         Prev_data[INDEX_ATT_1_8G_UL2] = data_buf[INDEX_ATT_1_8G_UL2];
281
-
282 268
     }
283 269
     if(Prev_data[INDEX_ATT_1_8G_UL3] != data_buf[INDEX_ATT_1_8G_UL3]){
284 270
         BDA4601_atten_ctrl(BDA4601_1_8G_UL3,(data_buf[INDEX_ATT_1_8G_UL3]));
@@ -286,33 +272,21 @@ void RF_Operate(uint8_t* data_buf){
286 272
 
287 273
     }
288 274
     if(Prev_data[INDEX_ATT_1_8G_UL4] != data_buf[INDEX_ATT_1_8G_UL4]){
289
-#ifdef DEBUG_PRINT
290
-        printf("\r\nLINE : %d  \r\n",__LINE__);    
291
-#endif /* DEBUG_PRINT */
292 275
         BDA4601_atten_ctrl(BDA4601_1_8G_UL4,(data_buf[INDEX_ATT_1_8G_UL4]));
293 276
         Prev_data[INDEX_ATT_1_8G_UL4] = data_buf[INDEX_ATT_1_8G_UL4];
294 277
 
295 278
     }
296 279
     if(Prev_data[INDEX_ATT_2_1G_DL1] != data_buf[INDEX_ATT_2_1G_DL1]){
297
-#ifdef DEBUG_PRINT
298
-        printf("\r\nLINE : %d  \r\n",__LINE__);    
299
-#endif /* DEBUG_PRINT */
300 280
         BDA4601_atten_ctrl(BDA4601_2_1G_DL1,(data_buf[INDEX_ATT_2_1G_DL1]));
301 281
         Prev_data[INDEX_ATT_2_1G_DL1] = data_buf[INDEX_ATT_2_1G_DL1];
302 282
 
303 283
     }
304 284
     if(Prev_data[INDEX_ATT_2_1G_DL2] != data_buf[INDEX_ATT_2_1G_DL2]){
305
-#ifdef DEBUG_PRINT
306
-        printf("\r\nLINE : %d  \r\n",__LINE__);    
307
-#endif /* DEBUG_PRINT */
308 285
         BDA4601_atten_ctrl(BDA4601_2_1G_DL2,(data_buf[INDEX_ATT_2_1G_DL2]));
309 286
         Prev_data[INDEX_ATT_2_1G_DL2] = data_buf[INDEX_ATT_2_1G_DL2];
310 287
 
311 288
     }
312 289
     if(Prev_data[INDEX_ATT_2_1G_UL1] != data_buf[INDEX_ATT_2_1G_UL1]){
313
-#ifdef DEBUG_PRINT
314
-        printf("\r\nLINE : %d  \r\n",__LINE__);    
315
-#endif /* DEBUG_PRINT */
316 290
         BDA4601_atten_ctrl(BDA4601_2_1G_UL1,(data_buf[INDEX_ATT_2_1G_UL1]));
317 291
         Prev_data[INDEX_ATT_2_1G_UL1] = data_buf[INDEX_ATT_2_1G_UL1];
318 292
 
@@ -325,7 +299,6 @@ void RF_Operate(uint8_t* data_buf){
325 299
     if(Prev_data[INDEX_ATT_2_1G_UL3] != data_buf[INDEX_ATT_2_1G_UL3]){
326 300
         BDA4601_atten_ctrl(BDA4601_2_1G_UL3,(data_buf[INDEX_ATT_2_1G_UL3]));
327 301
         Prev_data[INDEX_ATT_2_1G_UL3] = data_buf[INDEX_ATT_2_1G_UL3];
328
-
329 302
     }
330 303
     if(Prev_data[INDEX_ATT_2_1G_UL4] != data_buf[INDEX_ATT_2_1G_UL4]){
331 304
         BDA4601_atten_ctrl(BDA4601_2_1G_UL4,(data_buf[INDEX_ATT_2_1G_UL4]));
@@ -622,23 +595,23 @@ void RF_Operate(uint8_t* data_buf){
622 595
         Prev_data[INDEX_DAC_VCtrl_H_L] = data_buf[INDEX_DAC_VCtrl_H_L];        
623 596
     }
624 597
     if(ADC_Modify){
625
-//        SubmitDAC(0xF000);
598
+//        AD5318_Ctrl(0xF000);
626 599
 //        HAL_Delay(1);
627
-//        SubmitDAC(0x800C);
628
-//        SubmitDAC(0x2FFF );
629
-//        SubmitDAC(0xA000);
600
+//        AD5318_Ctrl(0x800C);
601
+//        AD5318_Ctrl(0x2FFF );
602
+//        AD5318_Ctrl(0xA000);
630 603
 //        printf("DAC CTRL START \r\n");
631
-//        SubmitDAC(0x800C);
632
-//        SubmitDAC(0xA000);
604
+//        AD5318_Ctrl(0x800C);
605
+//        AD5318_Ctrl(0xA000);
633 606
 //        printf("DAC Change\r\n");
634
-        SubmitDAC((Prev_data[INDEX_DAC_VCtrl_A_H] << 8 | Prev_data[INDEX_DAC_VCtrl_A_L]));    
635
-        SubmitDAC((Prev_data[INDEX_DAC_VCtrl_B_H] << 8 | Prev_data[INDEX_DAC_VCtrl_B_L]));    
636
-        SubmitDAC((Prev_data[INDEX_DAC_VCtrl_C_H] << 8 | Prev_data[INDEX_DAC_VCtrl_C_L]));
637
-        SubmitDAC((Prev_data[INDEX_DAC_VCtrl_D_H] << 8 | Prev_data[INDEX_DAC_VCtrl_D_L]));
638
-        SubmitDAC((Prev_data[INDEX_DAC_VCtrl_E_H] << 8 | Prev_data[INDEX_DAC_VCtrl_E_L]));    
639
-        SubmitDAC((Prev_data[INDEX_DAC_VCtrl_F_H] << 8 | Prev_data[INDEX_DAC_VCtrl_F_L]));
640
-        SubmitDAC((Prev_data[INDEX_DAC_VCtrl_G_H] << 8 | Prev_data[INDEX_DAC_VCtrl_G_L]));
641
-        SubmitDAC((Prev_data[INDEX_DAC_VCtrl_H_H] << 8 | Prev_data[INDEX_DAC_VCtrl_H_L]));
607
+        AD5318_Ctrl((Prev_data[INDEX_DAC_VCtrl_A_H] << 8 | Prev_data[INDEX_DAC_VCtrl_A_L]));    
608
+        AD5318_Ctrl((Prev_data[INDEX_DAC_VCtrl_B_H] << 8 | Prev_data[INDEX_DAC_VCtrl_B_L]));    
609
+        AD5318_Ctrl((Prev_data[INDEX_DAC_VCtrl_C_H] << 8 | Prev_data[INDEX_DAC_VCtrl_C_L]));
610
+        AD5318_Ctrl((Prev_data[INDEX_DAC_VCtrl_D_H] << 8 | Prev_data[INDEX_DAC_VCtrl_D_L]));
611
+        AD5318_Ctrl((Prev_data[INDEX_DAC_VCtrl_E_H] << 8 | Prev_data[INDEX_DAC_VCtrl_E_L]));    
612
+        AD5318_Ctrl((Prev_data[INDEX_DAC_VCtrl_F_H] << 8 | Prev_data[INDEX_DAC_VCtrl_F_L]));
613
+        AD5318_Ctrl((Prev_data[INDEX_DAC_VCtrl_G_H] << 8 | Prev_data[INDEX_DAC_VCtrl_G_L]));
614
+        AD5318_Ctrl((Prev_data[INDEX_DAC_VCtrl_H_H] << 8 | Prev_data[INDEX_DAC_VCtrl_H_L]));
642 615
     }
643 616
     
644 617
 }

+ 31 - 0
insight/STM32F103_ATTEN_PLL_Zig.si4project/Backup/AD5318(3793).c

@@ -0,0 +1,31 @@
1
+/*
2
+ * AD5318.c
3
+ *
4
+ *  Created on: 2019. 7. 30.
5
+ *      Author: parkyj
6
+ */
7
+ #include "ad5318.h"
8
+void SubmitDAC(uint16_t ShiftTarget) {
9
+    char i; /* serial counter */
10
+//    printf("ShiftTarget : %x \r\n",ShiftTarget);
11
+    HAL_GPIO_WritePin(DA_SYNC_GPIO_Port, DA_SYNC_Pin, GPIO_PIN_RESET);    
12
+    for (i=0;i < 16;i++) { /* loop through all 16 data bits */
13
+        HAL_GPIO_WritePin(DA_SCLK_GPIO_Port, DA_SCLK_Pin, GPIO_PIN_SET); /* rise clk line again */
14
+        if (ShiftTarget & 0x8000) HAL_GPIO_WritePin(DA_DIN_GPIO_Port, DA_DIN_Pin, GPIO_PIN_SET);
15
+        else HAL_GPIO_WritePin(DA_DIN_GPIO_Port, DA_DIN_Pin, GPIO_PIN_RESET); /* set data bit */
16
+        HAL_GPIO_WritePin(DA_SCLK_GPIO_Port, DA_SCLK_Pin, GPIO_PIN_RESET); /* lower clock line */
17
+        ShiftTarget <<= 1;
18
+    }
19
+    HAL_GPIO_WritePin(DA_LDAC_GPIO_Port, DA_LDAC_Pin, GPIO_PIN_SET);        
20
+    Pol_Delay_us(10);
21
+    HAL_GPIO_WritePin(DA_LDAC_GPIO_Port, DA_LDAC_Pin, GPIO_PIN_RESET);    
22
+    HAL_GPIO_WritePin(DA_SYNC_GPIO_Port, DA_SYNC_Pin, GPIO_PIN_SET);    
23
+    HAL_GPIO_WritePin(DA_DIN_GPIO_Port, DA_DIN_Pin, GPIO_PIN_RESET);
24
+    HAL_GPIO_WritePin(DA_LDAC_GPIO_Port, DA_LDAC_Pin, GPIO_PIN_SET);            
25
+    /* rise DAC SYNC line again */
26
+    HAL_GPIO_WritePin(DA_SYNC_GPIO_Port, DA_SYNC_Pin, GPIO_PIN_RESET);    
27
+    HAL_GPIO_WritePin(DA_LDAC_GPIO_Port, DA_LDAC_Pin, GPIO_PIN_RESET);            
28
+    
29
+}
30
+
31
+

+ 14 - 0
insight/STM32F103_ATTEN_PLL_Zig.si4project/Backup/AD5318(7391).h

@@ -0,0 +1,14 @@
1
+/*
2
+ * AD5318.h
3
+ *
4
+ *  Created on: 2019. 7. 30.
5
+ *      Author: parkyj
6
+ */
7
+
8
+#ifndef AD5318_H_
9
+#define AD5318_H_
10
+#include "main.h"
11
+void SubmitDAC(uint16_t);
12
+
13
+
14
+#endif /* AD5318_H_ */

+ 69 - 0
insight/STM32F103_ATTEN_PLL_Zig.si4project/Backup/adf4153(4041).h

@@ -0,0 +1,69 @@
1
+/**************************************************************************//**
2
+*   @file   adf4153.h
3
+*   @brief  Header file of adf4153 driver.
4
+*
5
+*   @author Istvan Csomortani (istvan.csomortani@analog.com)
6
+*
7
+*******************************************************************************
8
+* Copyright 2013(c) Analog Devices, Inc.
9
+*
10
+* All rights reserved.
11
+*
12
+* Redistribution and use in source and binary forms, with or without modification,
13
+* are permitted provided that the following conditions are met:
14
+*  - Redistributions of source code must retain the above copyright
15
+*    notice, this list of conditions and the following disclaimer.
16
+*  - Redistributions in binary form must reproduce the above copyright
17
+*    notice, this list of conditions and the following disclaimer in
18
+*    the documentation and/or other materials provided with the
19
+*    distribution.
20
+*  - Neither the name of Analog Devices, Inc. nor the names of its
21
+*    contributors may be used to endorse or promote products derived
22
+*    from this software without specific prior written permission.
23
+*  - The use of this software may or may not infringe the patent rights
24
+*    of one or more patent holders.  This license does not release you
25
+*    from the requirement that you obtain separate licenses from these
26
+*    patent holders to use this software.
27
+*  - Use of the software either in source or binary form, must be run
28
+*    on or directly connected to an Analog Devices Inc. component.
29
+*
30
+* THIS SOFTWARE IS PROVIDED BY ANALOG DEVICES "AS IS" AND ANY EXPRESS OR IMPLIED
31
+* WARRANTIES, INCLUDING, BUT NOT LIMITED TO, NON-INFRINGEMENT, MERCHANTABILITY
32
+* AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.
33
+* IN NO EVENT SHALL ANALOG DEVICES BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
34
+* SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
35
+* INTELLECTUAL PROPERTY RIGHTS, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
36
+* LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND
37
+* ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
38
+* (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
39
+* SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
40
+*
41
+******************************************************************************/
42
+#ifndef __ADF4153_H__
43
+#define __ADF4153_H__
44
+
45
+#include "main.h"
46
+
47
+
48
+
49
+
50
+#define ADF4153_REFIN 40000000
51
+#define ADF4153_RCOUNTER 2
52
+#define ADF4153_CHANNEL_SPACING 5000
53
+
54
+
55
+typedef struct {
56
+    uint32_t R_reg;
57
+    uint32_t N_reg;
58
+}ADF4153_R_N_Reg_st;
59
+
60
+//void ADF4153_Freq_Calc(unsigned long long Freq,unsigned long long REFin,uint8_t R_Counter,uint32_t chspacing);
61
+
62
+
63
+//void ADF4153_Module_Ctrl(PLL_Setting_st pll,uint32_t R0,uint32_t R1,uint32_t R2,uint32_t R3);
64
+//void ADF4153_Module_Ctrl(PLL_Setting_st pll,uint32_t R0,uint32_t R1,uint32_t R2,uint32_t R3);
65
+ADF4153_R_N_Reg_st ADF4153_Freq_Calc(unsigned long long Freq,unsigned long long REFin,uint8_t R_Counter,uint32_t chspacing);
66
+void ADF4153_Init(void);
67
+
68
+
69
+#endif // __ADF4153_H__

+ 398 - 0
insight/STM32F103_ATTEN_PLL_Zig.si4project/Backup/adf4153(7162).c

@@ -0,0 +1,398 @@
1
+/******************************************************************************
2
+*   @file   ADF4153.c
3
+*   @brief  Implementation of ADF4153 Driver for Microblaze processor.
4
+*   @author Istvan Csomortani (istvan.csomortani@analog.com)
5
+*
6
+*******************************************************************************
7
+* Copyright 2013(c) Analog Devices, Inc.
8
+*
9
+* All rights reserved.
10
+*
11
+* Redistribution and use in source and binary forms, with or without modification,
12
+* are permitted provided that the following conditions are met:
13
+*  - Redistributions of source code must retain the above copyright
14
+*    notice, this list of conditions and the following disclaimer.
15
+*  - Redistributions in binary form must reproduce the above copyright
16
+*    notice, this list of conditions and the following disclaimer in
17
+*    the documentation and/or other materials provided with the
18
+*    distribution.
19
+*  - Neither the name of Analog Devices, Inc. nor the names of its
20
+*    contributors may be used to endorse or promote products derived
21
+*    from this software without specific prior written permission.
22
+*  - The use of this software may or may not infringe the patent rights
23
+*    of one or more patent holders.  This license does not release you
24
+*    from the requirement that you obtain separate licenses from these
25
+*    patent holders to use this software.
26
+*  - Use of the software either in source or binary form, must be run
27
+*    on or directly connected to an Analog Devices Inc. component.
28
+*
29
+* THIS SOFTWARE IS PROVIDED BY ANALOG DEVICES "AS IS" AND ANY EXPRESS OR IMPLIED
30
+* WARRANTIES, INCLUDING, BUT NOT LIMITED TO, NON-INFRINGEMENT, MERCHANTABILITY
31
+* AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.
32
+* IN NO EVENT SHALL ANALOG DEVICES BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
33
+* SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
34
+* INTELLECTUAL PROPERTY RIGHTS, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
35
+* LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND
36
+* ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
37
+* (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
38
+* SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
39
+*
40
+******************************************************************************/
41
+
42
+/*****************************************************************************/
43
+/****************************** Include Files ********************************/
44
+/*****************************************************************************/
45
+#include "adf4153.h"
46
+typedef struct _adf4153_st{
47
+    unsigned long long PFD_Value;
48
+    uint16_t MOD_Value;
49
+    uint32_t FRAC_Value;
50
+    uint16_t INT_Value;    
51
+    double N_Value;
52
+}adf4153_st;
53
+
54
+uint32_t pow2(uint32_t val,int32_t val2){
55
+    for(uint8_t i = 0; i < val2 - 1; i++){
56
+        val = val * val;
57
+    }
58
+
59
+    return val;
60
+}
61
+
62
+double round_up( double value, int pos )
63
+{
64
+    double temp;
65
+    temp = value * pow2( 10, pos );  // �썝�븯�뒗 �냼�닔�젏 �옄由ъ닔留뚰겮 10�쓽 �늻�듅�쓣 �븿
66
+    temp =  (int)(temp + 0.5);          // 0.5瑜� �뜑�븳�썑 踰꾨┝�븯硫� 諛섏삱由쇱씠 �맖
67
+    temp *= pow2( 10, -pos );           // �떎�떆 �썝�옒 �냼�닔�젏 �옄由ъ닔濡�
68
+
69
+    return temp;
70
+}
71
+
72
+
73
+double N_Reg_Value_Calc(double val){
74
+    return  val / 1000;
75
+}
76
+uint32_t N_Divider_Reg_Create(uint16_t _FRAC,uint16_t _INT,uint8_t _FASTLOCK){
77
+    uint32_t ret = 0;
78
+    uint32_t shift_bit = 0x01;
79
+    uint8_t control_bit = 0;
80
+    uint8_t i = 0;
81
+#ifdef DEBUG_PRINT
82
+    printf("FRAC : %d INT : %d \r\n",(int)_FRAC,_INT);
83
+#endif /* DEBUG_PRINT */
84
+    for(i = 0; i < 2; i++){
85
+        if(control_bit & 0x01)
86
+            ret += shift_bit << i;
87
+        control_bit = control_bit >> 1;
88
+    }
89
+#ifdef DEBUG_PRINT
90
+    printf("\r\nLINE : %d  ret : %x\r\n",__LINE__,ret);
91
+#endif /* DEBUG_PRINT */
92
+    for(i = 2; i < 14; i++){
93
+        if(_FRAC & 0x01)
94
+            ret += shift_bit << i;
95
+        _FRAC = _FRAC >> 1;
96
+    }
97
+#ifdef DEBUG_PRINT
98
+    printf("\r\nLINE : %d  ret : %x\r\n",__LINE__,ret);    
99
+#endif /* DEBUG_PRINT */
100
+    for(i = 14; i < 22; i++){
101
+        if(_INT & 0x01)
102
+            ret += shift_bit << i;
103
+        _INT = _INT >> 1;
104
+    }  
105
+#ifdef DEBUG_PRINT
106
+    printf("\r\nLINE : %d  ret : %x\r\n",__LINE__,ret);    
107
+#endif /* DEBUG_PRINT */
108
+    if(_FASTLOCK & 0x01)
109
+            ret += shift_bit << i;
110
+#ifdef DEBUG_PRINT
111
+    printf("\r\nLINE : %d  ret : %x\r\n",__LINE__,ret);
112
+#endif /* DEBUG_PRINT */
113
+
114
+    return ret;
115
+}
116
+uint32_t R_Divider_Reg_Create(uint16_t _MOD,uint8_t _RCOUNTER,uint8_t _PRESCALER,uint8_t _RESERVED,uint8_t _MUXOUT,uint8_t LOAD_CONTROL){
117
+    uint32_t ret = 0;
118
+    uint32_t shift_bit = 0x01;
119
+    uint8_t control_bit = 1;
120
+    uint8_t i = 0;
121
+#ifdef DEBUG_PRINT
122
+    printf("_MOD : %d INT : %d \r\n",_MOD,_RCOUNTER);
123
+#endif /* DEBUG_PRINT */
124
+
125
+#ifdef DEBUG_PRINT
126
+    printf("\r\nLINE : %d  ret : %x\r\n",__LINE__,ret);
127
+#endif /* DEBUG_PRINT */
128
+    for(i = 0; i < 2; i++){
129
+        if(control_bit & 0x01)
130
+            ret += shift_bit << i;
131
+        control_bit = control_bit >> 1;
132
+    }
133
+#ifdef DEBUG_PRINT
134
+    printf("\r\nLINE : %d  ret : %x\r\n",__LINE__,ret);
135
+#endif /* DEBUG_PRINT */
136
+    for(i = 2; i < 14; i++){
137
+        if(_MOD & 0x01)
138
+            ret += shift_bit << i;
139
+        _MOD = _MOD >> 1;
140
+    }
141
+    for(i = 14; i < 18; i++){
142
+        if(_RCOUNTER & 0x01)
143
+            ret += shift_bit << i;
144
+        _RCOUNTER = _RCOUNTER >> 1;
145
+    }  
146
+    if(_PRESCALER & 0x01)
147
+            ret += shift_bit << i++;
148
+    if(_RESERVED & 0x01)
149
+            ret += shift_bit << i++;
150
+    for(i = 19; i < 22; i++){
151
+        if(_MUXOUT & 0x01)
152
+            ret += shift_bit << i;
153
+        _MUXOUT = _MUXOUT >> 1;
154
+    }   
155
+    if(LOAD_CONTROL & 0x01)
156
+        ret += shift_bit << i++;
157
+
158
+    return ret;
159
+}
160
+
161
+ADF4153_R_N_Reg_st ADF4153_Freq_Calc(unsigned long long Freq,unsigned long long REFin,uint8_t R_Counter,uint32_t chspacing){
162
+    adf4153_st temp_adf4153;
163
+    double temp = 0;
164
+    ADF4153_R_N_Reg_st temp_reg;
165
+    temp_adf4153.PFD_Value  =  REFin / (R_Counter * 1000);
166
+    temp_adf4153.MOD_Value  =  (temp_adf4153.PFD_Value / chspacing) * 1000;
167
+    temp_adf4153.N_Value    =  N_Reg_Value_Calc(((double)(Freq / 1000) /  (double)(temp_adf4153.PFD_Value / 1000)));
168
+    temp_adf4153.INT_Value  =   temp_adf4153.N_Value ;
169
+#ifdef DEBUG_PRINT
170
+    printf("\r\ntemp_adf4153.N_Value : %f  temp_adf4153.INT_Value : %f  temp_adf4153.MOD_Value : %f \r\n",temp_adf4153.N_Value,(double)temp_adf4153.INT_Value,(double)temp_adf4153.MOD_Value);
171
+#endif /* DEBUG_PRINT */
172
+    temp = temp_adf4153.N_Value - (double)temp_adf4153.INT_Value;
173
+#ifdef DEBUG_PRINT
174
+    printf("\r\n temp_adf4153.N_Value - (double)temp_adf4153.INT_Value) : %f  temp * (double)temp_adf4153.MOD_Value : %f \r\n",temp,temp * (double)temp_adf4153.MOD_Value);
175
+#endif /* DEBUG_PRINT */
176
+    temp_adf4153.FRAC_Value =  (float)temp * temp_adf4153.MOD_Value;
177
+   
178
+#ifdef DEBUG_PRINT
179
+    printf("\r\ntemp_adf4153.N_Value : %x   : %f ",temp_adf4153.N_Value,((double)(Freq / 1000) /  (double)(temp_adf4153.PFD_Value / 1000)) / 1000);
180
+    printf("temp_adf4153.MOD_Value : %x   : %d \r\n",temp_adf4153.MOD_Value,temp_adf4153.MOD_Value);
181
+#endif /* DEBUG_PRINT */
182
+    uint16_t tempmod = temp_adf4153.FRAC_Value;
183
+    for(uint8_t i = 0; i < 12; i++){
184
+#ifdef DEBUG_PRINT
185
+        if(temp_adf4153.MOD_Value & 0x800){
186
+            printf("1");
187
+        }else{
188
+            printf("0");
189
+        }
190
+#endif /* DEBUG_PRINT */
191
+        tempmod = tempmod << 1;
192
+    }
193
+#ifdef DEBUG_PRINT
194
+    printf("\r\n");
195
+    printf("temp_adf4153.FRAC_Value : %x   : %d\r\n",temp_adf4153.FRAC_Value,temp_adf4153.FRAC_Value);
196
+#endif /* DEBUG_PRINT */
197
+    uint16_t tempfrac = temp_adf4153.FRAC_Value;
198
+    for(uint8_t i = 0; i < 12; i++){
199
+#ifdef DEBUG_PRINT
200
+        if(tempfrac & 0x800){
201
+            printf("1");
202
+        }else{
203
+            printf("0");
204
+        }
205
+#endif /* DEBUG_PRINT */
206
+        tempfrac = tempfrac << 1;
207
+    }
208
+#ifdef DEBUG_PRINT
209
+    printf("\r\n");    
210
+#endif /* DEBUG_PRINT */
211
+#ifdef DEBUG_PRINT
212
+    printf("temp_adf4153.INT_Value : %x   : %d\r\n",temp_adf4153.INT_Value,temp_adf4153.INT_Value); 
213
+#endif /* DEBUG_PRINT */
214
+    uint16_t tempint = temp_adf4153.INT_Value;
215
+    for(uint8_t i = 0; i < 9; i++){
216
+#ifdef DEBUG_PRINT
217
+        if(tempint & 0x100){
218
+            printf("1");
219
+        }else{
220
+            printf("0");
221
+        }
222
+#endif /* DEBUG_PRINT */
223
+        tempint = tempint << 1;
224
+    }
225
+#ifdef DEBUG_PRINT
226
+    printf("\r\n");    
227
+
228
+    printf("R0: %x  R1: %x \r\n",N_Divider_Reg_Create(temp_adf4153.FRAC_Value,temp_adf4153.INT_Value,0),R_Divider_Reg_Create(temp_adf4153.MOD_Value,R_Counter,1,0,2,0));   
229
+#endif /* DEBUG_PRINT */
230
+    temp_reg.N_reg = N_Divider_Reg_Create(temp_adf4153.FRAC_Value,temp_adf4153.INT_Value,0);
231
+    temp_reg.R_reg = R_Divider_Reg_Create(temp_adf4153.MOD_Value,R_Counter,1,0,2,0);
232
+
233
+    return temp_reg;
234
+//    R_Divider_Reg_Create(temp_adf4153.MOD_Value,R_Counter,1,0,1,0); //prescaler 1 : 8/9 0: 4/5
235
+}
236
+void ADF4153_Init(void){
237
+PLL_Setting_st Pll_test = {
238
+      PLL_CLK_3_5G_GPIO_Port,
239
+      PLL_CLK_3_5G_Pin,
240
+      PLL_DATA_3_5G_GPIO_Port,
241
+      PLL_DATA_3_5G_Pin,
242
+    PLL_EN_3_5G_L_GPIO_Port,    
243
+    PLL_EN_3_5G_L_Pin,
244
+  };
245
+PLL_Setting_st Pll_test2 = {
246
+    PLL_CLK_3_5G_GPIO_Port,
247
+    PLL_CLK_3_5G_Pin,
248
+    PLL_DATA_3_5G_GPIO_Port,
249
+    PLL_DATA_3_5G_Pin,
250
+    PLL_EN_3_5G_H_GPIO_Port,    
251
+    PLL_EN_3_5G_H_Pin,
252
+  };          
253
+    //  ADF4153_Module_Ctrl(Pll_test,0x2B44B0,0x14BE81,0x0013C2,0x000003);
254
+      ADF4153_R_N_Reg_st temp_reg;
255
+      temp_reg = ADF4153_Freq_Calc(3465500000,ADF4153_REFIN,ADF4153_RCOUNTER,ADF4153_CHANNEL_SPACING);
256
+      ADF4153_Module_Ctrl(Pll_test,temp_reg.N_reg,temp_reg.R_reg,0x13c2,0x3);      
257
+    
258
+      HAL_Delay(1);
259
+#ifdef DEBUG_PRINT
260
+        printf("\r\nPLL_EN_3_5G_H_GPIO_Port\r\n");
261
+#endif /* DEBUG_PRINT */
262
+   
263
+        temp_reg = ADF4153_Freq_Calc(3934500000,ADF4153_REFIN,ADF4153_RCOUNTER,ADF4153_CHANNEL_SPACING);
264
+        ADF4153_Module_Ctrl(Pll_test2,temp_reg.N_reg,temp_reg.R_reg,0x13c2,0x3);                  
265
+    //  ADF4153_Module_Ctrl(Pll_test2,0x313840,0x14BE81,0x13C2,0x3);
266
+      HAL_Delay(1);
267
+
268
+
269
+}
270
+
271
+void ADF4153_Module_Ctrl(PLL_Setting_st pll,uint32_t R0,uint32_t R1,uint32_t R2,uint32_t R3){
272
+    R3  = R3  & 0x0007FF;
273
+    R2 = R2 & 0x00FFFF;
274
+    R1 = R1 & 0xFFFFFF;
275
+    R0 = R0 & 0xFFFFFF;
276
+//    ADF4153_Freq_Calc(3461500000,40000000,2,5000);
277
+    HAL_GPIO_WritePin(pll.PLL_CLK_PORT, pll.PLL_CLK_PIN, GPIO_PIN_RESET);
278
+    HAL_GPIO_WritePin(pll.PLL_DATA_PORT, pll.PLL_DATA_PIN, GPIO_PIN_RESET);
279
+    HAL_GPIO_WritePin(pll.PLL_ENABLE_PORT, pll.PLL_ENABLE_PIN, GPIO_PIN_RESET);
280
+#ifdef DEBUG_PRINT
281
+    printf("YJ :R0: %x  R1:  %x   R2 : %x R3 : %x ",R0,R1,R2,R3);
282
+    printf("\r\n");
283
+#endif /* DEBUG_PRINT */
284
+    /*   R3 Ctrl    */
285
+    for(int i =0; i < 11; i++){
286
+        if(R3 & 0x000400){
287
+            HAL_GPIO_WritePin(pll.PLL_DATA_PORT, pll.PLL_DATA_PIN, GPIO_PIN_SET);
288
+#ifdef DEBUG_PRINT
289
+            printf("1");
290
+#endif /* DEBUG_PRINT */
291
+        }
292
+        else{
293
+            HAL_GPIO_WritePin(pll.PLL_DATA_PORT, pll.PLL_DATA_PIN, GPIO_PIN_RESET);
294
+#ifdef DEBUG_PRINT
295
+            printf("0");
296
+#endif /* DEBUG_PRINT */
297
+        }
298
+        Pol_Delay_us(50);
299
+        HAL_GPIO_WritePin(pll.PLL_CLK_PORT, pll.PLL_CLK_PIN, GPIO_PIN_SET);
300
+        Pol_Delay_us(50);
301
+        HAL_GPIO_WritePin(pll.PLL_CLK_PORT, pll.PLL_CLK_PIN, GPIO_PIN_RESET);
302
+        R3 = (R3 << 1);
303
+    }
304
+#ifdef DEBUG_PRINT
305
+    printf("\r\n");
306
+#endif /* DEBUG_PRINT */
307
+    HAL_GPIO_WritePin(pll.PLL_ENABLE_PORT, pll.PLL_ENABLE_PIN, GPIO_PIN_SET);
308
+      Pol_Delay_us(50);
309
+    HAL_GPIO_WritePin(pll.PLL_ENABLE_PORT, pll.PLL_ENABLE_PIN, GPIO_PIN_RESET);
310
+    
311
+    /*   R2 Ctrl    */
312
+     for(int i =0; i < 16; i++){
313
+         if(R2 & 0x008000){
314
+             HAL_GPIO_WritePin(pll.PLL_DATA_PORT, pll.PLL_DATA_PIN, GPIO_PIN_SET);
315
+#ifdef DEBUG_PRINT
316
+             printf("1");
317
+#endif /* DEBUG_PRINT */
318
+         }
319
+         else{
320
+             HAL_GPIO_WritePin(pll.PLL_DATA_PORT, pll.PLL_DATA_PIN, GPIO_PIN_RESET);
321
+#ifdef DEBUG_PRINT
322
+             printf("0");
323
+#endif /* DEBUG_PRINT */
324
+         }
325
+         Pol_Delay_us(50);
326
+         HAL_GPIO_WritePin(pll.PLL_CLK_PORT, pll.PLL_CLK_PIN, GPIO_PIN_SET);
327
+         Pol_Delay_us(50);
328
+         HAL_GPIO_WritePin(pll.PLL_CLK_PORT, pll.PLL_CLK_PIN, GPIO_PIN_RESET);
329
+
330
+         R2 = ((R2 << 1) & 0x00FFFF);
331
+     }
332
+#ifdef DEBUG_PRINT
333
+     printf("\r\n");
334
+#endif /* DEBUG_PRINT */
335
+     HAL_GPIO_WritePin(pll.PLL_ENABLE_PORT, pll.PLL_ENABLE_PIN, GPIO_PIN_SET);
336
+      Pol_Delay_us(50);
337
+     HAL_GPIO_WritePin(pll.PLL_ENABLE_PORT, pll.PLL_ENABLE_PIN, GPIO_PIN_RESET);
338
+    
339
+     /*   R1 Ctrl    */
340
+    for(int i =0; i < 24; i++){
341
+        if(R1 & 0x800000){
342
+            HAL_GPIO_WritePin(pll.PLL_DATA_PORT, pll.PLL_DATA_PIN, GPIO_PIN_SET);
343
+#ifdef DEBUG_PRINT
344
+            printf("1");
345
+#endif /* DEBUG_PRINT */
346
+        }
347
+        else{
348
+            HAL_GPIO_WritePin(pll.PLL_DATA_PORT, pll.PLL_DATA_PIN, GPIO_PIN_RESET);
349
+#ifdef DEBUG_PRINT
350
+            printf("0");
351
+#endif /* DEBUG_PRINT */
352
+        }
353
+        Pol_Delay_us(50);
354
+        HAL_GPIO_WritePin(pll.PLL_CLK_PORT, pll.PLL_CLK_PIN, GPIO_PIN_SET);
355
+        Pol_Delay_us(50);
356
+        HAL_GPIO_WritePin(pll.PLL_CLK_PORT, pll.PLL_CLK_PIN, GPIO_PIN_RESET);
357
+
358
+        R1 = ((R1 << 1) & 0xFFFFFF);
359
+    }
360
+#ifdef DEBUG_PRINT
361
+    printf("\r\n");
362
+#endif /* DEBUG_PRINT */
363
+    HAL_GPIO_WritePin(pll.PLL_ENABLE_PORT, pll.PLL_ENABLE_PIN, GPIO_PIN_SET);
364
+      Pol_Delay_us(50);
365
+    HAL_GPIO_WritePin(pll.PLL_ENABLE_PORT, pll.PLL_ENABLE_PIN, GPIO_PIN_RESET);
366
+
367
+
368
+        /*   R0 Ctrl    */
369
+   
370
+    for(int i =0; i < 24; i++){
371
+        if(R0 & 0x800000){
372
+            HAL_GPIO_WritePin(pll.PLL_DATA_PORT, pll.PLL_DATA_PIN, GPIO_PIN_SET);
373
+#ifdef DEBUG_PRINT
374
+            printf("1");
375
+#endif /* DEBUG_PRINT */
376
+        }
377
+        else{
378
+            HAL_GPIO_WritePin(pll.PLL_DATA_PORT, pll.PLL_DATA_PIN, GPIO_PIN_RESET);
379
+#ifdef DEBUG_PRINT
380
+            printf("0");
381
+#endif /* DEBUG_PRINT */
382
+        }
383
+        Pol_Delay_us(50);
384
+        HAL_GPIO_WritePin(pll.PLL_CLK_PORT, pll.PLL_CLK_PIN, GPIO_PIN_SET);
385
+        Pol_Delay_us(50);
386
+        HAL_GPIO_WritePin(pll.PLL_CLK_PORT, pll.PLL_CLK_PIN, GPIO_PIN_RESET);
387
+
388
+        R0 = ((R0 << 1) & 0xFFFFFF);
389
+    }
390
+#ifdef DEBUG_PRINT
391
+    printf("\r\n");
392
+#endif /* DEBUG_PRINT */
393
+    HAL_GPIO_WritePin(pll.PLL_DATA_PORT, pll.PLL_DATA_PIN, GPIO_PIN_RESET);
394
+    HAL_GPIO_WritePin(pll.PLL_ENABLE_PORT, pll.PLL_ENABLE_PIN, GPIO_PIN_SET);
395
+    Pol_Delay_us(50);
396
+    HAL_GPIO_WritePin(pll.PLL_ENABLE_PORT, pll.PLL_ENABLE_PIN, GPIO_PIN_RESET);
397
+
398
+}

+ 31 - 0
insight/STM32F103_ATTEN_PLL_Zig.si4project/Backup/includes(6065).h

@@ -0,0 +1,31 @@
1
+/*
2
+ * includes.h
3
+ *
4
+ *  Created on: 2019. 7. 28.
5
+ *      Author: parkyj
6
+ */
7
+
8
+#ifndef INCLUDES_H_
9
+#define INCLUDES_H_
10
+#include "main.h"
11
+#if 0 // PYJ.2019.07.28_BEGIN -- 
12
+typedef enum{
13
+    TYPE_PATH_EN_1_8G_DL  = 0 , 
14
+    TYPE_PATH_EN_1_8G_UL  ,
15
+    TYPE_PATH_EN_2_1G_DL  ,
16
+    TYPE_PATH_EN_2_1G_UL  ,
17
+    TYPE_PATH_EN_3_5G_L   ,
18
+    TYPE_PATH_EN_3_5G_H   ,
19
+    TYPE_PATH_EN_3_5G_DL  ,
20
+    TYPE_PATH_EN_3_5G_UL  ,
21
+    TYPE_PLL_ON_OFF_3_5G_L,
22
+    TYPE_PLL_ON_OFF_3_5G_H,
23
+}Bluecell_Power_Index;
24
+#endif // PYJ.2019.07.28_END -- 
25
+void Power_ON_OFF_Ctrl(uint8_t type,uint8_t cmd);
26
+void Path_Init(void);
27
+void ATTEN_PLL_PATH_Initialize(void);
28
+char *Bluecell_Prot_IndexStr[];
29
+
30
+
31
+#endif /* INCLUDES_H_ */

+ 249 - 0
insight/STM32F103_ATTEN_PLL_Zig.si4project/Backup/includes(7528).c

@@ -0,0 +1,249 @@
1
+/*
2
+ * includes.c
3
+ *
4
+ *  Created on: 2019. 7. 28.
5
+ *      Author: parkyj
6
+ */
7
+#include "includes.h"
8
+
9
+#define MACROSTR(k) #k
10
+
11
+
12
+char *Bluecell_Prot_IndexStr[] = {
13
+    MACROSTR(INDEX_ATT_1_8G_DL1     ),
14
+    MACROSTR(INDEX_ATT_1_8G_DL2     ),
15
+    MACROSTR(INDEX_ATT_1_8G_UL1     ),
16
+    MACROSTR(INDEX_ATT_1_8G_UL2     ),
17
+    MACROSTR(INDEX_ATT_1_8G_UL3     ),
18
+    MACROSTR(INDEX_ATT_1_8G_UL4     ),
19
+    MACROSTR(INDEX_ATT_2_1G_DL1     ),
20
+    MACROSTR(INDEX_ATT_2_1G_DL2     ),
21
+    MACROSTR(INDEX_ATT_2_1G_UL1     ),
22
+    MACROSTR(INDEX_ATT_2_1G_UL2     ),
23
+    MACROSTR(INDEX_ATT_2_1G_UL3     ),
24
+    MACROSTR(INDEX_ATT_2_1G_UL4     ),
25
+    MACROSTR(INDEX_ATT_3_5G_DL      ),
26
+    MACROSTR(INDEX_ATT_3_5G_UL      ),
27
+    MACROSTR(INDEX_ATT_3_5G_COM1    ),
28
+    MACROSTR(INDEX_ATT_3_5G_COM2    ),
29
+    MACROSTR(INDEX_ATT_3_5G_COM3    ),
30
+    MACROSTR(INDEX_PLL_1_8G_DL_H    ),
31
+    MACROSTR(INDEX_PLL_1_8G_DL_L    ),
32
+    MACROSTR(INDEX_PLL_1_8G_UL_H    ),
33
+    MACROSTR(INDEX_PLL_1_8G_UL_L    ),
34
+    MACROSTR(INDEX_PLL_2_1G_DL_H    ),
35
+    MACROSTR(INDEX_PLL_2_1G_DL_L    ),
36
+    MACROSTR(INDEX_PLL_2_1G_UL_H    ),
37
+    MACROSTR(INDEX_PLL_2_1G_UL_L    ),
38
+    MACROSTR(INDEX_PLL_3_5G_DL_H    ),
39
+    MACROSTR(INDEX_PLL_3_5G_DL_L    ),
40
+    MACROSTR(INDEX_PLL_3_5G_UL_H    ),
41
+    MACROSTR(INDEX_PLL_3_5G_UL_L    ),
42
+    MACROSTR(INDEX_PLL_LD_6_BIT     ),
43
+    MACROSTR(INDEX_DET_1_8G_DL_IN_H ),
44
+    MACROSTR(INDEX_DET_1_8G_DL_IN_L ),
45
+    MACROSTR(INDEX_DET_1_8G_DL_OUT_H),
46
+    MACROSTR(INDEX_DET_1_8G_DL_OUT_L),
47
+    MACROSTR(INDEX_DET_1_8G_UL_IN_H ),
48
+    MACROSTR(INDEX_DET_1_8G_UL_IN_L ),
49
+    MACROSTR(INDEX_DET_1_8G_UL_OUT_H),
50
+    MACROSTR(INDEX_DET_1_8G_UL_OUT_L),
51
+    MACROSTR(INDEX_DET_2_1G_DL_IN_H ),
52
+    MACROSTR(INDEX_DET_2_1G_DL_IN_L ),
53
+    MACROSTR(INDEX_DET_2_1G_DL_OUT_H),
54
+    MACROSTR(INDEX_DET_2_1G_DL_OUT_L),
55
+    MACROSTR(INDEX_DET_2_1G_UL_IN_H ),
56
+    MACROSTR(INDEX_DET_2_1G_UL_IN_L ),
57
+    MACROSTR(INDEX_DET_2_1G_UL_OUT_H),
58
+    MACROSTR(INDEX_DET_2_1G_UL_OUT_L),
59
+    MACROSTR(INDEX_DET_3_5G_DL_IN_H ),
60
+    MACROSTR(INDEX_DET_3_5G_DL_IN_L ),
61
+    MACROSTR(INDEX_DET_3_5G_DL_OUT_L),
62
+    MACROSTR(INDEX_DET_3_5G_DL_OUT_H),
63
+    MACROSTR(INDEX_DET_3_5G_UL_IN_H ),
64
+    MACROSTR(INDEX_DET_3_5G_UL_IN_L ),
65
+    MACROSTR(INDEX_DET_3_5G_UL_OUT_H),
66
+    MACROSTR(INDEX_DET_3_5G_UL_OUT_L),
67
+    MACROSTR(INDEX_RFU_TEMP_H       ),
68
+    MACROSTR(INDEX_RFU_TEMP_L       ),
69
+    MACROSTR(INDEX__28V_DET_H       ),
70
+    MACROSTR(INDEX__28V_DET_L       ),
71
+    MACROSTR(INDEX_ALARM_AC         ),
72
+    MACROSTR(INDEX_ALARM_DC         ),
73
+    MACROSTR(INDEX_PATH_EN_1_8G_DL  ),
74
+    MACROSTR(INDEX_PATH_EN_1_8G_UL  ),
75
+    MACROSTR(INDEX_PATH_EN_2_1G_DL  ),
76
+    MACROSTR(INDEX_PATH_EN_2_1G_UL  ),
77
+    MACROSTR(INDEX_PATH_EN_3_5G_L   ),
78
+    MACROSTR(INDEX_PATH_EN_3_5G_H   ),
79
+    MACROSTR(INDEX_PATH_EN_3_5G_DL  ),
80
+    MACROSTR(INDEX_PATH_EN_3_5G_UL  ),
81
+    MACROSTR(INDEX_PLL_ON_OFF_3_5G_H),
82
+    MACROSTR(INDEX_PLL_ON_OFF_3_5G_L),
83
+    MACROSTR(INDEX_T_SYNC_DL        ),
84
+    MACROSTR(INDEX__T_SYNC_DL       ),
85
+    MACROSTR(INDEX_T_SYNC_UL        ),
86
+    MACROSTR(INDEX__T_SYNC_UL       ),   
87
+};
88
+
89
+static void kConstPrinter(Bluecell_Prot_Index k)
90
+{
91
+#ifdef DEBUG_PRINT
92
+    printf("%s", Bluecell_Prot_IndexStr[k]);
93
+#endif /* DEBUG_PRINT */
94
+}
95
+void Path_Init(void){
96
+    Prev_data[INDEX_PATH_EN_1_8G_DL]   = HAL_GPIO_ReadPin(PATH_EN_1_8G_DL_GPIO_Port,PATH_EN_1_8G_DL_Pin);
97
+    Prev_data[INDEX_PATH_EN_1_8G_UL]   = HAL_GPIO_ReadPin(PATH_EN_1_8G_UL_GPIO_Port,PATH_EN_1_8G_UL_Pin);
98
+    Prev_data[INDEX_PATH_EN_2_1G_DL]   = HAL_GPIO_ReadPin(PATH_EN_2_1G_DL_GPIO_Port,PATH_EN_2_1G_DL_Pin);
99
+    Prev_data[INDEX_PATH_EN_2_1G_UL]   = HAL_GPIO_ReadPin(PATH_EN_2_1G_UL_GPIO_Port,PATH_EN_2_1G_UL_Pin);
100
+    Prev_data[INDEX_PATH_EN_3_5G_L]    = HAL_GPIO_ReadPin(PATH_EN_3_5G_L_GPIO_Port,PATH_EN_3_5G_L_Pin);
101
+    Prev_data[INDEX_PATH_EN_3_5G_H]    = HAL_GPIO_ReadPin(PATH_EN_3_5G_H_GPIO_Port,PATH_EN_3_5G_H_Pin);
102
+    Prev_data[INDEX_PATH_EN_3_5G_DL]   = HAL_GPIO_ReadPin(PATH_EN_3_5G_DL_GPIO_Port,PATH_EN_3_5G_DL_Pin);
103
+    Prev_data[INDEX_PATH_EN_3_5G_UL]   = HAL_GPIO_ReadPin(PATH_EN_3_5G_UL_GPIO_Port,PATH_EN_3_5G_UL_Pin);
104
+    Prev_data[INDEX_PLL_ON_OFF_3_5G_H] = HAL_GPIO_ReadPin(PLL_ON_OFF_3_5G_H_GPIO_Port,PLL_ON_OFF_3_5G_H_Pin);
105
+    Prev_data[INDEX_PLL_ON_OFF_3_5G_L] = HAL_GPIO_ReadPin(PLL_ON_OFF_3_5G_L_GPIO_Port,PLL_ON_OFF_3_5G_L_Pin);
106
+}
107
+void Power_ON_OFF_Ctrl(uint8_t type,uint8_t cmd){
108
+//    printf("\r\ntype : %s cmd : %d\r\n",Bluecell_Prot_IndexStr[type - 4],cmd);
109
+    switch(type){
110
+        case INDEX_PATH_EN_1_8G_DL  : 
111
+#if 0 // PYJ.2019.07.29_BEGIN -- 
112
+            printf("\r\n LINE %d\r\n",__LINE__);
113
+#endif // PYJ.2019.07.29_END -- 
114
+            if(cmd)
115
+                HAL_GPIO_WritePin(PATH_EN_1_8G_DL_GPIO_Port,PATH_EN_1_8G_DL_Pin, GPIO_PIN_SET);
116
+            else
117
+                HAL_GPIO_WritePin(PATH_EN_1_8G_DL_GPIO_Port,PATH_EN_1_8G_DL_Pin, GPIO_PIN_RESET);
118
+            break; 
119
+        case INDEX_PATH_EN_1_8G_UL  : 
120
+#if 0 // PYJ.2019.07.29_BEGIN -- 
121
+            printf("\r\n LINE %d\r\n",__LINE__);
122
+#endif // PYJ.2019.07.29_END -- 
123
+            if(cmd)
124
+                HAL_GPIO_WritePin(PATH_EN_1_8G_UL_GPIO_Port,PATH_EN_1_8G_UL_Pin, GPIO_PIN_SET);
125
+            else
126
+                HAL_GPIO_WritePin(PATH_EN_1_8G_UL_GPIO_Port,PATH_EN_1_8G_UL_Pin, GPIO_PIN_RESET);
127
+                
128
+            break;
129
+        case INDEX_PATH_EN_2_1G_DL  : 
130
+#ifdef DEBUG_PRINT
131
+            printf("\r\n LINE %d\r\n",__LINE__);
132
+#endif /* DEBUG_PRINT */
133
+            if(cmd)
134
+                HAL_GPIO_WritePin(PATH_EN_2_1G_DL_GPIO_Port,PATH_EN_2_1G_DL_Pin, GPIO_PIN_SET);
135
+            else
136
+                HAL_GPIO_WritePin(PATH_EN_2_1G_DL_GPIO_Port,PATH_EN_2_1G_DL_Pin, GPIO_PIN_RESET);                
137
+            break;
138
+        case INDEX_PATH_EN_2_1G_UL  : 
139
+#ifdef DEBUG_PRINT
140
+            printf("\r\n LINE %d\r\n",__LINE__);
141
+#endif /* DEBUG_PRINT */
142
+            if(cmd)
143
+                HAL_GPIO_WritePin(PATH_EN_2_1G_UL_GPIO_Port,PATH_EN_2_1G_UL_Pin, GPIO_PIN_SET);
144
+            else
145
+                HAL_GPIO_WritePin(PATH_EN_2_1G_UL_GPIO_Port,PATH_EN_2_1G_UL_Pin, GPIO_PIN_RESET);                
146
+            break;
147
+        case INDEX_PATH_EN_3_5G_L   : 
148
+            if(cmd){
149
+                HAL_GPIO_WritePin(PATH_EN_3_5G_L_GPIO_Port,PATH_EN_3_5G_L_Pin, GPIO_PIN_SET);
150
+//                printf("\r\n LINE %d\r\n",__LINE__);
151
+            }
152
+            else{
153
+                HAL_GPIO_WritePin(PATH_EN_3_5G_L_GPIO_Port,PATH_EN_3_5G_L_Pin, GPIO_PIN_RESET);
154
+//                printf("\r\n LINE %d\r\n",__LINE__);
155
+            }
156
+            break;
157
+        case INDEX_PATH_EN_3_5G_H   : 
158
+            if(cmd){
159
+                HAL_GPIO_WritePin(PATH_EN_3_5G_H_GPIO_Port,PATH_EN_3_5G_H_Pin, GPIO_PIN_SET);
160
+//                            printf("\r\n LINE %d\r\n",__LINE__);
161
+            }
162
+            else{
163
+                HAL_GPIO_WritePin(PATH_EN_3_5G_H_GPIO_Port,PATH_EN_3_5G_H_Pin, GPIO_PIN_RESET);
164
+//                            printf("\r\n LINE %d\r\n",__LINE__);
165
+            }
166
+            break;
167
+        case INDEX_PATH_EN_3_5G_DL  : 
168
+#ifdef DEBUG_PRINT
169
+            printf("\r\n LINE %d\r\n",__LINE__);
170
+#endif /* DEBUG_PRINT */
171
+            if(cmd)
172
+                HAL_GPIO_WritePin(PATH_EN_3_5G_DL_GPIO_Port,PATH_EN_3_5G_DL_Pin, GPIO_PIN_SET);
173
+            else
174
+                HAL_GPIO_WritePin(PATH_EN_3_5G_DL_GPIO_Port,PATH_EN_3_5G_DL_Pin, GPIO_PIN_RESET);
175
+            break;
176
+        case INDEX_PATH_EN_3_5G_UL  : 
177
+#ifdef DEBUG_PRINT
178
+            printf("\r\n LINE %d\r\n",__LINE__);
179
+#endif /* DEBUG_PRINT */
180
+            if(cmd)
181
+                HAL_GPIO_WritePin(PATH_EN_3_5G_UL_GPIO_Port,PATH_EN_3_5G_UL_Pin, GPIO_PIN_SET);
182
+            else
183
+                HAL_GPIO_WritePin(PATH_EN_3_5G_UL_GPIO_Port,PATH_EN_3_5G_UL_Pin, GPIO_PIN_RESET);
184
+            break;
185
+        case INDEX_PLL_ON_OFF_3_5G_H: 
186
+//            printf("\r\n LINE %d\r\n",__LINE__);
187
+            if(cmd)
188
+                HAL_GPIO_WritePin(PLL_ON_OFF_3_5G_H_GPIO_Port,PLL_ON_OFF_3_5G_H_Pin, GPIO_PIN_SET);
189
+            else
190
+                HAL_GPIO_WritePin(PLL_ON_OFF_3_5G_H_GPIO_Port,PLL_ON_OFF_3_5G_H_Pin, GPIO_PIN_RESET);
191
+            break;
192
+        case INDEX_PLL_ON_OFF_3_5G_L: 
193
+//            printf("\r\n LINE %d\r\n",__LINE__);
194
+            if(cmd)
195
+                HAL_GPIO_WritePin(PLL_ON_OFF_3_5G_L_GPIO_Port,PLL_ON_OFF_3_5G_L_Pin, GPIO_PIN_SET);  
196
+            else
197
+                HAL_GPIO_WritePin(PLL_ON_OFF_3_5G_L_GPIO_Port,PLL_ON_OFF_3_5G_L_Pin, GPIO_PIN_RESET);
198
+            break;
199
+        case INDEX_T_SYNC_DL:
200
+        case INDEX__T_SYNC_UL:
201
+        case INDEX_T_SYNC_UL:
202
+        case INDEX__T_SYNC_DL:
203
+            if(cmd){
204
+                HAL_GPIO_WritePin(_T_SYNC_UL_GPIO_Port,_T_SYNC_UL_Pin, GPIO_PIN_RESET);
205
+                HAL_GPIO_WritePin(T_SYNC_UL_GPIO_Port,T_SYNC_UL_Pin, GPIO_PIN_RESET);
206
+                HAL_GPIO_WritePin(_T_SYNC_DL_GPIO_Port,_T_SYNC_DL_Pin, GPIO_PIN_SET);
207
+                HAL_GPIO_WritePin(T_SYNC_DL_GPIO_Port,T_SYNC_DL_Pin, GPIO_PIN_SET);                
208
+            }
209
+            else{
210
+                HAL_GPIO_WritePin(_T_SYNC_UL_GPIO_Port,_T_SYNC_UL_Pin, GPIO_PIN_SET);
211
+                HAL_GPIO_WritePin(T_SYNC_UL_GPIO_Port,T_SYNC_UL_Pin, GPIO_PIN_SET);
212
+                HAL_GPIO_WritePin(_T_SYNC_DL_GPIO_Port,_T_SYNC_DL_Pin, GPIO_PIN_RESET);
213
+                HAL_GPIO_WritePin(T_SYNC_DL_GPIO_Port,T_SYNC_DL_Pin, GPIO_PIN_RESET);                
214
+            }
215
+#ifdef DEBUG_PRINT
216
+            printf("TDD SYNC OPERATE ; %d\r\n",cmd);
217
+#endif /* DEBUG_PRINT */
218
+            break;
219
+        default :
220
+#ifdef DEBUG_PRINT
221
+        printf("Function : %s LINE : %d   ERROR \r\n",__func__,__LINE__);
222
+#endif /* DEBUG_PRINT */
223
+    break;
224
+
225
+    }
226
+}
227
+void ATTEN_PLL_PATH_Initialize(void){
228
+#if 0 // PYJ.2019.07.31_BEGIN -- 
229
+        for(int i = 0; i < INDEX_BLUE_EOF + 1; i++){
230
+            printf("Data = %x\r\n",  Flash_Save_data[i]);
231
+        }
232
+#endif // PYJ.2019.07.31_END -- 
233
+    Flash_Save_data[INDEX_BLUE_CRC]      = STH30_CreateCrc(&Flash_Save_data[Type], Flash_Save_data[Length]);
234
+    RF_Ctrl_Main(&Flash_Save_data[INDEX_BLUE_HEADER]);
235
+    RF_Status_Get();
236
+}
237
+void Power_ON_OFF_Initialize(void){
238
+    HAL_GPIO_WritePin(PATH_EN_3_5G_L_GPIO_Port,PATH_EN_3_5G_L_Pin, GPIO_PIN_RESET);
239
+    HAL_GPIO_WritePin(PATH_EN_3_5G_H_GPIO_Port,PATH_EN_3_5G_H_Pin, GPIO_PIN_RESET);
240
+    HAL_GPIO_WritePin(PATH_EN_3_5G_DL_GPIO_Port,PATH_EN_3_5G_DL_Pin, GPIO_PIN_RESET);
241
+    HAL_GPIO_WritePin(PATH_EN_3_5G_UL_GPIO_Port,PATH_EN_3_5G_UL_Pin, GPIO_PIN_RESET);
242
+    HAL_GPIO_WritePin(PATH_EN_3_5G_L_GPIO_Port,PATH_EN_3_5G_L_Pin, GPIO_PIN_RESET);  
243
+    HAL_GPIO_WritePin(PLL_ON_OFF_3_5G_H_GPIO_Port,PLL_ON_OFF_3_5G_H_Pin, GPIO_PIN_RESET);
244
+    HAL_GPIO_WritePin(PLL_ON_OFF_3_5G_L_GPIO_Port,PLL_ON_OFF_3_5G_L_Pin, GPIO_PIN_RESET);  
245
+    HAL_GPIO_WritePin(PATH_EN_2_1G_DL_GPIO_Port,PATH_EN_2_1G_DL_Pin, GPIO_PIN_RESET);
246
+    HAL_GPIO_WritePin(PATH_EN_2_1G_UL_GPIO_Port,PATH_EN_2_1G_UL_Pin, GPIO_PIN_RESET);
247
+    HAL_GPIO_WritePin(PATH_EN_1_8G_DL_GPIO_Port,PATH_EN_1_8G_DL_Pin, GPIO_PIN_RESET);
248
+    HAL_GPIO_WritePin(PATH_EN_1_8G_UL_GPIO_Port,PATH_EN_1_8G_UL_Pin, GPIO_PIN_RESET);
249
+}

+ 771 - 0
insight/STM32F103_ATTEN_PLL_Zig.si4project/Backup/main(2511).c

@@ -0,0 +1,771 @@
1
+/* USER CODE BEGIN Header */
2
+/**
3
+  ******************************************************************************
4
+  * @file           : main.c
5
+  * @brief          : Main program body
6
+  ******************************************************************************
7
+  * @attention
8
+  *
9
+  * <h2><center>&copy; Copyright (c) 2019 STMicroelectronics.
10
+  * All rights reserved.</center></h2>
11
+  *
12
+  * This software component is licensed by ST under BSD 3-Clause license,
13
+  * the "License"; You may not use this file except in compliance with the
14
+  * License. You may obtain a copy of the License at:
15
+  *                        opensource.org/licenses/BSD-3-Clause
16
+  *
17
+  ******************************************************************************
18
+  */
19
+/* USER CODE END Header */
20
+
21
+/* Includes ------------------------------------------------------------------*/
22
+#include "main.h"
23
+
24
+/* Private includes ----------------------------------------------------------*/
25
+/* USER CODE BEGIN Includes */
26
+
27
+/* USER CODE END Includes */
28
+
29
+/* Private typedef -----------------------------------------------------------*/
30
+/* USER CODE BEGIN PTD */
31
+
32
+/* USER CODE END PTD */
33
+
34
+/* Private define ------------------------------------------------------------*/
35
+/* USER CODE BEGIN PD */
36
+
37
+/* USER CODE END PD */
38
+
39
+/* Private macro -------------------------------------------------------------*/
40
+/* USER CODE BEGIN PM */
41
+
42
+/* USER CODE END PM */
43
+
44
+/* Private variables ---------------------------------------------------------*/
45
+ADC_HandleTypeDef hadc1;
46
+DMA_HandleTypeDef hdma_adc1;
47
+
48
+TIM_HandleTypeDef htim6;
49
+
50
+UART_HandleTypeDef huart1;
51
+DMA_HandleTypeDef hdma_usart1_rx;
52
+DMA_HandleTypeDef hdma_usart1_tx;
53
+
54
+/* USER CODE BEGIN PV */
55
+volatile uint32_t AdcTimerCnt = 0;
56
+volatile uint32_t LedTimerCnt = 0;
57
+volatile uint32_t UartRxTimerCnt = 0;
58
+extern PLL_Setting_st Pll_3_5_H;
59
+extern PLL_Setting_st Pll_3_5_L;
60
+
61
+//volatile uint32_t UartTxTimerCnt = 0;
62
+
63
+/* USER CODE END PV */
64
+
65
+/* Private function prototypes -----------------------------------------------*/
66
+void SystemClock_Config(void);
67
+static void MX_GPIO_Init(void);
68
+static void MX_DMA_Init(void);
69
+static void MX_ADC1_Init(void);
70
+static void MX_USART1_UART_Init(void);
71
+static void MX_TIM6_Init(void);
72
+static void MX_NVIC_Init(void);
73
+/* USER CODE BEGIN PFP */
74
+void ADF4153_Module_Ctrl(PLL_Setting_st pll,uint32_t R0,uint32_t R1,uint32_t R2,uint32_t R3);
75
+/* USER CODE END PFP */
76
+
77
+/* Private user code ---------------------------------------------------------*/
78
+/* USER CODE BEGIN 0 */
79
+
80
+uint32_t ADCvalue[ADC_EA];
81
+
82
+#if 1 // PYJ.2019.07.26_BEGIN --
83
+
84
+void HAL_TIM_PeriodElapsedCallback(TIM_HandleTypeDef *htim)
85
+{
86
+    if(htim->Instance == TIM6){
87
+        UartRxTimerCnt++;
88
+        LedTimerCnt++;
89
+        AdcTimerCnt++;
90
+    }
91
+} 
92
+#endif // PYJ.2019.07.26_END -- 
93
+int _write (int file, uint8_t *ptr, uint16_t len)
94
+{
95
+    HAL_UART_Transmit(&huart1, ptr, len,10);
96
+//    HAL_UART_Transmit_IT(&huart1, ptr, len);
97
+    return len;
98
+}
99
+void Pol_Delay_us(volatile uint32_t microseconds)
100
+{
101
+  /* Go to number of cycles for system */
102
+  microseconds *= (SystemCoreClock / 1000000);
103
+ 
104
+  /* Delay till end */
105
+  while (microseconds--);
106
+}
107
+/* define address bits for addressing dac outputs. */
108
+#define SPI_DAC_ADDR0  (1 << 12)
109
+#define SPI_DAC_ADDR1  (1 << 13)
110
+#define SPI_DAC_ADDR2  (1 << 14)
111
+
112
+/* define addresses for each dac output. */
113
+#define SPI_DAC_OUTPUT_A   0x00
114
+#define SPI_DAC_OUTPUT_B   SPI_DAC_ADDR0
115
+#define SPI_DAC_OUTPUT_C   SPI_DAC_ADDR1
116
+#define SPI_DAC_OUTPUT_D  (SPI_DAC_ADDR1 | SPI_DAC_ADDR0)
117
+#define SPI_DAC_OUTPUT_E   SPI_DAC_ADDR2
118
+#define SPI_DAC_OUTPUT_F  (SPI_DAC_ADDR2 | SPI_DAC_ADDR0)
119
+#define SPI_DAC_OUTPUT_G  (SPI_DAC_ADDR2 | SPI_DAC_ADDR1)
120
+#define SPI_DAC_OUTPUT_H  (SPI_DAC_ADDR2 | SPI_DAC_ADDR1 | SPI_DAC_ADDR0)
121
+
122
+
123
+/* USER CODE END 0 */
124
+
125
+/**
126
+  * @brief  The application entry point.
127
+  * @retval int
128
+  */
129
+int main(void)
130
+{
131
+  /* USER CODE BEGIN 1 */
132
+
133
+  /* USER CODE END 1 */
134
+  
135
+
136
+  /* MCU Configuration--------------------------------------------------------*/
137
+
138
+  /* Reset of all peripherals, Initializes the Flash interface and the Systick. */
139
+  HAL_Init();
140
+
141
+  /* USER CODE BEGIN Init */
142
+
143
+  /* USER CODE END Init */
144
+
145
+  /* Configure the system clock */
146
+  SystemClock_Config();
147
+
148
+  /* USER CODE BEGIN SysInit */
149
+
150
+  /* USER CODE END SysInit */
151
+
152
+  /* Initialize all configured peripherals */
153
+  MX_GPIO_Init();
154
+  MX_DMA_Init();
155
+  MX_ADC1_Init();
156
+  MX_USART1_UART_Init();
157
+  MX_TIM6_Init();
158
+
159
+  /* Initialize interrupts */
160
+  MX_NVIC_Init();
161
+  /* USER CODE BEGIN 2 */
162
+  setbuf(stdout, NULL);
163
+#ifdef DEBUG_PRINT
164
+  printf("UART Start \r\n");
165
+#endif /* DEBUG_PRINT */
166
+    HAL_UART_Receive_DMA(&huart1, TerminalQueue.Buffer, 1);
167
+    PE43711_PinInit();
168
+    /* * * PATH PLL ON OFF SECTION* * */
169
+    HAL_GPIO_WritePin(PATH_EN_1_8G_DL_GPIO_Port,PATH_EN_1_8G_DL_Pin, GPIO_PIN_RESET);
170
+    HAL_GPIO_WritePin(PATH_EN_1_8G_UL_GPIO_Port,PATH_EN_1_8G_UL_Pin, GPIO_PIN_RESET);
171
+    HAL_GPIO_WritePin(PATH_EN_2_1G_DL_GPIO_Port,PATH_EN_2_1G_DL_Pin, GPIO_PIN_RESET);
172
+    HAL_GPIO_WritePin(PATH_EN_2_1G_UL_GPIO_Port,PATH_EN_2_1G_UL_Pin, GPIO_PIN_RESET);
173
+    HAL_GPIO_WritePin(PATH_EN_3_5G_DL_GPIO_Port,PATH_EN_3_5G_DL_Pin, GPIO_PIN_RESET);
174
+    HAL_GPIO_WritePin(PATH_EN_3_5G_UL_GPIO_Port,PATH_EN_3_5G_UL_Pin, GPIO_PIN_RESET);
175
+    HAL_GPIO_WritePin(PATH_EN_3_5G_H_GPIO_Port,PATH_EN_3_5G_H_Pin, GPIO_PIN_RESET);
176
+    HAL_GPIO_WritePin(PATH_EN_3_5G_L_GPIO_Port,PATH_EN_3_5G_L_Pin, GPIO_PIN_RESET);
177
+
178
+    HAL_GPIO_WritePin(PLL_ON_OFF_3_5G_H_GPIO_Port,PLL_ON_OFF_3_5G_H_Pin, GPIO_PIN_SET);
179
+    HAL_GPIO_WritePin(PLL_ON_OFF_3_5G_L_GPIO_Port,PLL_ON_OFF_3_5G_L_Pin, GPIO_PIN_SET);  
180
+    
181
+    HAL_GPIO_WritePin(_T_SYNC_UL_GPIO_Port,_T_SYNC_UL_Pin, GPIO_PIN_RESET);
182
+    HAL_GPIO_WritePin(T_SYNC_UL_GPIO_Port,T_SYNC_UL_Pin, GPIO_PIN_RESET);
183
+    HAL_GPIO_WritePin(_T_SYNC_DL_GPIO_Port,_T_SYNC_DL_Pin, GPIO_PIN_SET);
184
+    HAL_GPIO_WritePin(T_SYNC_DL_GPIO_Port,T_SYNC_DL_Pin, GPIO_PIN_SET);     
185
+    
186
+    HAL_Delay(1);
187
+    Path_Init();
188
+    
189
+    ADF4153_Init();
190
+    SubmitDAC(0x800C);
191
+    SubmitDAC(0xA000);
192
+//    HAL_Delay(1);
193
+#if 1
194
+// PYJ.2019.07.30_BEGIN -- 
195
+    SubmitDAC(0x0FFF);
196
+    SubmitDAC(0x13FF);
197
+    SubmitDAC(0x24FF);
198
+    SubmitDAC(0x35FF);
199
+    SubmitDAC(0x46FF);
200
+    SubmitDAC(0x57FF);
201
+    SubmitDAC(0x68FF);
202
+    SubmitDAC(0x79FF);
203
+#endif // PYJ.2019.07.30_END -- 
204
+        
205
+//    ad53_write(0x2BFF);
206
+
207
+#ifdef DEBUG_PRINT
208
+  printf("\r\nPLL_EN_3_5G_L_GPIO_Port\r\n");
209
+#endif /* DEBUG_PRINT */
210
+  
211
+#ifdef DEBUG_PRINT
212
+  printf("\r\nPLL_EN_2_1G_UL_GPIO_Port\r\n");
213
+#endif /* DEBUG_PRINT */
214
+  HAL_Delay(1);
215
+  ADF4113_Initialize();
216
+//  BDA4601_Test();
217
+
218
+  while(!(HAL_ADCEx_Calibration_Start(&hadc1)==HAL_OK));
219
+//    HAL_ADCEx_Calibration_Start(&hadc1);
220
+    ADF4153_R_N_Reg_st temp_reg;
221
+    Bluecell_Flash_Read(&Flash_Save_data[INDEX_BLUE_HEADER]);
222
+    ATTEN_PLL_PATH_Initialize();
223
+
224
+//  ADF_Module_Ctrl(Pll_test,0x324000,0x144051,0x0017c2,0x0003c7);
225
+    HAL_ADC_Start_DMA(&hadc1, (uint32_t*)ADCvalue, 14);
226
+
227
+  /* USER CODE END 2 */
228
+
229
+  /* Infinite loop */
230
+  /* USER CODE BEGIN WHILE */
231
+//  while(HAL_ADCEx_Calibration_Start(&hadc1) != HAL_OK); //ADC Calibration 
232
+//   HAL_ADC_Start_DMA(&hadc1, (uint32_t*)ADCvalue, ADC_EA);
233
+ 
234
+  while (1)
235
+  {
236
+
237
+
238
+	    if(HAL_GPIO_ReadPin(PLL_LD_1_8G_DL_GPIO_Port, PLL_LD_1_8G_DL_Pin) == GPIO_PIN_RESET){
239
+	        ADF4113_Module_Ctrl(ADF4113_1_8G_DL,0x000410,0x03E801,0x9F8092);
240
+	        HAL_Delay(1);
241
+	    }
242
+	    if(HAL_GPIO_ReadPin(PLL_LD_1_8G_UL_GPIO_Port, PLL_LD_1_8G_UL_Pin) == GPIO_PIN_RESET){
243
+	        ADF4113_Module_Ctrl(ADF4113_1_8G_UL,0x000410,0x038D31,0x9f8092);
244
+	        HAL_Delay(1);
245
+	    }
246
+	    if(HAL_GPIO_ReadPin(PLL_LD_2_1G_DL_GPIO_Port, PLL_LD_2_1G_DL_Pin) == GPIO_PIN_RESET){
247
+	        ADF4113_Module_Ctrl(ADF4113_2_1G_DL,0x410,0x4DE71,0x9F8092);
248
+	        HAL_Delay(1);
249
+	    }
250
+	    if(HAL_GPIO_ReadPin(PLL_LD_2_1G_UL_GPIO_Port, PLL_LD_2_1G_UL_Pin) == GPIO_PIN_RESET){
251
+	        ADF4113_Module_Ctrl(ADF4113_2_1G_UL,0x000410,0x59A31,0x9f8092);
252
+	        HAL_Delay(1);
253
+	    }
254
+
255
+
256
+    if(HAL_GPIO_ReadPin(PLL_LD_3_5G_H_GPIO_Port, PLL_LD_3_5G_H_Pin) == GPIO_PIN_RESET 
257
+        && HAL_GPIO_ReadPin(PLL_ON_OFF_3_5G_H_GPIO_Port, PLL_ON_OFF_3_5G_H_Pin) == GPIO_PIN_SET){
258
+        temp_reg = ADF4153_Freq_Calc(3934500000,ADF4153_REFIN,ADF4153_RCOUNTER,ADF4153_CHANNEL_SPACING);
259
+        ADF4153_Module_Ctrl(Pll_3_5_H,temp_reg.N_reg,temp_reg.R_reg,0x13c2,0x3);
260
+        HAL_Delay(1);
261
+    }
262
+    if(HAL_GPIO_ReadPin(PLL_LD_3_5G_L_GPIO_Port, PLL_LD_3_5G_L_Pin) == GPIO_PIN_RESET
263
+        && HAL_GPIO_ReadPin(PLL_ON_OFF_3_5G_L_GPIO_Port, PLL_ON_OFF_3_5G_L_Pin) == GPIO_PIN_SET){
264
+        temp_reg = ADF4153_Freq_Calc(3465500000,ADF4153_REFIN,ADF4153_RCOUNTER,ADF4153_CHANNEL_SPACING);
265
+        ADF4153_Module_Ctrl(Pll_3_5_L,temp_reg.N_reg,temp_reg.R_reg,0x13c2,0x3);
266
+        HAL_Delay(1);
267
+    }
268
+    if(LedTimerCnt > 500){HAL_GPIO_TogglePin(BOOT_LED_GPIO_Port,GPIO_PIN_14);LedTimerCnt = 0;}
269
+    while (TerminalQueue.data > 0 && UartRxTimerCnt > 100) GetDataFromUartQueue(&hTerminal);
270
+    if(AdcTimerCnt > 2500){
271
+        
272
+        for(uint8_t i = 0; i< ADC_EA; i++ ){
273
+            Prev_data[INDEX_DET_1_8G_DL_IN_H + i*2]     = (uint16_t)((ADCvalue[i] & 0xFF00) >> 8);
274
+            Prev_data[INDEX_DET_1_8G_DL_IN_L + i*2]     = (uint16_t)(ADCvalue[i] & 0x00FF);
275
+//            printf("Prev_data[%d] : %x",i,Prev_data[INDEX_DET_1_8G_DL_IN_H + i]);
276
+//            printf("%x\r\n",i,Prev_data[INDEX_DET_1_8G_DL_IN_L + i]);            
277
+        }
278
+//        for(int i = 0; i < 14; i++)
279
+//            printf("\r\nYJ[%d] : %x \r\n",i,ADCvalue[i]);
280
+//        HAL_Delay(3000);
281
+#if 0 // PYJ.2019.07.29_BEGIN -- 
282
+        double tmp_volt = 3.3/4095;
283
+        printf("====================================\r\n");
284
+            for(uint8_t i = 0; i< ADC_EA; i++){
285
+                printf("%s :  %f V \r\n",  Bluecell_Prot_IndexStr[INDEX_DET_1_8G_DL_IN_H + i + 1],ADCvalue[i] * tmp_volt);
286
+            }
287
+//                printf("\r\nADC[%d] : %d\r\n ",i,ADCvalue[i]);
288
+        printf("====================================\r\n");
289
+#endif // PYJ.2019.07.29_END -- 
290
+        AdcTimerCnt = 0;
291
+
292
+    }
293
+
294
+    /* USER CODE END WHILE */
295
+
296
+    /* USER CODE BEGIN 3 */
297
+  }
298
+  /* USER CODE END 3 */
299
+}
300
+
301
+/**
302
+  * @brief System Clock Configuration
303
+  * @retval None
304
+  */
305
+void SystemClock_Config(void)
306
+{
307
+  RCC_OscInitTypeDef RCC_OscInitStruct = {0};
308
+  RCC_ClkInitTypeDef RCC_ClkInitStruct = {0};
309
+  RCC_PeriphCLKInitTypeDef PeriphClkInit = {0};
310
+
311
+  /** Initializes the CPU, AHB and APB busses clocks 
312
+  */
313
+  RCC_OscInitStruct.OscillatorType = RCC_OSCILLATORTYPE_HSI;
314
+  RCC_OscInitStruct.HSIState = RCC_HSI_ON;
315
+  RCC_OscInitStruct.HSICalibrationValue = RCC_HSICALIBRATION_DEFAULT;
316
+  RCC_OscInitStruct.PLL.PLLState = RCC_PLL_ON;
317
+  RCC_OscInitStruct.PLL.PLLSource = RCC_PLLSOURCE_HSI_DIV2;
318
+  RCC_OscInitStruct.PLL.PLLMUL = RCC_PLL_MUL14;
319
+  if (HAL_RCC_OscConfig(&RCC_OscInitStruct) != HAL_OK)
320
+  {
321
+    Error_Handler();
322
+  }
323
+  /** Initializes the CPU, AHB and APB busses clocks 
324
+  */
325
+  RCC_ClkInitStruct.ClockType = RCC_CLOCKTYPE_HCLK|RCC_CLOCKTYPE_SYSCLK
326
+                              |RCC_CLOCKTYPE_PCLK1|RCC_CLOCKTYPE_PCLK2;
327
+  RCC_ClkInitStruct.SYSCLKSource = RCC_SYSCLKSOURCE_PLLCLK;
328
+  RCC_ClkInitStruct.AHBCLKDivider = RCC_SYSCLK_DIV1;
329
+  RCC_ClkInitStruct.APB1CLKDivider = RCC_HCLK_DIV2;
330
+  RCC_ClkInitStruct.APB2CLKDivider = RCC_HCLK_DIV1;
331
+
332
+  if (HAL_RCC_ClockConfig(&RCC_ClkInitStruct, FLASH_LATENCY_2) != HAL_OK)
333
+  {
334
+    Error_Handler();
335
+  }
336
+  PeriphClkInit.PeriphClockSelection = RCC_PERIPHCLK_ADC;
337
+  PeriphClkInit.AdcClockSelection = RCC_ADCPCLK2_DIV4;
338
+  if (HAL_RCCEx_PeriphCLKConfig(&PeriphClkInit) != HAL_OK)
339
+  {
340
+    Error_Handler();
341
+  }
342
+}
343
+
344
+/**
345
+  * @brief NVIC Configuration.
346
+  * @retval None
347
+  */
348
+static void MX_NVIC_Init(void)
349
+{
350
+  /* USART1_IRQn interrupt configuration */
351
+  HAL_NVIC_SetPriority(USART1_IRQn, 0, 0);
352
+  HAL_NVIC_EnableIRQ(USART1_IRQn);
353
+  /* TIM6_IRQn interrupt configuration */
354
+  HAL_NVIC_SetPriority(TIM6_IRQn, 0, 0);
355
+  HAL_NVIC_EnableIRQ(TIM6_IRQn);
356
+  /* DMA1_Channel1_IRQn interrupt configuration */
357
+  HAL_NVIC_SetPriority(DMA1_Channel1_IRQn, 0, 0);
358
+  HAL_NVIC_EnableIRQ(DMA1_Channel1_IRQn);
359
+  /* DMA1_Channel4_IRQn interrupt configuration */
360
+  HAL_NVIC_SetPriority(DMA1_Channel4_IRQn, 0, 0);
361
+  HAL_NVIC_EnableIRQ(DMA1_Channel4_IRQn);
362
+  /* DMA1_Channel5_IRQn interrupt configuration */
363
+  HAL_NVIC_SetPriority(DMA1_Channel5_IRQn, 0, 0);
364
+  HAL_NVIC_EnableIRQ(DMA1_Channel5_IRQn);
365
+}
366
+
367
+/**
368
+  * @brief ADC1 Initialization Function
369
+  * @param None
370
+  * @retval None
371
+  */
372
+static void MX_ADC1_Init(void)
373
+{
374
+
375
+  /* USER CODE BEGIN ADC1_Init 0 */
376
+
377
+  /* USER CODE END ADC1_Init 0 */
378
+
379
+  ADC_ChannelConfTypeDef sConfig = {0};
380
+
381
+  /* USER CODE BEGIN ADC1_Init 1 */
382
+
383
+  /* USER CODE END ADC1_Init 1 */
384
+  /** Common config 
385
+  */
386
+  hadc1.Instance = ADC1;
387
+  hadc1.Init.ScanConvMode = ADC_SCAN_ENABLE;
388
+  hadc1.Init.ContinuousConvMode = ENABLE;
389
+  hadc1.Init.DiscontinuousConvMode = DISABLE;
390
+  hadc1.Init.ExternalTrigConv = ADC_SOFTWARE_START;
391
+  hadc1.Init.DataAlign = ADC_DATAALIGN_RIGHT;
392
+  hadc1.Init.NbrOfConversion = 14;
393
+  if (HAL_ADC_Init(&hadc1) != HAL_OK)
394
+  {
395
+    Error_Handler();
396
+  }
397
+  /** Configure Regular Channel 
398
+  */
399
+  sConfig.Channel = ADC_CHANNEL_0;
400
+  sConfig.Rank = ADC_REGULAR_RANK_1;
401
+  sConfig.SamplingTime = ADC_SAMPLETIME_239CYCLES_5;
402
+  if (HAL_ADC_ConfigChannel(&hadc1, &sConfig) != HAL_OK)
403
+  {
404
+    Error_Handler();
405
+  }
406
+  /** Configure Regular Channel 
407
+  */
408
+  sConfig.Channel = ADC_CHANNEL_1;
409
+  sConfig.Rank = ADC_REGULAR_RANK_2;
410
+  if (HAL_ADC_ConfigChannel(&hadc1, &sConfig) != HAL_OK)
411
+  {
412
+    Error_Handler();
413
+  }
414
+  /** Configure Regular Channel 
415
+  */
416
+  sConfig.Channel = ADC_CHANNEL_2;
417
+  sConfig.Rank = ADC_REGULAR_RANK_3;
418
+  if (HAL_ADC_ConfigChannel(&hadc1, &sConfig) != HAL_OK)
419
+  {
420
+    Error_Handler();
421
+  }
422
+  /** Configure Regular Channel 
423
+  */
424
+  sConfig.Channel = ADC_CHANNEL_3;
425
+  sConfig.Rank = ADC_REGULAR_RANK_4;
426
+  if (HAL_ADC_ConfigChannel(&hadc1, &sConfig) != HAL_OK)
427
+  {
428
+    Error_Handler();
429
+  }
430
+  /** Configure Regular Channel 
431
+  */
432
+  sConfig.Channel = ADC_CHANNEL_4;
433
+  sConfig.Rank = ADC_REGULAR_RANK_5;
434
+  if (HAL_ADC_ConfigChannel(&hadc1, &sConfig) != HAL_OK)
435
+  {
436
+    Error_Handler();
437
+  }
438
+  /** Configure Regular Channel 
439
+  */
440
+  sConfig.Channel = ADC_CHANNEL_5;
441
+  sConfig.Rank = ADC_REGULAR_RANK_6;
442
+  if (HAL_ADC_ConfigChannel(&hadc1, &sConfig) != HAL_OK)
443
+  {
444
+    Error_Handler();
445
+  }
446
+  /** Configure Regular Channel 
447
+  */
448
+  sConfig.Channel = ADC_CHANNEL_6;
449
+  sConfig.Rank = ADC_REGULAR_RANK_7;
450
+  if (HAL_ADC_ConfigChannel(&hadc1, &sConfig) != HAL_OK)
451
+  {
452
+    Error_Handler();
453
+  }
454
+  /** Configure Regular Channel 
455
+  */
456
+  sConfig.Channel = ADC_CHANNEL_7;
457
+  sConfig.Rank = ADC_REGULAR_RANK_8;
458
+  if (HAL_ADC_ConfigChannel(&hadc1, &sConfig) != HAL_OK)
459
+  {
460
+    Error_Handler();
461
+  }
462
+  /** Configure Regular Channel 
463
+  */
464
+  sConfig.Channel = ADC_CHANNEL_8;
465
+  sConfig.Rank = ADC_REGULAR_RANK_9;
466
+  if (HAL_ADC_ConfigChannel(&hadc1, &sConfig) != HAL_OK)
467
+  {
468
+    Error_Handler();
469
+  }
470
+  /** Configure Regular Channel 
471
+  */
472
+  sConfig.Channel = ADC_CHANNEL_9;
473
+  sConfig.Rank = ADC_REGULAR_RANK_10;
474
+  if (HAL_ADC_ConfigChannel(&hadc1, &sConfig) != HAL_OK)
475
+  {
476
+    Error_Handler();
477
+  }
478
+  /** Configure Regular Channel 
479
+  */
480
+  sConfig.Channel = ADC_CHANNEL_10;
481
+  sConfig.Rank = ADC_REGULAR_RANK_11;
482
+  if (HAL_ADC_ConfigChannel(&hadc1, &sConfig) != HAL_OK)
483
+  {
484
+    Error_Handler();
485
+  }
486
+  /** Configure Regular Channel 
487
+  */
488
+  sConfig.Channel = ADC_CHANNEL_11;
489
+  sConfig.Rank = ADC_REGULAR_RANK_12;
490
+  if (HAL_ADC_ConfigChannel(&hadc1, &sConfig) != HAL_OK)
491
+  {
492
+    Error_Handler();
493
+  }
494
+  /** Configure Regular Channel 
495
+  */
496
+  sConfig.Channel = ADC_CHANNEL_12;
497
+  sConfig.Rank = ADC_REGULAR_RANK_13;
498
+  if (HAL_ADC_ConfigChannel(&hadc1, &sConfig) != HAL_OK)
499
+  {
500
+    Error_Handler();
501
+  }
502
+  /** Configure Regular Channel 
503
+  */
504
+  sConfig.Channel = ADC_CHANNEL_13;
505
+  sConfig.Rank = ADC_REGULAR_RANK_14;
506
+  if (HAL_ADC_ConfigChannel(&hadc1, &sConfig) != HAL_OK)
507
+  {
508
+    Error_Handler();
509
+  }
510
+  /* USER CODE BEGIN ADC1_Init 2 */
511
+
512
+  /* USER CODE END ADC1_Init 2 */
513
+
514
+}
515
+
516
+/**
517
+  * @brief TIM6 Initialization Function
518
+  * @param None
519
+  * @retval None
520
+  */
521
+static void MX_TIM6_Init(void)
522
+{
523
+
524
+  /* USER CODE BEGIN TIM6_Init 0 */
525
+
526
+  /* USER CODE END TIM6_Init 0 */
527
+
528
+  TIM_MasterConfigTypeDef sMasterConfig = {0};
529
+
530
+  /* USER CODE BEGIN TIM6_Init 1 */
531
+
532
+  /* USER CODE END TIM6_Init 1 */
533
+  htim6.Instance = TIM6;
534
+  htim6.Init.Prescaler = 5600-1;
535
+  htim6.Init.CounterMode = TIM_COUNTERMODE_UP;
536
+  htim6.Init.Period = 10;
537
+  htim6.Init.AutoReloadPreload = TIM_AUTORELOAD_PRELOAD_DISABLE;
538
+  if (HAL_TIM_Base_Init(&htim6) != HAL_OK)
539
+  {
540
+    Error_Handler();
541
+  }
542
+  sMasterConfig.MasterOutputTrigger = TIM_TRGO_RESET;
543
+  sMasterConfig.MasterSlaveMode = TIM_MASTERSLAVEMODE_DISABLE;
544
+  if (HAL_TIMEx_MasterConfigSynchronization(&htim6, &sMasterConfig) != HAL_OK)
545
+  {
546
+    Error_Handler();
547
+  }
548
+  /* USER CODE BEGIN TIM6_Init 2 */
549
+
550
+  /* USER CODE END TIM6_Init 2 */
551
+
552
+}
553
+
554
+/**
555
+  * @brief USART1 Initialization Function
556
+  * @param None
557
+  * @retval None
558
+  */
559
+static void MX_USART1_UART_Init(void)
560
+{
561
+
562
+  /* USER CODE BEGIN USART1_Init 0 */
563
+
564
+  /* USER CODE END USART1_Init 0 */
565
+
566
+  /* USER CODE BEGIN USART1_Init 1 */
567
+
568
+  /* USER CODE END USART1_Init 1 */
569
+  huart1.Instance = USART1;
570
+  huart1.Init.BaudRate = 115200;
571
+  huart1.Init.WordLength = UART_WORDLENGTH_8B;
572
+  huart1.Init.StopBits = UART_STOPBITS_1;
573
+  huart1.Init.Parity = UART_PARITY_NONE;
574
+  huart1.Init.Mode = UART_MODE_TX_RX;
575
+  huart1.Init.HwFlowCtl = UART_HWCONTROL_NONE;
576
+  huart1.Init.OverSampling = UART_OVERSAMPLING_16;
577
+  if (HAL_UART_Init(&huart1) != HAL_OK)
578
+  {
579
+    Error_Handler();
580
+  }
581
+  /* USER CODE BEGIN USART1_Init 2 */
582
+
583
+  /* USER CODE END USART1_Init 2 */
584
+
585
+}
586
+
587
+/** 
588
+  * Enable DMA controller clock
589
+  */
590
+static void MX_DMA_Init(void) 
591
+{
592
+  /* DMA controller clock enable */
593
+  __HAL_RCC_DMA1_CLK_ENABLE();
594
+
595
+}
596
+
597
+/**
598
+  * @brief GPIO Initialization Function
599
+  * @param None
600
+  * @retval None
601
+  */
602
+static void MX_GPIO_Init(void)
603
+{
604
+  GPIO_InitTypeDef GPIO_InitStruct = {0};
605
+
606
+  /* GPIO Ports Clock Enable */
607
+  __HAL_RCC_GPIOE_CLK_ENABLE();
608
+  __HAL_RCC_GPIOC_CLK_ENABLE();
609
+  __HAL_RCC_GPIOF_CLK_ENABLE();
610
+  __HAL_RCC_GPIOA_CLK_ENABLE();
611
+  __HAL_RCC_GPIOB_CLK_ENABLE();
612
+  __HAL_RCC_GPIOD_CLK_ENABLE();
613
+  __HAL_RCC_GPIOG_CLK_ENABLE();
614
+
615
+  /*Configure GPIO pin Output Level */
616
+  HAL_GPIO_WritePin(GPIOE, ATT_EN_1_8G_DL1_Pin|ATT_EN_1_8G_DL2_Pin|ATT_EN_1_8G_UL1_Pin|ATT_EN_1_8G_UL2_Pin 
617
+                          |ATT_EN_1_8G_UL3_Pin|PATH_EN_2_1G_DL_Pin|PATH_EN_2_1G_UL_Pin, GPIO_PIN_RESET);
618
+
619
+  /*Configure GPIO pin Output Level */
620
+  HAL_GPIO_WritePin(GPIOC, ATT_EN_1_8G_UL4_Pin|PATH_EN_1_8G_DL_Pin|PATH_EN_1_8G_UL_Pin|PLL_EN_3_5G_L_Pin 
621
+                          |PLL_EN_3_5G_H_Pin|PLL_ON_OFF_3_5G_L_Pin|PLL_DATA_3_5G_Pin|PLL_ON_OFF_3_5G_H_Pin, GPIO_PIN_RESET);
622
+
623
+  /*Configure GPIO pin Output Level */
624
+  HAL_GPIO_WritePin(GPIOF, PLL_EN_1_8G_DL_Pin|PLL_EN_1_8G_UL_Pin|ATT_EN_2_1G_DL1_Pin|ATT_EN_2_1G_DL2_Pin 
625
+                          |ATT_EN_2_1G_UL1_Pin|ATT_EN_2_1G_UL2_Pin|ATT_EN_2_1G_UL3_Pin|ATT_EN_2_1G_UL4_Pin, GPIO_PIN_RESET);
626
+
627
+  /*Configure GPIO pin Output Level */
628
+  HAL_GPIO_WritePin(GPIOD, PLL_DATA_Pin|PLL_CLK_Pin|ATT_DATA_Pin|ATT_CLK_Pin 
629
+                          |DA_LDAC_Pin|ATT_CLK_3_5G_Pin|ATT_EN_3_5G_Pin|ATT_DATA_3_5G_DL_Pin 
630
+                          |ATT_DATA_3_5G_UL_Pin|ATT_DATA_3_5G_COM1_Pin|ATT_DATA_3_5G_COM2_Pin|ATT_DATA_3_5G_COM3_Pin 
631
+                          |PATH_EN_3_5G_L_Pin, GPIO_PIN_RESET);
632
+
633
+  /*Configure GPIO pin Output Level */
634
+  HAL_GPIO_WritePin(GPIOG, DA_SYNC_Pin|DA_SCLK_Pin|DA_DIN_Pin|_T_SYNC_UL_Pin 
635
+                          |T_SYNC_UL_Pin|_T_SYNC_DL_Pin|T_SYNC_DL_Pin|PATH_EN_3_5G_H_Pin 
636
+                          |PATH_EN_3_5G_DL_Pin|PATH_EN_3_5G_UL_Pin|PLL_ON_OFF_3_5G_LG12_Pin|PLL_ON_OFF_3_5G_HG13_Pin 
637
+                          |BOOT_LED_Pin, GPIO_PIN_RESET);
638
+
639
+  /*Configure GPIO pin Output Level */
640
+  HAL_GPIO_WritePin(PLL_CLK_3_5G_GPIO_Port, PLL_CLK_3_5G_Pin, GPIO_PIN_RESET);
641
+
642
+  /*Configure GPIO pin Output Level */
643
+  HAL_GPIO_WritePin(GPIOB, PLL_EN_2_1G_DL_Pin|PLL_EN_2_1G_UL_Pin, GPIO_PIN_RESET);
644
+
645
+  /*Configure GPIO pins : ATT_EN_1_8G_DL1_Pin ATT_EN_1_8G_DL2_Pin ATT_EN_1_8G_UL1_Pin ATT_EN_1_8G_UL2_Pin 
646
+                           ATT_EN_1_8G_UL3_Pin PATH_EN_2_1G_DL_Pin PATH_EN_2_1G_UL_Pin */
647
+  GPIO_InitStruct.Pin = ATT_EN_1_8G_DL1_Pin|ATT_EN_1_8G_DL2_Pin|ATT_EN_1_8G_UL1_Pin|ATT_EN_1_8G_UL2_Pin 
648
+                          |ATT_EN_1_8G_UL3_Pin|PATH_EN_2_1G_DL_Pin|PATH_EN_2_1G_UL_Pin;
649
+  GPIO_InitStruct.Mode = GPIO_MODE_OUTPUT_PP;
650
+  GPIO_InitStruct.Pull = GPIO_NOPULL;
651
+  GPIO_InitStruct.Speed = GPIO_SPEED_FREQ_LOW;
652
+  HAL_GPIO_Init(GPIOE, &GPIO_InitStruct);
653
+
654
+  /*Configure GPIO pins : ATT_EN_1_8G_UL4_Pin PATH_EN_1_8G_DL_Pin PATH_EN_1_8G_UL_Pin PLL_EN_3_5G_L_Pin 
655
+                           PLL_EN_3_5G_H_Pin PLL_ON_OFF_3_5G_L_Pin PLL_DATA_3_5G_Pin PLL_ON_OFF_3_5G_H_Pin */
656
+  GPIO_InitStruct.Pin = ATT_EN_1_8G_UL4_Pin|PATH_EN_1_8G_DL_Pin|PATH_EN_1_8G_UL_Pin|PLL_EN_3_5G_L_Pin 
657
+                          |PLL_EN_3_5G_H_Pin|PLL_ON_OFF_3_5G_L_Pin|PLL_DATA_3_5G_Pin|PLL_ON_OFF_3_5G_H_Pin;
658
+  GPIO_InitStruct.Mode = GPIO_MODE_OUTPUT_PP;
659
+  GPIO_InitStruct.Pull = GPIO_NOPULL;
660
+  GPIO_InitStruct.Speed = GPIO_SPEED_FREQ_LOW;
661
+  HAL_GPIO_Init(GPIOC, &GPIO_InitStruct);
662
+
663
+  /*Configure GPIO pins : PLL_EN_1_8G_DL_Pin PLL_EN_1_8G_UL_Pin ATT_EN_2_1G_DL1_Pin ATT_EN_2_1G_DL2_Pin 
664
+                           ATT_EN_2_1G_UL1_Pin ATT_EN_2_1G_UL2_Pin ATT_EN_2_1G_UL3_Pin ATT_EN_2_1G_UL4_Pin */
665
+  GPIO_InitStruct.Pin = PLL_EN_1_8G_DL_Pin|PLL_EN_1_8G_UL_Pin|ATT_EN_2_1G_DL1_Pin|ATT_EN_2_1G_DL2_Pin 
666
+                          |ATT_EN_2_1G_UL1_Pin|ATT_EN_2_1G_UL2_Pin|ATT_EN_2_1G_UL3_Pin|ATT_EN_2_1G_UL4_Pin;
667
+  GPIO_InitStruct.Mode = GPIO_MODE_OUTPUT_PP;
668
+  GPIO_InitStruct.Pull = GPIO_NOPULL;
669
+  GPIO_InitStruct.Speed = GPIO_SPEED_FREQ_LOW;
670
+  HAL_GPIO_Init(GPIOF, &GPIO_InitStruct);
671
+
672
+  /*Configure GPIO pins : PLL_LD_1_8G_DL_Pin PLL_LD_1_8G_UL_Pin */
673
+  GPIO_InitStruct.Pin = PLL_LD_1_8G_DL_Pin|PLL_LD_1_8G_UL_Pin;
674
+  GPIO_InitStruct.Mode = GPIO_MODE_INPUT;
675
+  GPIO_InitStruct.Pull = GPIO_NOPULL;
676
+  HAL_GPIO_Init(GPIOF, &GPIO_InitStruct);
677
+
678
+  /*Configure GPIO pins : PLL_DATA_Pin PLL_CLK_Pin ATT_DATA_Pin ATT_CLK_Pin 
679
+                           DA_LDAC_Pin ATT_CLK_3_5G_Pin ATT_EN_3_5G_Pin ATT_DATA_3_5G_DL_Pin 
680
+                           ATT_DATA_3_5G_UL_Pin ATT_DATA_3_5G_COM1_Pin ATT_DATA_3_5G_COM2_Pin ATT_DATA_3_5G_COM3_Pin 
681
+                           PATH_EN_3_5G_L_Pin */
682
+  GPIO_InitStruct.Pin = PLL_DATA_Pin|PLL_CLK_Pin|ATT_DATA_Pin|ATT_CLK_Pin 
683
+                          |DA_LDAC_Pin|ATT_CLK_3_5G_Pin|ATT_EN_3_5G_Pin|ATT_DATA_3_5G_DL_Pin 
684
+                          |ATT_DATA_3_5G_UL_Pin|ATT_DATA_3_5G_COM1_Pin|ATT_DATA_3_5G_COM2_Pin|ATT_DATA_3_5G_COM3_Pin 
685
+                          |PATH_EN_3_5G_L_Pin;
686
+  GPIO_InitStruct.Mode = GPIO_MODE_OUTPUT_PP;
687
+  GPIO_InitStruct.Pull = GPIO_NOPULL;
688
+  GPIO_InitStruct.Speed = GPIO_SPEED_FREQ_LOW;
689
+  HAL_GPIO_Init(GPIOD, &GPIO_InitStruct);
690
+
691
+  /*Configure GPIO pins : ALARM_DC_Pin ALARM_AC_Pin */
692
+  GPIO_InitStruct.Pin = ALARM_DC_Pin|ALARM_AC_Pin;
693
+  GPIO_InitStruct.Mode = GPIO_MODE_INPUT;
694
+  GPIO_InitStruct.Pull = GPIO_NOPULL;
695
+  HAL_GPIO_Init(GPIOD, &GPIO_InitStruct);
696
+
697
+  /*Configure GPIO pins : DA_SYNC_Pin DA_SCLK_Pin DA_DIN_Pin _T_SYNC_UL_Pin 
698
+                           T_SYNC_UL_Pin _T_SYNC_DL_Pin T_SYNC_DL_Pin PATH_EN_3_5G_H_Pin 
699
+                           PATH_EN_3_5G_DL_Pin PATH_EN_3_5G_UL_Pin PLL_ON_OFF_3_5G_LG12_Pin PLL_ON_OFF_3_5G_HG13_Pin 
700
+                           BOOT_LED_Pin */
701
+  GPIO_InitStruct.Pin = DA_SYNC_Pin|DA_SCLK_Pin|DA_DIN_Pin|_T_SYNC_UL_Pin 
702
+                          |T_SYNC_UL_Pin|_T_SYNC_DL_Pin|T_SYNC_DL_Pin|PATH_EN_3_5G_H_Pin 
703
+                          |PATH_EN_3_5G_DL_Pin|PATH_EN_3_5G_UL_Pin|PLL_ON_OFF_3_5G_LG12_Pin|PLL_ON_OFF_3_5G_HG13_Pin 
704
+                          |BOOT_LED_Pin;
705
+  GPIO_InitStruct.Mode = GPIO_MODE_OUTPUT_PP;
706
+  GPIO_InitStruct.Pull = GPIO_NOPULL;
707
+  GPIO_InitStruct.Speed = GPIO_SPEED_FREQ_LOW;
708
+  HAL_GPIO_Init(GPIOG, &GPIO_InitStruct);
709
+
710
+  /*Configure GPIO pins : PLL_LD_3_5G_L_Pin PLL_LD_3_5G_H_Pin */
711
+  GPIO_InitStruct.Pin = PLL_LD_3_5G_L_Pin|PLL_LD_3_5G_H_Pin;
712
+  GPIO_InitStruct.Mode = GPIO_MODE_INPUT;
713
+  GPIO_InitStruct.Pull = GPIO_NOPULL;
714
+  HAL_GPIO_Init(GPIOC, &GPIO_InitStruct);
715
+
716
+  /*Configure GPIO pin : PLL_CLK_3_5G_Pin */
717
+  GPIO_InitStruct.Pin = PLL_CLK_3_5G_Pin;
718
+  GPIO_InitStruct.Mode = GPIO_MODE_OUTPUT_PP;
719
+  GPIO_InitStruct.Pull = GPIO_NOPULL;
720
+  GPIO_InitStruct.Speed = GPIO_SPEED_FREQ_LOW;
721
+  HAL_GPIO_Init(PLL_CLK_3_5G_GPIO_Port, &GPIO_InitStruct);
722
+
723
+  /*Configure GPIO pins : PLL_EN_2_1G_DL_Pin PLL_EN_2_1G_UL_Pin */
724
+  GPIO_InitStruct.Pin = PLL_EN_2_1G_DL_Pin|PLL_EN_2_1G_UL_Pin;
725
+  GPIO_InitStruct.Mode = GPIO_MODE_OUTPUT_PP;
726
+  GPIO_InitStruct.Pull = GPIO_NOPULL;
727
+  GPIO_InitStruct.Speed = GPIO_SPEED_FREQ_LOW;
728
+  HAL_GPIO_Init(GPIOB, &GPIO_InitStruct);
729
+
730
+  /*Configure GPIO pins : PLL_LD_2_1G_DL_Pin PLL_LD_2_1G_UL_Pin */
731
+  GPIO_InitStruct.Pin = PLL_LD_2_1G_DL_Pin|PLL_LD_2_1G_UL_Pin;
732
+  GPIO_InitStruct.Mode = GPIO_MODE_INPUT;
733
+  GPIO_InitStruct.Pull = GPIO_NOPULL;
734
+  HAL_GPIO_Init(GPIOB, &GPIO_InitStruct);
735
+
736
+}
737
+
738
+/* USER CODE BEGIN 4 */
739
+
740
+/* USER CODE END 4 */
741
+
742
+/**
743
+  * @brief  This function is executed in case of error occurrence.
744
+  * @retval None
745
+  */
746
+void Error_Handler(void)
747
+{
748
+  /* USER CODE BEGIN Error_Handler_Debug */
749
+  /* User can add his own implementation to report the HAL error return state */
750
+
751
+  /* USER CODE END Error_Handler_Debug */
752
+}
753
+
754
+#ifdef  USE_FULL_ASSERT
755
+/**
756
+  * @brief  Reports the name of the source file and the source line number
757
+  *         where the assert_param error has occurred.
758
+  * @param  file: pointer to the source file name
759
+  * @param  line: assert_param error line source number
760
+  * @retval None
761
+  */
762
+void assert_failed(uint8_t *file, uint32_t line)
763
+{ 
764
+  /* USER CODE BEGIN 6 */
765
+  /* User can add his own implementation to report the file name and line number,
766
+     tex: printf("Wrong parameters value: file %s on line %d\r\n", file, line) */
767
+  /* USER CODE END 6 */
768
+}
769
+#endif /* USE_FULL_ASSERT */
770
+
771
+/************************ (C) COPYRIGHT STMicroelectronics *****END OF FILE****/

+ 248 - 0
insight/STM32F103_ATTEN_PLL_Zig.si4project/Backup/main(2807).h

@@ -0,0 +1,248 @@
1
+/* USER CODE BEGIN Header */
2
+/**
3
+  ******************************************************************************
4
+  * @file           : main.h
5
+  * @brief          : Header for main.c file.
6
+  *                   This file contains the common defines of the application.
7
+  ******************************************************************************
8
+  * @attention
9
+  *
10
+  * <h2><center>&copy; Copyright (c) 2019 STMicroelectronics.
11
+  * All rights reserved.</center></h2>
12
+  *
13
+  * This software component is licensed by ST under BSD 3-Clause license,
14
+  * the "License"; You may not use this file except in compliance with the
15
+  * License. You may obtain a copy of the License at:
16
+  *                        opensource.org/licenses/BSD-3-Clause
17
+  *
18
+  ******************************************************************************
19
+  */
20
+/* USER CODE END Header */
21
+
22
+/* Define to prevent recursive inclusion -------------------------------------*/
23
+#ifndef __MAIN_H
24
+#define __MAIN_H
25
+
26
+#ifdef __cplusplus
27
+extern "C" {
28
+#endif
29
+
30
+/* Includes ------------------------------------------------------------------*/
31
+#include "stm32f1xx_hal.h"
32
+
33
+/* Private includes ----------------------------------------------------------*/
34
+/* USER CODE BEGIN Includes */
35
+#include <stdio.h>
36
+#include <stdbool.h>
37
+#include "PE43711.h"
38
+#include "BDA4601.h"
39
+#include "zig_operate.h"
40
+#include "pll_4113.h"
41
+#include "adf4153.h"
42
+#include "uart.h"
43
+#include "includes.h"
44
+#include "ad5318.h"
45
+#include "flash.h"
46
+/* USER CODE END Includes */
47
+
48
+/* Exported types ------------------------------------------------------------*/
49
+/* USER CODE BEGIN ET */
50
+
51
+/* USER CODE END ET */
52
+
53
+/* Exported constants --------------------------------------------------------*/
54
+/* USER CODE BEGIN EC */
55
+typedef struct _ATTEN_Setting_st{
56
+
57
+    GPIO_TypeDef * CLK_PORT;
58
+    uint16_t       CLK_PIN;
59
+    GPIO_TypeDef * DATA_PORT;
60
+    uint16_t       DATA_PIN;    
61
+    GPIO_TypeDef * ENABLE_PORT;    
62
+    uint16_t       ENABLE_PIN;    
63
+    GPIO_TypeDef * PATH_EN_PORT;    
64
+    uint16_t       PATH_EN_PIN;    
65
+} ATTEN_Setting_st;
66
+
67
+
68
+/* USER CODE END EC */
69
+
70
+/* Exported macro ------------------------------------------------------------*/
71
+/* USER CODE BEGIN EM */
72
+volatile uint32_t UartRxTimerCnt;
73
+volatile uint32_t AdcTimerCnt;
74
+
75
+/* USER CODE END EM */
76
+
77
+/* Exported functions prototypes ---------------------------------------------*/
78
+void Error_Handler(void);
79
+
80
+/* USER CODE BEGIN EFP */
81
+extern void Pol_Delay_us(volatile uint32_t microseconds);
82
+extern void ATTEN_PLL_PATH_Initialize(void);
83
+
84
+/* USER CODE END EFP */
85
+
86
+/* Private defines -----------------------------------------------------------*/
87
+#define ATT_EN_1_8G_DL1_Pin GPIO_PIN_2
88
+#define ATT_EN_1_8G_DL1_GPIO_Port GPIOE
89
+#define ATT_EN_1_8G_DL2_Pin GPIO_PIN_3
90
+#define ATT_EN_1_8G_DL2_GPIO_Port GPIOE
91
+#define ATT_EN_1_8G_UL1_Pin GPIO_PIN_4
92
+#define ATT_EN_1_8G_UL1_GPIO_Port GPIOE
93
+#define ATT_EN_1_8G_UL2_Pin GPIO_PIN_5
94
+#define ATT_EN_1_8G_UL2_GPIO_Port GPIOE
95
+#define ATT_EN_1_8G_UL3_Pin GPIO_PIN_6
96
+#define ATT_EN_1_8G_UL3_GPIO_Port GPIOE
97
+#define ATT_EN_1_8G_UL4_Pin GPIO_PIN_13
98
+#define ATT_EN_1_8G_UL4_GPIO_Port GPIOC
99
+#define PATH_EN_1_8G_DL_Pin GPIO_PIN_14
100
+#define PATH_EN_1_8G_DL_GPIO_Port GPIOC
101
+#define PATH_EN_1_8G_UL_Pin GPIO_PIN_15
102
+#define PATH_EN_1_8G_UL_GPIO_Port GPIOC
103
+#define PLL_EN_1_8G_DL_Pin GPIO_PIN_0
104
+#define PLL_EN_1_8G_DL_GPIO_Port GPIOF
105
+#define PLL_EN_1_8G_UL_Pin GPIO_PIN_1
106
+#define PLL_EN_1_8G_UL_GPIO_Port GPIOF
107
+#define PLL_LD_1_8G_DL_Pin GPIO_PIN_2
108
+#define PLL_LD_1_8G_DL_GPIO_Port GPIOF
109
+#define PLL_LD_1_8G_UL_Pin GPIO_PIN_3
110
+#define PLL_LD_1_8G_UL_GPIO_Port GPIOF
111
+#define ATT_EN_2_1G_DL1_Pin GPIO_PIN_4
112
+#define ATT_EN_2_1G_DL1_GPIO_Port GPIOF
113
+#define ATT_EN_2_1G_DL2_Pin GPIO_PIN_5
114
+#define ATT_EN_2_1G_DL2_GPIO_Port GPIOF
115
+#define ATT_EN_2_1G_UL1_Pin GPIO_PIN_6
116
+#define ATT_EN_2_1G_UL1_GPIO_Port GPIOF
117
+#define ATT_EN_2_1G_UL2_Pin GPIO_PIN_7
118
+#define ATT_EN_2_1G_UL2_GPIO_Port GPIOF
119
+#define ATT_EN_2_1G_UL3_Pin GPIO_PIN_8
120
+#define ATT_EN_2_1G_UL3_GPIO_Port GPIOF
121
+#define ATT_EN_2_1G_UL4_Pin GPIO_PIN_9
122
+#define ATT_EN_2_1G_UL4_GPIO_Port GPIOF
123
+#define DET_3_5G_UL_IN_Pin GPIO_PIN_0
124
+#define DET_3_5G_UL_IN_GPIO_Port GPIOC
125
+#define DET_3_5G_UL_OUT_Pin GPIO_PIN_1
126
+#define DET_3_5G_UL_OUT_GPIO_Port GPIOC
127
+#define RFU_TEMP_Pin GPIO_PIN_2
128
+#define RFU_TEMP_GPIO_Port GPIOC
129
+#define _28V_DET_Pin GPIO_PIN_3
130
+#define _28V_DET_GPIO_Port GPIOC
131
+#define DET_1_8G_DL_OUT_Pin GPIO_PIN_1
132
+#define DET_1_8G_DL_OUT_GPIO_Port GPIOA
133
+#define DET_1_8G_UL_IN_Pin GPIO_PIN_2
134
+#define DET_1_8G_UL_IN_GPIO_Port GPIOA
135
+#define DET_1_8G_UL_OUT_Pin GPIO_PIN_3
136
+#define DET_1_8G_UL_OUT_GPIO_Port GPIOA
137
+#define DET_2_1G_DL_IN_Pin GPIO_PIN_4
138
+#define DET_2_1G_DL_IN_GPIO_Port GPIOA
139
+#define DET_2_1G_DL_OUT_Pin GPIO_PIN_5
140
+#define DET_2_1G_DL_OUT_GPIO_Port GPIOA
141
+#define DET_2_1G_UL_IN_Pin GPIO_PIN_6
142
+#define DET_2_1G_UL_IN_GPIO_Port GPIOA
143
+#define DET_2_1G_UL_OUT_Pin GPIO_PIN_7
144
+#define DET_2_1G_UL_OUT_GPIO_Port GPIOA
145
+#define DET_3_5G_DL_IN_Pin GPIO_PIN_0
146
+#define DET_3_5G_DL_IN_GPIO_Port GPIOB
147
+#define DET_3_5G_DL_OUT_Pin GPIO_PIN_1
148
+#define DET_3_5G_DL_OUT_GPIO_Port GPIOB
149
+#define PLL_DATA_Pin GPIO_PIN_8
150
+#define PLL_DATA_GPIO_Port GPIOD
151
+#define PLL_CLK_Pin GPIO_PIN_9
152
+#define PLL_CLK_GPIO_Port GPIOD
153
+#define ATT_DATA_Pin GPIO_PIN_10
154
+#define ATT_DATA_GPIO_Port GPIOD
155
+#define ATT_CLK_Pin GPIO_PIN_11
156
+#define ATT_CLK_GPIO_Port GPIOD
157
+#define ALARM_DC_Pin GPIO_PIN_12
158
+#define ALARM_DC_GPIO_Port GPIOD
159
+#define ALARM_AC_Pin GPIO_PIN_13
160
+#define ALARM_AC_GPIO_Port GPIOD
161
+#define DA_LDAC_Pin GPIO_PIN_15
162
+#define DA_LDAC_GPIO_Port GPIOD
163
+#define DA_SYNC_Pin GPIO_PIN_2
164
+#define DA_SYNC_GPIO_Port GPIOG
165
+#define DA_SCLK_Pin GPIO_PIN_3
166
+#define DA_SCLK_GPIO_Port GPIOG
167
+#define DA_DIN_Pin GPIO_PIN_4
168
+#define DA_DIN_GPIO_Port GPIOG
169
+#define _T_SYNC_UL_Pin GPIO_PIN_5
170
+#define _T_SYNC_UL_GPIO_Port GPIOG
171
+#define T_SYNC_UL_Pin GPIO_PIN_6
172
+#define T_SYNC_UL_GPIO_Port GPIOG
173
+#define _T_SYNC_DL_Pin GPIO_PIN_7
174
+#define _T_SYNC_DL_GPIO_Port GPIOG
175
+#define T_SYNC_DL_Pin GPIO_PIN_8
176
+#define T_SYNC_DL_GPIO_Port GPIOG
177
+#define PLL_EN_3_5G_L_Pin GPIO_PIN_6
178
+#define PLL_EN_3_5G_L_GPIO_Port GPIOC
179
+#define PLL_EN_3_5G_H_Pin GPIO_PIN_7
180
+#define PLL_EN_3_5G_H_GPIO_Port GPIOC
181
+#define PLL_LD_3_5G_L_Pin GPIO_PIN_8
182
+#define PLL_LD_3_5G_L_GPIO_Port GPIOC
183
+#define PLL_LD_3_5G_H_Pin GPIO_PIN_9
184
+#define PLL_LD_3_5G_H_GPIO_Port GPIOC
185
+#define PLL_CLK_3_5G_Pin GPIO_PIN_15
186
+#define PLL_CLK_3_5G_GPIO_Port GPIOA
187
+#define PLL_ON_OFF_3_5G_L_Pin GPIO_PIN_10
188
+#define PLL_ON_OFF_3_5G_L_GPIO_Port GPIOC
189
+#define PLL_DATA_3_5G_Pin GPIO_PIN_11
190
+#define PLL_DATA_3_5G_GPIO_Port GPIOC
191
+#define PLL_ON_OFF_3_5G_H_Pin GPIO_PIN_12
192
+#define PLL_ON_OFF_3_5G_H_GPIO_Port GPIOC
193
+#define ATT_CLK_3_5G_Pin GPIO_PIN_0
194
+#define ATT_CLK_3_5G_GPIO_Port GPIOD
195
+#define ATT_EN_3_5G_Pin GPIO_PIN_1
196
+#define ATT_EN_3_5G_GPIO_Port GPIOD
197
+#define ATT_DATA_3_5G_DL_Pin GPIO_PIN_2
198
+#define ATT_DATA_3_5G_DL_GPIO_Port GPIOD
199
+#define ATT_DATA_3_5G_UL_Pin GPIO_PIN_3
200
+#define ATT_DATA_3_5G_UL_GPIO_Port GPIOD
201
+#define ATT_DATA_3_5G_COM1_Pin GPIO_PIN_4
202
+#define ATT_DATA_3_5G_COM1_GPIO_Port GPIOD
203
+#define ATT_DATA_3_5G_COM2_Pin GPIO_PIN_5
204
+#define ATT_DATA_3_5G_COM2_GPIO_Port GPIOD
205
+#define ATT_DATA_3_5G_COM3_Pin GPIO_PIN_6
206
+#define ATT_DATA_3_5G_COM3_GPIO_Port GPIOD
207
+#define PATH_EN_3_5G_L_Pin GPIO_PIN_7
208
+#define PATH_EN_3_5G_L_GPIO_Port GPIOD
209
+#define PATH_EN_3_5G_H_Pin GPIO_PIN_9
210
+#define PATH_EN_3_5G_H_GPIO_Port GPIOG
211
+#define PATH_EN_3_5G_DL_Pin GPIO_PIN_10
212
+#define PATH_EN_3_5G_DL_GPIO_Port GPIOG
213
+#define PATH_EN_3_5G_UL_Pin GPIO_PIN_11
214
+#define PATH_EN_3_5G_UL_GPIO_Port GPIOG
215
+#define PLL_ON_OFF_3_5G_LG12_Pin GPIO_PIN_12
216
+#define PLL_ON_OFF_3_5G_LG12_GPIO_Port GPIOG
217
+#define PLL_ON_OFF_3_5G_HG13_Pin GPIO_PIN_13
218
+#define PLL_ON_OFF_3_5G_HG13_GPIO_Port GPIOG
219
+#define BOOT_LED_Pin GPIO_PIN_14
220
+#define BOOT_LED_GPIO_Port GPIOG
221
+#define PLL_EN_2_1G_DL_Pin GPIO_PIN_3
222
+#define PLL_EN_2_1G_DL_GPIO_Port GPIOB
223
+#define PLL_EN_2_1G_UL_Pin GPIO_PIN_4
224
+#define PLL_EN_2_1G_UL_GPIO_Port GPIOB
225
+#define PLL_LD_2_1G_DL_Pin GPIO_PIN_5
226
+#define PLL_LD_2_1G_DL_GPIO_Port GPIOB
227
+#define PLL_LD_2_1G_UL_Pin GPIO_PIN_6
228
+#define PLL_LD_2_1G_UL_GPIO_Port GPIOB
229
+#define PATH_EN_2_1G_DL_Pin GPIO_PIN_0
230
+#define PATH_EN_2_1G_DL_GPIO_Port GPIOE
231
+#define PATH_EN_2_1G_UL_Pin GPIO_PIN_1
232
+#define PATH_EN_2_1G_UL_GPIO_Port GPIOE
233
+/* USER CODE BEGIN Private defines */
234
+#define BLUECELL_HEADER 0xBE
235
+#define BLUECELL_TAILER 0xEB
236
+//#define DEBUG_PRINT   
237
+#define ADC_EA     14
238
+uint32_t ADCvalue[ADC_EA];
239
+
240
+/* USER CODE END Private defines */
241
+
242
+#ifdef __cplusplus
243
+}
244
+#endif
245
+
246
+#endif /* __MAIN_H */
247
+
248
+/************************ (C) COPYRIGHT STMicroelectronics *****END OF FILE****/

+ 31 - 0
insight/STM32F103_ATTEN_PLL_Zig.si4project/Backup/pll_4113(1173).h

@@ -0,0 +1,31 @@
1
+/**************************************************************************************************
2
+  Filename:       hal_adf4113.h
3
+  Revised:        $Date: 2013-11-17 $
4
+  Revision:       $Revision: $
5
+  Description:    This file contains the interface to the ADF4113 frequency synthesizer.
6
+**************************************************************************************************/
7
+#ifndef HAL_ADF4113_H
8
+#define HAL_ADF4113_H
9
+#include "main.h"
10
+
11
+typedef struct _PLL_Setting_st{
12
+    GPIO_TypeDef * PLL_CLK_PORT;
13
+    uint16_t       PLL_CLK_PIN;
14
+    GPIO_TypeDef * PLL_DATA_PORT;
15
+    uint16_t       PLL_DATA_PIN;
16
+    GPIO_TypeDef * PLL_ENABLE_PORT;
17
+    uint16_t       PLL_ENABLE_PIN;
18
+} PLL_Setting_st;
19
+
20
+PLL_Setting_st ADF4113_1_8G_DL;
21
+PLL_Setting_st ADF4113_1_8G_UL;
22
+PLL_Setting_st ADF4113_2_1G_DL;
23
+PLL_Setting_st ADF4113_2_1G_UL;
24
+
25
+uint8_t halSynSetFreq(uint32_t rf_Freq);
26
+void ADF4113_Module_Ctrl(PLL_Setting_st pll,uint32_t R0,uint32_t R1,uint32_t R2);
27
+void ADF4113_Initialize(void);
28
+
29
+//void ADF4113_Module_Ctrl(PLL_Setting_st pll,uint32_t R0,uint32_t R1,uint32_t R2);
30
+
31
+#endif

+ 241 - 0
insight/STM32F103_ATTEN_PLL_Zig.si4project/Backup/pll_4113(2321).c

@@ -0,0 +1,241 @@
1
+/**************************************************************************************************
2
+  Filename:       hal_adf4113.c
3
+  Revised:        $Date: 2013-11-17 $
4
+  Revision:       $Revision:  $
5
+  Description:   This file contains the interface to the ADF4113 frequency synthesizer.
6
+**************************************************************************************************/
7
+#include "pll_4113.h"
8
+void ADF4113_Module_Ctrl(PLL_Setting_st pll,uint32_t R0,uint32_t R1,uint32_t R2);
9
+
10
+uint32_t N_Counter_Latch_Create(uint16_t _ACOUNTER,uint16_t _BCOUNTER,uint8_t _CPGAIN);
11
+
12
+#define ADF4113_PRESCALE8         0
13
+#define ADF4113_PRESCALE16        1
14
+#define ADF4113_PRESCALE32        2
15
+#define ADF4113_PRESCALE64        3
16
+// ADF4113 Prescale value for minimum required division ratio
17
+#define ADF4113_PRE8_MIN_N        56
18
+#define ADF4113_PRE16_MIN_N       240
19
+#define ADF4113_PRE32_MIN_N       992
20
+#define ADF4113_PRE64_MIN_N       4032
21
+// Frequency Settings
22
+// Initally, the synthesizer will operate at 2450 MHz
23
+#define ADF4113_CH_STEP          50000
24
+#define HAL_SYN_INVALID_PRESCALE  0x04
25
+#define ADF4113_REF_FREQ_MHZ    13000000
26
+PLL_Setting_st ADF4113_1_8G_DL = {
27
+    PLL_CLK_GPIO_Port,
28
+    PLL_CLK_Pin,
29
+    PLL_DATA_GPIO_Port,
30
+    PLL_DATA_Pin,
31
+    PLL_EN_1_8G_DL_GPIO_Port,    
32
+    PLL_EN_1_8G_DL_Pin,
33
+};
34
+PLL_Setting_st ADF4113_1_8G_UL = {
35
+    PLL_CLK_GPIO_Port,
36
+    PLL_CLK_Pin,
37
+    PLL_DATA_GPIO_Port,
38
+    PLL_DATA_Pin,
39
+    PLL_EN_1_8G_UL_GPIO_Port,    
40
+    PLL_EN_1_8G_UL_Pin,
41
+};
42
+PLL_Setting_st ADF4113_2_1G_DL = {
43
+    PLL_CLK_GPIO_Port,
44
+    PLL_CLK_Pin,
45
+    PLL_DATA_GPIO_Port,
46
+    PLL_DATA_Pin,
47
+    PLL_EN_2_1G_DL_GPIO_Port,    
48
+    PLL_EN_2_1G_DL_Pin,
49
+};
50
+PLL_Setting_st ADF4113_2_1G_UL = {
51
+    PLL_CLK_GPIO_Port,
52
+    PLL_CLK_Pin,
53
+    PLL_DATA_GPIO_Port,
54
+    PLL_DATA_Pin,
55
+    PLL_EN_2_1G_UL_GPIO_Port,    
56
+    PLL_EN_2_1G_UL_Pin,
57
+};
58
+
59
+
60
+
61
+// Error Code
62
+typedef struct{
63
+    uint16_t B;
64
+    uint16_t P;
65
+    uint16_t A;   
66
+    uint16_t N;       
67
+}Adf4113_st;
68
+void ADF4113_Initialize(void){
69
+    ADF4113_Module_Ctrl(ADF4113_1_8G_DL,0x000410,0x03E801,0x9F8092);
70
+    HAL_Delay(1);
71
+    ADF4113_Module_Ctrl(ADF4113_1_8G_UL,0x000410,0x038D31,0x9f8092);
72
+    HAL_Delay(1);
73
+    ADF4113_Module_Ctrl(ADF4113_2_1G_DL,0x410,0x4DE71,0x9F8092);
74
+    HAL_Delay(1);
75
+    ADF4113_Module_Ctrl(ADF4113_2_1G_UL,0x000410,0x59A31,0x9f8092);
76
+}
77
+uint8_t halSynSetFreq(uint32_t rf_Freq)
78
+{
79
+    uint32_t  R, B;
80
+    uint32_t  A, P, p_mode;
81
+    uint32_t  N_val = 0;
82
+    N_val = (rf_Freq / ADF4113_CH_STEP);
83
+    if( N_val < ADF4113_PRE8_MIN_N) { 
84
+        return HAL_SYN_INVALID_PRESCALE; 
85
+    } else if(( N_val> ADF4113_PRE8_MIN_N) && (N_val < ADF4113_PRE16_MIN_N)) { 
86
+        P = 8;  
87
+        p_mode = ADF4113_PRESCALE8;
88
+    } else if(( N_val > ADF4113_PRE16_MIN_N) && (N_val < ADF4113_PRE32_MIN_N)) { 
89
+        P = 16;
90
+        p_mode = ADF4113_PRESCALE16;
91
+        
92
+    } else if((N_val > ADF4113_PRE32_MIN_N) && ( N_val < ADF4113_PRE64_MIN_N)) { 
93
+        P = 32;
94
+        p_mode = ADF4113_PRESCALE32;
95
+        
96
+    } else if( N_val > ADF4113_PRE64_MIN_N) { 
97
+        P = 64; 
98
+        p_mode = ADF4113_PRESCALE64;
99
+    }
100
+    P = 32;
101
+    B = N_val / P;
102
+    A = N_val -(B * P);
103
+#ifdef DEBUG_PRINT
104
+    printf("FREQ:%f Mhz  B : %d , A  : %d    N_VAL  : %d \r\n",(float)(rf_Freq/1000000),B,A,N_val);
105
+    printf("YJ 4113 : %x \r\n",N_Counter_Latch_Create(A,B,0));
106
+#endif /* DEBUG_PRINT */
107
+}
108
+uint32_t N_Counter_Latch_Create(uint16_t _ACOUNTER,uint16_t _BCOUNTER,uint8_t _CPGAIN){
109
+    uint32_t ret = 0;
110
+    uint32_t shift_bit = 0x01;
111
+    uint8_t control_bit = 1;
112
+    uint8_t i = 0;
113
+    uint8_t reserve = 0;
114
+#ifdef DEBUG_PRINT
115
+    printf("_ACOUNTER : %d _BCOUNTER : %d \r\n",_ACOUNTER,_BCOUNTER);
116
+
117
+    printf("\r\nLINE : %d  ret : %x\r\n",__LINE__,ret);
118
+#endif /* DEBUG_PRINT */
119
+    for(i = 0; i < 2; i++){
120
+        if(control_bit & 0x01)
121
+            ret += shift_bit << i;
122
+        control_bit = control_bit >> 1;
123
+    }
124
+#ifdef DEBUG_PRINT
125
+    printf("\r\nLINE : %d  ret : %x\r\n",__LINE__,ret);
126
+#endif /* DEBUG_PRINT */
127
+    for(i = 2; i < 8; i++){
128
+        if(_ACOUNTER & 0x01)
129
+            ret += shift_bit << i;
130
+        _ACOUNTER = _ACOUNTER >> 1;
131
+    }  
132
+#ifdef DEBUG_PRINT
133
+    printf("\r\nLINE : %d  ret : %x\r\n",__LINE__,ret);
134
+#endif /* DEBUG_PRINT */
135
+    for(i = 8; i < 21; i++){
136
+        if(_BCOUNTER & 0x01)
137
+            ret += shift_bit << i;
138
+        _BCOUNTER = _BCOUNTER >> 1;
139
+    }      
140
+#ifdef DEBUG_PRINT
141
+    printf("\r\nLINE : %d  ret : %x\r\n",__LINE__,ret);
142
+#endif /* DEBUG_PRINT */
143
+    if(_CPGAIN & 0x01)
144
+            ret += shift_bit << i++;
145
+    for(i = 22; i < 24; i++){
146
+        if(reserve & 0x01)
147
+            ret += shift_bit << i;
148
+        reserve = reserve >> 1;
149
+    }   
150
+#ifdef DEBUG_PRINT
151
+    printf("\r\nLINE : %d  ret : %x\r\n",__LINE__,ret);
152
+#endif /* DEBUG_PRINT */
153
+    return ret;
154
+}
155
+void ADF4113_Module_Ctrl(PLL_Setting_st pll,uint32_t R0,uint32_t R1,uint32_t R2){
156
+    R2 = R2 & 0xFFFFFF;
157
+    R1 = R1 & 0xFFFFFF;
158
+    R0 = R0 & 0xFFFFFF;
159
+    
160
+    HAL_GPIO_WritePin(pll.PLL_CLK_PORT, pll.PLL_CLK_PIN, GPIO_PIN_RESET);
161
+    HAL_GPIO_WritePin(pll.PLL_DATA_PORT, pll.PLL_DATA_PIN, GPIO_PIN_RESET);
162
+    HAL_GPIO_WritePin(pll.PLL_ENABLE_PORT, pll.PLL_ENABLE_PIN, GPIO_PIN_RESET);
163
+    /*   R2 Ctrl    */
164
+     for(int i =0; i < 24; i++){
165
+         if(R2 & 0x800000){
166
+#ifdef DEBUG_PRINT
167
+            printf("1");
168
+#endif /* DEBUG_PRINT */
169
+             HAL_GPIO_WritePin(pll.PLL_DATA_PORT, pll.PLL_DATA_PIN, GPIO_PIN_SET);
170
+         }
171
+         else{
172
+#ifdef DEBUG_PRINT
173
+            printf("0");
174
+#endif /* DEBUG_PRINT */
175
+             HAL_GPIO_WritePin(pll.PLL_DATA_PORT, pll.PLL_DATA_PIN, GPIO_PIN_RESET);
176
+         }
177
+          HAL_GPIO_WritePin(pll.PLL_CLK_PORT, pll.PLL_CLK_PIN, GPIO_PIN_SET);
178
+         Pol_Delay_us(10);
179
+          HAL_GPIO_WritePin(pll.PLL_CLK_PORT, pll.PLL_CLK_PIN, GPIO_PIN_RESET);
180
+         R2 = ((R2 << 1) & 0xFFFFFF);
181
+     }
182
+#ifdef DEBUG_PRINT
183
+     printf("\r\n");
184
+#endif /* DEBUG_PRINT */
185
+     HAL_GPIO_WritePin(pll.PLL_ENABLE_PORT, pll.PLL_ENABLE_PIN, GPIO_PIN_SET);
186
+     Pol_Delay_us(10);
187
+     HAL_GPIO_WritePin(pll.PLL_ENABLE_PORT, pll.PLL_ENABLE_PIN, GPIO_PIN_RESET);
188
+        /*   R0 Ctrl    */
189
+   
190
+    for(int i =0; i < 24; i++){
191
+        if(R0 & 0x800000){
192
+            HAL_GPIO_WritePin(pll.PLL_DATA_PORT, pll.PLL_DATA_PIN, GPIO_PIN_SET);
193
+#ifdef DEBUG_PRINT
194
+            printf("1");
195
+#endif /* DEBUG_PRINT */
196
+        }
197
+        else{
198
+            HAL_GPIO_WritePin(pll.PLL_DATA_PORT, pll.PLL_DATA_PIN, GPIO_PIN_RESET);
199
+#ifdef DEBUG_PRINT
200
+            printf("0");
201
+#endif /* DEBUG_PRINT */
202
+        }
203
+         HAL_GPIO_WritePin(pll.PLL_CLK_PORT, pll.PLL_CLK_PIN, GPIO_PIN_SET);
204
+        Pol_Delay_us(10);
205
+         HAL_GPIO_WritePin(pll.PLL_CLK_PORT, pll.PLL_CLK_PIN, GPIO_PIN_RESET);
206
+        R0 = ((R0 << 1) & 0xFFFFFF);
207
+    }  
208
+#ifdef DEBUG_PRINT
209
+        printf("\r\n");
210
+#endif /* DEBUG_PRINT */
211
+     HAL_GPIO_WritePin(pll.PLL_ENABLE_PORT, pll.PLL_ENABLE_PIN, GPIO_PIN_SET);
212
+     
213
+     Pol_Delay_us(10);
214
+     HAL_GPIO_WritePin(pll.PLL_ENABLE_PORT, pll.PLL_ENABLE_PIN, GPIO_PIN_RESET);    
215
+     /*   R1 Ctrl    */
216
+    for(int i =0; i < 24; i++){
217
+        if(R1 & 0x800000){
218
+#ifdef DEBUG_PRINT
219
+            printf("1");
220
+#endif /* DEBUG_PRINT */
221
+            HAL_GPIO_WritePin(pll.PLL_DATA_PORT, pll.PLL_DATA_PIN, GPIO_PIN_SET);
222
+        }
223
+        else{
224
+#ifdef DEBUG_PRINT
225
+            printf("0");            
226
+#endif /* DEBUG_PRINT */
227
+            HAL_GPIO_WritePin(pll.PLL_DATA_PORT, pll.PLL_DATA_PIN, GPIO_PIN_RESET);
228
+        }
229
+         HAL_GPIO_WritePin(pll.PLL_CLK_PORT, pll.PLL_CLK_PIN, GPIO_PIN_SET);
230
+        Pol_Delay_us(10);
231
+         HAL_GPIO_WritePin(pll.PLL_CLK_PORT, pll.PLL_CLK_PIN, GPIO_PIN_RESET);
232
+        R1 = ((R1 << 1) & 0xFFFFFF);
233
+    }
234
+#ifdef DEBUG_PRINT
235
+        printf("\r\n");
236
+#endif /* DEBUG_PRINT */
237
+    HAL_GPIO_WritePin(pll.PLL_ENABLE_PORT, pll.PLL_ENABLE_PIN, GPIO_PIN_SET);
238
+    Pol_Delay_us(10);
239
+    HAL_GPIO_WritePin(pll.PLL_ENABLE_PORT, pll.PLL_ENABLE_PIN, GPIO_PIN_RESET);
240
+
241
+}

+ 99 - 0
insight/STM32F103_ATTEN_PLL_Zig.si4project/Backup/uart(5648).c

@@ -0,0 +1,99 @@
1
+/*
2
+ * uart.c
3
+ *
4
+ *  Created on: 2019. 5. 27.
5
+ *      Author: parkyj
6
+ */
7
+
8
+#include "uart.h"
9
+
10
+UARTQUEUE TerminalQueue;
11
+UARTQUEUE WifiQueue;
12
+uart_hal_tx_type uart_hal_tx;
13
+
14
+void InitUartQueue(pUARTQUEUE pQueue)
15
+{
16
+    pQueue->data = pQueue->head = pQueue->tail = 0;
17
+    uart_hal_tx.output_p = uart_hal_tx.input_p = 0;
18
+    if (HAL_UART_Receive_DMA(&hTerminal, TerminalQueue.Buffer, 1) != HAL_OK)
19
+    {
20
+      //_Error_Handler(__FILE__, __LINE__);
21
+    }
22
+    //HAL_UART_Receive_DMA(&hTerminal,  TerminalQueue.Buffer, 1);
23
+    //HAL_UART_Receive_IT(hTerminal, pQueue->Buffer + pQueue->head, 1);
24
+}
25
+
26
+void HAL_UART_RxCpltCallback(UART_HandleTypeDef *huart)
27
+{
28
+    pUARTQUEUE pQueue;
29
+//    printf("Function : %s : \r\n",__func__);
30
+    AdcTimerCnt = UartRxTimerCnt = 0;
31
+    pQueue = &TerminalQueue;
32
+    pQueue->head++;
33
+    if (pQueue->head >= QUEUE_BUFFER_LENGTH) pQueue->head = 0;
34
+    pQueue->data++;
35
+    if (pQueue->data >= QUEUE_BUFFER_LENGTH)
36
+        GetDataFromUartQueue(huart);
37
+    HAL_UART_Receive_DMA(&hTerminal, pQueue->Buffer + pQueue->head, 1);
38
+   // Set_UartRcv(true);
39
+}
40
+
41
+
42
+
43
+void PutDataToUartQueue(UART_HandleTypeDef *huart, uint8_t data)
44
+{
45
+    pUARTQUEUE pQueue = &TerminalQueue;
46
+    if (pQueue->data >= QUEUE_BUFFER_LENGTH)
47
+        GetDataFromUartQueue(huart);
48
+    pQueue->Buffer[pQueue->head++] = data;
49
+    if (pQueue->head == QUEUE_BUFFER_LENGTH) pQueue->head = 0;
50
+    pQueue->data++;
51
+   // HAL_UART_Receive_DMA(&hTerminal,  pQueue->Buffer + pQueue->head, 10);
52
+}
53
+
54
+uint8_t uart_buf[QUEUE_BUFFER_LENGTH];
55
+void GetDataFromUartQueue(UART_HandleTypeDef *huart)
56
+{
57
+    volatile static int cnt;
58
+
59
+    
60
+//    UART_HandleTypeDef *dst = (huart->Instance == USART2 ? &hWifi:&hTerminal);
61
+    UART_HandleTypeDef *dst = &hTerminal;
62
+    pUARTQUEUE pQueue = &TerminalQueue;
63
+//    if (HAL_UART_Transmit(dst, pQueue->Buffer + pQueue->tail, 1, 3000) != HAL_OK)
64
+//    {
65
+//       _Error_Handler(__FILE__, __LINE__);
66
+//    }
67
+    uart_buf[cnt++] = *(pQueue->Buffer + pQueue->tail); 
68
+#ifdef DEBUG_PRINT
69
+    printf("%02x ",*(pQueue->Buffer + pQueue->tail)) ;
70
+#endif /* DEBUG_PRINT */
71
+
72
+    pQueue->tail++;
73
+    if (pQueue->tail >= QUEUE_BUFFER_LENGTH) pQueue->tail = 0;
74
+    pQueue->data--;
75
+    
76
+    if(pQueue->data == 0){
77
+//        printf("data cnt zero !!!  \r\n");
78
+        RF_Ctrl_Main(&uart_buf[Header]);
79
+//        HAL_UART_Transmit(dst, &temp_buf[BLUECELL_HEADER00], 11, 3000);
80
+#if 0 // PYJ.2019.07.15_BEGIN -- 
81
+            for(int i = 0; i < cnt; i++){
82
+                printf("%02x ",uart_buf[i]);
83
+            }
84
+#endif // PYJ.2019.07.15_END -- 
85
+        memset(uart_buf,0x00,cnt);
86
+        
87
+//        for(int i  = 0; i < cnt; i++)
88
+//            uart_buf[i] = 0;
89
+        cnt = 0;
90
+        
91
+        HAL_Delay(1);
92
+    }
93
+
94
+}
95
+
96
+void Uart1_Data_Send(uint8_t* data,uint8_t size){
97
+    HAL_UART_Transmit(&huart1, data,size, 10); 
98
+}
99
+

+ 695 - 0
insight/STM32F103_ATTEN_PLL_Zig.si4project/Backup/zig_operate(3796).c

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

+ 133 - 0
insight/STM32F103_ATTEN_PLL_Zig.si4project/Backup/zig_operate(6836).h

@@ -0,0 +1,133 @@
1
+/*
2
+ * zig_operate.h
3
+ *
4
+ *  Created on: 2019. 7. 26.
5
+ *      Author: parkyj
6
+ */
7
+
8
+#ifndef ZIG_OPERATE_H_
9
+#define ZIG_OPERATE_H_
10
+#include "main.h"
11
+bool RF_Ctrl_Main(uint8_t* data_buf);
12
+
void RF_Status_Get(void);
13
+typedef enum{
14
+    Header = 0,
15
+    Type,
16
+    Length,
17
+    Crcindex,
18
+}Bluecell_Prot_p;
19
+
20
+typedef enum {
21
+    TYPE_BLUECELL_RESET = 0,
22
+    TYPE_BLUECELL_SET   = 1,
23
+    TYPE_BLUECELL_GET   = 2,
24
+    TYPE_BLUECELL_SAVE   = 3,   
25
+    TYPE_BLUECELL_ACK    = 4,
26
+}Bluecell_Prot_t;
27
+
28
+typedef enum{
29
+    INDEX_BLUE_HEADER = 0,
30
+    INDEX_BLUE_TYPE,
31
+    INDEX_BLUE_LENGTH,
32
+    INDEX_BLUE_CRCINDEX,
33
+    INDEX_ATT_1_8G_DL1 ,
34
+    INDEX_ATT_1_8G_DL2 ,
35
+    INDEX_ATT_1_8G_UL1 ,
36
+    INDEX_ATT_1_8G_UL2 ,
37
+    INDEX_ATT_1_8G_UL3 ,
38
+    INDEX_ATT_1_8G_UL4 , 
39
+    INDEX_ATT_2_1G_DL1  = 10,
40
+    INDEX_ATT_2_1G_DL2 ,
41
+    INDEX_ATT_2_1G_UL1 ,
42
+    INDEX_ATT_2_1G_UL2 ,
43
+    INDEX_ATT_2_1G_UL3 , 
44
+    INDEX_ATT_2_1G_UL4 ,
45
+    INDEX_ATT_3_5G_DL  ,
46
+    INDEX_ATT_3_5G_UL  ,
47
+    INDEX_ATT_3_5G_COM1,
48
+    INDEX_ATT_3_5G_COM2, 
49
+    INDEX_ATT_3_5G_COM3 = 20,
50
+    INDEX_PLL_1_8G_DL_H,
51
+    INDEX_PLL_1_8G_DL_L,
52
+    INDEX_PLL_1_8G_UL_H,
53
+    INDEX_PLL_1_8G_UL_L,
54
+    INDEX_PLL_2_1G_DL_H,
55
+    INDEX_PLL_2_1G_DL_L,
56
+    INDEX_PLL_2_1G_UL_H,
57
+    INDEX_PLL_2_1G_UL_L,
58
+    INDEX_PLL_3_5G_DL_H ,
59
+    INDEX_PLL_3_5G_DL_L = 30,
60
+    INDEX_PLL_3_5G_UL_H ,
61
+    INDEX_PLL_3_5G_UL_L ,
62
+    INDEX_PLL_LD_6_BIT  ,
63
+    INDEX_DET_1_8G_DL_IN_H  ,
64
+    INDEX_DET_1_8G_DL_IN_L  ,
65
+    INDEX_DET_1_8G_DL_OUT_H ,
66
+    INDEX_DET_1_8G_DL_OUT_L ,
67
+    INDEX_DET_1_8G_UL_IN_H  ,
68
+    INDEX_DET_1_8G_UL_IN_L  ,
69
+    INDEX_DET_1_8G_UL_OUT_H = 40,
70
+    INDEX_DET_1_8G_UL_OUT_L ,
71
+    INDEX_DET_2_1G_DL_IN_H  ,
72
+    INDEX_DET_2_1G_DL_IN_L  ,
73
+    INDEX_DET_2_1G_DL_OUT_H ,
74
+    INDEX_DET_2_1G_DL_OUT_L ,
75
+    INDEX_DET_2_1G_UL_IN_H  ,
76
+    INDEX_DET_2_1G_UL_IN_L  ,
77
+    INDEX_DET_2_1G_UL_OUT_H ,
78
+    INDEX_DET_2_1G_UL_OUT_L ,
79
+    INDEX_DET_3_5G_DL_IN_H  = 50,
80
+    INDEX_DET_3_5G_DL_IN_L  ,
81
+    INDEX_DET_3_5G_DL_OUT_H ,
82
+    INDEX_DET_3_5G_DL_OUT_L ,
83
+    INDEX_DET_3_5G_UL_IN_H  ,
84
+    INDEX_DET_3_5G_UL_IN_L  ,
85
+    INDEX_DET_3_5G_UL_OUT_H ,
86
+    INDEX_DET_3_5G_UL_OUT_L ,
87
+    INDEX_RFU_TEMP_H    ,
88
+    INDEX_RFU_TEMP_L    ,
89
+    INDEX__28V_DET_H    = 60,
90
+    INDEX__28V_DET_L    ,
91
+    INDEX_ALARM_AC      ,
92
+    INDEX_ALARM_DC      ,
93
+    INDEX_PATH_EN_1_8G_DL   ,
94
+    INDEX_PATH_EN_1_8G_UL   ,
95
+    INDEX_PATH_EN_2_1G_DL   ,
96
+    INDEX_PATH_EN_2_1G_UL   ,
97
+    INDEX_PATH_EN_3_5G_DL,
98
+    INDEX_PATH_EN_3_5G_UL   ,
99
+    INDEX_PATH_EN_3_5G_H = 70,
100
+    INDEX_PATH_EN_3_5G_L,
101
+    INDEX_PLL_ON_OFF_3_5G_H ,
102
+    INDEX_PLL_ON_OFF_3_5G_L ,
103
+    INDEX_T_SYNC_DL,
104
+    INDEX__T_SYNC_DL,
105
+    INDEX_T_SYNC_UL,
106
+    INDEX__T_SYNC_UL,    
107
+    INDEX_DAC_VCtrl_A_H,
108
+    INDEX_DAC_VCtrl_A_L,
109
+    INDEX_DAC_VCtrl_B_H = 80, 
110
+    INDEX_DAC_VCtrl_B_L,
111
+    INDEX_DAC_VCtrl_C_H,
112
+    INDEX_DAC_VCtrl_C_L,
113
+    INDEX_DAC_VCtrl_D_H,
114
+    INDEX_DAC_VCtrl_D_L,
115
+    INDEX_DAC_VCtrl_E_H,
116
+    INDEX_DAC_VCtrl_E_L,
117
+    INDEX_DAC_VCtrl_F_H,
118
+    INDEX_DAC_VCtrl_F_L,
119
+    INDEX_DAC_VCtrl_G_H = 90,
120
+    INDEX_DAC_VCtrl_G_L,
121
+    INDEX_DAC_VCtrl_H_H,
122
+    INDEX_DAC_VCtrl_H_L,   
123
+    INDEX_BLUE_CRC, 
124
+    INDEX_BLUE_EOF,//95
125
+}Bluecell_Prot_Index;
126
+uint8_t Prev_data[INDEX_BLUE_EOF + 1];
127
+uint8_t Flash_Save_data[INDEX_BLUE_EOF + 1];
128
+
129
+//extern PLL_Setting_st Pll_3_5_H;
130
+//extern PLL_Setting_st Pll_3_5_L;
131
+
132
+
133
+#endif /* ZIG_OPERATE_H_ */

+ 1 - 1
insight/STM32F103_ATTEN_PLL_Zig.si4project/STM32F103_ATTEN_PLL_Zig.bookmarks.xml

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

BIN
insight/STM32F103_ATTEN_PLL_Zig.si4project/STM32F103_ATTEN_PLL_Zig.sip_sym


BIN
insight/STM32F103_ATTEN_PLL_Zig.si4project/STM32F103_ATTEN_PLL_Zig.sip_xab


BIN
insight/STM32F103_ATTEN_PLL_Zig.si4project/STM32F103_ATTEN_PLL_Zig.sip_xm


+ 1 - 1
insight/STM32F103_ATTEN_PLL_Zig.si4project/STM32F103_ATTEN_PLL_Zig.siproj_settings.xml

@@ -1,6 +1,6 @@
1 1
 <?xml version="1.0" encoding="utf-8"?>
2 2
 <ProjectSettings
3
-	AppVer="4.00.0084"
3
+	AppVer="4.00.0098"
4 4
 	AppVerMinReader="4.00.0034"
5 5
 	GlobalConfiguration="1"
6 6
 	GlobalWorkspace="0"

BIN
insight/STM32F103_ATTEN_PLL_Zig.si4project/STM32F103_ATTEN_PLL_Zig.siwork


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_Device_ST_STM32F1xx_Include_stm32f1xx.h.sisc


BIN
insight/STM32F103_ATTEN_PLL_Zig.si4project/cache/parse/.._.._Drivers_CMSIS_Device_ST_STM32F1xx_Include_system_stm32f1xx.h.sisc


BIN
insight/STM32F103_ATTEN_PLL_Zig.si4project/cache/parse/.._.._Drivers_CMSIS_Include_arm_common_tables.h.sisc


BIN
insight/STM32F103_ATTEN_PLL_Zig.si4project/cache/parse/.._.._Drivers_CMSIS_Include_arm_const_structs.h.sisc


BIN
insight/STM32F103_ATTEN_PLL_Zig.si4project/cache/parse/.._.._Drivers_CMSIS_Include_arm_math.h.sisc


BIN
insight/STM32F103_ATTEN_PLL_Zig.si4project/cache/parse/.._.._Drivers_CMSIS_Include_cmsis_armcc.h.sisc


BIN
insight/STM32F103_ATTEN_PLL_Zig.si4project/cache/parse/.._.._Drivers_CMSIS_Include_cmsis_armcc_V6.h.sisc


BIN
insight/STM32F103_ATTEN_PLL_Zig.si4project/cache/parse/.._.._Drivers_CMSIS_Include_cmsis_gcc.h.sisc


BIN
insight/STM32F103_ATTEN_PLL_Zig.si4project/cache/parse/.._.._Drivers_CMSIS_Include_core_cm0.h.sisc


BIN
insight/STM32F103_ATTEN_PLL_Zig.si4project/cache/parse/.._.._Drivers_CMSIS_Include_core_cm0plus.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_cmFunc.h.sisc


BIN
insight/STM32F103_ATTEN_PLL_Zig.si4project/cache/parse/.._.._Drivers_CMSIS_Include_core_cmInstr.h.sisc


BIN
insight/STM32F103_ATTEN_PLL_Zig.si4project/cache/parse/.._.._Drivers_CMSIS_Include_core_cmSimd.h.sisc


BIN
insight/STM32F103_ATTEN_PLL_Zig.si4project/cache/parse/.._.._Drivers_CMSIS_Include_core_sc000.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.h.sisc


BIN
insight/STM32F103_ATTEN_PLL_Zig.si4project/cache/parse/.._.._Drivers_STM32F1xx_HAL_Driver_Inc_stm32f1xx_hal_adc.h.sisc


BIN
insight/STM32F103_ATTEN_PLL_Zig.si4project/cache/parse/.._.._Drivers_STM32F1xx_HAL_Driver_Inc_stm32f1xx_hal_adc_ex.h.sisc


BIN
insight/STM32F103_ATTEN_PLL_Zig.si4project/cache/parse/.._.._Drivers_STM32F1xx_HAL_Driver_Inc_stm32f1xx_hal_cortex.h.sisc


BIN
insight/STM32F103_ATTEN_PLL_Zig.si4project/cache/parse/.._.._Drivers_STM32F1xx_HAL_Driver_Inc_stm32f1xx_hal_def.h.sisc


BIN
insight/STM32F103_ATTEN_PLL_Zig.si4project/cache/parse/.._.._Drivers_STM32F1xx_HAL_Driver_Inc_stm32f1xx_hal_dma.h.sisc


BIN
insight/STM32F103_ATTEN_PLL_Zig.si4project/cache/parse/.._.._Drivers_STM32F1xx_HAL_Driver_Inc_stm32f1xx_hal_dma_ex.h.sisc


BIN
insight/STM32F103_ATTEN_PLL_Zig.si4project/cache/parse/.._.._Drivers_STM32F1xx_HAL_Driver_Inc_stm32f1xx_hal_flash.h.sisc


BIN
insight/STM32F103_ATTEN_PLL_Zig.si4project/cache/parse/.._.._Drivers_STM32F1xx_HAL_Driver_Inc_stm32f1xx_hal_flash_ex.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_Inc_stm32f1xx_hal_gpio_ex.h.sisc


BIN
insight/STM32F103_ATTEN_PLL_Zig.si4project/cache/parse/.._.._Drivers_STM32F1xx_HAL_Driver_Inc_stm32f1xx_hal_pwr.h.sisc


BIN
insight/STM32F103_ATTEN_PLL_Zig.si4project/cache/parse/.._.._Drivers_STM32F1xx_HAL_Driver_Inc_stm32f1xx_hal_rcc.h.sisc


BIN
insight/STM32F103_ATTEN_PLL_Zig.si4project/cache/parse/.._.._Drivers_STM32F1xx_HAL_Driver_Inc_stm32f1xx_hal_rcc_ex.h.sisc


BIN
insight/STM32F103_ATTEN_PLL_Zig.si4project/cache/parse/.._.._Drivers_STM32F1xx_HAL_Driver_Inc_stm32f1xx_hal_tim.h.sisc


BIN
insight/STM32F103_ATTEN_PLL_Zig.si4project/cache/parse/.._.._Drivers_STM32F1xx_HAL_Driver_Inc_stm32f1xx_hal_tim_ex.h.sisc


BIN
insight/STM32F103_ATTEN_PLL_Zig.si4project/cache/parse/.._.._Drivers_STM32F1xx_HAL_Driver_Inc_stm32f1xx_hal_uart.h.sisc


BIN
insight/STM32F103_ATTEN_PLL_Zig.si4project/cache/parse/.._.._Drivers_STM32F1xx_HAL_Driver_Src_stm32f1xx_hal.c.sisc


BIN
insight/STM32F103_ATTEN_PLL_Zig.si4project/cache/parse/.._.._Drivers_STM32F1xx_HAL_Driver_Src_stm32f1xx_hal_adc.c.sisc


BIN
insight/STM32F103_ATTEN_PLL_Zig.si4project/cache/parse/.._.._Drivers_STM32F1xx_HAL_Driver_Src_stm32f1xx_hal_adc_ex.c.sisc


BIN
insight/STM32F103_ATTEN_PLL_Zig.si4project/cache/parse/.._.._Drivers_STM32F1xx_HAL_Driver_Src_stm32f1xx_hal_cortex.c.sisc


BIN
insight/STM32F103_ATTEN_PLL_Zig.si4project/cache/parse/.._.._Drivers_STM32F1xx_HAL_Driver_Src_stm32f1xx_hal_dma.c.sisc


BIN
insight/STM32F103_ATTEN_PLL_Zig.si4project/cache/parse/.._.._Drivers_STM32F1xx_HAL_Driver_Src_stm32f1xx_hal_flash.c.sisc


BIN
insight/STM32F103_ATTEN_PLL_Zig.si4project/cache/parse/.._.._Drivers_STM32F1xx_HAL_Driver_Src_stm32f1xx_hal_flash_ex.c.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/.._.._Drivers_STM32F1xx_HAL_Driver_Src_stm32f1xx_hal_gpio_ex.c.sisc


BIN
insight/STM32F103_ATTEN_PLL_Zig.si4project/cache/parse/.._.._Drivers_STM32F1xx_HAL_Driver_Src_stm32f1xx_hal_pwr.c.sisc


BIN
insight/STM32F103_ATTEN_PLL_Zig.si4project/cache/parse/.._.._Drivers_STM32F1xx_HAL_Driver_Src_stm32f1xx_hal_rcc.c.sisc


BIN
insight/STM32F103_ATTEN_PLL_Zig.si4project/cache/parse/.._.._Drivers_STM32F1xx_HAL_Driver_Src_stm32f1xx_hal_rcc_ex.c.sisc


BIN
insight/STM32F103_ATTEN_PLL_Zig.si4project/cache/parse/.._.._Drivers_STM32F1xx_HAL_Driver_Src_stm32f1xx_hal_tim.c.sisc


BIN
insight/STM32F103_ATTEN_PLL_Zig.si4project/cache/parse/.._.._Drivers_STM32F1xx_HAL_Driver_Src_stm32f1xx_hal_tim_ex.c.sisc


BIN
insight/STM32F103_ATTEN_PLL_Zig.si4project/cache/parse/.._.._Drivers_STM32F1xx_HAL_Driver_Src_stm32f1xx_hal_uart.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_BDA4601.h.sisc


BIN
insight/STM32F103_ATTEN_PLL_Zig.si4project/cache/parse/.._.._Inc_CRC16.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_flash.h.sisc


BIN
insight/STM32F103_ATTEN_PLL_Zig.si4project/cache/parse/.._.._Inc_hal_types.h.sisc


+ 0 - 0
insight/STM32F103_ATTEN_PLL_Zig.si4project/cache/parse/.._.._Inc_includes.h.sisc


Einige Dateien werden nicht angezeigt, da zu viele Dateien in diesem Diff geändert wurden.