MCUSR &= ~(1 << WDRF);\r
wdt_disable();\r
\r
- /* Disable Clock Division */\r
- SetSystemClockPrescaler(0);\r
+ /* Disable clock division */\r
+ clock_prescale_set(clock_div_1);\r
\r
/* Relocate the interrupt vector table to the bootloader section */\r
MCUCR = (1 << IVCE);\r
#include <avr/wdt.h>\r
#include <avr/boot.h>\r
#include <avr/eeprom.h>\r
+ #include <avr/power.h>\r
#include <stdbool.h>\r
\r
#include "Descriptors.h"\r
MCUSR &= ~(1 << WDRF);\r
wdt_disable();\r
\r
- /* Disable Clock Division */\r
- SetSystemClockPrescaler(0);\r
+ /* Disable clock division */\r
+ clock_prescale_set(clock_div_1);\r
\r
/* Relocate the interrupt vector table to the bootloader section */\r
MCUCR = (1 << IVCE);\r
#include <avr/boot.h>\r
#include <avr/pgmspace.h>\r
#include <avr/eeprom.h>\r
+ #include <avr/power.h>\r
#include <stdbool.h>\r
\r
#include "Descriptors.h"\r
MCUSR &= ~(1 << WDRF);\r
wdt_disable();\r
\r
- /* Disable Clock Division */\r
- SetSystemClockPrescaler(0);\r
+ /* Disable clock division */\r
+ clock_prescale_set(clock_div_1);\r
\r
/* Relocate the interrupt vector table to the bootloader section */\r
MCUCR = (1 << IVCE);\r
#include <avr/wdt.h>\r
#include <avr/boot.h>\r
#include <avr/wdt.h>\r
+ #include <avr/power.h>\r
#include <util/delay.h>\r
#include <stdbool.h>\r
\r
MCUSR &= ~(1 << WDRF);\r
wdt_disable();\r
\r
- /* Disable Clock Division */\r
- SetSystemClockPrescaler(0);\r
+ /* Disable clock division */\r
+ clock_prescale_set(clock_div_1);\r
\r
/* Hardware Initialization */\r
LEDs_Init();\r
/* Includes: */\r
#include <avr/io.h>\r
#include <avr/wdt.h>\r
+ #include <avr/power.h>\r
\r
#include "Descriptors.h"\r
\r
MCUSR &= ~(1 << WDRF);\r
wdt_disable();\r
\r
- /* Disable Clock Division */\r
- SetSystemClockPrescaler(0);\r
+ /* Disable clock division */\r
+ clock_prescale_set(clock_div_1);\r
\r
/* Hardware Initialization */\r
LEDs_Init();\r
/* Includes: */\r
#include <avr/io.h>\r
#include <avr/wdt.h>\r
+ #include <avr/power.h>\r
\r
#include "Descriptors.h"\r
\r
MCUSR &= ~(1 << WDRF);\r
wdt_disable();\r
\r
- /* Disable Clock Division */\r
- SetSystemClockPrescaler(0);\r
+ /* Disable clock division */\r
+ clock_prescale_set(clock_div_1);\r
\r
/* Hardware Initialization */\r
SerialStream_Init(9600, false);\r
#include <avr/io.h>\r
#include <avr/wdt.h>\r
#include <avr/pgmspace.h>\r
+ #include <avr/power.h>\r
#include <stdio.h>\r
\r
#include "BluetoothStack.h"\r
MCUSR &= ~(1 << WDRF);\r
wdt_disable();\r
\r
- /* Disable Clock Division */\r
- SetSystemClockPrescaler(0);\r
+ /* Disable clock division */\r
+ clock_prescale_set(clock_div_1);\r
\r
/* Hardware Initialization */\r
Joystick_Init();\r
/* Includes: */\r
#include <avr/io.h>\r
#include <avr/wdt.h>\r
+ #include <avr/power.h>\r
#include <string.h>\r
\r
#include "Descriptors.h"\r
MCUSR &= ~(1 << WDRF);\r
wdt_disable();\r
\r
- /* Disable Clock Division */\r
- SetSystemClockPrescaler(0);\r
+ /* Disable clock division */\r
+ clock_prescale_set(clock_div_1);\r
\r
/* Hardware Initialization */\r
SerialStream_Init(9600, false);\r
#include <avr/io.h>\r
#include <avr/wdt.h>\r
#include <avr/pgmspace.h>\r
+ #include <avr/power.h>\r
#include <stdio.h>\r
\r
#include <LUFA/Version.h> // Library Version Information\r
MCUSR &= ~(1 << WDRF);\r
wdt_disable();\r
\r
- /* Disable Clock Division */\r
- SetSystemClockPrescaler(0);\r
+ /* Disable clock division */\r
+ clock_prescale_set(clock_div_1);\r
\r
/* Hardware Initialization */\r
Joystick_Init();\r
/* Includes: */\r
#include <avr/io.h>\r
#include <avr/wdt.h>\r
+ #include <avr/power.h>\r
#include <string.h>\r
\r
#include "Descriptors.h"\r
MCUSR &= ~(1 << WDRF);\r
wdt_disable();\r
\r
- /* Disable Clock Division */\r
- SetSystemClockPrescaler(0);\r
+ /* Disable clock division */\r
+ clock_prescale_set(clock_div_1);\r
\r
/* Hardware Initialization */\r
Joystick_Init();\r
/* Includes: */\r
#include <avr/io.h>\r
#include <avr/wdt.h>\r
+ #include <avr/power.h>\r
#include <string.h>\r
\r
#include "Descriptors.h"\r
MCUSR &= ~(1 << WDRF);\r
wdt_disable();\r
\r
- /* Disable Clock Division */\r
- SetSystemClockPrescaler(0);\r
+ /* Disable clock division */\r
+ clock_prescale_set(clock_div_1);\r
\r
/* Hardware Initialization */\r
Joystick_Init();\r
#include <avr/io.h>\r
#include <avr/wdt.h>\r
#include <avr/interrupt.h>\r
+ #include <avr/power.h>\r
#include <stdbool.h>\r
#include <string.h>\r
\r
MCUSR &= ~(1 << WDRF);\r
wdt_disable();\r
\r
- /* Disable Clock Division */\r
- SetSystemClockPrescaler(0);\r
+ /* Disable clock division */\r
+ clock_prescale_set(clock_div_1);\r
\r
/* Hardware Initialization */\r
Joystick_Init();\r
#include <avr/io.h>\r
#include <avr/wdt.h>\r
#include <avr/interrupt.h>\r
+ #include <avr/power.h>\r
#include <stdbool.h>\r
#include <string.h>\r
\r
MCUSR &= ~(1 << WDRF);\r
wdt_disable();\r
\r
- /* Disable Clock Division */\r
- SetSystemClockPrescaler(0);\r
+ /* Disable clock division */\r
+ clock_prescale_set(clock_div_1);\r
\r
/* Hardware Initialization */\r
SerialStream_Init(9600, false);\r
#include <avr/io.h>\r
#include <avr/wdt.h>\r
#include <avr/pgmspace.h>\r
+ #include <avr/power.h>\r
#include <stdio.h>\r
\r
#include <LUFA/Version.h> // Library Version Information\r
MCUSR &= ~(1 << WDRF);\r
wdt_disable();\r
\r
- /* Disable Clock Division */\r
- SetSystemClockPrescaler(0);\r
+ /* Disable clock division */\r
+ clock_prescale_set(clock_div_1);\r
\r
/* Hardware Initialization */\r
SerialStream_Init(9600, false);\r
#include <avr/pgmspace.h>\r
#include <avr/interrupt.h>\r
#include <avr/wdt.h>\r
+ #include <avr/power.h>\r
#include <stdio.h>\r
\r
#include <LUFA/Version.h> // Library Version Information\r
MCUSR &= ~(1 << WDRF);\r
wdt_disable();\r
\r
- /* Disable Clock Division */\r
- SetSystemClockPrescaler(0);\r
+ /* Disable clock division */\r
+ clock_prescale_set(clock_div_1);\r
\r
/* Hardware Initialization */\r
SerialStream_Init(9600, false);\r
#include <avr/io.h>\r
#include <avr/wdt.h>\r
#include <avr/pgmspace.h>\r
+ #include <avr/power.h>\r
#include <stdio.h>\r
\r
#include <LUFA/Version.h> // Library Version Information\r
MCUSR &= ~(1 << WDRF);\r
wdt_disable();\r
\r
- /* Disable Clock Division */\r
- SetSystemClockPrescaler(0);\r
+ /* Disable clock division */\r
+ clock_prescale_set(clock_div_1);\r
\r
/* Hardware Initialization */\r
Joystick_Init();\r
/* Includes: */\r
#include <avr/io.h>\r
#include <avr/wdt.h>\r
+ #include <avr/power.h>\r
#include <stdbool.h>\r
#include <string.h>\r
\r
MCUSR &= ~(1 << WDRF);\r
wdt_disable();\r
\r
- /* Disable Clock Division */\r
- SetSystemClockPrescaler(0);\r
+ /* Disable clock division */\r
+ clock_prescale_set(clock_div_1);\r
\r
/* Hardware Initialization */\r
Joystick_Init();\r
#include <avr/io.h>\r
#include <avr/wdt.h>\r
#include <avr/interrupt.h>\r
+ #include <avr/power.h>\r
#include <stdbool.h>\r
#include <string.h>\r
\r
MCUSR &= ~(1 << WDRF);\r
wdt_disable();\r
\r
- /* Disable Clock Division */\r
- SetSystemClockPrescaler(0);\r
+ /* Disable clock division */\r
+ clock_prescale_set(clock_div_1);\r
\r
/* Hardware Initialization */\r
Joystick_Init();\r
/* Includes: */\r
#include <avr/io.h>\r
#include <avr/wdt.h>\r
+ #include <avr/power.h>\r
#include <stdbool.h>\r
\r
#include "Descriptors.h"\r
MCUSR &= ~(1 << WDRF);\r
wdt_disable();\r
\r
- /* Disable Clock Division */\r
- SetSystemClockPrescaler(0);\r
+ /* Disable clock division */\r
+ clock_prescale_set(clock_div_1);\r
\r
/* Hardware Initialization */\r
LEDs_Init();\r
/* Includes: */\r
#include <avr/io.h>\r
#include <avr/wdt.h>\r
+ #include <avr/power.h>\r
\r
#include "Descriptors.h"\r
#include "SCSI.h"\r
MCUSR &= ~(1 << WDRF);\r
wdt_disable();\r
\r
- /* Disable Clock Division */\r
- SetSystemClockPrescaler(0);\r
+ /* Disable clock division */\r
+ clock_prescale_set(clock_div_1);\r
\r
/* Hardware Initialization */\r
SerialStream_Init(9600, false);\r
#include <avr/io.h>\r
#include <avr/wdt.h>\r
#include <avr/pgmspace.h>\r
+ #include <avr/power.h>\r
#include <stdio.h>\r
#include <ctype.h>\r
\r
MCUSR &= ~(1 << WDRF);\r
wdt_disable();\r
\r
- /* Disable Clock Division */\r
- SetSystemClockPrescaler(0);\r
+ /* Disable clock division */\r
+ clock_prescale_set(clock_div_1);\r
\r
/* Hardware Initialization */\r
Joystick_Init();\r
#include <avr/io.h>\r
#include <avr/wdt.h>\r
#include <avr/interrupt.h>\r
+ #include <avr/power.h>\r
#include <stdbool.h>\r
#include <string.h>\r
\r
MCUSR &= ~(1 << WDRF);\r
wdt_disable();\r
\r
- /* Disable Clock Division */\r
- SetSystemClockPrescaler(0);\r
+ /* Disable clock division */\r
+ clock_prescale_set(clock_div_1);\r
\r
/* Hardware Initialization */\r
Joystick_Init();\r
#include <avr/io.h>\r
#include <avr/wdt.h>\r
#include <avr/interrupt.h>\r
+ #include <avr/power.h>\r
#include <stdbool.h>\r
#include <string.h>\r
\r
MCUSR &= ~(1 << WDRF);\r
wdt_disable();\r
\r
- /* Disable Clock Division */\r
- SetSystemClockPrescaler(0);\r
+ /* Disable clock division */\r
+ clock_prescale_set(clock_div_1);\r
\r
/* Hardware Initialization */\r
SerialStream_Init(9600, false);\r
#include <avr/io.h>\r
#include <avr/wdt.h>\r
#include <avr/pgmspace.h>\r
+ #include <avr/power.h>\r
#include <stdio.h>\r
\r
#include <LUFA/Version.h> // Library Version Information\r
MCUSR &= ~(1 << WDRF);\r
wdt_disable();\r
\r
- /* Disable Clock Division */\r
- SetSystemClockPrescaler(0);\r
+ /* Disable clock division */\r
+ clock_prescale_set(clock_div_1);\r
\r
/* Hardware Initialization */\r
SerialStream_Init(9600, false);\r
#include <avr/pgmspace.h>\r
#include <avr/interrupt.h>\r
#include <avr/wdt.h>\r
+ #include <avr/power.h>\r
#include <stdio.h>\r
\r
#include <LUFA/Version.h> // Library Version Information\r
MCUSR &= ~(1 << WDRF);\r
wdt_disable();\r
\r
- /* Disable Clock Division */\r
- SetSystemClockPrescaler(0);\r
+ /* Disable clock division */\r
+ clock_prescale_set(clock_div_1);\r
\r
/* Hardware Initialization */\r
SerialStream_Init(9600, false);\r
#include <avr/io.h>\r
#include <avr/wdt.h>\r
#include <avr/pgmspace.h>\r
+ #include <avr/power.h>\r
#include <stdio.h>\r
\r
#include <LUFA/Version.h> // Library Version Information\r
MCUSR &= ~(1 << WDRF);\r
wdt_disable();\r
\r
- /* Disable Clock Division */\r
- SetSystemClockPrescaler(0);\r
+ /* Disable clock division */\r
+ clock_prescale_set(clock_div_1);\r
\r
/* Hardware Initialization */\r
Joystick_Init();\r
#include <avr/io.h>\r
#include <avr/wdt.h>\r
#include <avr/interrupt.h>\r
+ #include <avr/power.h>\r
#include <stdbool.h>\r
#include <string.h>\r
\r
MCUSR &= ~(1 << WDRF);\r
wdt_disable();\r
\r
- /* Disable Clock Division */\r
- SetSystemClockPrescaler(0);\r
+ /* Disable clock division */\r
+ clock_prescale_set(clock_div_1);\r
\r
/* Hardware Initialization */\r
LEDs_Init();\r
/* Includes: */\r
#include <avr/io.h>\r
#include <avr/wdt.h>\r
+ #include <avr/pgmspace.h>\r
+ #include <avr/power.h>\r
#include <string.h>\r
#include <stdio.h>\r
- #include <avr/pgmspace.h>\r
\r
#include "Descriptors.h"\r
#include "RNDIS.h"\r
/* Includes: */\r
#include <avr/io.h>\r
#include <avr/wdt.h>\r
+ #include <avr/power.h>\r
#include <stdio.h>\r
\r
#include "ConfigDescriptor.h"\r
wdt_disable();\r
\r
/* Disable clock division */\r
- SetSystemClockPrescaler(0);\r
+ clock_prescale_set(clock_div_1);\r
\r
/* Hardware initialization */\r
SerialStream_Init(9600, false);\r
#include <avr/io.h>\r
#include <avr/interrupt.h>\r
#include <avr/wdt.h>\r
+ #include <avr/power.h>\r
\r
#include <LUFA/Version.h> // Library Version Information\r
#include <LUFA/Drivers/USB/USB.h> // USB Functionality\r
MCUSR &= ~(1 << WDRF);\r
wdt_disable();\r
\r
- /* Disable Clock Division */\r
- SetSystemClockPrescaler(0);\r
+ /* Disable clock division */\r
+ clock_prescale_set(clock_div_1);\r
\r
/* Hardware Initialization */\r
LEDs_Init();\r
#include <avr/io.h>\r
#include <avr/wdt.h>\r
#include <avr/interrupt.h>
+ #include <avr/power.h>\r
\r
#include "Descriptors.h"\r
#include "RingBuff.h"\r
* - Mass Storage Host demo now uses a USB_STREAM_TIMEOUT_MS of two seconds to maintain compatibility with poorly designed devices\r
* - Function attribute ATTR_ALWAYSINLINE renamed to ATTR_ALWAYS_INLINE to match other function attribute macro naming conventions\r
* - Added ATTR_ALWAYS_INLINE attribute to several key inlined library components, to ensure they are inlined in all circumstances\r
+ * - Removed SetSystemClockPrescaler() macro, the clock_prescale_set() avr-libc macro has been corrected in recent avr-libc versions\r
*\r
* \section Sec_ChangeLog090209 Version 090209\r
*\r
} }MACROE\r
\r
/* Inline Functions: */\r
- /** Function for reliably setting the AVR's system clock prescaler, using inline assembly. This function\r
- * is guaranteed to operate reliably regardless of optimization setting or other compile time options. \r
- *\r
- * \param PrescalerMask The mask of the new prescaler setting for CLKPR\r
- */\r
- static inline void SetSystemClockPrescaler(uint8_t PrescalerMask)\r
- {\r
- uint8_t tmp = (1 << CLKPCE);\r
- __asm__ __volatile__ (\r
- "in __tmp_reg__,__SREG__" "\n\t"\r
- "cli" "\n\t"\r
- "sts %1, %0" "\n\t"\r
- "sts %1, %2" "\n\t"\r
- "out __SREG__, __tmp_reg__"\r
- : /* no outputs */\r
- : "d" (tmp),\r
- "M" (_SFR_MEM_ADDR(CLKPR)),\r
- "d" (PrescalerMask)\r
- : "r0");\r
- }\r
-\r
/** Function to reverse the individual bits in a byte - i.e. bit 7 is moved to bit 0, bit 6 to bit 1,\r
* etc.\r
*\r
* defined in the project makefile and passed to the compiler via the -D switch.\r
* - The makefile EEPROM programming targets for FLIP and dfu-programmer no longer program in the FLASH data in addition to the\r
* EEPROM data into the device. If both are to be programmed, both the EEPROM and FLASH programming targets must be called.\r
+ * - As the avr-libc macro has been corrected in recent avr-libc distributions, the SetSystemClockPrescaler() macro has been removed.\r
+ * Include <avr/power.h> and call clock_prescale_set(clock_div_1); instead on recent avr-libc distributions.\r
*\r
* <b>Library Demos</b>\r
* - The USBtoSerial demo now discards all data when not connected to a host, rather than buffering it for later transmission.\r
MCUSR &= ~(1 << WDRF);\r
wdt_disable();\r
\r
- /* Disable Clock Division */\r
- SetSystemClockPrescaler(0);\r
+ /* Disable clock division */\r
+ clock_prescale_set(clock_div_1);\r
\r
/* Hardware Initialization */\r
LEDs_Init();\r
#define _AVRISP_PROGRAMMER_H_\r
\r
/* Includes: */\r
- #include <util/delay.h>\r
#include <avr/io.h>\r
#include <avr/wdt.h>\r
#include <avr/interrupt.h>\r
+ #include <avr/power.h>\r
+ #include <util/delay.h>\r
\r
#include "Descriptors.h"\r
#include "RingBuff.h"\r
MCUSR &= ~(1 << WDRF);\r
wdt_disable();\r
\r
- /* Disable Clock Division */\r
- SetSystemClockPrescaler(0);\r
+ /* Disable clock division */\r
+ clock_prescale_set(clock_div_1);\r
\r
/* Hardware Initialization */\r
Magstripe_Init();\r
#include <avr/io.h>\r
#include <avr/wdt.h>\r
#include <avr/interrupt.h>\r
+ #include <avr/power.h>\r
#include <stdbool.h>\r
#include <string.h>\r
\r