[gnoduino: 169/237] Lowering timer 1 prescale factor (to 8 from 64) for F_CPU less than 8 MHz.



commit e2f6f522869effff376fe2d83078f8fbfb35135f
Author: David A. Mellis <d mellis arduino cc>
Date:   Fri Oct 21 11:54:11 2011 -0400

    Lowering timer 1 prescale factor (to 8 from 64) for F_CPU less than 8 MHz.
    
    Otherwise, you can see flicker on an LED.

 arduino/cores/arduino/wiring.c |    4 ++++
 1 files changed, 4 insertions(+), 0 deletions(-)
---
diff --git a/arduino/cores/arduino/wiring.c b/arduino/cores/arduino/wiring.c
index 1b3fd44..bc01949 100755
--- a/arduino/cores/arduino/wiring.c
+++ b/arduino/cores/arduino/wiring.c
@@ -221,11 +221,15 @@ void init()
 
 	// set timer 1 prescale factor to 64
 	sbi(TCCR1B, CS11);
+#if F_CPU >= 8000000L
 	sbi(TCCR1B, CS10);
+#endif
 #elif defined(TCCR1) && defined(CS11) && defined(CS10)
 	sbi(TCCR1, CS11);
+#if F_CPU >= 8000000L
 	sbi(TCCR1, CS10);
 #endif
+#endif
 	// put timer 1 in 8-bit phase correct pwm mode
 #if defined(TCCR1A) && defined(WGM10)
 	sbi(TCCR1A, WGM10);



[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]