From 99145a8d7c88d9af065cfb7f5e8507d5b65ff811 Mon Sep 17 00:00:00 2001 From: Dean Camera Date: Thu, 26 Feb 2009 05:48:47 +0000 Subject: Makefiles and library modified to add a new F_CLOCK constant to give the unprescaled master input clock frequency, so that the correct PLL mask can be determined even when the CPU (F_CPU) clock rate is prescaled outside the normal input range of the PLL. Started to clean up the AVRISP Programmer project code, donated by Opendous Inc. --- LUFA/Drivers/USB/LowLevel/LowLevel.h | 9 +++++++-- 1 file changed, 7 insertions(+), 2 deletions(-) (limited to 'LUFA/Drivers/USB/LowLevel/LowLevel.h') diff --git a/LUFA/Drivers/USB/LowLevel/LowLevel.h b/LUFA/Drivers/USB/LowLevel/LowLevel.h index faafbd7bf..9721baca0 100644 --- a/LUFA/Drivers/USB/LowLevel/LowLevel.h +++ b/LUFA/Drivers/USB/LowLevel/LowLevel.h @@ -66,7 +66,12 @@ #endif /* Preprocessor Checks and Defines: */ - #if (F_CPU == 8000000) + #if !defined(F_CLOCK) + #error F_CLOCK is not defined. You must device F_CLOCK to the frequency of the unprescaled input clock in your project makefile. + #define F_CLOCK 0 + #endif + + #if (F_CLOCK == 8000000) #if (defined(__AVR_AT90USB82__) || defined(__AVR_AT90USB162__)) #define USB_PLL_PSC 0 #elif (defined(__AVR_AT90USB646__) || defined(__AVR_AT90USB647__) || \ @@ -76,7 +81,7 @@ #elif (defined(__AVR_ATmega16U4__) || defined(__AVR_ATmega32U4__)) #define USB_PLL_PSC 0 #endif - #elif (F_CPU == 16000000) + #elif (F_CLOCK == 16000000) #if (defined(__AVR_AT90USB646__) || defined(__AVR_AT90USB647__) || defined(__AVR_ATmega32U6__)) #define USB_PLL_PSC ((1 << PLLP2) | (1 << PLLP1)) #elif (defined(__AVR_AT90USB1286__) || defined(__AVR_AT90USB1287__)) -- cgit v1.2.3