rs_multi: add M20

pull/53/head
Zilog80 2022-09-25 01:09:51 +02:00
rodzic a2e8ec0ed9
commit ebac1c4a9b
4 zmienionych plików z 1154 dodań i 5 usunięć

Wyświetl plik

@ -2,8 +2,8 @@
CC = gcc
COPTS = -O3
rs_multi: rs41base.o lms6Xbase.o dfm09base.o m10base.o demod_base.o bch_ecc_mod.o
$(CC) $(COPTS) -o rs_multi rs_multi.c demod_base.o bch_ecc_mod.o rs41base.o dfm09base.o m10base.o lms6Xbase.o -lm -pthread
rs_multi: rs41base.o lms6Xbase.o dfm09base.o m10base.o m20base.o demod_base.o bch_ecc_mod.o
$(CC) $(COPTS) -o rs_multi rs_multi.c demod_base.o bch_ecc_mod.o rs41base.o dfm09base.o m10base.o m20base.o lms6Xbase.o -lm -pthread
rs41base.o: rs41base.c
$(CC) $(COPTS) -c rs41base.c
@ -14,6 +14,9 @@ dfm09base.o: dfm09base.c
m10base.o: m10base.c
$(CC) $(COPTS) -c m10base.c
m20base.o: m20base.c
$(CC) $(COPTS) -c m20base.c
lms6Xbase.o: lms6Xbase.c
$(CC) $(COPTS) -c lms6Xbase.c
@ -26,6 +29,6 @@ bch_ecc_mod.o: bch_ecc_mod.c bch_ecc_mod.h
.PHONY: clean
clean:
rm -f rs_multi
rm -f rs41base.o dfm09base.o m10base.o lms6Xbase.o
rm -f rs41base.o dfm09base.o m10base.o m20base.o lms6Xbase.o
rm -f demod_base.o bch_ecc_mod.o

Wyświetl plik

@ -10,8 +10,9 @@ simultaneous decoding
`gcc -O2 -c rs41base.c` <br />
`gcc -O2 -c dfm09base.c` <br />
`gcc -O2 -c m10base.c` <br />
`gcc -O2 -c m20base.c` <br />
`gcc -O2 -c lms6Xbase.c` <br />
`gcc -O2 rs_multi.c demod_base.o bch_ecc_mod.o rs41base.o dfm09base.o m10base.o lms6Xbase.o \`<br />
`gcc -O2 rs_multi.c demod_base.o bch_ecc_mod.o rs41base.o dfm09base.o m10base.o m20base.o lms6Xbase.o \`<br />
&nbsp;&nbsp;&nbsp;&nbsp; `-lm -pthread -o rs_multi`
#### Usage/Examples

1127
demod/multi/m20base.c 100644

Plik diff jest za duży Load Diff

Wyświetl plik

@ -6,8 +6,9 @@ gcc -O2 -c bch_ecc_mod.c
gcc -O2 -c rs41base.c
gcc -O2 -c dfm09base.c
gcc -O2 -c m10base.c
gcc -O2 -c m20base.c
gcc -O2 -c lms6Xbase.c
gcc -O2 rs_multi.c demod_base.o bch_ecc_mod.o rs41base.o dfm09base.o m10base.o lms6Xbase.o -lm -pthread
gcc -O2 rs_multi.c demod_base.o bch_ecc_mod.o rs41base.o dfm09base.o m10base.o m20base.o lms6Xbase.o -lm -pthread
./a.out --rs41 <fq0> --dfm <fq1> --m10 <fq2> baseband_IQ.wav
-0.5 < fq < 0.5 , fq=freq/sr
@ -49,6 +50,7 @@ extern int bufeof; // demod_base.c
void *thd_rs41(void *);
void *thd_dfm09(void *);
void *thd_m10(void *);
void *thd_m20(void *);
void *thd_lms6X(void *);
@ -171,6 +173,18 @@ int main(int argc, char **argv) {
xlt_cnt++;
}
}
else if (strcmp(*argv, "--m20") == 0) {
double fq = 0.0;
++argv;
if (*argv) fq = atof(*argv); else return -1;
if (fq < -0.5) fq = -0.5;
if (fq > 0.5) fq = 0.5;
if (xlt_cnt < MAX_FQ) {
base_fqs[xlt_cnt] = fq;
rstype[xlt_cnt] = thd_m20;
xlt_cnt++;
}
}
else if (strcmp(*argv, "--lms") == 0) {
double fq = 0.0;
++argv;
@ -328,6 +342,10 @@ int main(int argc, char **argv) {
fifo_fq = fifo_buf + 3;
rstype = thd_m10;
}
else if (strncmp(fifo_buf, "m20", 3) == 0) {
fifo_fq = fifo_buf + 3;
rstype = thd_m20;
}
else if (strncmp(fifo_buf, "lms", 3) == 0) {
fifo_fq = fifo_buf + 3;
rstype = thd_lms6X;