includes(7528).c 11 KB

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