From 2edaac6fca854f094d9b32c8b44f3e2ae79a2512 Mon Sep 17 00:00:00 2001 From: nick6x Date: Fri, 28 Jul 2017 16:22:11 -0700 Subject: [PATCH] Update dds example for dds library changes --- examples/DDS/DDS.ino | 30 ++++++++++++++++++++---------- 1 file changed, 20 insertions(+), 10 deletions(-) diff --git a/examples/DDS/DDS.ino b/examples/DDS/DDS.ino index e1139c7..c738a5b 100644 --- a/examples/DDS/DDS.ino +++ b/examples/DDS/DDS.ino @@ -18,6 +18,8 @@ #define RESET_PIN A3 #define SWITCH_PIN 2 +#define TIMER2_PHASE_ADVANCE 24 + HamShield radio; DDS dds; @@ -39,6 +41,7 @@ void setup() { radio.frequency(438000); radio.setModeTransmit(); dds.start(); + dds.startPhaseAccumulator(false); dds.playWait(600, 3000); dds.on(); //dds.setAmplitude(31); @@ -51,17 +54,24 @@ void loop() { delay(1000); } -#ifdef DDS_USE_ONLY_TIMER2 -ISR(TIMER2_OVF_vect) { - dds.clockTick(); -} -#else // Use the ADC timer instead -ISR(ADC_vect) { + +//Uncomment if using dds.startPhaseAccumulator(true); +/*ISR(TIMER2_OVF_vect) { static unsigned char tcnt = 0; - TIFR1 = _BV(ICF1); // Clear the timer flag - if(++tcnt == 4) { + if(++tcnt == TIMER2_PHASE_ADVANCE) { tcnt = 0; + dds.clockTick(); + } +}*/ + +//Comment if using dds.startPhaseAccumulator(true); +ISR(ADC_vect) { + if(false){ + static unsigned char tcnt = 0; + TIFR1 = _BV(ICF1); // Clear the timer flag + if(++tcnt == 4) { + tcnt = 0; + } + dds.clockTick(); } - dds.clockTick(); } -#endif