From fd38f249ce3171d1094d379cc0450c05c20ce3f5 Mon Sep 17 00:00:00 2001 From: TT Date: Mon, 2 Jan 2017 00:00:25 +0900 Subject: [PATCH] continue signal on cw mode --- main.c | 8 +++++--- plot.c | 7 +++++++ 2 files changed, 12 insertions(+), 3 deletions(-) diff --git a/main.c b/main.c index ccc6778..94c2b74 100644 --- a/main.c +++ b/main.c @@ -101,9 +101,11 @@ static void cmd_reset(BaseSequentialStream *chp, int argc, char *argv[]) int set_frequency(int freq) { - int delay; - delay = si5351_set_frequency_with_offset(freq, frequency_offset, drive_strength); - frequency = freq; + int delay = 0; + if (frequency != freq) { + delay = si5351_set_frequency_with_offset(freq, frequency_offset, drive_strength); + frequency = freq; + } return delay; } diff --git a/plot.c b/plot.c index 8a96c6a..2bf6568 100644 --- a/plot.c +++ b/plot.c @@ -450,6 +450,8 @@ float linear(float *v) float swr(float *v) { float x = sqrtf(v[0]*v[0] + v[1]*v[1]); + if (x > 1) + return INFINITY; return (1 + x)/(1 - x); } @@ -505,6 +507,11 @@ string_value_with_prefix(char *buf, int len, float val, char unit) { char prefix; int n; + if (val < 0) { + val = -val; + *buf++ = '-'; + len--; + } if (val < 1e-12) { prefix = 'f'; val *= 1e15;