From fea5d085122bb386f1ec293b2e51036e29c7dc30 Mon Sep 17 00:00:00 2001 From: Dean Camera Date: Tue, 14 Apr 2009 08:17:24 +0000 Subject: Adjusted sample CTC timer calculations in the AudioOutput and AudioInput demos to account for situations where the division results in a value with no remainder, requiring one to be subtracted from the result (thanks to Robin Theunis). --- Demos/Device/AudioInput/AudioInput.c | 2 +- Demos/Device/AudioOutput/AudioOutput.c | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) (limited to 'Demos') diff --git a/Demos/Device/AudioInput/AudioInput.c b/Demos/Device/AudioInput/AudioInput.c index f41306f3b..b0c029573 100644 --- a/Demos/Device/AudioInput/AudioInput.c +++ b/Demos/Device/AudioInput/AudioInput.c @@ -95,7 +95,7 @@ EVENT_HANDLER(USB_Connect) UpdateStatus(Status_USBEnumerating); /* Sample reload timer initialization */ - OCR0A = (F_CPU / AUDIO_SAMPLE_FREQUENCY); + OCR0A = (F_CPU / AUDIO_SAMPLE_FREQUENCY) - ((F_CPU % AUDIO_SAMPLE_FREQUENCY) == 0 ? 1 : 0); TCCR0A = (1 << WGM01); // CTC mode TCCR0B = (1 << CS00); // Fcpu speed } diff --git a/Demos/Device/AudioOutput/AudioOutput.c b/Demos/Device/AudioOutput/AudioOutput.c index 855edf68c..0554361c6 100644 --- a/Demos/Device/AudioOutput/AudioOutput.c +++ b/Demos/Device/AudioOutput/AudioOutput.c @@ -90,7 +90,7 @@ EVENT_HANDLER(USB_Connect) UpdateStatus(Status_USBEnumerating); /* Sample reload timer initialization */ - OCR0A = (F_CPU / AUDIO_SAMPLE_FREQUENCY); + OCR0A = (F_CPU / AUDIO_SAMPLE_FREQUENCY) - ((F_CPU % AUDIO_SAMPLE_FREQUENCY) == 0 ? 1 : 0); TCCR0A = (1 << WGM01); // CTC mode TCCR0B = (1 << CS00); // Fcpu speed -- cgit v1.2.3