hamnet70-gnuradio-legacy/utils/filter_preamble.py

26 lines
875 B
Python
Executable File

#!/usr/bin/env python3
import numpy as np
import matplotlib.pyplot as pp
import rrc
pre = np.array([ -1, 1, 1, 1, -1, 1, 1, 1, -1, 1, -1, 1, 1, 1, -1, 1, -1, -1, 1, -1, 1, 1, 1, 1, -1, 1, 1, 1, -1, -1, 1, 1, -1, 1, 1, -1, -1, -1, 1, -1, -1, 1, -1, -1, 1, -1, -1, 1, -1, 1, 1, 1, 1, 1, -1, 1, -1, -1, -1, -1, -1, -1, 1, 1, 1, -1, -1, -1, -1, -1, 1, -1, 1, -1, -1, 1, -1, 1, 1, 1, 1, 1, 1, -1, 1, 1, 1, 1, 1, 1, 1, -1, -1, -1, 1, -1, 1, 1, -1, -1, -1, 1, -1, 1, -1, -1, -1, 1, 1, -1, -1, 1, -1, -1, -1, -1, -1, 1, 1, -1, -1, -1, -1, 1, 1, -1, -1, -1]) * (1+1j)
pre_up = np.zeros(2 * len(pre) + 1, dtype=complex)
pre_up[1::2] = pre
rrc_coef = rrc.rrc_design(150, 2)
pre_flt = np.convolve(pre_up, rrc_coef, mode='same')
print("===== Preamble =====")
print(list(pre))
print("===== Filtered Preamble =====")
print(list(pre_flt))
pp.plot(pre_up)
pp.plot(pre_flt)
pp.show()