From 38ef609475a25143640bf8d2d1df5ad6a68b7403 Mon Sep 17 00:00:00 2001 From: "Matthias P. Braendli" Date: Tue, 3 Jan 2023 12:28:08 +0100 Subject: Simplify DDS, add plots --- plot.py | 55 +++++++++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 55 insertions(+) create mode 100755 plot.py (limited to 'plot.py') diff --git a/plot.py b/plot.py new file mode 100755 index 0000000..21219aa --- /dev/null +++ b/plot.py @@ -0,0 +1,55 @@ +#!/usr/bin/env python +import matplotlib.pyplot as plt +import numpy as np + +debug_pd = np.loadtxt("debug-pd.csv", delimiter=",") +sample, slope, pd, pdslope = np.split(debug_pd, 4, 1) + +debug_dds = np.loadtxt("debug-dds.csv", delimiter=",") +dds_ix, dds_phase, dds_phase_delta, dds_phase_idx_i, dds_phase_idx_q = np.split(debug_dds, 5, 1) + +out = np.fromfile("debug-out.i8", dtype="i1") +out_r, out_g = np.split(np.reshape(out, newshape=(out.shape[0]//2, 2)), 2, 1) + +samp_rate = 10000 +input_rate = 1000 +assert(samp_rate % input_rate == 0) +rf_to_baseband_sample_ratio = samp_rate // input_rate; + +L = 200 + +L_out = L * rf_to_baseband_sample_ratio + +plt.figure() +plt.subplot(3, 1, 1) +plt.title("sample") +plt.plot(sample[0:L]) + +plt.subplot(3, 1, 2) +plt.title("pd") +plt.plot(pd[0:L]) + +plt.subplot(3, 1, 3) +plt.title("pdslope") +plt.plot(pdslope[0:L]) + + +plt.figure() +plt.subplot(4, 1, 1) +plt.title("dds ix") +plt.plot(dds_ix[0:L_out]) + +plt.subplot(4, 1, 2) +plt.title("dds phase") +plt.plot(dds_phase[0:L_out]) + +plt.subplot(4, 1, 3) +plt.title("dds phase_delta") +plt.plot(dds_phase_delta[0:L_out]) + +plt.subplot(4, 1, 4) +plt.title("output") +plt.plot(out_r[0:L_out]) +plt.plot(out_g[0:L_out]) + +plt.show() -- cgit v1.2.3