comparison autocal/rxband.c @ 62:a98873b713c3

fc-rfcal-rxband: channel calibration implemented
author Mychaela Falconia <falcon@freecalypso.org>
date Sun, 28 May 2017 00:33:10 +0000
parents 0bf853d1b68e
children 3f92d88fbb1c
comparison
equal deleted inserted replaced
61:0bf853d1b68e 62:a98873b713c3
116 do_tms(1); 116 do_tms(1);
117 do_rfpw(STD_BAND_FLAG, rxcal_band->rfpw_std_band); 117 do_rfpw(STD_BAND_FLAG, rxcal_band->rfpw_std_band);
118 l1tm_setup_for_rxcal(); 118 l1tm_setup_for_rxcal();
119 119
120 do_gmagic(); 120 do_gmagic();
121 do_rx_calchan();
121 exit(0); 122 exit(0);
122 } 123 }
123 124
124 do_gmagic() 125 do_gmagic()
125 { 126 {
132 halfdb_to_string(Gmagic, Gmagic_db); 133 halfdb_to_string(Gmagic, Gmagic_db);
133 printf("GMagic=%d (%s dB)\n", Gmagic, Gmagic_db); 134 printf("GMagic=%d (%s dB)\n", Gmagic, Gmagic_db);
134 upload_gmagic(); 135 upload_gmagic();
135 return(0); 136 return(0);
136 } 137 }
138
139 do_rx_calchan()
140 {
141 unsigned n;
142 int pm;
143
144 printf("Calibrating RSSI channel compensation\n");
145 for (n = 0; n < rxcal_band->num_calchan_ranges; n++) {
146 pm = rx_measure(rxcal_band->calchan_ranges[n].test_arfcn);
147 rx_calchan_values[n] = RXCAL_SIGGEN_LEVEL - pm +
148 RXCAL_AGC_DB * 2 + Gmagic;
149 }
150 for (n = 0; n < rxcal_band->num_calchan_ranges; n++)
151 printf("ARFCN %u-%u: correction=%d\n",
152 rxcal_band->calchan_ranges[n].lower_bound,
153 rxcal_band->calchan_ranges[n].upper_bound,
154 rx_calchan_values[n]);
155 upload_rx_calchan();
156 return(0);
157 }