diff options
Diffstat (limited to 'Demos/Device/Incomplete/TestAndMeasurement/TestAndMeasurement.c')
| -rw-r--r-- | Demos/Device/Incomplete/TestAndMeasurement/TestAndMeasurement.c | 12 | 
1 files changed, 12 insertions, 0 deletions
diff --git a/Demos/Device/Incomplete/TestAndMeasurement/TestAndMeasurement.c b/Demos/Device/Incomplete/TestAndMeasurement/TestAndMeasurement.c index bd972e27f..4bd702701 100644 --- a/Demos/Device/Incomplete/TestAndMeasurement/TestAndMeasurement.c +++ b/Demos/Device/Incomplete/TestAndMeasurement/TestAndMeasurement.c @@ -93,12 +93,24 @@ int main(void)  /** Configures the board hardware and chip peripherals for the demo's functionality. */  void SetupHardware(void)  { +#if (ARCH == ARCH_AVR8)  	/* Disable watchdog if enabled by bootloader/fuses */  	MCUSR &= ~(1 << WDRF);  	wdt_disable();  	/* Disable clock division */  	clock_prescale_set(clock_div_1); +#elif (ARCH == ARCH_XMEGA) +	/* Start the PLL to multiply the 2MHz RC oscillator to 32MHz and switch the CPU core to run from it */ +	XMEGACLK_StartPLL(CLOCK_SRC_INT_RC2MHZ, 2000000, F_CPU); +	XMEGACLK_SetCPUClockSource(CLOCK_SRC_PLL); + +	/* Start the 32MHz internal RC oscillator and start the DFLL to increase it to 48MHz using the USB SOF as a reference */ +	XMEGACLK_StartInternalOscillator(CLOCK_SRC_INT_RC32MHZ); +	XMEGACLK_StartDFLL(CLOCK_SRC_INT_RC32MHZ, DFLL_REF_INT_USBSOF, F_USB); + +	PMIC.CTRL = PMIC_LOLVLEN_bm | PMIC_MEDLVLEN_bm | PMIC_HILVLEN_bm; +#endif  	/* Hardware Initialization */  	LEDs_Init();  | 
