Bluecell_operate.h 45 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485868788899091929394959697989910010110210310410510610710810911011111211311411511611711811912012112212312412512612712812913013113213313413513613713813914014114214314414514614714814915015115215315415515615715815916016116216316416516616716816917017117217317417517617717817918018118218318418518618718818919019119219319419519619719819920020120220320420520620720820921021121221321421521621721821922022122222322422522622722822923023123223323423523623723823924024124224324424524624724824925025125225325425525625725825926026126226326426526626726826927027127227327427527627727827928028128228328428528628728828929029129229329429529629729829930030130230330430530630730830931031131231331431531631731831932032132232332432532632732832933033133233333433533633733833934034134234334434534634734834935035135235335435535635735835936036136236336436536636736836937037137237337437537637737837938038138238338438538638738838939039139239339439539639739839940040140240340440540640740840941041141241341441541641741841942042142242342442542642742842943043143243343443543643743843944044144244344444544644744844945045145245345445545645745845946046146246346446546646746846947047147247347447547647747847948048148248348448548648748848949049149249349449549649749849950050150250350450550650750850951051151251351451551651751851952052152252352452552652752852953053153253353453553653753853954054154254354454554654754854955055155255355455555655755855956056156256356456556656756856957057157257357457557657757857958058158258358458558658758858959059159259359459559659759859960060160260360460560660760860961061161261361461561661761861962062162262362462562662762862963063163263363463563663763863964064164264364464564664764864965065165265365465565665765865966066166266366466566666766866967067167267367467567667767867968068168268368468568668768868969069169269369469569669769869970070170270370470570670770870971071171271371471571671771871972072172272372472572672772872973073173273373473573673773873974074174274374474574674774874975075175275375475575675775875976076176276376476576676776876977077177277377477577677777877978078178278378478578678778878979079179279379479579679779879980080180280380480580680780880981081181281381481581681781881982082182282382482582682782882983083183283383483583683783883984084184284384484584684784884985085185285385485585685785885986086186286386486586686786886987087187287387487587687787887988088188288388488588688788888989089189289389489589689789889990090190290390490590690790890991091191291391491591691791891992092192292392492592692792892993093193293393493593693793893994094194294394494594694794894995095195295395495595695795895996096196296396496596696796896997097197297397497597697797897998098198298398498598698798898999099199299399499599699799899910001001100210031004100510061007100810091010101110121013101410151016101710181019102010211022102310241025102610271028102910301031103210331034103510361037103810391040104110421043104410451046104710481049105010511052105310541055105610571058105910601061106210631064106510661067106810691070107110721073107410751076107710781079108010811082108310841085108610871088108910901091109210931094109510961097109810991100110111021103110411051106110711081109111011111112111311141115111611171118111911201121112211231124112511261127112811291130113111321133113411351136113711381139114011411142114311441145114611471148114911501151115211531154115511561157115811591160116111621163116411651166116711681169117011711172117311741175117611771178117911801181118211831184118511861187118811891190119111921193119411951196119711981199120012011202120312041205120612071208120912101211121212131214121512161217121812191220122112221223122412251226122712281229123012311232123312341235123612371238123912401241124212431244124512461247124812491250125112521253125412551256125712581259126012611262126312641265126612671268126912701271127212731274127512761277127812791280128112821283128412851286128712881289129012911292129312941295129612971298129913001301130213031304130513061307130813091310131113121313131413151316131713181319132013211322132313241325132613271328132913301331133213331334133513361337133813391340134113421343134413451346134713481349135013511352135313541355135613571358135913601361136213631364136513661367136813691370137113721373137413751376137713781379138013811382138313841385138613871388138913901391139213931394139513961397139813991400140114021403140414051406140714081409141014111412141314141415141614171418141914201421142214231424142514261427142814291430143114321433143414351436143714381439144014411442144314441445144614471448144914501451145214531454145514561457145814591460146114621463146414651466146714681469147014711472147314741475147614771478147914801481148214831484148514861487148814891490149114921493149414951496149714981499150015011502150315041505150615071508150915101511151215131514151515161517151815191520152115221523152415251526152715281529153015311532153315341535153615371538153915401541154215431544154515461547154815491550155115521553155415551556155715581559156015611562156315641565156615671568156915701571157215731574157515761577157815791580158115821583158415851586158715881589159015911592
  1. /*
  2. * Bluecell_operate.h
  3. *
  4. * Created on: 2020. 4. 3.
  5. * Author: YJ
  6. */
  7. #ifndef BLUECELL_OPERATE_H_
  8. #define BLUECELL_OPERATE_H_
  9. #include <stdbool.h>
  10. #include "Bluecell_operate.h"
  11. /*
  12. SYN
  13. Sub-UID
  14. R-Code
  15. TR-ID
  16. Seq-Num
  17. TTL
  18. Time
  19. 占쏙옙占쏙옙 占쏙옙占쏙옙
  20. CMD
  21. Length
  22. Header Checksum
  23. SUB-DATA
  24. SUB-DATA-CRC
  25. ETX
  26. */
  27. /*
  28. *
  29. 0 80 占쏙옙체 占쏙옙占쏙옙 占쏙옙회 占쏙옙占� AID 占쌓몌옙 占쏙옙占쏙옙 占쏙옙占쏙옙 占쏙옙청 占쏙옙 占쏙옙占쏙옙 (占쏙옙청 Frame占쏙옙 SUB-DATA 占쏙옙 占쏙옙占싱댐옙 0)
  30. 1 81 占쏙옙占쏙옙 占쏙옙청 占쏙옙占쏙옙 占쏙옙청占쏙옙 REQ占쏙옙 0x01 占싱곤옙 占쏙옙占쏙옙占쏙옙 占쏙옙체 占쏙옙占쏙옙占쏙옙 占쏙옙占승몌옙 占쏙옙占쏙옙
  31. 10 90 Download Notification 占쌕울옙琯占� 占쏙옙占쏙옙
  32. 11 91 Download Data 占쌕울옙琯占� data
  33. 12 92 Download Confirm 占쌕울옙琯占� 확占쏙옙
  34. 13 93 Download Complete Download Complete Command
  35. 14 94 System-Reboot System Rebooting Command
  36. 40 C0 占쏙옙占싱븝옙 占쏙옙회 占쏙옙 占쏙옙占쏙옙
  37. 41 C1 占쏙옙占싱븝옙 占쏙옙占쏙옙 占쏙옙 占쏙옙占쏙옙
  38. *
  39. *
  40. */
  41. #define ANSI_COLOR_RED "\x1b[31m"
  42. #define ANSI_COLOR_GREEN "\x1b[32m"
  43. #define ANSI_COLOR_YELLOW "\x1b[33m"
  44. #define ANSI_COLOR_BLUE "\x1b[34m"
  45. #define ANSI_COLOR_MAGENTA "\x1b[35m"
  46. #define ANSI_COLOR_CYAN "\x1b[36m"
  47. #define ANSI_COLOR_RESET "\x1b[0m" "\r\n"
  48. #define MBIC_BANK1_NUM 1
  49. #define MBIC_BANK2_NUM 2
  50. typedef enum{
  51. AllDataReq = 0, // -> Response 80
  52. DataCtrlReq, // -> Response 81
  53. DownNotification, // -> Response 90
  54. DownData, // -> Response 91
  55. DownConfirm , // -> Response 92
  56. DownComplete, // -> Response 93
  57. SystemReboot, // -> Response 94
  58. TableDataReq = 40,
  59. }MBICBootProt_st;
  60. typedef enum{
  61. MBIC_GET = 0,
  62. MBIC_SET,
  63. MBIC_Table_Get = 0x40,
  64. MBIC_Table_Set = 0x41,
  65. }BMBM_CMD;
  66. typedef struct{
  67. uint8_t High_bit;
  68. uint8_t Low_bit;
  69. }OneByteToTwoByte;
  70. typedef enum{
  71. MBIC_Notice_REQ = 0x10,
  72. MBIC_Download_DATA_REQ,
  73. MBIC_Download_Confirm_REQ,
  74. MBIC_Complete_Notice_REQ_REQ,
  75. MBIC_Reboot_Notice_REQ,
  76. }MBIC_Download_Req_L;
  77. typedef enum{
  78. MBIC_Notice_RSP = 0x90,
  79. MBIC_Download_DATA_RSP,
  80. MBIC_Download_Confirm_RSP,
  81. MBIC_Complete_Notice_RSP,
  82. MBIC_Reboot_Notice_RSP,
  83. }MBIC_Download_Rsp_L;
  84. typedef enum{
  85. MBIC_PREAMBLE_0 = 0,
  86. MBIC_PREAMBLE_1,
  87. MBIC_PREAMBLE_2,
  88. MBIC_PREAMBLE_3,
  89. MBIC_SUBUID_0,
  90. MBIC_SUBUID_1,
  91. MBIC_RCODE_0,
  92. MBIC_TRID_0,
  93. MBIC_TRID_1,
  94. MBIC_SEQSUM_0, // 9Index
  95. MBIC_TTL_0, //10 INDEX
  96. MBIC_TIME_0,
  97. MBIC_TIME_1,
  98. MBIC_TIME_2,
  99. MBIC_TIME_3,
  100. MBIC_TIME_4,
  101. MBIC_TIME_5,
  102. MBIC_ERRRESPONSE_0,
  103. MBIC_CMD_0,
  104. MBIC_LENGTH_0, // 19INDEX
  105. MBIC_LENGTH_1, // 20
  106. MBIC_HEADERCHECKSUM_0,
  107. MBIC_PAYLOADSTART,
  108. /*
  109. * PayLoadSTART
  110. */
  111. }MBICProt_st;
  112. typedef enum{
  113. AGC_Alarm_DL1_Index = 0,
  114. AGC_Alarm_DL2_Index,
  115. AGC_Alarm_DL3_Index,
  116. AGC_Alarm_DL4_Index,
  117. AGC_Alarm_DL_Index_MAX,
  118. };
  119. typedef enum{
  120. ALC_Alarm_UL1_Index = 0,
  121. ALC_Alarm_UL2_Index,
  122. ALC_Alarm_UL3_Index,
  123. ALC_Alarm_UL4_Index,
  124. ALC_Alarm_UL_Index_MAX,
  125. };
  126. typedef enum{
  127. AGC_Table_DL1_Ref_Index = 0,
  128. AGC_Table_DL2_Ref_Index,
  129. AGC_Table_DL3_Ref_Index,
  130. AGC_Table_DL4_Ref_Index,
  131. AGC_Table_DL_Ref_Index_MAX,
  132. };
  133. typedef enum{
  134. ALC_Table_UL1_Ref_Index = 0,
  135. ALC_Table_UL2_Ref_Index,
  136. ALC_Table_UL3_Ref_Index,
  137. ALC_Table_UL4_Ref_Index,
  138. ALC_Table_UL_Ref_Index_MAX,
  139. };
  140. typedef enum{
  141. Table_DL1_Ref_Index = 0,
  142. Table_DL2_Ref_Index,
  143. Table_DL3_Ref_Index,
  144. Table_DL4_Ref_Index,
  145. Table_UL1_Ref_Index,
  146. Table_UL2_Ref_Index,
  147. Table_UL3_Ref_Index,
  148. Table_UL4_Ref_Index,
  149. Table_ATT_Ref_Index_MAX,
  150. };
  151. typedef enum{
  152. Alarm_Bit_List = 0x00,
  153. Alarm_Mask,
  154. Alarm_Test_Mode,
  155. Alarm_Test_Dummy,
  156. CPU_Version,
  157. ModuleINFORMATION_null1,
  158. CPU_Current_Bank,
  159. CPU_Bank_Select_Reboot_by,
  160. CPU_Bank1_Image_Version,
  161. CPU_Bank1_Image_BuildTime,
  162. CPU_Bank1_Image_Name,
  163. CPU_Bank2_Image_Version,
  164. CPU_Bank2_Image_BuildTime,
  165. CPU_Bank2_Image_Name,
  166. SW_Reset,
  167. Factory_Set_Initialization,
  168. }SERIAL_ModuleINFORMATION;
  169. typedef enum{
  170. Temperature = 0x10,
  171. Temperature_Offset,
  172. Temp_High_Threshold,
  173. Temp_High_Threshold_Default,
  174. Temp_High_Alarm,
  175. LED_TEST,
  176. Node,
  177. Type,
  178. PCB_Version,
  179. Serial_Number,
  180. Manufacture,
  181. Manufacture_Date,
  182. ENVIRONMENT_INVENTORY_NULL0,
  183. Freq_ID,
  184. Carrier_ID,
  185. Carrier_ON_OFF,
  186. }SERIAL_ENVIRONMENT_INVENTORY_t;
  187. typedef enum{
  188. DLI_P1_Level = 0x20,
  189. DLI_P2_Level,
  190. DLI_P3_Level,
  191. DLI_P4_Level,
  192. ULO_P1_Level,
  193. ULO_P2_Level,
  194. ULO_P3_Level,
  195. ULO_P4_Level,
  196. }SERIAL_Current_Volt_t;
  197. typedef struct{
  198. bool AGC1_En;
  199. bool AGC2_En;
  200. bool AGC3_En;
  201. bool AGC4_En;
  202. bool ALC1_En;
  203. bool ALC2_En;
  204. bool ALC3_En;
  205. bool ALC4_En;
  206. }AutoCtrl_st;
  207. typedef enum{
  208. BLUECELL_HEADER,
  209. BLUECELL_TYPE,
  210. BLUECELL_LENGTH_H,
  211. BLUECELL_LENGTH_L,
  212. BLUECELL_CRCINDEX,
  213. BLUECELL_DATA,
  214. }BLUECELLProt_st;
  215. typedef enum{
  216. MBIC_TableIndex_Unit_Type = 0,
  217. MBIC_TableIndex_Reseved = 1,
  218. MBIC_TableIndex_Number = 2,
  219. MBIC_TableIndex_Ref = 3,
  220. MBIC_TableIndex_Length = 4,
  221. MBIC_TableIndex_Max,
  222. }MBIC_TableLoadIndex_t;
  223. typedef enum{
  224. Bluecell_Table_ATT_DL1 = 0,
  225. Bluecell_Table_ATT_UL1,
  226. Bluecell_Table_ATT_DL2,
  227. Bluecell_Table_ATT_UL2,
  228. Bluecell_Table_ATT_DL3,
  229. Bluecell_Table_ATT_UL3,
  230. Bluecell_Table_ATT_DL4,
  231. Bluecell_Table_ATT_UL4,
  232. Bluecell_Table_DET_DL1,
  233. Bluecell_Table_DET_UL1,
  234. Bluecell_Table_DET_DL2,
  235. Bluecell_Table_DET_UL2,
  236. Bluecell_Table_DET_DL3,
  237. Bluecell_Table_DET_UL3,
  238. Bluecell_Table_DET_DL4,
  239. Bluecell_Table_DET_UL4,
  240. Bluecell_Table_TEMP_DL1,
  241. Bluecell_Table_TEMP_UL1,
  242. Bluecell_Table_TEMP_DL2,
  243. Bluecell_Table_TEMP_UL2,
  244. Bluecell_Table_TEMP_DL3,
  245. Bluecell_Table_TEMP_UL3,
  246. Bluecell_Table_TEMP_DL4,
  247. Bluecell_Table_TEMP_UL4,
  248. }Bluecell_tableIndex;
  249. typedef enum{
  250. MBIC_PROT_PREAMBLE0_INDEX,
  251. MBIC_PROT_PREAMBLE1_INDEX,
  252. MBIC_PROT_PREAMBLE2_INDEX,
  253. MBIC_PROT_PREAMBLE3_INDEX, //4
  254. MBIC_PROT_SUB_UID0_INDEX,
  255. MBIC_PROT_SUB_UID1_INDEX,
  256. MBIC_PROT_R_CODE_INDEX,
  257. MBIC_PROT_TR_ID0_INDEX,
  258. MBIC_PROT_TR_ID1_INDEX,
  259. MBIC_PROT_SEQ_NUM_INDEX, //10
  260. MBIC_PROT_TTL_INDEX,
  261. MBIC_PROT_TIME0_INDEX,
  262. MBIC_PROT_TIME1_INDEX,
  263. MBIC_PROT_TIME2_INDEX,
  264. MBIC_PROT_TIME3_INDEX,
  265. MBIC_PROT_TIME4_INDEX,
  266. MBIC_PROT_TIME5_INDEX,
  267. MBIC_PROT_ERR_RESP_INDEX,
  268. MBIC_PROT_CMD_INDEX, // 19
  269. MBIC_PROT_LENGTH_INDEX,
  270. MBIC_PROT_HEADERCHECKSUM_INDEX,
  271. MBIC_PROT_SUB_DATA_INDEX,
  272. MBIC_PROT_INDEX_MAX,
  273. };
  274. typedef enum{
  275. MBIC_Table_DL1_INDEX = 0,
  276. MBIC_Table_DL2_INDEX ,
  277. MBIC_Table_DL3_INDEX ,
  278. MBIC_Table_DL4_INDEX ,
  279. MBIC_Table_UL1_INDEX ,
  280. MBIC_Table_UL2_INDEX ,
  281. MBIC_Table_UL3_INDEX ,
  282. MBIC_Table_UL4_INDEX ,
  283. MBIC_Table_INDEX ,
  284. }MBIC_ALC_TableIndex;
  285. //5~ - 25
  286. typedef struct{
  287. int8_t DET_DL_0;
  288. int8_t DET_DL_1;
  289. int8_t DET_DL_2;
  290. int8_t DET_DL_3;
  291. int8_t DET_DL_4;
  292. int8_t DET_DL_5;
  293. int8_t DET_DL_6;
  294. int8_t DET_DL_7;
  295. int8_t DET_DL_8;
  296. int8_t DET_DL_9;
  297. int8_t DET_DL_10;
  298. int8_t DET_DL_11;
  299. int8_t DET_DL_12;
  300. int8_t DET_DL_13;
  301. int8_t DET_DL_14;
  302. int8_t DET_DL_15;
  303. int8_t DET_DL_16;
  304. int8_t DET_DL_17;
  305. int8_t DET_DL_18;
  306. int8_t DET_DL_19;
  307. int8_t DET_DL_20;
  308. int8_t DET_DL_21;
  309. int8_t DET_DL_22;
  310. int8_t DET_DL_23;
  311. int8_t DET_DL_24;
  312. int8_t DET_DL_25;
  313. int8_t DET_DL_26;
  314. int8_t DET_DL_27;
  315. int8_t DET_DL_28;
  316. int8_t DET_DL_29;
  317. int8_t DET_DL_30;
  318. }AGC_dBm_t;
  319. typedef struct{
  320. int8_t DET_UL_0;
  321. int8_t DET_UL_1;
  322. int8_t DET_UL_2;
  323. int8_t DET_UL_3;
  324. int8_t DET_UL_4;
  325. int8_t DET_UL_5;
  326. int8_t DET_UL_6;
  327. int8_t DET_UL_7;
  328. int8_t DET_UL_8;
  329. int8_t DET_UL_9;
  330. int8_t DET_UL_10;
  331. int8_t DET_UL_11;
  332. int8_t DET_UL_12;
  333. int8_t DET_UL_13;
  334. int8_t DET_UL_14;
  335. int8_t DET_UL_15;
  336. int8_t DET_UL_16;
  337. int8_t DET_UL_17;
  338. int8_t DET_UL_18;
  339. int8_t DET_UL_19;
  340. int8_t DET_UL_20;
  341. int8_t DET_UL_21;
  342. int8_t DET_UL_22;
  343. int8_t DET_UL_23;
  344. int8_t DET_UL_24;
  345. int8_t DET_UL_25;
  346. int8_t DET_UL_26;
  347. int8_t DET_UL_27;
  348. int8_t DET_UL_28;
  349. int8_t DET_UL_29;
  350. int8_t DET_UL_30;
  351. int8_t DET_UL_31;
  352. int8_t DET_UL_32;
  353. int8_t DET_UL_33;
  354. int8_t DET_UL_34;
  355. int8_t DET_UL_35;
  356. int8_t DET_UL_36;
  357. int8_t DET_UL_37;
  358. int8_t DET_UL_38;
  359. int8_t DET_UL_39;
  360. int8_t DET_UL_40;
  361. int8_t DET_UL_41;
  362. int8_t DET_UL_42;
  363. int8_t DET_UL_43;
  364. int8_t DET_UL_44;
  365. int8_t DET_UL_45;
  366. int8_t DET_UL_46;
  367. int8_t DET_UL_47;
  368. int8_t DET_UL_48;
  369. int8_t DET_UL_49;
  370. int8_t DET_UL_50;
  371. int8_t DET_UL_51;
  372. int8_t DET_UL_52;
  373. int8_t DET_UL_53;
  374. int8_t DET_UL_54;
  375. int8_t DET_UL_55;
  376. int8_t DET_UL_56;
  377. int8_t DET_UL_57;
  378. int8_t DET_UL_58;
  379. int8_t DET_UL_59;
  380. int8_t DET_UL_60;
  381. int8_t DET_UL_61;
  382. int8_t DET_UL_62;
  383. int8_t DET_UL_63;
  384. int8_t DET_UL_64;
  385. int8_t DET_UL_65;
  386. int8_t DET_UL_66;
  387. int8_t DET_UL_67;
  388. int8_t DET_UL_68;
  389. int8_t DET_UL_69;
  390. }ALC_dBm_t;
  391. typedef enum{
  392. DLI_RF_Path1_ON_OFF = 0x30,
  393. DLI_RF_Path2_ON_OFF,
  394. DLI_RF_Path3_ON_OFF,
  395. DLI_RF_Path4_ON_OFF,
  396. DLI_Gain_Atten1,
  397. DLI_Gain_Atten2,
  398. DLI_Gain_Atten3,
  399. DLI_Gain_Atten4,
  400. DLI_Gain_Atten_Offset1,
  401. DLI_Gain_Atten_Offset2,
  402. DLI_Gain_Atten_Offset3,
  403. DLI_Gain_Atten_Offset4,
  404. DLI_Level_High_Threshold,
  405. DLI_Level_Low_Threshold,
  406. DLI_Level_High_Low_Threshold_default,
  407. DLI_Level,
  408. DLI_Level_High_Alarm1=0x40,
  409. DLI_Level_High_Alarm2,
  410. DLI_Level_High_Alarm3,
  411. DLI_Level_High_Alarm4,
  412. DLI_Level_Low_Alarm1,
  413. DLI_Level_Low_Alarm2,
  414. DLI_Level_Low_Alarm3,
  415. DLI_Level_Low_Alarm4,
  416. SERIAL_DL_NULL0,
  417. DLI_FRBT_Atten,
  418. DLI_FRBT_D_Day,
  419. DLI_FRBT_Status,
  420. DLI_AGC_ON_OFF=0x50,
  421. DLI_AGC_Threshold,
  422. DLI_AGC_Threshold_Default,
  423. DLI_Shutdown_ON_OFF,
  424. DLI_Shutdown_Threshold,
  425. DLI_Shutdown_Threshold_Default,
  426. DLI_Shutdown_Count,
  427. DLI_AGC_Alarm1,
  428. DLI_AGC_Alarm2,
  429. DLI_AGC_Alarm3,
  430. DLI_AGC_Alarm4,
  431. DLI_Shutdown_Alarm1,
  432. DLI_Shutdown_Alarm2,
  433. DLI_Shutdown_Alarm3,
  434. DLI_Shutdown_Alarm4,
  435. }SERIAL_DL_t;
  436. typedef enum{
  437. ULO_RF_Path1_ON_OFF = 0x60,
  438. ULO_RF_Path2_ON_OFF,
  439. ULO_RF_Path3_ON_OFF,
  440. ULO_RF_Path4_ON_OFF,
  441. ULO_Gain_Atten1,
  442. ULO_Gain_Atten2,
  443. ULO_Gain_Atten3,
  444. ULO_Gain_Atten4,
  445. ULO_Gain_Atten_Offset1,
  446. ULO_Gain_Atten_Offset2,
  447. ULO_Gain_Atten_Offset3,
  448. ULO_Gain_Atten_Offset4,
  449. ULO_Level_High_Threshold,
  450. SERIAL_UL_NULL0,
  451. ULO_Level_High_Threshold_default,
  452. ULO_Level,
  453. ULO_Level_High_Alarm1=0x70,
  454. ULO_Level_High_Alarm2,
  455. ULO_Level_High_Alarm3,
  456. ULO_Level_High_Alarm4,
  457. SERIAL_UL_NULL1,
  458. ULO_ALC_ON_OFF=0x80,
  459. ULO_ALC_Threshold,
  460. ULO_ALC_Threshold_Default,
  461. ULO_Shutdown_ON_OFF,
  462. ULO_Shutdown_Threshold,
  463. ULO_Shutdown_Threshold_Default,
  464. ULO_Shutdown_Retry_Count,
  465. ULO_ALC_Alarm1,
  466. ULO_ALC_Alarm2,
  467. ULO_ALC_Alarm3,
  468. ULO_ALC_Alarm4,
  469. ULO_Shutdown_Alarm1,
  470. ULO_Shutdown_Alarm2,
  471. ULO_Shutdown_Alarm3,
  472. ULO_Shutdown_Alarm4,
  473. ULO_ALC_Atten,
  474. }SERIAL_UL_t;
  475. #define RETRYCNT_MAX 4
  476. #define MBIC_HEADER_SIZE 22
  477. #define MBIC_TAIL_SIZE 3
  478. #define MBIC_PREAMBLE0 0x16
  479. #define MBIC_PREAMBLE1 0x16
  480. #define MBIC_PREAMBLE2 0x16
  481. #define MBIC_PREAMBLE3 0x16
  482. #define MBIC_SUBUID0 0x00
  483. #define MBIC_SUBUID1 0xF1
  484. #define MBIC_RCODE
  485. #define MBIC_TRID
  486. #define MBIC_SEQNUM
  487. #define MBIC_TTL
  488. #define MBIC_TIME
  489. #define MBIC_ERRRESPONSE 0x00
  490. #define MBIC_CMD
  491. #define MBIC_LENGTH
  492. #define MBIC_CHECKSHUM_INDEX MBIC_HEADER_SIZE - 1 //CheckSUM REMOVE INDEX
  493. #define MBIC_ETX 0x03
  494. #define MBIC_NODE_MU 0x80
  495. #define MBIC_CPUVERSION 0x000000
  496. typedef enum{
  497. MBIC_Shutdown_DL1 = 0,
  498. MBIC_Shutdown_DL2,
  499. MBIC_Shutdown_DL3,
  500. MBIC_Shutdown_DL4,
  501. MBIC_Shutdown_UL1,
  502. MBIC_Shutdown_UL2,
  503. MBIC_Shutdown_UL3,
  504. MBIC_Shutdown_UL4,
  505. MBIC_Shutdown_MaxIndex,
  506. }MBIC_ShutdownIndex_t;
  507. enum DATATYPE
  508. {
  509. BLUECELL_SOFTWARERESET = 0,
  510. ATT_DL1_PATH = 0x12,
  511. ATT_UL1_PATH = 0x16,
  512. ATT_SelfTest1 = 0x18,
  513. ATT_DL2_PATH = 0x22,
  514. ATT_UL2_PATH = 0x26,
  515. ATT_SelfTest2 = 0x28,
  516. ATT_DL3_PATH = 0x32,
  517. ATT_UL3_PATH = 0x36,
  518. ATT_SelfTest3 = 0x38,
  519. ATT_DL4_PATH = 0x42,
  520. ATT_UL4_PATH = 0x46,
  521. ATT_SelfTest4 = 0x48,
  522. Bluecell_ULO_ALC_ON_OFF = 0x51,
  523. Bluecell_DLI_AGC_ON_OFF = 0x61,
  524. ATT_TableSet = 0x70,
  525. ATT_TableGet = 0x71,
  526. Bluecell_StatusReq = 0x77,
  527. Bluecell_StatusSave = 0x78,
  528. Bluecell_DL1_USER = 0x80,
  529. Bluecell_DL2_USER = 0x81,
  530. Bluecell_DL3_USER = 0x82,
  531. Bluecell_DL4_USER = 0x83,
  532. Bluecell_UL1_USER = 0x84,
  533. Bluecell_UL2_USER = 0x85,
  534. Bluecell_UL3_USER = 0x86,
  535. Bluecell_UL4_USER = 0x87,
  536. Bluecell_TEMP_USER = 0x88,
  537. Bluecell_DLI_AGC_Threshold,
  538. Bluecell_DLI_AGC_Threshold_Default,
  539. Bluecell_DLI_Shutdown_ON_OFF,
  540. Bluecell_DLI_Shutdown_Threshold,
  541. Bluecell_DLI_Shutdown_Threshold_Default,
  542. Bluecell_DLI_Shutdown_Count,
  543. Bluecell_DLI_Level_High_Threshold ,
  544. Bluecell_DLI_Level_Low_Threshold ,
  545. Bluecell_DLI_Level_High_Low_Threshold_default ,
  546. Bluecell_LED_TEST ,
  547. Bluecell_Temperature_Offset ,
  548. Bluecell_Temp_High_Threshold ,
  549. Bluecell_Temp_High_Threshold_Default ,
  550. Bluecell_ULO_Level_High_Threshold ,
  551. Bluecell_ULO_Level_High_Threshold_default ,
  552. Bluecell_ULO_ALC_Threshold ,
  553. Bluecell_ULO_ALC_Threshold_Default ,
  554. Bluecell_ULO_Shutdown_ON_OFF ,
  555. Bluecell_ULO_Shutdown_Threshold ,
  556. Bluecell_ULO_Shutdown_Threshold_Default ,
  557. Bluecell_ULO_Shutdown_Retry_Count ,
  558. Bluecell_Alarm_Mask,
  559. Bluecell_ATT_DL1,
  560. Bluecell_ATT_DL2,
  561. Bluecell_ATT_DL3,
  562. Bluecell_ATT_DL4,
  563. Bluecell_ATT_UL1,
  564. Bluecell_ATT_UL2,
  565. Bluecell_ATT_UL3,
  566. Bluecell_ATT_UL4,
  567. Bluecell_ATT_DL1_USER,
  568. Bluecell_ATT_DL2_USER,
  569. Bluecell_ATT_DL3_USER,
  570. Bluecell_ATT_DL4_USER,
  571. Bluecell_ATT_UL1_USER,
  572. Bluecell_ATT_UL2_USER,
  573. Bluecell_ATT_UL3_USER,
  574. Bluecell_ATT_UL4_USER,
  575. BLuecell_ATT_ALC1,
  576. BLuecell_ATT_ALC2,
  577. BLuecell_ATT_ALC3,
  578. BLuecell_ATT_ALC4,
  579. Bluecell_BankSelect,
  580. };
  581. typedef enum{
  582. DLI_P1_Level_Table_Number = 0x00,
  583. DLI_P2_Level_Table_Number = 0x01,
  584. DLI_P3_Level_Table_Number = 0x02,
  585. DLI_P4_Level_Table_Number = 0x03,
  586. ULO_P1_Level_Table_Number = 0x10,
  587. ULO_P2_Level_Table_Number = 0x11,
  588. ULO_P3_Level_Table_Number = 0x12,
  589. ULO_P4_Level_Table_Number = 0x13,
  590. DLI_P1_ATT_Temp_guarantee_Table_Number = 0x20,
  591. DLI_P2_ATT_Temp_guarantee_Table_Number = 0x21,
  592. DLI_P3_ATT_Temp_guarantee_Table_Number = 0x22,
  593. DLI_P4_ATT_Temp_guarantee_Table_Number = 0x23,
  594. ULO_P1_ATT_Temp_guarantee_Table_Number = 0x30,
  595. ULO_P2_ATT_Temp_guarantee_Table_Number = 0x31,
  596. ULO_P3_ATT_Temp_guarantee_Table_Number = 0x32,
  597. ULO_P4_ATT_Temp_guarantee_Table_Number = 0x33,
  598. DLI_P1_ATT_Accuracy_Table_Number = 0x40,
  599. DLI_P2_ATT_Accuracy_Table_Number = 0x41,
  600. DLI_P3_ATT_Accuracy_Table_Number = 0x42,
  601. DLI_P4_ATT_Accuracy_Table_Number = 0x43,
  602. ULO_P1_ATT_Accuracy_Table_Number = 0x50,
  603. ULO_P2_ATT_Accuracy_Table_Number = 0x51,
  604. ULO_P3_ATT_Accuracy_Table_Number = 0x52,
  605. ULO_P4_ATT_Accuracy_Table_Number = 0x53,
  606. }MBIC_Table_Number;
  607. #define ATTENTABLEDLUL_LENGTH 64
  608. #define ATTENTABLEDET_DL_LENGTH 31
  609. #define ATTENTABLEDET_UL_LENGTH 46
  610. #define ATTENTABLE_TEMP_LENGTH 10
  611. #define ATTENTABLEDL_REF 0
  612. #define ATTENTABLEUL_REF 0
  613. #define ATTENTABLEDET_DL_REF 5
  614. #define ATTENTABLEDET_UL_REF -15
  615. #define ATTENTABLE_TEMP_REF -10
  616. #define UNIT_TYPE_MBIC 0x01
  617. /*FLAG BIT START */
  618. #define ENVIRONMENT_TEMPHIGH 0x80
  619. #define ALARM_DLI_P4_LEVEL_LOW 0x80
  620. #define ALARM_DLI_P3_LEVEL_LOW 0x40
  621. #define ALARM_DLI_P2_LEVEL_LOW 0x20
  622. #define ALARM_DLI_P1_LEVEL_LOW 0x10
  623. #define ALARM_DLI_P4_LEVEL_HIGH 0x08
  624. #define ALARM_DLI_P3_LEVEL_HIGH 0x04
  625. #define ALARM_DLI_P2_LEVEL_HIGH 0x02
  626. #define ALARM_DLI_P1_LEVEL_HIGH 0x01
  627. #define ALARM_AGC_P4 0x80
  628. #define ALARM_AGC_P3 0x40
  629. #define ALARM_AGC_P2 0x20
  630. #define ALARM_AGC_P1 0x10
  631. #define ALARM_DLI_SHUTDOWN_P4 0x08
  632. #define ALARM_DLI_SHUTDOWN_P3 0x04
  633. #define ALARM_DLI_SHUTDOWN_P2 0x02
  634. #define ALARM_DLI_SHUTDOWN_P1 0x01
  635. #define ALARM_ULO_P4_LEVEL_HIGH 0x08
  636. #define ALARM_ULO_P3_LEVEL_HIGH 0x04
  637. #define ALARM_ULO_P2_LEVEL_HIGH 0x02
  638. #define ALARM_ULO_P1_LEVEL_HIGH 0x01
  639. #define ALARM_ALC_P4 0x80
  640. #define ALARM_ALC_P3 0x40
  641. #define ALARM_ALC_P2 0x20
  642. #define ALARM_ALC_P1 0x10
  643. #define ALARM_ULO_SHUTDOWN_P4 0x08
  644. #define ALARM_ULO_SHUTDOWN_P3 0x04
  645. #define ALARM_ULO_SHUTDOWN_P2 0x02
  646. #define ALARM_ULO_SHUTDOWN_P1 0x01
  647. /*FLAG BIT END*/
  648. #define MBIC_DLI_AGC_Threshold_Default_H 0xFF
  649. #define MBIC_DLI_AGC_Threshold_Default_L 0xF6
  650. #define MBIC_DLI_Shutdown_Threshold_Default_H 0xFF
  651. #define MBIC_DLI_Shutdown_Threshold_Default_L 0xFF
  652. #define MBIC_DLI_Level_High_Threshold_default_H 0x00
  653. #define MBIC_DLI_Level_High_Threshold_default_L 0x07
  654. #define MBIC_DLI_Level_Low_Threshold_default_H 0xFF
  655. #define MBIC_DLI_Level_Low_Threshold_default_L 0xD5
  656. #define MBIC_ULO_Level_High_Threshold_Default_H 0xFF
  657. #define MBIC_ULO_Level_High_Threshold_Default_L 0xEE
  658. #define MBIC_Temp_High_Threshold_Default 0x50
  659. #define MBIC_ULO_ALC_Threshold_Default_H 0xFF
  660. #define MBIC_ULO_ALC_Threshold_Default_L 0xD8
  661. #define MBIC_ULO_Shutdown_Threshold_Default_H 0xFF
  662. #define MBIC_ULO_Shutdown_Threshold_Default_L 0xF0
  663. #define HIDDENATTEN 5 * 10
  664. typedef enum{
  665. ENVIRONMENT = 0,
  666. DL1,
  667. DL2,
  668. UL1,
  669. UL2,
  670. MAX_ALARM_Len,
  671. }AlarmList;
  672. typedef struct{
  673. uint8_t bluecell_User_DL1_H; uint8_t bluecell_User_DL1_L;
  674. uint8_t bluecell_User_DL2_H; uint8_t bluecell_User_DL2_L;
  675. uint8_t bluecell_User_DL3_H; uint8_t bluecell_User_DL3_L;
  676. uint8_t bluecell_User_DL4_H; uint8_t bluecell_User_DL4_L;
  677. uint8_t bluecell_User_UL1_H; uint8_t bluecell_User_UL1_L;
  678. uint8_t bluecell_User_UL2_H; uint8_t bluecell_User_UL2_L;
  679. uint8_t bluecell_User_UL3_H; uint8_t bluecell_User_UL3_L;
  680. uint8_t bluecell_User_UL4_H; uint8_t bluecell_User_UL4_L;
  681. }USER_ATTEN_st;
  682. typedef enum{
  683. MBIC_BOOT_MARK = 0,
  684. MBIC_BOOT_TYPE = 9 ,
  685. MBIC_BOOT_FILE_TYPE= 10,
  686. MBIC_BOOT_VERSION = 11,
  687. MBIC_BOOT_FILENAME = 14,
  688. MBIC_BOOT_CREATION_TIME= 55,
  689. MBIC_BOOT_LENGTH = 61,
  690. MBIC_BOOT_CRC =65,
  691. MBIC_BOOT_RESERVED = 69,
  692. }HFR_BootLoader_Index_;
  693. typedef enum{
  694. HFR_BANK1 = 1,
  695. HFR_BANK2 = 2,
  696. HFR_FACTORY = 3,
  697. }HFR_BootBankIndex_;
  698. typedef enum{
  699. HFR_BANK1_SEL = 1,
  700. HFR_BANK2_SEL = 2,
  701. HFR_AUTO_SEL = 3,
  702. }HFR_BootSelIndex_;
  703. typedef struct{
  704. uint8_t bluecell_header;
  705. uint8_t bluecell_type;
  706. uint8_t bluecell_length;
  707. uint8_t bluecell_crcindex;
  708. uint8_t Selftest1;
  709. uint8_t Selftest2;
  710. uint8_t Selftest3;
  711. uint8_t Selftest4;
  712. uint8_t ATT_DL1_PATH;
  713. uint8_t ATT_DL2_PATH;
  714. uint8_t ATT_DL3_PATH;
  715. uint8_t ATT_DL4_PATH;
  716. uint8_t ATT_UL1_PATH;
  717. uint8_t ATT_UL2_PATH;
  718. uint8_t ATT_UL3_PATH;
  719. uint8_t ATT_UL4_PATH;
  720. uint8_t ATT_DL1_H;
  721. uint8_t ATT_DL1_L;
  722. uint8_t ATT_DL2_H;
  723. uint8_t ATT_DL2_L;
  724. uint8_t ATT_DL3_H;
  725. uint8_t ATT_DL3_L;
  726. uint8_t ATT_DL4_H;
  727. uint8_t ATT_DL4_L;
  728. uint8_t ATT_UL1_H;
  729. uint8_t ATT_UL1_L;
  730. uint8_t ATT_UL2_H;
  731. uint8_t ATT_UL2_L;
  732. uint8_t ATT_UL3_H;
  733. uint8_t ATT_UL3_L;
  734. uint8_t ATT_UL4_H;
  735. uint8_t ATT_UL4_L;
  736. uint8_t ULO_P1_Level1_H;
  737. uint8_t ULO_P1_Level1_L;
  738. uint8_t ULO_P2_Level2_H;
  739. uint8_t ULO_P2_Level2_L;
  740. uint8_t ULO_P3_Level3_H;
  741. uint8_t ULO_P3_Level3_L;
  742. uint8_t ULO_P4_Level4_H;
  743. uint8_t ULO_P4_Level4_L;
  744. uint8_t DLI_P1_Level1_H;
  745. uint8_t DLI_P1_Level1_L;
  746. uint8_t DLI_P2_Level2_H;
  747. uint8_t DLI_P2_Level2_L;
  748. uint8_t DLI_P3_Level3_H;
  749. uint8_t DLI_P3_Level3_L;
  750. uint8_t DLI_P4_Level4_H;
  751. uint8_t DLI_P4_Level4_L;
  752. int8_t DET_TEMP;
  753. uint8_t DLI_AGC_ON_OFF;
  754. uint8_t ULO_ALC_ON_OFF;
  755. uint8_t ULO_Level1_H;
  756. uint8_t ULO_Level1_L;
  757. uint8_t ULO_Level2_H;
  758. uint8_t ULO_Level2_L;
  759. uint8_t ULO_Level3_H;
  760. uint8_t ULO_Level3_L;
  761. uint8_t ULO_Level4_H;
  762. uint8_t ULO_Level4_L;
  763. uint8_t DLI_Level1_H;
  764. uint8_t DLI_Level1_L;
  765. uint8_t DLI_Level2_H;
  766. uint8_t DLI_Level2_L;
  767. uint8_t DLI_Level3_H;
  768. uint8_t DLI_Level3_L;
  769. uint8_t DLI_Level4_H;
  770. uint8_t DLI_Level4_L;
  771. uint8_t ULO_ALC_Threshold_H;
  772. uint8_t ULO_ALC_Threshold_L;
  773. uint8_t bluecell_User_DL1_H;
  774. uint8_t bluecell_User_DL1_L;
  775. uint8_t bluecell_User_DL2_H;
  776. uint8_t bluecell_User_DL2_L;
  777. uint8_t bluecell_User_DL3_H;
  778. uint8_t bluecell_User_DL3_L;
  779. uint8_t bluecell_User_DL4_H;
  780. uint8_t bluecell_User_DL4_L;
  781. uint8_t bluecell_User_UL1_H;
  782. uint8_t bluecell_User_UL1_L;
  783. uint8_t bluecell_User_UL2_H;
  784. uint8_t bluecell_User_UL2_L;
  785. uint8_t bluecell_User_UL3_H;
  786. uint8_t bluecell_User_UL3_L;
  787. uint8_t bluecell_User_UL4_H;
  788. uint8_t bluecell_User_UL4_L;
  789. uint8_t bluecell_User_TEMP_H;
  790. uint8_t bluecell_User_TEMP_L;
  791. int8_t bluecell_User_TEMP_OFFSET;
  792. int8_t Temp_High_Threshold;
  793. int8_t Temp_High_Threshold_Default;
  794. uint8_t DLI_Level_High_Threshold_H;
  795. uint8_t DLI_Level_High_Threshold_L;
  796. uint8_t DLI_Level_Low_Threshold_H;
  797. uint8_t DLI_Level_Low_Threshold_L;
  798. uint8_t DLI_Level_High_Low_Threshold_default;
  799. uint8_t ALARM_TEMP_HIGH; //bit
  800. uint8_t ALARM_DLI_Level;
  801. uint8_t ALARM_DLI_SHTUTDOWN;
  802. uint8_t ALARM_DLI_AGC_Alarm;
  803. uint8_t ALARM_ULO_ALC_Alarm;
  804. uint8_t ALARM_ULO_Level;
  805. uint8_t ALARM_ULO_SHTUTDOWN;
  806. uint8_t ALARM_MASK1;
  807. uint8_t ALARM_MASK2;
  808. uint8_t ALARM_MASK3;
  809. uint8_t ALARM_MASK4;
  810. uint8_t ALARM_MASK5;
  811. uint8_t ALARM_TESTMODE;
  812. uint8_t ALARM_Test_Dummy1;
  813. uint8_t ALARM_Test_Dummy2;
  814. uint8_t ALARM_Test_Dummy3;
  815. uint8_t ALARM_Test_Dummy4;
  816. uint8_t ALARM_Test_Dummy5;
  817. uint8_t CPUVERSION1;
  818. uint8_t CPUVERSION2;
  819. uint8_t CPUVERSION3;
  820. uint8_t CPU_Current_Bank;
  821. uint8_t CPU_Bank_Select;//Reboot_by;
  822. uint8_t CPU_Bank1_Image_Version1;
  823. uint8_t CPU_Bank1_Image_Version2;
  824. uint8_t CPU_Bank1_Image_Version3;
  825. uint8_t CPU_Bank1_Image_BuildTime1;
  826. uint8_t CPU_Bank1_Image_BuildTime2;
  827. uint8_t CPU_Bank1_Image_BuildTime3;
  828. uint8_t CPU_Bank1_Image_BuildTime4;
  829. uint8_t CPU_Bank1_Image_BuildTime5;
  830. uint8_t CPU_Bank1_Image_BuildTime6;
  831. uint8_t CPU_Bank1_Image_Name[32];
  832. uint8_t CPU_Bank2_Image_Version1;
  833. uint8_t CPU_Bank2_Image_Version2;
  834. uint8_t CPU_Bank2_Image_Version3;
  835. uint8_t CPU_Bank2_Image_BuildTime1;
  836. uint8_t CPU_Bank2_Image_BuildTime2;
  837. uint8_t CPU_Bank2_Image_BuildTime3;
  838. uint8_t CPU_Bank2_Image_BuildTime4;
  839. uint8_t CPU_Bank2_Image_BuildTime5;
  840. uint8_t CPU_Bank2_Image_BuildTime6;
  841. uint8_t CPU_Bank2_Image_Name[32];
  842. uint8_t S_W_Reset;
  843. uint8_t Factory_Set_Initialization;
  844. uint8_t Temp_High_Alarm;
  845. uint8_t LED_TEST;
  846. uint8_t NODE;
  847. uint8_t Type;
  848. uint8_t PCB_Version[2];
  849. uint8_t Serial_Number[20]; // INDEX : 20
  850. uint8_t Manufacture;
  851. uint8_t Manufacture_Date[3];
  852. uint8_t Freq_ID;
  853. uint8_t Carrier_ID;
  854. uint8_t Carrier_ON_OFF;
  855. uint8_t DLI_Level_High_Alarm1;
  856. uint8_t DLI_Level_High_Alarm2;
  857. uint8_t DLI_Level_High_Alarm3;
  858. uint8_t DLI_Level_High_Alarm4;
  859. uint8_t DLI_Level_Low_Alarm1;
  860. uint8_t DLI_Level_Low_Alarm2;
  861. uint8_t DLI_Level_Low_Alarm3;
  862. uint8_t DLI_Level_Low_Alarm4;
  863. uint8_t DLI_FRBT_Atten1_H;
  864. uint8_t DLI_FRBT_Atten1_L;
  865. uint8_t DLI_FRBT_Atten2_H;
  866. uint8_t DLI_FRBT_Atten2_L;
  867. uint8_t DLI_FRBT_Atten3_H;
  868. uint8_t DLI_FRBT_Atten3_L;
  869. uint8_t DLI_FRBT_Atten4_H;
  870. uint8_t DLI_FRBT_Atten4_L;
  871. uint8_t DLI_FRBT_D_Day;
  872. uint8_t DLI_FRBT_Status;
  873. uint8_t DLI_AGC_Threshold_H;
  874. uint8_t DLI_AGC_Threshold_L;
  875. uint8_t DLI_AGC_Threshold_default;
  876. uint8_t DLI_Shutdown_ON_OFF;
  877. uint8_t DLI_Shutdown_Threshold_H;
  878. uint8_t DLI_Shutdown_Threshold_L;
  879. uint8_t DLI_Shutdown_Threshold_Default;
  880. uint8_t DLI_Shutdown_Retry_Count1;
  881. uint8_t DLI_Shutdown_Retry_Count2;
  882. uint8_t DLI_Shutdown_Retry_Count3;
  883. uint8_t DLI_Shutdown_Retry_Count4;
  884. uint8_t DLI_AGC_Alarm1;
  885. uint8_t DLI_AGC_Alarm2;
  886. uint8_t DLI_AGC_Alarm3;
  887. uint8_t DLI_AGC_Alarm4;
  888. uint8_t DLI_Shutdown_Alarm1;
  889. uint8_t DLI_Shutdown_Alarm2;
  890. uint8_t DLI_Shutdown_Alarm3;
  891. uint8_t DLI_Shutdown_Alarm4;
  892. uint8_t ULO_Level_High_Threshold_H;
  893. uint8_t ULO_Level_High_Threshold_L;
  894. uint8_t ULO_Level_High_Threshold_default;
  895. uint8_t ULO_Level_High_Alarm1;
  896. uint8_t ULO_Level_High_Alarm2;
  897. uint8_t ULO_Level_High_Alarm3;
  898. uint8_t ULO_Level_High_Alarm4;
  899. uint8_t ULO_ALC_Threshold_Default;
  900. uint8_t ULO_Shutdown_ON_OFF;
  901. uint8_t ULO_Shutdown_Threshold_H;
  902. uint8_t ULO_Shutdown_Threshold_L;
  903. uint8_t ULO_Shutdown_Threshold_Default;
  904. uint8_t ULO_Shutdown_Retry_Count1;
  905. uint8_t ULO_Shutdown_Retry_Count2;
  906. uint8_t ULO_Shutdown_Retry_Count3;
  907. uint8_t ULO_Shutdown_Retry_Count4;
  908. uint8_t ULO_ALC_Alarm1;
  909. uint8_t ULO_ALC_Alarm2;
  910. uint8_t ULO_ALC_Alarm3;
  911. uint8_t ULO_ALC_Alarm4;
  912. uint8_t ULO_Shutdown_Alarm1;
  913. uint8_t ULO_Shutdown_Alarm2;
  914. uint8_t ULO_Shutdown_Alarm3;
  915. uint8_t ULO_Shutdown_Alarm4;
  916. uint8_t MBIC_ULO_ALC_Atten1_H;
  917. uint8_t MBIC_ULO_ALC_Atten1_L;
  918. uint8_t MBIC_ULO_ALC_Atten2_H;
  919. uint8_t MBIC_ULO_ALC_Atten2_L;
  920. uint8_t MBIC_ULO_ALC_Atten3_H;
  921. uint8_t MBIC_ULO_ALC_Atten3_L;
  922. uint8_t MBIC_ULO_ALC_Atten4_H;
  923. uint8_t MBIC_ULO_ALC_Atten4_L;
  924. int8_t MBIC_DLI_P1_Level_Table_Ref;
  925. int8_t MBIC_DLI_P2_Level_Table_Ref;
  926. int8_t MBIC_DLI_P3_Level_Table_Ref;
  927. int8_t MBIC_DLI_P4_Level_Table_Ref;
  928. int8_t MBIC_ULO_P1_Level_Table_Ref;
  929. int8_t MBIC_ULO_P2_Level_Table_Ref;
  930. int8_t MBIC_ULO_P3_Level_Table_Ref;
  931. int8_t MBIC_ULO_P4_Level_Table_Ref;
  932. int8_t MBIC_TEMP_DL_P1_Level_Table_Ref;
  933. int8_t MBIC_TEMP_DL_P2_Level_Table_Ref;
  934. int8_t MBIC_TEMP_DL_P3_Level_Table_Ref;
  935. int8_t MBIC_TEMP_DL_P4_Level_Table_Ref;
  936. int8_t MBIC_TEMP_UL_P1_Level_Table_Ref;
  937. int8_t MBIC_TEMP_UL_P2_Level_Table_Ref;
  938. int8_t MBIC_TEMP_UL_P3_Level_Table_Ref;
  939. int8_t MBIC_TEMP_UL_P4_Level_Table_Ref;
  940. int8_t MBIC_DLI_P1_Table_Length;
  941. int8_t MBIC_DLI_P2_Table_Length;
  942. int8_t MBIC_DLI_P3_Table_Length;
  943. int8_t MBIC_DLI_P4_Table_Length;
  944. int8_t MBIC_ULO_P1_Table_Length;
  945. int8_t MBIC_ULO_P2_Table_Length;
  946. int8_t MBIC_ULO_P3_Table_Length;
  947. int8_t MBIC_ULO_P4_Table_Length;
  948. int8_t MBIC_DLI_P1_Level_Table_Length;
  949. int8_t MBIC_DLI_P2_Level_Table_Length;
  950. int8_t MBIC_DLI_P3_Level_Table_Length;
  951. int8_t MBIC_DLI_P4_Level_Table_Length;
  952. int8_t MBIC_ULO_P1_Level_Table_Length;
  953. int8_t MBIC_ULO_P2_Level_Table_Length;
  954. int8_t MBIC_ULO_P3_Level_Table_Length;
  955. int8_t MBIC_ULO_P4_Level_Table_Length;
  956. int8_t MBIC_TEMP_DL_P1_Level_Table_Length;
  957. int8_t MBIC_TEMP_DL_P2_Level_Table_Length;
  958. int8_t MBIC_TEMP_DL_P3_Level_Table_Length;
  959. int8_t MBIC_TEMP_DL_P4_Level_Table_Length;
  960. int8_t MBIC_TEMP_UL_P1_Level_Table_Length;
  961. int8_t MBIC_TEMP_UL_P2_Level_Table_Length;
  962. int8_t MBIC_TEMP_UL_P3_Level_Table_Length;
  963. int8_t MBIC_TEMP_UL_P4_Level_Table_Length;
  964. uint8_t BLUECELL_RESERVE49;
  965. uint8_t BLUECELL_RESERVE50;
  966. uint8_t BLUECELL_RESERVE51;
  967. uint8_t BLUECELL_RESERVE52;
  968. uint8_t BLUECELL_RESERVE53;
  969. uint8_t bluecell_crc_H;
  970. uint8_t bluecell_crc_L;
  971. uint8_t bluecell_etx;
  972. }BLUESTATUS_st;
  973. /*ssizeof 320 byte*/
  974. typedef struct{
  975. uint8_t Table_0_0_dBm;
  976. uint8_t Table_0_5_dBm;
  977. uint8_t Table_1_0_dBm;
  978. uint8_t Table_1_5_dBm;
  979. uint8_t Table_2_0_dBm;
  980. uint8_t Table_2_5_dBm;
  981. uint8_t Table_3_0_dBm;
  982. uint8_t Table_3_5_dBm;
  983. uint8_t Table_4_0_dBm;
  984. uint8_t Table_4_5_dBm;
  985. uint8_t Table_5_0_dBm;
  986. uint8_t Table_5_5_dBm;
  987. uint8_t Table_6_0_dBm;
  988. uint8_t Table_6_5_dBm;
  989. uint8_t Table_7_0_dBm;
  990. uint8_t Table_7_5_dBm;
  991. uint8_t Table_8_0_dBm;
  992. uint8_t Table_8_5_dBm;
  993. uint8_t Table_9_0_dBm;
  994. uint8_t Table_9_5_dBm;
  995. uint8_t Table_10_0_dBm;
  996. uint8_t Table_10_5_dBm;
  997. uint8_t Table_11_0_dBm;
  998. uint8_t Table_11_5_dBm;
  999. uint8_t Table_12_0_dBm;
  1000. uint8_t Table_12_5_dBm;
  1001. uint8_t Table_13_0_dBm;
  1002. uint8_t Table_13_5_dBm;
  1003. uint8_t Table_14_0_dBm;
  1004. uint8_t Table_14_5_dBm;
  1005. uint8_t Table_15_0_dBm;
  1006. uint8_t Table_15_5_dBm;
  1007. uint8_t Table_16_0_dBm;
  1008. uint8_t Table_16_5_dBm;
  1009. uint8_t Table_17_0_dBm;
  1010. uint8_t Table_17_5_dBm;
  1011. uint8_t Table_18_0_dBm;
  1012. uint8_t Table_18_5_dBm;
  1013. uint8_t Table_19_0_dBm;
  1014. uint8_t Table_19_5_dBm;
  1015. uint8_t Table_20_0_dBm;
  1016. uint8_t Table_20_5_dBm;
  1017. uint8_t Table_21_0_dBm;
  1018. uint8_t Table_21_5_dBm;
  1019. uint8_t Table_22_0_dBm;
  1020. uint8_t Table_22_5_dBm;
  1021. uint8_t Table_23_0_dBm;
  1022. uint8_t Table_23_5_dBm;
  1023. uint8_t Table_24_0_dBm;
  1024. uint8_t Table_24_5_dBm;
  1025. uint8_t Table_25_0_dBm;
  1026. uint8_t Table_25_5_dBm;
  1027. uint8_t Table_26_0_dBm;
  1028. uint8_t Table_26_5_dBm;
  1029. uint8_t Table_27_0_dBm;
  1030. uint8_t Table_27_5_dBm;
  1031. uint8_t Table_28_0_dBm;
  1032. uint8_t Table_28_5_dBm;
  1033. uint8_t Table_29_0_dBm;
  1034. uint8_t Table_29_5_dBm;
  1035. uint8_t Table_30_0_dBm;
  1036. uint8_t Table_30_5_dBm;
  1037. uint8_t Table_31_0_dBm;
  1038. uint8_t Table_31_5_dBm;
  1039. uint8_t Table_xx_x_1_dBm;
  1040. uint8_t Table_xx_x_2_dBm;
  1041. uint8_t Table_xx_x_3_dBm;
  1042. uint8_t Table_xx_x_4_dBm;
  1043. uint8_t Table_xx_x_5_dBm;
  1044. uint8_t Table_xx_x_6_dBm;
  1045. uint8_t Table_xx_x_7_dBm;
  1046. uint8_t Table_xx_x_8_dBm;
  1047. uint8_t Table_xx_x_9_dBm;
  1048. uint8_t Table_xx_x_10_dBm;
  1049. uint8_t Table_xx_x_11_dBm;
  1050. uint8_t Table_xx_x_12_dBm;
  1051. uint8_t Table_xx_x_13_dBm;
  1052. uint8_t Table_xx_x_14_dBm;
  1053. uint8_t Table_xx_x_15_dBm;
  1054. uint8_t Table_xx_x_16_dBm;
  1055. uint8_t Table_xx_x_17_dBm;
  1056. uint8_t Table_xx_x_18_dBm;
  1057. uint8_t Table_xx_x_19_dBm;
  1058. uint8_t Table_xx_x_20_dBm;
  1059. uint8_t Table_xx_x_21_dBm;
  1060. uint8_t Table_xx_x_22_dBm;
  1061. uint8_t Table_xx_x_23_dBm;
  1062. uint8_t Table_xx_x_24_dBm;
  1063. uint8_t Table_xx_x_25_dBm;
  1064. uint8_t Table_xx_x_26_dBm;
  1065. uint8_t Table_xx_x_27_dBm;
  1066. uint8_t Table_xx_x_28_dBm;
  1067. uint8_t Table_xx_x_29_dBm;
  1068. uint8_t Table_xx_x_30_dBm;
  1069. uint8_t Table_Ref;
  1070. uint8_t Table_Length;
  1071. }ATT_TABLE_st;
  1072. typedef struct{
  1073. uint8_t Table_Det5_dBm_H ;
  1074. uint8_t Table_Det5_dBm_L ;
  1075. uint8_t Table_Det4_dBm_H ;
  1076. uint8_t Table_Det4_dBm_L ;
  1077. uint8_t Table_Det3_dBm_H ;
  1078. uint8_t Table_Det3_dBm_L ;
  1079. uint8_t Table_Det2_dBm_H ;
  1080. uint8_t Table_Det2_dBm_L ;
  1081. uint8_t Table_Det1_dBm_H ;
  1082. uint8_t Table_Det1_dBm_L ;
  1083. uint8_t Table_Det0_dBm_H ;
  1084. uint8_t Table_Det0_dBm_L ;
  1085. uint8_t Table_Det_1_dBm_H ;
  1086. uint8_t Table_Det_1_dBm_L ;
  1087. uint8_t Table_Det_2_dBm_H ;
  1088. uint8_t Table_Det_2_dBm_L ;
  1089. uint8_t Table_Det_3_dBm_H ;
  1090. uint8_t Table_Det_3_dBm_L ;
  1091. uint8_t Table_Det_4_dBm_H ;
  1092. uint8_t Table_Det_4_dBm_L ;
  1093. uint8_t Table_Det_5_dBm_H ;
  1094. uint8_t Table_Det_5_dBm_L ;
  1095. uint8_t Table_Det_6_dBm_H ;
  1096. uint8_t Table_Det_6_dBm_L ;
  1097. uint8_t Table_Det_7_dBm_H ;
  1098. uint8_t Table_Det_7_dBm_L ;
  1099. uint8_t Table_Det_8_dBm_H ;
  1100. uint8_t Table_Det_8_dBm_L ;
  1101. uint8_t Table_Det_9_dBm_H ;
  1102. uint8_t Table_Det_9_dBm_L ;
  1103. uint8_t Table_Det_10_dBm_H ;
  1104. uint8_t Table_Det_10_dBm_L ;
  1105. uint8_t Table_Det_11_dBm_H ;
  1106. uint8_t Table_Det_11_dBm_L ;
  1107. uint8_t Table_Det_12_dBm_H ;
  1108. uint8_t Table_Det_12_dBm_L ;
  1109. uint8_t Table_Det_13_dBm_H ;
  1110. uint8_t Table_Det_13_dBm_L ;
  1111. uint8_t Table_Det_14_dBm_H ;
  1112. uint8_t Table_Det_14_dBm_L ;
  1113. uint8_t Table_Det_15_dBm_H ;
  1114. uint8_t Table_Det_15_dBm_L ;
  1115. uint8_t Table_Det_16_dBm_H ;
  1116. uint8_t Table_Det_16_dBm_L ;
  1117. uint8_t Table_Det_17_dBm_H ;
  1118. uint8_t Table_Det_17_dBm_L ;
  1119. uint8_t Table_Det_18_dBm_H ;
  1120. uint8_t Table_Det_18_dBm_L ;
  1121. uint8_t Table_Det_19_dBm_H ;
  1122. uint8_t Table_Det_19_dBm_L ;
  1123. uint8_t Table_Det_20_dBm_H ;
  1124. uint8_t Table_Det_20_dBm_L ;
  1125. uint8_t Table_Det_21_dBm_H ;
  1126. uint8_t Table_Det_21_dBm_L ;
  1127. uint8_t Table_Det_22_dBm_H ;
  1128. uint8_t Table_Det_22_dBm_L ;
  1129. uint8_t Table_Det_23_dBm_H ;
  1130. uint8_t Table_Det_23_dBm_L ;
  1131. uint8_t Table_Det_24_dBm_H ;
  1132. uint8_t Table_Det_24_dBm_L ;
  1133. uint8_t Table_Det_25_dBm_H ;
  1134. uint8_t Table_Det_25_dBm_L ;
  1135. uint8_t Table_Det_xx1_dBm_H ;
  1136. uint8_t Table_Det_xx1_dBm_L ;
  1137. uint8_t Table_Det_xx2_dBm_H ;
  1138. uint8_t Table_Det_xx2_dBm_L ;
  1139. uint8_t Table_Det_xx3_dBm_H ;
  1140. uint8_t Table_Det_xx3_dBm_L ;
  1141. uint8_t Table_Det_xx4_dBm_H ;
  1142. uint8_t Table_Det_xx4_dBm_L ;
  1143. uint8_t Table_Det_xx5_dBm_H ;
  1144. uint8_t Table_Det_xx5_dBm_L ;
  1145. uint8_t Table_Det_xx6_dBm_H ;
  1146. uint8_t Table_Det_xx6_dBm_L ;
  1147. uint8_t Table_Det_xx7_dBm_H ;
  1148. uint8_t Table_Det_xx7_dBm_L ;
  1149. uint8_t Table_Det_xx8_dBm_H ;
  1150. uint8_t Table_Det_xx8_dBm_L ;
  1151. uint8_t Table_Det_xx9_dBm_H ;
  1152. uint8_t Table_Det_xx9_dBm_L ;
  1153. uint8_t Table_Det_xx10_dBm_H ;
  1154. uint8_t Table_Det_xx10_dBm_L ;
  1155. uint8_t Table_Det_xx11_dBm_H ;
  1156. uint8_t Table_Det_xx11_dBm_L ;
  1157. uint8_t Table_Det_xx12_dBm_H ;
  1158. uint8_t Table_Det_xx12_dBm_L ;
  1159. uint8_t Table_Det_xx13_dBm_H ;
  1160. uint8_t Table_Det_xx13_dBm_L ;
  1161. uint8_t Table_Det_xx14_dBm_H ;
  1162. uint8_t Table_Det_xx14_dBm_L ;
  1163. uint8_t Table_Det_xx15_dBm_H ;
  1164. uint8_t Table_Det_xx15_dBm_L ;
  1165. uint8_t Table_Det_xx16_dBm_H ;
  1166. uint8_t Table_Det_xx16_dBm_L ;
  1167. uint8_t Table_Det_xx17_dBm_H ;
  1168. uint8_t Table_Det_xx17_dBm_L ;
  1169. uint8_t Table_Det_xx18_dBm_H ;
  1170. uint8_t Table_Det_xx18_dBm_L ;
  1171. uint8_t Table_Det_xx19_dBm_H ;
  1172. uint8_t Table_Det_xx19_dBm_L ;
  1173. uint8_t Table_Det_xx20_dBm_H ;
  1174. uint8_t Table_Det_xx20_dBm_L ;
  1175. uint8_t Table_Det_xx21_dBm_H ;
  1176. uint8_t Table_Det_xx21_dBm_L ;
  1177. uint8_t Table_Det_xx22_dBm_H ;
  1178. uint8_t Table_Det_xx22_dBm_L ;
  1179. uint8_t Table_Det_xx23_dBm_H ;
  1180. uint8_t Table_Det_xx23_dBm_L ;
  1181. uint8_t Table_Det_xx24_dBm_H ;
  1182. uint8_t Table_Det_xx24_dBm_L ;
  1183. uint8_t Table_Det_xx25_dBm_H ;
  1184. uint8_t Table_Det_xx25_dBm_L ;
  1185. uint8_t Table_Det_xx26_dBm_H ;
  1186. uint8_t Table_Det_xx26_dBm_L ;
  1187. uint8_t Table_Det_xx27_dBm_H ;
  1188. uint8_t Table_Det_xx27_dBm_L ;
  1189. uint8_t Table_Det_xx28_dBm_H ;
  1190. uint8_t Table_Det_xx28_dBm_L ;
  1191. uint8_t Table_Det_xx29_dBm_H ;
  1192. uint8_t Table_Det_xx29_dBm_L ;
  1193. uint8_t Table_Det_xx30_dBm_H ;
  1194. uint8_t Table_Det_xx30_dBm_L ;
  1195. uint8_t Table_Det_xx31_dBm_H ;
  1196. uint8_t Table_Det_xx31_dBm_L ;
  1197. uint8_t Table_Det_xx32_dBm_H ;
  1198. uint8_t Table_Det_xx32_dBm_L ;
  1199. uint8_t Table_Det_xx33_dBm_H ;
  1200. uint8_t Table_Det_xx33_dBm_L ;
  1201. uint8_t Table_Det_xx34_dBm_H ;
  1202. uint8_t Table_Det_xx34_dBm_L ;
  1203. uint8_t Table_Det_xx35_dBm_H ;
  1204. uint8_t Table_Det_xx35_dBm_L ;
  1205. uint8_t Table_Det_xx36_dBm_H ;
  1206. uint8_t Table_Det_xx36_dBm_L ;
  1207. uint8_t Table_Det_xx37_dBm_H ;
  1208. uint8_t Table_Det_xx37_dBm_L ;
  1209. uint8_t Table_Det_xx38_dBm_H ;
  1210. uint8_t Table_Det_xx38_dBm_L ;
  1211. uint8_t Table_Det_xx39_dBm_H ;
  1212. uint8_t Table_Det_xx39_dBm_L ;
  1213. uint8_t Table_Det_xx40_dBm_H ;
  1214. uint8_t Table_Det_xx40_dBm_L ;
  1215. uint8_t Table_Det_xx41_dBm_H ;
  1216. uint8_t Table_Det_xx41_dBm_L ;
  1217. uint8_t Table_Det_xx42_dBm_H ;
  1218. uint8_t Table_Det_xx42_dBm_L ;
  1219. uint8_t Table_Det_xx43_dBm_H ;
  1220. uint8_t Table_Det_xx43_dBm_L ;
  1221. uint8_t Table_Det_xx44_dBm_H ;
  1222. uint8_t Table_Det_xx44_dBm_L ;
  1223. uint8_t Table_Det_xx45_dBm_H ;
  1224. uint8_t Table_Det_xx45_dBm_L ;
  1225. uint8_t Table_Det_xx46_dBm_H ;
  1226. uint8_t Table_Det_xx46_dBm_L ;
  1227. uint8_t Table_Det_xx47_dBm_H ;
  1228. uint8_t Table_Det_xx47_dBm_L ;
  1229. uint8_t Table_Det_xx48_dBm_H ;
  1230. uint8_t Table_Det_xx48_dBm_L ;
  1231. uint8_t Table_Ref ;
  1232. uint8_t Table_Length ;
  1233. }DET_TABLEDL_st;
  1234. typedef struct{
  1235. uint8_t Table_Det_15_dBm_H ;
  1236. uint8_t Table_Det_15_dBm_L ;
  1237. uint8_t Table_Det_16_dBm_H ;
  1238. uint8_t Table_Det_16_dBm_L ;
  1239. uint8_t Table_Det_17_dBm_H ;
  1240. uint8_t Table_Det_17_dBm_L ;
  1241. uint8_t Table_Det_18_dBm_H ;
  1242. uint8_t Table_Det_18_dBm_L ;
  1243. uint8_t Table_Det_19_dBm_H ;
  1244. uint8_t Table_Det_19_dBm_L ;
  1245. uint8_t Table_Det_20_dBm_H ;
  1246. uint8_t Table_Det_20_dBm_L ;
  1247. uint8_t Table_Det_21_dBm_H ;
  1248. uint8_t Table_Det_21_dBm_L ;
  1249. uint8_t Table_Det_22_dBm_H ;
  1250. uint8_t Table_Det_22_dBm_L ;
  1251. uint8_t Table_Det_23_dBm_H ;
  1252. uint8_t Table_Det_23_dBm_L ;
  1253. uint8_t Table_Det_24_dBm_H ;
  1254. uint8_t Table_Det_24_dBm_L ;
  1255. uint8_t Table_Det_25_dBm_H ;
  1256. uint8_t Table_Det_25_dBm_L ;
  1257. uint8_t Table_Det_26_dBm_H ;
  1258. uint8_t Table_Det_26_dBm_L ;
  1259. uint8_t Table_Det_27_dBm_H ;
  1260. uint8_t Table_Det_27_dBm_L ;
  1261. uint8_t Table_Det_28_dBm_H ;
  1262. uint8_t Table_Det_28_dBm_L ;
  1263. uint8_t Table_Det_29_dBm_H ;
  1264. uint8_t Table_Det_29_dBm_L ;
  1265. uint8_t Table_Det_30_dBm_H ;
  1266. uint8_t Table_Det_30_dBm_L ;
  1267. uint8_t Table_Det_31_dBm_H ;
  1268. uint8_t Table_Det_31_dBm_L ;
  1269. uint8_t Table_Det_32_dBm_H ;
  1270. uint8_t Table_Det_32_dBm_L ;
  1271. uint8_t Table_Det_33_dBm_H ;
  1272. uint8_t Table_Det_33_dBm_L ;
  1273. uint8_t Table_Det_34_dBm_H ;
  1274. uint8_t Table_Det_34_dBm_L ;
  1275. uint8_t Table_Det_35_dBm_H ;
  1276. uint8_t Table_Det_35_dBm_L ;
  1277. uint8_t Table_Det_36_dBm_H ;
  1278. uint8_t Table_Det_36_dBm_L ;
  1279. uint8_t Table_Det_37_dBm_H ;
  1280. uint8_t Table_Det_37_dBm_L ;
  1281. uint8_t Table_Det_38_dBm_H ;
  1282. uint8_t Table_Det_38_dBm_L ;
  1283. uint8_t Table_Det_39_dBm_H ;
  1284. uint8_t Table_Det_39_dBm_L ;
  1285. uint8_t Table_Det_40_dBm_H ;
  1286. uint8_t Table_Det_40_dBm_L ;
  1287. uint8_t Table_Det_41_dBm_H ;
  1288. uint8_t Table_Det_41_dBm_L ;
  1289. uint8_t Table_Det_42_dBm_H ;
  1290. uint8_t Table_Det_42_dBm_L ;
  1291. uint8_t Table_Det_43_dBm_H ;
  1292. uint8_t Table_Det_43_dBm_L ;
  1293. uint8_t Table_Det_44_dBm_H ;
  1294. uint8_t Table_Det_44_dBm_L ;
  1295. uint8_t Table_Det_45_dBm_H ;
  1296. uint8_t Table_Det_45_dBm_L ;
  1297. uint8_t Table_Det_46_dBm_H ;
  1298. uint8_t Table_Det_46_dBm_L ;
  1299. uint8_t Table_Det_47_dBm_H ;
  1300. uint8_t Table_Det_47_dBm_L ;
  1301. uint8_t Table_Det_48_dBm_H ;
  1302. uint8_t Table_Det_48_dBm_L ;
  1303. uint8_t Table_Det_49_dBm_H ;
  1304. uint8_t Table_Det_49_dBm_L ;
  1305. uint8_t Table_Det_50_dBm_H ;
  1306. uint8_t Table_Det_50_dBm_L ;
  1307. uint8_t Table_Det_51_dBm_H ;
  1308. uint8_t Table_Det_51_dBm_L ;
  1309. uint8_t Table_Det_52_dBm_H ;
  1310. uint8_t Table_Det_52_dBm_L ;
  1311. uint8_t Table_Det_53_dBm_H ;
  1312. uint8_t Table_Det_53_dBm_L ;
  1313. uint8_t Table_Det_54_dBm_H ;
  1314. uint8_t Table_Det_54_dBm_L ;
  1315. uint8_t Table_Det_55_dBm_H ;
  1316. uint8_t Table_Det_55_dBm_L ;
  1317. uint8_t Table_Det_56_dBm_H ;
  1318. uint8_t Table_Det_56_dBm_L ;
  1319. uint8_t Table_Det_57_dBm_H ;
  1320. uint8_t Table_Det_57_dBm_L ;
  1321. uint8_t Table_Det_58_dBm_H ;
  1322. uint8_t Table_Det_58_dBm_L ;
  1323. uint8_t Table_Det_59_dBm_H ;
  1324. uint8_t Table_Det_59_dBm_L ;
  1325. uint8_t Table_Det_60_dBm_H ;
  1326. uint8_t Table_Det_60_dBm_L ;
  1327. uint8_t Table_Det_XX1_dBm_H ;
  1328. uint8_t Table_Det_XX1_dBm_L ;
  1329. uint8_t Table_Det_XX2_dBm_H ;
  1330. uint8_t Table_Det_XX2_dBm_L ;
  1331. uint8_t Table_Det_XX3_dBm_H ;
  1332. uint8_t Table_Det_XX3_dBm_L ;
  1333. uint8_t Table_Det_XX4_dBm_H ;
  1334. uint8_t Table_Det_XX4_dBm_L ;
  1335. uint8_t Table_Det_XX5_dBm_H ;
  1336. uint8_t Table_Det_XX5_dBm_L ;
  1337. uint8_t Table_Det_XX6_dBm_H ;
  1338. uint8_t Table_Det_XX6_dBm_L ;
  1339. uint8_t Table_Det_XX7_dBm_H ;
  1340. uint8_t Table_Det_XX7_dBm_L ;
  1341. uint8_t Table_Det_XX8_dBm_H ;
  1342. uint8_t Table_Det_XX8_dBm_L ;
  1343. uint8_t Table_Det_XX9_dBm_H ;
  1344. uint8_t Table_Det_XX9_dBm_L ;
  1345. uint8_t Table_Det_XX10_dBm_H ;
  1346. uint8_t Table_Det_XX10_dBm_L ;
  1347. uint8_t Table_Det_XX11_dBm_H ;
  1348. uint8_t Table_Det_XX11_dBm_L ;
  1349. uint8_t Table_Det_XX12_dBm_H ;
  1350. uint8_t Table_Det_XX12_dBm_L ;
  1351. uint8_t Table_Det_XX13_dBm_H ;
  1352. uint8_t Table_Det_XX13_dBm_L ;
  1353. uint8_t Table_Det_XX14_dBm_H ;
  1354. uint8_t Table_Det_XX14_dBm_L ;
  1355. uint8_t Table_Det_XX15_dBm_H ;
  1356. uint8_t Table_Det_XX15_dBm_L ;
  1357. uint8_t Table_Det_XX16_dBm_H ;
  1358. uint8_t Table_Det_XX16_dBm_L ;
  1359. uint8_t Table_Det_XX17_dBm_H ;
  1360. uint8_t Table_Det_XX17_dBm_L ;
  1361. uint8_t Table_Det_XX18_dBm_H ;
  1362. uint8_t Table_Det_XX18_dBm_L ;
  1363. uint8_t Table_Det_XX19_dBm_H ;
  1364. uint8_t Table_Det_XX19_dBm_L ;
  1365. uint8_t Table_Det_XX20_dBm_H ;
  1366. uint8_t Table_Det_XX20_dBm_L ;
  1367. uint8_t Table_Det_XX21_dBm_H ;
  1368. uint8_t Table_Det_XX21_dBm_L ;
  1369. uint8_t Table_Det_XX22_dBm_H ;
  1370. uint8_t Table_Det_XX22_dBm_L ;
  1371. uint8_t Table_Det_XX23_dBm_H ;
  1372. uint8_t Table_Det_XX23_dBm_L ;
  1373. uint8_t Table_Det_XX24_dBm_H ;
  1374. uint8_t Table_Det_XX24_dBm_L ;
  1375. uint8_t Table_Det_XX25_dBm_H ;
  1376. uint8_t Table_Det_XX25_dBm_L ;
  1377. uint8_t Table_Det_XX26_dBm_H ;
  1378. uint8_t Table_Det_XX26_dBm_L ;
  1379. uint8_t Table_Det_XX27_dBm_H ;
  1380. uint8_t Table_Det_XX27_dBm_L ;
  1381. uint8_t Table_Det_XX28_dBm_H ;
  1382. uint8_t Table_Det_XX28_dBm_L ;
  1383. uint8_t Table_Det_XX29_dBm_H ;
  1384. uint8_t Table_Det_XX29_dBm_L ;
  1385. uint8_t Table_Det_XX30_dBm_H ;
  1386. uint8_t Table_Det_XX30_dBm_L ;
  1387. uint8_t Table_Det_XX31_dBm_H ;
  1388. uint8_t Table_Det_XX31_dBm_L ;
  1389. uint8_t Table_Det_XX32_dBm_H ;
  1390. uint8_t Table_Det_XX32_dBm_L ;
  1391. uint8_t Table_Det_XX33_dBm_H ;
  1392. uint8_t Table_Det_XX33_dBm_L ;
  1393. uint8_t Table_Ref ;
  1394. uint8_t Table_Length ;
  1395. }DET_TABLEUL_st;
  1396. typedef struct{
  1397. int8_t Table_1_Temp;
  1398. int8_t Table_2_Temp;
  1399. int8_t Table_3_Temp;
  1400. int8_t Table_4_Temp;
  1401. int8_t Table_5_Temp;
  1402. int8_t Table_6_Temp;
  1403. int8_t Table_7_Temp;
  1404. int8_t Table_8_Temp;
  1405. int8_t Table_9_Temp;
  1406. int8_t Table_10_Temp;
  1407. int8_t Table_11_Temp;
  1408. int8_t Table_12_Temp;
  1409. int8_t Table_13_Temp;
  1410. int8_t Table_14_Temp;
  1411. int8_t Table_15_Temp;
  1412. int8_t Table_16_Temp;
  1413. int8_t Table_17_Temp;
  1414. int8_t Table_18_Temp;
  1415. int8_t Table_19_Temp;
  1416. int8_t Table_20_Temp;
  1417. int8_t Table_21_Temp;
  1418. int8_t Table_22_Temp;
  1419. int8_t Table_23_Temp;
  1420. int8_t Table_24_Temp;
  1421. int8_t Table_25_Temp;
  1422. int8_t Table_26_Temp;
  1423. int8_t Table_27_Temp;
  1424. int8_t Table_28_Temp;
  1425. int8_t Table_29_Temp;
  1426. int8_t Table_30_Temp;
  1427. int8_t Table_Ref;
  1428. int8_t Table_Length;
  1429. }TEMP_TABLE_st;
  1430. typedef enum{
  1431. Bluecell_DET_UL1_ADC_INDEX_H = 0,
  1432. Bluecell_DET_UL1_ADC_INDEX_L,
  1433. Bluecell_DET_UL2_ADC_INDEX_H,
  1434. Bluecell_DET_UL2_ADC_INDEX_L,
  1435. Bluecell_DET_UL3_ADC_INDEX_H,
  1436. Bluecell_DET_UL3_ADC_INDEX_L,
  1437. Bluecell_RFU_TEMP_ADC_INDEX_H,
  1438. Bluecell_RFU_TEMP_ADC_INDEX_L,
  1439. Bluecell_ADC1_MaxLength,
  1440. }Bluecell_ADC1_Index;
  1441. typedef enum{
  1442. Bluecell_DET_UL4_ADC_INDEX_H = Bluecell_ADC1_MaxLength,
  1443. Bluecell_DET_UL4_ADC_INDEX_L,
  1444. Bluecell_DET_DL1_ADC_INDEX_H,
  1445. Bluecell_DET_DL1_ADC_INDEX_L,
  1446. Bluecell_DET_DL2_ADC_INDEX_H,
  1447. Bluecell_DET_DL2_ADC_INDEX_L,
  1448. Bluecell_DET_DL3_ADC_INDEX_H,
  1449. Bluecell_DET_DL3_ADC_INDEX_L,
  1450. Bluecell_DET_DL4_ADC_INDEX_H,
  1451. Bluecell_DET_DL4_ADC_INDEX_L,
  1452. Bluecell_ADC3_MaxLength,
  1453. }Bluecell_ADC3_Index;
  1454. typedef enum{
  1455. DET_Alarm_DL1_Index = 0,
  1456. DET_Alarm_DL2_Index,
  1457. DET_Alarm_DL3_Index,
  1458. DET_Alarm_DL4_Index,
  1459. DET_Alarm_DL_Index_MAX,
  1460. };
  1461. typedef enum{
  1462. DET_Alarm_UL1_Index = 0,
  1463. DET_Alarm_UL2_Index,
  1464. DET_Alarm_UL3_Index,
  1465. DET_Alarm_UL4_Index,
  1466. DET_Alarm_UL_Index_MAX,
  1467. };
  1468. typedef enum{
  1469. DET_Alarm_DL1_Shutdown_Index = 0,
  1470. DET_Alarm_DL2_Shutdown_Index,
  1471. DET_Alarm_DL3_Shutdown_Index,
  1472. DET_Alarm_DL4_Shutdown_Index,
  1473. DET_Alarm_DL_Shutdown_Index_MAX,
  1474. }MBIC_Shutdown_DL_Index_t;
  1475. typedef enum{
  1476. DET_Alarm_UL1_Shutdown_Index = 0,
  1477. DET_Alarm_UL2_Shutdown_Index,
  1478. DET_Alarm_UL3_Shutdown_Index,
  1479. DET_Alarm_UL4_Shutdown_Index,
  1480. DET_Alarm_UL_Shutdown_Index_MAX,
  1481. }MBIC_Shutdown_UL_Index_t;
  1482. #define ADC1_EA Bluecell_ADC1_MaxLength /2
  1483. #define ADC3_EA Bluecell_ADC3_MaxLength /2
  1484. extern ATT_TABLE_st Att_DL1;
  1485. extern ATT_TABLE_st Att_DL2;
  1486. extern ATT_TABLE_st Att_DL3;
  1487. extern ATT_TABLE_st Att_DL4;
  1488. extern ATT_TABLE_st Att_UL1;
  1489. extern ATT_TABLE_st Att_UL2;
  1490. extern ATT_TABLE_st Att_UL3;
  1491. extern ATT_TABLE_st Att_UL4;
  1492. extern DET_TABLEDL_st Det_DL1;
  1493. extern DET_TABLEDL_st Det_DL2;
  1494. extern DET_TABLEDL_st Det_DL3;
  1495. extern DET_TABLEDL_st Det_DL4;
  1496. extern DET_TABLEUL_st Det_UL1;
  1497. extern DET_TABLEUL_st Det_UL2;
  1498. extern DET_TABLEUL_st Det_UL3;
  1499. extern DET_TABLEUL_st Det_UL4;
  1500. extern TEMP_TABLE_st Temp_DL1;
  1501. extern TEMP_TABLE_st Temp_DL2;
  1502. extern TEMP_TABLE_st Temp_DL3;
  1503. extern TEMP_TABLE_st Temp_DL4;
  1504. extern TEMP_TABLE_st Temp_UL1;
  1505. extern TEMP_TABLE_st Temp_UL2;
  1506. extern TEMP_TABLE_st Temp_UL3;
  1507. extern TEMP_TABLE_st Temp_UL4;
  1508. extern BLUESTATUS_st bluecell_Currdatastatus;
  1509. extern volatile uint32_t ALCTimerCnt;
  1510. extern volatile uint32_t AGCTimerCnt;
  1511. extern void Bluecell_DataInit();
  1512. extern void ALC_Function();
  1513. extern void AGC_Function();
  1514. #endif /* BLUECELL_OPERATE_H_ */