LUFA Library  130901
 All Data Structures Files Functions Variables Typedefs Enumerations Enumerator Macros Groups Pages
ClockManagement.h File Reference

Module Clock Driver for the AVR32 UC3 microcontrollers. More...

Enumerations

enum  UC3_Extern_OSC_ClockStartup_t {
  EXOSC_START_0CLK = AVR32_PM_OSCCTRL0_STARTUP_0_RCOSC,
  EXOSC_START_64CLK = AVR32_PM_OSCCTRL0_STARTUP_64_RCOSC,
  EXOSC_START_128CLK = AVR32_PM_OSCCTRL0_STARTUP_128_RCOSC,
  EXOSC_START_2048CLK = AVR32_PM_OSCCTRL0_STARTUP_2048_RCOSC,
  EXOSC_START_4096CLK = AVR32_PM_OSCCTRL0_STARTUP_4096_RCOSC,
  EXOSC_START_8192CLK = AVR32_PM_OSCCTRL0_STARTUP_8192_RCOSC,
  EXOSC_START_16384CLK = AVR32_PM_OSCCTRL0_STARTUP_16384_RCOSC
}
 
enum  UC3_Extern_OSC_ClockTypes_t {
  EXOSC_MODE_CLOCK = AVR32_PM_OSCCTRL0_MODE_EXT_CLOCK,
  EXOSC_MODE_900KHZ_MAX = AVR32_PM_OSCCTRL0_MODE_CRYSTAL_G0,
  EXOSC_MODE_3MHZ_MAX = AVR32_PM_OSCCTRL0_MODE_CRYSTAL_G1,
  EXOSC_MODE_8MHZ_MAX = AVR32_PM_OSCCTRL0_MODE_CRYSTAL_G2,
  EXOSC_MODE_8MHZ_OR_MORE = AVR32_PM_OSCCTRL0_MODE_CRYSTAL_G3
}
 
enum  UC3_System_ClockSource_t {
  CLOCK_SRC_SLOW_CLK = 0,
  CLOCK_SRC_OSC0 = 1,
  CLOCK_SRC_OSC1 = 2,
  CLOCK_SRC_PLL0 = 3,
  CLOCK_SRC_PLL1 = 4
}
 

Functions

static bool UC3CLK_SetCPUClockSource (const uint8_t Source, const uint32_t SourceFreq) ATTR_ALWAYS_INLINE
 
static bool UC3CLK_StartExternalOscillator (const uint8_t Channel, const uint8_t Type, const uint8_t Startup) ATTR_ALWAYS_INLINE
 
static bool UC3CLK_StartGenericClock (const uint8_t Channel, const uint8_t Source, const uint32_t SourceFreq, const uint32_t Frequency) ATTR_ALWAYS_INLINE
 
static bool UC3CLK_StartPLL (const uint8_t Channel, const uint8_t Source, const uint32_t SourceFreq, const uint32_t Frequency) ATTR_ALWAYS_INLINE
 
static void UC3CLK_StopExternalOscillator (const uint8_t Channel) ATTR_ALWAYS_INLINE
 
static bool UC3CLK_StopGenericClock (const uint8_t Channel) ATTR_ALWAYS_INLINE
 
static void UC3CLK_StopPLL (const uint8_t Channel) ATTR_ALWAYS_INLINE
 

Detailed Description

Clock management driver for the AVR32 UC3 microcontrollers. This driver allows for the configuration of the various clocks within the device to clock the various peripherals.