// $RCSfile: tables.c,v $Revision: 1.62 $Date: 2005/03/11 15:08:57 //! This module contains the tables needed for the system, initialized as arrays #include #include "allnodes.h" #include "node1.h" #include "configura.h" #include "pubfuncs.h" #include "err_hdl.h" #include "tables.h" #include "conf_tab.h" #include "tables.dox" /*************************************************************************************************************** *************************************************************************************************************** Memory init *************************************************************************************************************** ***************************************************************************************************************/ #define INT_VECT_SIZE 768 unsigned int aj_DmInttab[INT_VECT_SIZE]= { 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x6be, 0x0, 0x120d, 0x6be, 0x0, 0x11a6, 0x6be, 0x0, 0x1219, 0x63e, 0x400, 0x122, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x80, 0x0, 0x0, 0x63e, 0x0, 0xe, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x142b, 0x0, 0x1000, 0x5ffe, 0x8e80, 0x0, 0x101d, 0x0, 0x29c, 0x140a, 0x8, 0x0, 0x5ffe, 0x8f80, 0x0, 0x83f, 0x6c00, 0x0, 0xf1f, 0x0, 0x297, 0x101d, 0x0, 0x299, 0x142b, 0x0, 0x1000, 0x5ffe, 0x8e80, 0x0, 0x101d, 0x0, 0x2a2, 0x140a, 0x8, 0x0, 0x5ffe, 0x8f80, 0x0, 0x83f, 0x6c00, 0x0, 0xf1f, 0x0, 0x29d, 0x101d, 0x0, 0x29f, 0x142b, 0x0, 0x1000, 0x5ffe, 0x8e80, 0x0, 0x101d, 0x0, 0x2a8, 0x140a, 0x8, 0x0, 0x5ffe, 0x8f80, 0x0, 0x83f, 0x6c00, 0x0, 0xf1f, 0x0, 0x2a3, 0x101d, 0x0, 0x2a5, 0x142b, 0x0, 0x1000, 0x5ffe, 0x8e80, 0x0, 0x101d, 0x0, 0x2ae, 0x140a, 0x8, 0x0, 0x5ffe, 0x8f80, 0x0, 0x83f, 0x6c00, 0x0, 0xf1f, 0x0, 0x2a9, 0x101d, 0x0, 0x2ab, 0x142b, 0x0, 0x1000, 0x5ffe, 0x8e80, 0x0, 0x101d, 0x0, 0x2b4, 0x140a, 0x8, 0x0, 0x5ffe, 0x8f80, 0x0, 0x83f, 0x6c00, 0x0, 0xf1f, 0x0, 0x2af, 0x101d, 0x0, 0x2b1, 0x142b, 0x0, 0x1000, 0x5ffe, 0x8e80, 0x0, 0x101d, 0x0, 0x2ba, 0x140a, 0x8, 0x0, 0x5ffe, 0x8f80, 0x0, 0x83f, 0x6c00, 0x0, 0xf1f, 0x0, 0x2b5, 0x101d, 0x0, 0x2b7, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x142b, 0x0, 0x1000, 0x5ffe, 0x8e80, 0x0, 0x101d, 0x0, 0x2cc, 0x140a, 0x8, 0x0, 0x5ffe, 0x8f80, 0x0, 0x83f, 0x6c00, 0x0, 0xf1f, 0x0, 0x2c7, 0x101d, 0x0, 0x2c9, 0x142b, 0x0, 0x1000, 0x5ffe, 0x8e80, 0x0, 0x101d, 0x0, 0x2d2, 0x140a, 0x8, 0x0, 0x5ffe, 0x8f80, 0x0, 0x83f, 0x6c00, 0x0, 0xf1f, 0x0, 0x2cd, 0x101d, 0x0, 0x2cf, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x142b, 0x0, 0x1000, 0x5ffe, 0x8e80, 0x0, 0x101d, 0x0, 0x2de, 0x140a, 0x8, 0x0, 0x5ffe, 0x8f80, 0x0, 0x83f, 0x6c00, 0x0, 0xf1f, 0x0, 0x2d9, 0x101d, 0x0, 0x2db, 0x142b, 0x0, 0x1000, 0x5ffe, 0x8e80, 0x0, 0x101d, 0x0, 0x2e4, 0x140a, 0x8, 0x0, 0x5ffe, 0x8f80, 0x0, 0x83f, 0x6c00, 0x0, 0xf1f, 0x0, 0x2df, 0x101d, 0x0, 0x2e1, 0x142b, 0x0, 0x1000, 0x5ffe, 0x8e80, 0x0, 0x101d, 0x0, 0x2ea, 0x140a, 0x8, 0x0, 0x5ffe, 0x8f80, 0x0, 0x83f, 0x6c00, 0x0, 0xf1f, 0x0, 0x2e5, 0x101d, 0x0, 0x2e7, 0x142b, 0x0, 0x1000, 0x5ffe, 0x8e80, 0x0, 0x101d, 0x0, 0x2f0, 0x140a, 0x8, 0x0, 0x5ffe, 0x8f80, 0x0, 0x83f, 0x6c00, 0x0, 0xf1f, 0x0, 0x2eb, 0x101d, 0x0, 0x2ed, 0x142b, 0x0, 0x1000, 0x5ffe, 0x8e80, 0x0, 0x101d, 0x0, 0x2f6, 0x140a, 0x8, 0x0, 0x5ffe, 0x8f80, 0x0, 0x83f, 0x6c00, 0x0, 0xf1f, 0x0, 0x2f1, 0x101d, 0x0, 0x2f3, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x142b, 0x0, 0x1000, 0x5ffe, 0x8e80, 0x0, 0x101d, 0x0, 0x31a, 0x140a, 0x8, 0x0, 0x5ffe, 0x8f80, 0x0, 0x83f, 0x6c00, 0x0, 0xf1f, 0x0, 0x315, 0x101d, 0x0, 0x317, 0x142b, 0x0, 0x1000, 0x5ffe, 0x8e80, 0x0, 0x101d, 0x0, 0x320, 0x140a, 0x8, 0x0, 0x5ffe, 0x8f80, 0x0, 0x83f, 0x6c00, 0x0, 0xf1f, 0x0, 0x31b, 0x101d, 0x0, 0x31d, 0x142b, 0x0, 0x1000, 0x5ffe, 0x8e80, 0x0, 0x101d, 0x0, 0x326, 0x140a, 0x8, 0x0, 0x5ffe, 0x8f80, 0x0, 0x83f, 0x6c00, 0x0, 0xf1f, 0x0, 0x321, 0x101d, 0x0, 0x323, 0x142b, 0x0, 0x1000, 0x5ffe, 0x8e80, 0x0, 0x101d, 0x0, 0x32c, 0x140a, 0x8, 0x0, 0x5ffe, 0x8f80, 0x0, 0x83f, 0x6c00, 0x0, 0xf1f, 0x0, 0x327, 0x101d, 0x0, 0x329, 0x142b, 0x0, 0x1000, 0x5ffe, 0x8e80, 0x0, 0x101d, 0x0, 0x332, 0x140a, 0x8, 0x0, 0x5ffe, 0x8f80, 0x0, 0x83f, 0x6c00, 0x0, 0xf1f, 0x0, 0x32d, 0x101d, 0x0, 0x32f, 0x142b, 0x0, 0x1000, 0x5ffe, 0x8e80, 0x0, 0x101d, 0x0, 0x338, 0x140a, 0x8, 0x0, 0x5ffe, 0x8f80, 0x0, 0x83f, 0x6c00, 0x0, 0xf1f, 0x0, 0x333, 0x101d, 0x0, 0x335, 0x142b, 0x0, 0x1000, 0x5ffe, 0x8e80, 0x0, 0x101d, 0x0, 0x33e, 0x140a, 0x8, 0x0, 0x5ffe, 0x8f80, 0x0, 0x83f, 0x6c00, 0x0, 0xf1f, 0x0, 0x339, 0x101d, 0x0, 0x33b, 0x142b, 0x0, 0x1000, 0x5ffe, 0x8e80, 0x0, 0x101d, 0x0, 0x344, 0x140a, 0x8, 0x0, 0x5ffe, 0x8f80, 0x0, 0x83f, 0x6c00, 0x0, 0xf1f, 0x0, 0x33f, 0x101d, 0x0, 0x341 }; /*************************************************************************************************************** *************************************************************************************************************** HOUSE KEEPING AND CONFIGURATION *************************************************************************************************************** ***************************************************************************************************************/ // FCU HK unsigned int FCU_PS_HK[] = { 0x8C01FFFF, 0x8D01FFFF, 0x8C60FFFF, 0x8C61FFFF, 0x8C62FFFF, 0x8D60FFFF, 0x8D61FFFF, 0x8D62FFFF }; // FCU CMDS unsigned int FCU_PS_CMD[] = { 0xCC200000, 0xCC220000, 0xCD200000, 0xCD220000 }; // Mixer magnet unsigned int MIX_MAG_HK[] = { 0x8C62FFFF, // HF_AH1_MXMG_C 0x8C63FFFF, // HF_AH1_MXMG_V 0x8C60FFFF, // HF_AH1_MXBIAS_V 0x8C61FFFF, // HF_AH1_MXBIAS_C 0x8D62FFFF, // HF_AVH1_MXMG_C 0x8D63FFFF, // HF_AV1_MXMG_V 0x8D60FFFF, // HF_AV1_MXBIAS_V 0x8D61FFFF // HF_AV1_MXBIAS_C }; // diplexer scan unsigned int DIP_SCAN_param[] = { 0x8C50FFFF, 0x8C60FFFF, 0x8C61FFFF, 0x8C62FFFF, 0x8D50FFFF, 0x8D60FFFF, 0x8D61FFFF, 0x8D62FFFF, }; // HRH unsigned int HRS_H_CMD[] = { 0xD7400000, // data transf, addr. 5, cmd 3400000 0xFF800000, // start_int 0xFF900000, // stop_int 0XD7200000, //reset register A 0XD7300000, //reset register B 0XD7000000, //Select buffer A 0XD7100000, //Select buffer B }; //13db attenuation table: unsigned int HRS_H_defset[] = {0xD590001A, //block 8 0xD5B0001A, //block 7 0xD5D0001A, //block 6 0xD5F0001A, //block 5 0xD5E0001A, //block 4 0xD5C0001A, //block 3 0xD5A0001A, //block 2 0xD580001A //block 1 }; unsigned int HRS_H_UWBset[] = {0xD6004221, //block 8 0xD6104221, //block 7 0xD6204221, //block 6 0xD6304221, //block 5 0xD6404221, //block 4 0xD6504221, //block 3 0xD6604221, //block 2 0xD6704221 //block 1 }; // HRV unsigned int HRS_V_CMD[] = { 0xDB400000, // data transf 0xFF800000, // start int 0xFF900000, // stop int 0XDB200000, // reset register A 0XDB300000, // reset register B 0XDB000000, // Select buffer A 0XDB100000 // Select buffer B }; unsigned int HRS_V_defset[] = {0xD990001A, //block 8 0xD9B0001A, //block 7 0xD9D0001A, //block 6 0xD9F0001A, //block 5 0xD9E0001A, //block 4 0xD9C0001A, //block 3 0xD9A0001A, //block 2 0xD980001A //block 1 }; unsigned int HRS_V_UWBset[] = {0xDA004221, //block 8 0xDA104221, //block 7 0xDA204221, //block 6 0xDA304221, //block 5 0xDA404221, //block 4 0xDA504221, //block 3 0xDA604221, //block 2 0xDA704221 //block 1 }; // WBS H unsigned int WBS_H_CMD[] = { 0xE4000006, // data transf 0xFC000003, // start_int 0xFC000005, // stop int 0xE400002A, // set zero switch 0xE400000A, // reset zero switch 0xE400002C, // set COMB on 0xE400000C, // set COMB off 0xE41FFFEF, // set att to max value 0xE400000F, // set att to 0 0xE4000009, // reset 0xE4000000, // this element is to be set to the value contained in the wbs comb TC 0xE4000000, // necessary to restore atten. setting at the end of a wbs calibration procedure 0xE4000000 // necessary to restore zero switch setting at the end of a wbs calibration procedure }; // WBS V unsigned int WBS_V_CMD[] = { 0xE8000006, // data transf 0xFC000003, // start_int 0xFC000005, // stop int 0xE800002A, // set zero switch 0xE800000A, // reset zero switch 0xE800002C, // set COMB on 0xE800000C, // set COMB off 0xE81FFFEF, // set att to max value 0xE800000F, // set att to 0 0xE8000009, // reset 0xE8000000, // this element is to be set to the value contained in the wbs comb TC 0xE8000000, // necessary to restore atten. setting at the end of a wbs calibration procedure 0xE8000000 // necessary to restore zero switch setting at the end of a wbs calibration procedure }; // commands for requiring a data transfer from the spectrometers unsigned int HK_req_HRS_H = 0xD7400000; // HRS H - addr. 5, cmd 3400000 unsigned int HK_req_HRS_V = 0xDB400000; // HRS V unsigned int HK_req_WBS_H = 0xE4000006; // WBS H unsigned int HK_req_WBS_V = 0xE8000006; // WBS V unsigned int HRS_ATT_LIM1[] = { 2586, 2643, 2700, 2757, 2813, 2869, 2924, 2978, 3030, 3082, 3131, 3179, 3225, 3269, 3311, 3352 }; unsigned int HRS_ATT_LIM2[] = //max c* values { 2643, 2700, 2757, 2813, 2869, 2924, 2978, 3030, 3082, 3131, 3179, 3225, 3269, 3311, 3352, 3391, 3428 }; unsigned int HRS_ATT_VAL2[HRS_ATTVAL2_LEN]; unsigned int HRS_ATT_VAL1[HRS_ATTVAL1_LEN]; // following tables have been provided by Frank Schmuelling for FM WBS float WBS_main[2][16][4] = { { { 0.00, 0.00, 0.00, 0.00 }, { 1.02, 1.15, 1.14, 1.29 }, { 2.12, 2.38, 2.28, 2.37 }, { 3.14, 3.53, 3.42, 3.66 }, { 4.24, 4.43, 4.34, 4.34 }, { 5.26, 5.58, 5.48, 5.63 }, { 6.36, 6.81, 6.62, 6.71 }, { 7.38, 7.96, 7.76, 8.00 }, { 8.23, 8.32, 8.33, 8.38 }, { 9.25, 9.47, 9.47, 9.67 }, { 10.35, 10.70, 10.61, 10.75 }, { 11.37, 11.85, 11.75, 12.04 }, { 12.47, 12.75, 12.67, 12.72 }, { 13.49, 13.90, 13.81, 14.01 }, { 14.59, 15.13, 14.95, 15.09 }, { 15.61, 16.28, 16.09, 16.38 } }, { { 0.00, 0.00, 0.00, 0.00 }, { 1.08, 1.18, 1.08, 1.29 }, { 2.09, 2.27, 2.17, 2.27 }, { 3.17, 3.45, 3.25, 3.56 }, { 4.19, 4.30, 4.26, 4.24 }, { 5.27, 5.48, 5.34, 5.53 }, { 6.28, 6.57, 6.43, 6.51 }, { 7.36, 7.75, 7.51, 7.80 }, { 7.90, 7.88, 7.90, 8.02 }, { 8.98, 9.06, 8.98, 9.31 }, { 9.99, 10.15, 10.07, 10.29 }, { 11.07, 11.33, 11.15, 11.58 }, { 12.09, 12.18, 12.16, 12.26 }, { 13.17, 13.36, 13.24, 13.55 }, { 14.18, 14.45, 14.33, 14.53 }, { 15.26, 15.63, 15.41, 15.82 } } }; float WBS_BANDS_ATT[2][8][4] = { { {0.00, 0.00, 0.00, 0.00 }, {1.21, 1.32, 1.27, 1.19 }, {2.31, 2.02, 2.22, 2.40 }, {3.52, 3.34, 3.49, 3.59 }, {4.20, 4.24, 4.32, 4.27 }, {5.41, 5.56, 5.59, 5.46 }, {6.51, 6.26, 6.54, 6.67 }, {7.72, 7.58, 7.81, 7.86 } }, { { 0.00, 0.00, 0.00, 0.00 }, { 1.30, 1.17, 1.03, 1.26 }, { 2.28, 2.04, 2.27, 2.39 }, { 3.58, 3.21, 3.30, 3.65 }, { 4.21, 4.12, 4.27, 4.31 }, { 5.51, 5.29, 5.30, 5.57 }, { 6.49, 6.16, 6.54, 6.70 }, { 7.79, 7.33, 7.57, 7.96 } } } ; // Codes for HK rate. Values are the required HK period in milsecs unsigned int HK_rates[] = { 5000, 10000, 1000, 3000, 4000, 2000 }; //FCU_config_002 unsigned int FCU_config[] = {0xCF010000, 0xCC130000, 0xCCA80000, 0xCCA90000, 0xCCAB0000, 0xCCAC0000, 0xCCAE0000, 0xCCAF0000, 0xCCB10000, 0xCCB20000, 0xCCB40000, 0xCCB50000, 0xCD130000, 0xCDA80000, 0xCDA90000, 0xCDAB0000, 0xCDAC0000, 0xCDAE0000, 0xCDAF0000, 0xCDB10000, 0xCDB20000, 0xCDB40000, 0xCDB50000, 0xCF110000, 0xCF130000, 0xCF140000, 0xCF150000, 0xCF160000, 0xCF170000, 0xCF180000, 0xCF190000, 0xCF260000, 0xCC200000, 0xCC220000, 0xCD200000, 0xCD220000, 0xCF100000, 0xCC100000, 0xCD100000 }; unsigned int autonomy_funct_commands[] = { 0xcf080000, 0xcf090000, 0xcf0a0001, 0xe4000011, 0xe4000012, 0xe8000011, 0xe8000012 }; /*************************************************************************************************************** *************************************************************************************************************** TC length CONTROL *************************************************************************************************************** ***************************************************************************************************************/ // configure peakup, from 32 byte to 28 byte: {8, 4, 13, 1, 28} // lenght is in bytes !! TC_len_info TC_len_tab[DIM_TC_LEN_TAB] = { {6, 5, 0, 0, 18}, {6, 9, 0, 0, 18}, {6, 11, 0, 0, 12}, {8, 2, 3, 0, 14}, {8, 2, 4, 1, 14}, {8, 2, 4, 2, 14}, {8, 2, 4, 3, 14}, {8, 2, 4, 4, 14}, {8, 2, 4, 5, 14}, {8, 2, 4, 6, 14}, {8, 2, 4, 7, 14}, {8, 2, 4, 8, 14}, {8, 2, 4, 9, 14}, {8, 2, 11, 0, 14}, {8, 4, 1, 0, 24}, {8, 4, 2, 0, 18}, {8, 4, 3, 1, 20}, {8, 4, 3, 2, 16}, {8, 4, 3, 3, 20}, {8, 4, 3, 4, 24}, {8, 4, 3, 5, 30}, {8, 4, 3, 6, 230}, {8, 4, 4, 1, 20}, {8, 4, 4, 2, 20}, {8, 4, 4, 3, 20}, {8, 4, 4, 4, 20}, {8, 4, 4, 5, 22}, {8, 4, 4, 6, 22}, {8, 4, 4, 7, 18}, {8, 4, 4, 8, 18}, {8, 4, 4, 9, 32}, {8, 4, 12, 1, 176}, {8, 4, 12, 11, 40}, {8, 4, 12, 7, 84}, {8, 4, 12, 8, 52}, {8, 4, 12, 9, 84}, {8, 4, 12, 10, 52}, {8, 4, 12, 4, 40}, {8, 4, 12, 5, 40}, {8, 4, 12, 12, 64}, {8, 4, 12, 13, 64}, {8, 4, 12, 14, 64}, {8, 4, 12, 15, 64}, {8, 4, 12, 16, 64}, {8, 4, 12, 17, 64}, {8, 4, 12, 18, 64}, {8, 4, 12, 19, 64}, {8, 4, 12, 20, 64}, {8, 4, 12, 21, 64}, {8, 4, 12, 22, 64}, {8, 4, 12, 23, 64}, {8, 4, 12, 24, 64}, {8, 4, 12, 25, 64}, {8, 4, 12, 26, 24}, {8, 4, 12, 27, 24}, {8, 4, 12, 28, 24}, {8, 4, 12, 29, 24}, {8, 4, 12, 30, 80}, {8, 4, 12, 31, 80}, {8, 4, 12, 32, 220}, {8, 4, 12, 33, 36}, {8, 4, 7, 1, 38}, {8, 4, 7, 2, 30}, {8, 4, 7, 3, 30}, {8, 4, 7, 4, 32}, {8, 4, 8, 1, 108}, {8, 4, 8, 2, 20}, {8, 4, 8, 3, 22}, {8, 4, 8, 4, 22}, {8, 4, 8, 5, 108}, {8, 4, 8, 6, 108}, {8, 4, 8, 7, 30}, {8, 4, 9, 1, 20}, {8, 4, 9, 2, 22}, {8, 4, 9, 3, 30}, {8, 4, 9, 4, 30}, {8, 4, 10, 2, 28}, {8, 4, 10, 3, 20}, {8, 4, 10, 4, 24}, {8, 4, 10, 5, 24}, {8, 4, 11, 1, 20}, {8, 4, 11, 2, 32}, {8, 4, 11, 3, 28}, {8, 4, 11, 4, 28}, {8, 4, 11, 17, 78}, {8, 4, 13, 1, 28}, {8, 4, 13, 2, 24}, {8, 4, 13, 3, 24}, {8, 4, 13, 4, 20}, {8, 4, 13, 5, 20}, {8, 4, 17, 0, 16}, {8, 4, 18, 0, 16}, {8, 4, 19, 0, 16}, {8, 4, 16, 127, 16}, {8, 4, 15, 1, 26}, {8, 4, 0, 0, 16}, {9, 7, 0, 0, 12}, {14, 3, 0, 0, 12}, {17, 1, 0, 0, 12} }; /*************************************************************************************************************** *************************************************************************************************************** TX CONTROL *************************************************************************************************************** ***************************************************************************************************************/ // definition and initialization of an array of structures for packet trx control TM_PKT_ENAB pkt_enab[DIM_PKT_ENAB_VECT] = { { TC_VERIFICATION, TC_ACCREP_SUCCESS, 0, ENABLED }, { TC_VERIFICATION, TC_ACCREP_FAILURE, 0, ENABLED }, { TC_VERIFICATION, TC_EXEC_COMPLETED, 0, ENABLED }, { TC_VERIFICATION, TC_EXEC_FAILURE, 0, ENABLED }, { HK_DIAG_REPORT, HK_DIAG_SUBTYPE, ESSENTIAL_HK_SID, ENABLED }, { HK_DIAG_REPORT, HK_DIAG_SUBTYPE, PERIODIC_HK_SID, ENABLED }, { HK_DIAG_REPORT, HK_DIAG_SUBTYPE, NON_PER_LCU_HK_SID, ENABLED }, { HK_DIAG_REPORT, HK_DIAG_SUBTYPE, NON_PER_LCU_MEM_SID1, ENABLED }, { HK_DIAG_REPORT, HK_DIAG_SUBTYPE, NON_PER_LCU_MEM_SID2, ENABLED }, { HK_DIAG_REPORT, HK_DIAG_SUBTYPE, NON_PER_LCU_MEM_SID3, ENABLED }, { HK_DIAG_REPORT, HK_DIAG_SUBTYPE, NON_PER_LCU_MEM_SID_PAGE_7A, ENABLED }, { HK_DIAG_REPORT, HK_DIAG_SUBTYPE, NON_PER_FCU_HK_SID, ENABLED }, { HK_DIAG_REPORT, HK_DIAG_SUBTYPE, HRSH_IF1_SID, ENABLED }, { HK_DIAG_REPORT, HK_DIAG_SUBTYPE, HRSH_IF2_SID, ENABLED }, { HK_DIAG_REPORT, HK_DIAG_SUBTYPE, HRSV_IF1_SID, ENABLED }, { HK_DIAG_REPORT, HK_DIAG_SUBTYPE, HRSV_IF2_SID, ENABLED }, { HK_DIAG_REPORT, HK_DIAG_SUBTYPE, WBSH_IF1_SID, ENABLED }, { HK_DIAG_REPORT, HK_DIAG_SUBTYPE, WBSH_IF2_SID, ENABLED }, { HK_DIAG_REPORT, HK_DIAG_SUBTYPE, WBSV_IF1_SID, ENABLED }, { HK_DIAG_REPORT, HK_DIAG_SUBTYPE, WBSV_IF2_SID, ENABLED }, { EVENT_REPORT, EVENT_EVENT_REPORT, PEAKUP_EVID, ENABLED }, { EVENT_REPORT, EVENT_EVENT_REPORT, HIFI_READY_EVID, ENABLED }, { EVENT_REPORT, EVENT_ALARM_REPORT, PM_TEST_EVID, ENABLED }, { EVENT_REPORT, EVENT_ALARM_REPORT, DATA_MEMORY_EVID, ENABLED }, { EVENT_REPORT, EVENT_ALARM_REPORT, EEPROM_EVID, ENABLED}, { EVENT_REPORT, EVENT_ALARM_REPORT, TC_ERROR_EVID, ENABLED }, { EVENT_REPORT, EVENT_ALARM_REPORT, LOAD_EEPROM__EVID, ENABLED }, { EVENT_REPORT, EVENT_ALARM_REPORT, LOAD_DM_EVID, ENABLED }, { EVENT_REPORT, EVENT_ALARM_REPORT, BOOT_ERROR_EVID, ENABLED }, { EVENT_REPORT, EVENT_EVENT_REPORT, RUNTIME_ERROR_EVID, ENABLED }, { EVENT_REPORT, EVENT_EVENT_REPORT, ERR_HK_ASK_ERR_8C, ENABLED }, { EVENT_REPORT, EVENT_EVENT_REPORT, ERR_HK_ASK_ERR_8D, ENABLED }, { EVENT_REPORT, EVENT_EVENT_REPORT, ERR_HK_ASK_ERR_8F, ENABLED }, { EVENT_REPORT, EVENT_EVENT_REPORT, ERR_HK_ASK_WBSH_LIMIT, ENABLED }, { EVENT_REPORT, EVENT_EVENT_REPORT, ERR_HK_ASK_WBSV_LIMIT, ENABLED }, { EVENT_REPORT, EVENT_EVENT_REPORT, ERR_HK_ASK_HTRH_LIMIT, ENABLED }, { EVENT_REPORT, EVENT_EVENT_REPORT, ERR_HK_ASK_HTRV_LIMIT, ENABLED }, { EVENT_REPORT, EVENT_EVENT_REPORT, ERR_HK_ASK_LOUT_LIMIT, ENABLED }, { EVENT_REPORT, EVENT_ALARM_REPORT, ERR_HK_ASK_LCU_MODE, ENABLED }, { EVENT_REPORT, EVENT_ALARM_REPORT, ERR_LS_LCU_NONRESP, ENABLED }, { EVENT_REPORT, EVENT_ALARM_REPORT, ERR_HK_ASK_LCU_CRC, ENABLED }, { EVENT_REPORT, EVENT_ALARM_REPORT, ERR_HK_ASK_LCU_CRIT_CRC, ENABLED }, { EVENT_REPORT, EVENT_ALARM_REPORT, ERR_HK_ASK_LCU_SAFE_CRC, ENABLED }, { EVENT_REPORT, EVENT_ALARM_REPORT, ERR_HK_ASK_LCU_TABLE_CRC, ENABLED }, { MEMORY_MANAGEMENT, MEMORY_DUMP_REPORT, 0, ENABLED }, { MEMORY_MANAGEMENT, MEMORY_CHECK_REPORT, 0, ENABLED }, { FUNC_STATUS_REPORT, FUNC_STATUS_SUBTYPE, CONF_SPECTROSCOPY_NEW_REP, ENABLED }, { FUNC_STATUS_REPORT, FUNC_STATUS_SUBTYPE, SPEC_SLOW_CHOP_REP, ENABLED }, { FUNC_STATUS_REPORT, FUNC_STATUS_SUBTYPE, SPEC_FAST_CHOP_REP, ENABLED }, { FUNC_STATUS_REPORT, FUNC_STATUS_SUBTYPE, SPEC_FREQ_SWITCH_REP, ENABLED }, { FUNC_STATUS_REPORT, FUNC_STATUS_SUBTYPE, SINGLE_CMD_REP, ENABLED }, { FUNC_STATUS_REPORT, FUNC_STATUS_SUBTYPE, CH1_DHTR_C_REP, ENABLED }, { FUNC_STATUS_REPORT, FUNC_STATUS_SUBTYPE, CV1_DHTR_C_REP, ENABLED }, { FUNC_STATUS_REPORT, FUNC_STATUS_SUBTYPE, HL_SWITCH_ON_REP, ENABLED }, { FUNC_STATUS_REPORT, FUNC_STATUS_SUBTYPE, CONF_FCU_REPORT_NEW, ENABLED }, { FUNC_STATUS_REPORT, FUNC_STATUS_SUBTYPE, CONF_FCU_POW_REPORT_NEW, ENABLED }, { FUNC_STATUS_REPORT, FUNC_STATUS_SUBTYPE, CONF_HRSH_ATT_LO_REP_NEW, ENABLED }, { FUNC_STATUS_REPORT, FUNC_STATUS_SUBTYPE, CONF_HRSH_BLOCKS_REP_NEW, ENABLED }, { FUNC_STATUS_REPORT, FUNC_STATUS_SUBTYPE, CONF_HRSV_ATT_LO_REP_NEW, ENABLED }, { FUNC_STATUS_REPORT, FUNC_STATUS_SUBTYPE, CONF_HRSV_BLOCKS_REP_NEW, ENABLED }, { FUNC_STATUS_REPORT, FUNC_STATUS_SUBTYPE, CONF_WBSH_REP_NEW, ENABLED }, { FUNC_STATUS_REPORT, FUNC_STATUS_SUBTYPE, CONF_WBSV_REP_NEW, ENABLED }, { FUNC_STATUS_REPORT, FUNC_STATUS_SUBTYPE, CONF_LCU_OFF_REP, ENABLED }, { FUNC_STATUS_REPORT, FUNC_STATUS_SUBTYPE, CONF_LCU_INT_REP, ENABLED }, { FUNC_STATUS_REPORT, FUNC_STATUS_SUBTYPE, CONF_LSU_REP, ENABLED }, { FUNC_STATUS_REPORT, FUNC_STATUS_SUBTYPE, CONF_LCU_NOMIN_REP, ENABLED }, { FUNC_STATUS_REPORT, FUNC_STATUS_SUBTYPE, CONF_LCU_DIAGN_REP, ENABLED }, { FUNC_STATUS_REPORT, FUNC_STATUS_SUBTYPE, CONF_LCU_TABLES_REP, ENABLED }, { FUNC_STATUS_REPORT, FUNC_STATUS_SUBTYPE, CONF_FCU_RESTRI_REP, ENABLED }, { TIME_MANAGEMENT, TIME_VERIFICATION, 0, ENABLED }, { PACKET_TX_CONTROL, PACKET_GEN_REPORT, 0, ENABLED }, { TEST_SERVICE, LINK_CONNECT_REPORT, 0, ENABLED }, { SCIENCE_DATA, SCIENCE_DATA_SUBTYPE, START_HRSH1_SID, ENABLED }, { SCIENCE_DATA, SCIENCE_DATA_SUBTYPE, START_HRSH2_SID, ENABLED }, { SCIENCE_DATA, SCIENCE_DATA_SUBTYPE, START_HRSV1_SID, ENABLED }, { SCIENCE_DATA, SCIENCE_DATA_SUBTYPE, START_HRSV2_SID, ENABLED }, { SCIENCE_DATA, SCIENCE_DATA_SUBTYPE, START_WBSH1_SID, ENABLED }, { SCIENCE_DATA, SCIENCE_DATA_SUBTYPE, START_WBSH2_SID, ENABLED }, { SCIENCE_DATA, SCIENCE_DATA_SUBTYPE, START_WBSV1_SID, ENABLED }, { SCIENCE_DATA, SCIENCE_DATA_SUBTYPE, START_WBSV2_SID, ENABLED }, { SCIENCE_DATA, SCIENCE_DATA_SUBTYPE, WBSH1_16BIT_SID, ENABLED }, { SCIENCE_DATA, SCIENCE_DATA_SUBTYPE, WBSH2_16BIT_SID, ENABLED }, { SCIENCE_DATA, SCIENCE_DATA_SUBTYPE, WBSV1_16BIT_SID, ENABLED }, { SCIENCE_DATA, SCIENCE_DATA_SUBTYPE, WBSV2_16BIT_SID, ENABLED }, { SCIENCE_DATA, SCIENCE_DATA_SUBTYPE, HRSH1_24BIT_SID, ENABLED }, { SCIENCE_DATA, SCIENCE_DATA_SUBTYPE, HRSH2_24BIT_SID, ENABLED }, { SCIENCE_DATA, SCIENCE_DATA_SUBTYPE, HRSV1_24BIT_SID, ENABLED }, { SCIENCE_DATA, SCIENCE_DATA_SUBTYPE, HRSV2_24BIT_SID, ENABLED }, { SCIENCE_DATA, SCIENCE_DATA_SUBTYPE, WBSH1_24BIT_SID, ENABLED }, { SCIENCE_DATA, SCIENCE_DATA_SUBTYPE, WBSH2_24BIT_SID, ENABLED }, { SCIENCE_DATA, SCIENCE_DATA_SUBTYPE, WBSV1_24BIT_SID, ENABLED }, { SCIENCE_DATA, SCIENCE_DATA_SUBTYPE, WBSV2_24BIT_SID, ENABLED }, { HK_DIAG_REPORT, HK_DIAG_SUBTYPE, FCU_PSCAN_SID, ENABLED }, { HK_DIAG_REPORT, HK_DIAG_SUBTYPE, DIP_SCAN_IF_REP_SID, ENABLED }, { HK_DIAG_REPORT, HK_DIAG_SUBTYPE, DIP_SCAN_NOIF_REP_SID, ENABLED }, { HK_DIAG_REPORT, HK_DIAG_SUBTYPE, LCU_IV_SID, ENABLED }, { HK_DIAG_REPORT, HK_DIAG_SUBTYPE, ENG_SCAN_REP, ENABLED }, { HK_DIAG_REPORT, HK_DIAG_SUBTYPE, FAST_SCAN_H_SID, ENABLED }, { HK_DIAG_REPORT, HK_DIAG_SUBTYPE, FAST_SCAN_V_SID, ENABLED }, { HK_DIAG_REPORT, HK_DIAG_SUBTYPE, DIP_SCAN_FAST_1_REP, ENABLED }, { HK_DIAG_REPORT, HK_DIAG_SUBTYPE, DIP_SCAN_FAST_2_REP, ENABLED }, { HK_DIAG_REPORT, HK_DIAG_SUBTYPE, HRS_H_TUNE_REP, ENABLED }, { HK_DIAG_REPORT, HK_DIAG_SUBTYPE, HRS_V_TUNE_REP, ENABLED }, { HK_DIAG_REPORT, HK_DIAG_SUBTYPE, WBS_H_TUNE_REP, ENABLED }, { HK_DIAG_REPORT, HK_DIAG_SUBTYPE, WBS_V_TUNE_REP, ENABLED }, { HK_DIAG_REPORT, HK_DIAG_SUBTYPE, MIX_MAG_HRS_REP, ENABLED }, { HK_DIAG_REPORT, HK_DIAG_SUBTYPE, MIX_MAG_WBS_REP, ENABLED }, { HK_DIAG_REPORT, HK_DIAG_SUBTYPE, VEC_SCAN_REP_SID+1, ENABLED }, { HK_DIAG_REPORT, HK_DIAG_SUBTYPE, VEC_SCAN_REP_SID+2, ENABLED }, { HK_DIAG_REPORT, HK_DIAG_SUBTYPE, VEC_SCAN_REP_SID+3, ENABLED }, { HK_DIAG_REPORT, HK_DIAG_SUBTYPE, VEC_SCAN_REP_SID+4, ENABLED }, { HK_DIAG_REPORT, HK_DIAG_SUBTYPE, VEC_SCAN_REP_SID+5, ENABLED }, { HK_DIAG_REPORT, HK_DIAG_SUBTYPE, VEC_SCAN_REP_SID+6, ENABLED }, { HK_DIAG_REPORT, HK_DIAG_SUBTYPE, VEC_SCAN_REP_SID+7, ENABLED }, { HK_DIAG_REPORT, HK_DIAG_SUBTYPE, VEC_SCAN_REP_SID+8, ENABLED }, { HK_DIAG_REPORT, HK_DIAG_SUBTYPE, VEC_SCAN_REP_SID+9, ENABLED }, { HK_DIAG_REPORT, HK_DIAG_SUBTYPE, VEC_SCAN_REP_SID+10, ENABLED }, { HK_DIAG_REPORT, HK_DIAG_SUBTYPE, VEC_SCAN_REP_SID+11, ENABLED }, { HK_DIAG_REPORT, HK_DIAG_SUBTYPE, VEC_SCAN_REP_SID+12, ENABLED }, { HK_DIAG_REPORT, HK_DIAG_SUBTYPE, VEC_SCAN_REP_SID+13, ENABLED }, { HK_DIAG_REPORT, HK_DIAG_SUBTYPE, VEC_SCAN_REP_SID+14, ENABLED }, { HK_DIAG_REPORT, HK_DIAG_SUBTYPE, PEAKUP_ACQUIRE_REP_SID, ENABLED }, { HK_DIAG_REPORT, HK_DIAG_SUBTYPE, PEAKUP_CHOP_COR_REP_SID, ENABLED }, { HK_DIAG_REPORT, HK_DIAG_SUBTYPE, PEAKUP_AOCS_COR_REP_SID, ENABLED }, }; /*************************************************************************************************************** *************************************************************************************************************** NEW CALIBRATE - HRS CONFIGURATION *************************************************************************************************************** ***************************************************************************************************************/ unsigned int WBS_Calibrate_HRS_init[] = { /* hrs-h config */ 0xd5000001 , 0xd6005a31 , 0xd6105a31 , 0xd6205a31 , 0xd6305a31 , 0xd6405a31 , 0xd6505a31 , 0xd6605a31 , 0xd6705a31 , /* lo-h config */ 0xd5104338 , 0xd5204838 , 0xd5304d38 , 0xd5405238 , 0xd5503335 , 0xd5603130 , 0xd6f00007 , /* hrs-v config */ 0xd9000000, 0xda005a31 , 0xda105a31 , 0xda205a31 , 0xda305a31 , 0xda405a31 , 0xda505a31 , 0xda605a31 , 0xda705a31 , /* lo-h config */ 0xd9104338 , 0xd9204838 , 0xd9304d38 , 0xd9405238 , 0xd9503335 , 0xd9603130 , 0xdaf00007 }; /*************************************************************************************************************** *************************************************************************************************************** SPECTROSCOPY TABLE *************************************************************************************************************** ***************************************************************************************************************/ unsigned int Spectroscopy_table[WNUM_Spectroscopy_table]; //! the working spec table unsigned int Conf_Spectroscopy_table[WNUM_Spectroscopy_table]; //! the last configured spec table unsigned int WBS_Calibrate_Spectroscopy_table_init[WNUM_Spectroscopy_table] = { 1, 0, 1, 3, 2, 4, 1005, 890, 36, 1976, 2084, 1976, 4132, 1976, 6180, 1976, 36, 1976, 2084, 1976, 4132, 1976, 6180, 1976, 0, 3, 0xFF, 0xFF, PACKING_16 }; unsigned int Spectroscopy_table_init[WNUM_Spectroscopy_table] = { 1, 1, 1, 1, 10, 10, 10, 10, 0, 2048, 2048, 2048, 4096, 2048, 6144, 2048, 0, 2048, 2048, 2048, 4096, 2048, 6144, 2048, 0, 0, 0xFF, 0xFF, PACKING_16 }; /*************************************************************************************************************** *************************************************************************************************************** INITS *************************************************************************************************************** ***************************************************************************************************************/ // Table lens unsigned int Max_hk_rates, LCU_config_len, FCU_config_len; unsigned int hrs_attlim1_len, hrs_attlim2_len; //unsigned int hrs_attval1_len, hrs_attval2_len; unsigned int wbs_main_att_len, wbs_bands_att_len; unsigned int DIP_SCAN_param_len, FCU_PS_HK_len, hrs_defset_len, hrs_UWBset_len; unsigned int MIX_MAG_CMD_len, MIX_MAG_HK_len; unsigned int WBS_Calibrate_HRS_init_len; //----------- init_tables_len -------------------------------------------------- void init_tables_len (void) { DIP_SCAN_param_len = sizeof(DIP_SCAN_param); FCU_PS_HK_len = sizeof(FCU_PS_HK); hrs_defset_len = sizeof(HRS_V_defset); hrs_UWBset_len = sizeof(HRS_V_UWBset); hrs_attlim1_len = sizeof(HRS_ATT_LIM1); hrs_attlim2_len = sizeof(HRS_ATT_LIM2); // hrs_attval1_len = sizeof(HRS_ATT_VAL1); // hrs_attval2_len = sizeof(HRS_ATT_VAL2); Max_hk_rates = sizeof(HK_rates); FCU_config_len = sizeof(FCU_config); MIX_MAG_HK_len = sizeof(MIX_MAG_HK); WBS_Calibrate_HRS_init_len = sizeof(WBS_Calibrate_HRS_init); } //----------- init_tables ------------------------------------------------------ void init_tables (void) { init_conf_tables_len(); init_tables_len(); }