iMet-54 v0.3: baud correction option

pull/37/head
Zilog80 2021-01-24 11:13:47 +01:00
rodzic d7d8276924
commit 45e98f887a
1 zmienionych plików z 16 dodań i 1 usunięć

Wyświetl plik

@ -403,6 +403,8 @@ int main(int argc, char *argv[]) {
int rawhex = 0;
int cfreq = -1;
float baudrate = -1;
FILE *fp;
char *fpname = NULL;
@ -488,6 +490,14 @@ int main(int argc, char *argv[]) {
}
else return -1;
}
else if ( (strcmp(*argv, "--br") == 0) ) {
++argv;
if (*argv) {
baudrate = atof(*argv);
if (baudrate < 4600 || baudrate > 5000) baudrate = BAUD_RATE; // default: 4798
}
else return -1;
}
else if (strcmp(*argv, "--iq0") == 0) { option_iq = 1; } // differential/FM-demod
else if (strcmp(*argv, "--iq2") == 0) { option_iq = 2; }
else if (strcmp(*argv, "--iq3") == 0) { option_iq = 3; } // iq2==iq3
@ -621,10 +631,15 @@ int main(int argc, char *argv[]) {
dsp.opt_dc = option_dc;
dsp.opt_IFmin = option_min;
if ( dsp.sps < 8 ) {
if ( dsp.sps < 5 ) {
fprintf(stderr, "note: sample rate low (%.1f sps)\n", dsp.sps);
}
if (baudrate > 0) {
dsp.br = (float)baudrate;
dsp.sps = (float)dsp.sr/dsp.br;
fprintf(stderr, "sps corr: %.4f\n", dsp.sps);
}
k = init_buffers(&dsp); // BT=0.5 (IQ-Int: BT > 0.5 ?)
if ( k < 0 ) {