From 409073b8abf3fca740b77d63e76201c772ef5479 Mon Sep 17 00:00:00 2001 From: Steve Markgraf Date: Wed, 14 Mar 2012 03:28:48 +0100 Subject: [PATCH] display real sample rate with rounding error Signed-off-by: Steve Markgraf --- src/main.c | 7 +++++-- 1 file changed, 5 insertions(+), 2 deletions(-) diff --git a/src/main.c b/src/main.c index b0208b5..2643303 100644 --- a/src/main.c +++ b/src/main.c @@ -221,15 +221,18 @@ void set_samp_rate(uint32_t samp_rate) { uint16_t tmp; uint32_t rsamp_ratio; + double real_rate; /* check for the maximum rate the resampler supports */ if (samp_rate > 3200000) samp_rate = 3200000; - printf("Setting sample rate: %i Hz\n", samp_rate); rsamp_ratio = (CRYSTAL_FREQ * pow(2, 22)) / samp_rate; - rsamp_ratio &= ~3; + + real_rate = (CRYSTAL_FREQ * pow(2, 22)) / rsamp_ratio; + printf("Setting sample rate: %.3f Hz\n", real_rate); + tmp = (rsamp_ratio >> 16); demod_write_reg(1, 0x9f, tmp, 2); tmp = rsamp_ratio & 0xffff;