mirror of
				https://github.com/mfulz/qmk_firmware.git
				synced 2025-10-30 21:02:32 +01:00 
			
		
		
		
	Merge branch 'XMEGA-Demo-Ports-ClockOnly'
This commit is contained in:
		
						commit
						f835323682
					
				| @ -51,6 +51,7 @@ | |||||||
| 
 | 
 | ||||||
| 		#include <LUFA/Drivers/USB/USB.h> | 		#include <LUFA/Drivers/USB/USB.h> | ||||||
| 		#include <LUFA/Drivers/Board/LEDs.h> | 		#include <LUFA/Drivers/Board/LEDs.h> | ||||||
|  | 		#include <LUFA/Platform/Platform.h> | ||||||
| 
 | 
 | ||||||
| 	/* Preprocessor Checks: */ | 	/* Preprocessor Checks: */ | ||||||
| 		#if !defined(__OPTIMIZE_SIZE__) | 		#if !defined(__OPTIMIZE_SIZE__) | ||||||
|  | |||||||
| @ -9,8 +9,8 @@ | |||||||
| 
 | 
 | ||||||
| 		<config name="config.compiler.optimization.level" value="size"/> | 		<config name="config.compiler.optimization.level" value="size"/> | ||||||
| 
 | 
 | ||||||
| 		<build type="define" name="F_CPU" value="8000000UL"/> | 		<build type="define" name="F_CPU" value="16000000UL"/> | ||||||
| 		<build type="define" name="F_USB" value="8000000UL"/> | 		<build type="define" name="F_USB" value="16000000UL"/> | ||||||
| 
 | 
 | ||||||
| 		<build type="define" name="BOOT_START_ADDR" value="0x1F000"/> | 		<build type="define" name="BOOT_START_ADDR" value="0x1F000"/> | ||||||
| 		<build type="linker-config" subtype="flags" value="--section-start=.text=0x1F000"/> | 		<build type="linker-config" subtype="flags" value="--section-start=.text=0x1F000"/> | ||||||
| @ -33,8 +33,8 @@ | |||||||
| 
 | 
 | ||||||
| 		<config name="config.compiler.optimization.level" value="size"/> | 		<config name="config.compiler.optimization.level" value="size"/> | ||||||
| 
 | 
 | ||||||
| 		<build type="define" name="F_CPU" value="8000000UL"/> | 		<build type="define" name="F_CPU" value="16000000UL"/> | ||||||
| 		<build type="define" name="F_USB" value="8000000UL"/> | 		<build type="define" name="F_USB" value="16000000UL"/> | ||||||
| 
 | 
 | ||||||
| 		<build type="define" name="BOOT_START_ADDR" value="0xF000"/> | 		<build type="define" name="BOOT_START_ADDR" value="0xF000"/> | ||||||
| 		<build type="linker-config" subtype="flags" value="--section-start=.text=0xF000"/> | 		<build type="linker-config" subtype="flags" value="--section-start=.text=0xF000"/> | ||||||
| @ -57,8 +57,8 @@ | |||||||
| 
 | 
 | ||||||
| 		<config name="config.compiler.optimization.level" value="size"/> | 		<config name="config.compiler.optimization.level" value="size"/> | ||||||
| 
 | 
 | ||||||
| 		<build type="define" name="F_CPU" value="8000000UL"/> | 		<build type="define" name="F_CPU" value="16000000UL"/> | ||||||
| 		<build type="define" name="F_USB" value="8000000UL"/> | 		<build type="define" name="F_USB" value="16000000UL"/> | ||||||
| 
 | 
 | ||||||
| 		<build type="define" name="BOOT_START_ADDR" value="0x7000"/> | 		<build type="define" name="BOOT_START_ADDR" value="0x7000"/> | ||||||
| 		<build type="linker-config" subtype="flags" value="--section-start=.text=0x7000"/> | 		<build type="linker-config" subtype="flags" value="--section-start=.text=0x7000"/> | ||||||
| @ -81,8 +81,8 @@ | |||||||
| 
 | 
 | ||||||
| 		<config name="config.compiler.optimization.level" value="size"/> | 		<config name="config.compiler.optimization.level" value="size"/> | ||||||
| 
 | 
 | ||||||
| 		<build type="define" name="F_CPU" value="8000000UL"/> | 		<build type="define" name="F_CPU" value="16000000UL"/> | ||||||
| 		<build type="define" name="F_USB" value="8000000UL"/> | 		<build type="define" name="F_USB" value="16000000UL"/> | ||||||
| 
 | 
 | ||||||
| 		<build type="define" name="BOOT_START_ADDR" value="0x3000"/> | 		<build type="define" name="BOOT_START_ADDR" value="0x3000"/> | ||||||
| 		<build type="linker-config" subtype="flags" value="--section-start=.text=0x3000"/> | 		<build type="linker-config" subtype="flags" value="--section-start=.text=0x3000"/> | ||||||
| @ -105,8 +105,8 @@ | |||||||
| 
 | 
 | ||||||
| 		<config name="config.compiler.optimization.level" value="size"/> | 		<config name="config.compiler.optimization.level" value="size"/> | ||||||
| 
 | 
 | ||||||
| 		<build type="define" name="F_CPU" value="8000000UL"/> | 		<build type="define" name="F_CPU" value="16000000UL"/> | ||||||
| 		<build type="define" name="F_USB" value="8000000UL"/> | 		<build type="define" name="F_USB" value="16000000UL"/> | ||||||
| 
 | 
 | ||||||
| 		<build type="define" name="BOOT_START_ADDR" value="0x1000"/> | 		<build type="define" name="BOOT_START_ADDR" value="0x1000"/> | ||||||
| 		<build type="linker-config" subtype="flags" value="--section-start=.text=0x1000"/> | 		<build type="linker-config" subtype="flags" value="--section-start=.text=0x1000"/> | ||||||
|  | |||||||
| @ -53,6 +53,7 @@ | |||||||
| 
 | 
 | ||||||
| 		#include <LUFA/Drivers/USB/USB.h> | 		#include <LUFA/Drivers/USB/USB.h> | ||||||
| 		#include <LUFA/Drivers/Board/LEDs.h> | 		#include <LUFA/Drivers/Board/LEDs.h> | ||||||
|  | 		#include <LUFA/Platform/Platform.h> | ||||||
| 
 | 
 | ||||||
| 	/* Preprocessor Checks: */ | 	/* Preprocessor Checks: */ | ||||||
| 		#if !defined(__OPTIMIZE_SIZE__) | 		#if !defined(__OPTIMIZE_SIZE__) | ||||||
|  | |||||||
| @ -9,8 +9,8 @@ | |||||||
| 
 | 
 | ||||||
| 		<config name="config.compiler.optimization.level" value="size"/> | 		<config name="config.compiler.optimization.level" value="size"/> | ||||||
| 
 | 
 | ||||||
| 		<build type="define" name="F_CPU" value="8000000UL"/> | 		<build type="define" name="F_CPU" value="16000000UL"/> | ||||||
| 		<build type="define" name="F_USB" value="8000000UL"/> | 		<build type="define" name="F_USB" value="16000000UL"/> | ||||||
| 
 | 
 | ||||||
| 		<build type="define" name="BOOT_START_ADDR" value="0x1F000"/> | 		<build type="define" name="BOOT_START_ADDR" value="0x1F000"/> | ||||||
| 		<build type="linker-config" subtype="flags" value="--section-start=.text=0x1F000"/> | 		<build type="linker-config" subtype="flags" value="--section-start=.text=0x1F000"/> | ||||||
| @ -33,8 +33,8 @@ | |||||||
| 
 | 
 | ||||||
| 		<config name="config.compiler.optimization.level" value="size"/> | 		<config name="config.compiler.optimization.level" value="size"/> | ||||||
| 
 | 
 | ||||||
| 		<build type="define" name="F_CPU" value="8000000UL"/> | 		<build type="define" name="F_CPU" value="16000000UL"/> | ||||||
| 		<build type="define" name="F_USB" value="8000000UL"/> | 		<build type="define" name="F_USB" value="16000000UL"/> | ||||||
| 
 | 
 | ||||||
| 		<build type="define" name="BOOT_START_ADDR" value="0xF000"/> | 		<build type="define" name="BOOT_START_ADDR" value="0xF000"/> | ||||||
| 		<build type="linker-config" subtype="flags" value="--section-start=.text=0xF000"/> | 		<build type="linker-config" subtype="flags" value="--section-start=.text=0xF000"/> | ||||||
| @ -57,8 +57,8 @@ | |||||||
| 
 | 
 | ||||||
| 		<config name="config.compiler.optimization.level" value="size"/> | 		<config name="config.compiler.optimization.level" value="size"/> | ||||||
| 
 | 
 | ||||||
| 		<build type="define" name="F_CPU" value="8000000UL"/> | 		<build type="define" name="F_CPU" value="16000000UL"/> | ||||||
| 		<build type="define" name="F_USB" value="8000000UL"/> | 		<build type="define" name="F_USB" value="16000000UL"/> | ||||||
| 
 | 
 | ||||||
| 		<build type="define" name="BOOT_START_ADDR" value="0x7000"/> | 		<build type="define" name="BOOT_START_ADDR" value="0x7000"/> | ||||||
| 		<build type="linker-config" subtype="flags" value="--section-start=.text=0x7000"/> | 		<build type="linker-config" subtype="flags" value="--section-start=.text=0x7000"/> | ||||||
| @ -79,8 +79,8 @@ | |||||||
| 		<device-support value="atmega16u2"/> | 		<device-support value="atmega16u2"/> | ||||||
| 		<config name="lufa.drivers.board.name" value="none"/> | 		<config name="lufa.drivers.board.name" value="none"/> | ||||||
| 
 | 
 | ||||||
| 		<build type="define" name="F_CPU" value="8000000UL"/> | 		<build type="define" name="F_CPU" value="16000000UL"/> | ||||||
| 		<build type="define" name="F_USB" value="8000000UL"/> | 		<build type="define" name="F_USB" value="16000000UL"/> | ||||||
| 
 | 
 | ||||||
| 		<build type="define" name="BOOT_START_ADDR" value="0x3000"/> | 		<build type="define" name="BOOT_START_ADDR" value="0x3000"/> | ||||||
| 		<build type="linker-config" subtype="flags" value="--section-start=.text=0x3000"/> | 		<build type="linker-config" subtype="flags" value="--section-start=.text=0x3000"/> | ||||||
| @ -101,8 +101,8 @@ | |||||||
| 		<device-support value="atmega8u2"/> | 		<device-support value="atmega8u2"/> | ||||||
| 		<config name="lufa.drivers.board.name" value="none"/> | 		<config name="lufa.drivers.board.name" value="none"/> | ||||||
| 
 | 
 | ||||||
| 		<build type="define" name="F_CPU" value="8000000UL"/> | 		<build type="define" name="F_CPU" value="16000000UL"/> | ||||||
| 		<build type="define" name="F_USB" value="8000000UL"/> | 		<build type="define" name="F_USB" value="16000000UL"/> | ||||||
| 
 | 
 | ||||||
| 		<build type="define" name="BOOT_START_ADDR" value="0x1000"/> | 		<build type="define" name="BOOT_START_ADDR" value="0x1000"/> | ||||||
| 		<build type="linker-config" subtype="flags" value="--section-start=.text=0x1000"/> | 		<build type="linker-config" subtype="flags" value="--section-start=.text=0x1000"/> | ||||||
|  | |||||||
| @ -47,6 +47,7 @@ | |||||||
| 		#include "Descriptors.h" | 		#include "Descriptors.h" | ||||||
| 
 | 
 | ||||||
| 		#include <LUFA/Drivers/USB/USB.h> | 		#include <LUFA/Drivers/USB/USB.h> | ||||||
|  | 		#include <LUFA/Platform/Platform.h> | ||||||
| 
 | 
 | ||||||
| 	/* Preprocessor Checks: */ | 	/* Preprocessor Checks: */ | ||||||
| 		#if !defined(__OPTIMIZE_SIZE__) | 		#if !defined(__OPTIMIZE_SIZE__) | ||||||
|  | |||||||
| @ -9,8 +9,8 @@ | |||||||
| 
 | 
 | ||||||
| 		<config name="config.compiler.optimization.level" value="size"/> | 		<config name="config.compiler.optimization.level" value="size"/> | ||||||
| 
 | 
 | ||||||
| 		<build type="define" name="F_CPU" value="8000000UL"/> | 		<build type="define" name="F_CPU" value="16000000UL"/> | ||||||
| 		<build type="define" name="F_USB" value="8000000UL"/> | 		<build type="define" name="F_USB" value="16000000UL"/> | ||||||
| 
 | 
 | ||||||
| 		<build type="define" name="BOOT_START_ADDR" value="0x1F000"/> | 		<build type="define" name="BOOT_START_ADDR" value="0x1F000"/> | ||||||
| 		<build type="linker-config" subtype="flags" value="--section-start=.text=0x1F000"/> | 		<build type="linker-config" subtype="flags" value="--section-start=.text=0x1F000"/> | ||||||
| @ -26,8 +26,8 @@ | |||||||
| 
 | 
 | ||||||
| 		<config name="config.compiler.optimization.level" value="size"/> | 		<config name="config.compiler.optimization.level" value="size"/> | ||||||
| 
 | 
 | ||||||
| 		<build type="define" name="F_CPU" value="8000000UL"/> | 		<build type="define" name="F_CPU" value="16000000UL"/> | ||||||
| 		<build type="define" name="F_USB" value="8000000UL"/> | 		<build type="define" name="F_USB" value="16000000UL"/> | ||||||
| 
 | 
 | ||||||
| 		<build type="define" name="BOOT_START_ADDR" value="0xF000"/> | 		<build type="define" name="BOOT_START_ADDR" value="0xF000"/> | ||||||
| 		<build type="linker-config" subtype="flags" value="--section-start=.text=0xF000"/> | 		<build type="linker-config" subtype="flags" value="--section-start=.text=0xF000"/> | ||||||
| @ -43,8 +43,8 @@ | |||||||
| 
 | 
 | ||||||
| 		<config name="config.compiler.optimization.level" value="size"/> | 		<config name="config.compiler.optimization.level" value="size"/> | ||||||
| 
 | 
 | ||||||
| 		<build type="define" name="F_CPU" value="8000000UL"/> | 		<build type="define" name="F_CPU" value="16000000UL"/> | ||||||
| 		<build type="define" name="F_USB" value="8000000UL"/> | 		<build type="define" name="F_USB" value="16000000UL"/> | ||||||
| 
 | 
 | ||||||
| 		<build type="define" name="BOOT_START_ADDR" value="0x7000"/> | 		<build type="define" name="BOOT_START_ADDR" value="0x7000"/> | ||||||
| 		<build type="linker-config" subtype="flags" value="--section-start=.text=0x7000"/> | 		<build type="linker-config" subtype="flags" value="--section-start=.text=0x7000"/> | ||||||
| @ -60,8 +60,8 @@ | |||||||
| 
 | 
 | ||||||
| 		<config name="config.compiler.optimization.level" value="size"/> | 		<config name="config.compiler.optimization.level" value="size"/> | ||||||
| 
 | 
 | ||||||
| 		<build type="define" name="F_CPU" value="8000000UL"/> | 		<build type="define" name="F_CPU" value="16000000UL"/> | ||||||
| 		<build type="define" name="F_USB" value="8000000UL"/> | 		<build type="define" name="F_USB" value="16000000UL"/> | ||||||
| 
 | 
 | ||||||
| 		<build type="define" name="BOOT_START_ADDR" value="0x3800"/> | 		<build type="define" name="BOOT_START_ADDR" value="0x3800"/> | ||||||
| 		<build type="linker-config" subtype="flags" value="--section-start=.text=0x3800"/> | 		<build type="linker-config" subtype="flags" value="--section-start=.text=0x3800"/> | ||||||
| @ -77,8 +77,8 @@ | |||||||
| 
 | 
 | ||||||
| 		<config name="config.compiler.optimization.level" value="size"/> | 		<config name="config.compiler.optimization.level" value="size"/> | ||||||
| 
 | 
 | ||||||
| 		<build type="define" name="F_CPU" value="8000000UL"/> | 		<build type="define" name="F_CPU" value="16000000UL"/> | ||||||
| 		<build type="define" name="F_USB" value="8000000UL"/> | 		<build type="define" name="F_USB" value="16000000UL"/> | ||||||
| 
 | 
 | ||||||
| 		<build type="define" name="BOOT_START_ADDR" value="0x1800"/> | 		<build type="define" name="BOOT_START_ADDR" value="0x1800"/> | ||||||
| 		<build type="linker-config" subtype="flags" value="--section-start=.text=0x1800"/> | 		<build type="linker-config" subtype="flags" value="--section-start=.text=0x1800"/> | ||||||
|  | |||||||
| @ -49,6 +49,7 @@ | |||||||
| 
 | 
 | ||||||
| 		#include <LUFA/Drivers/Board/LEDs.h> | 		#include <LUFA/Drivers/Board/LEDs.h> | ||||||
| 		#include <LUFA/Drivers/USB/USB.h> | 		#include <LUFA/Drivers/USB/USB.h> | ||||||
|  | 		#include <LUFA/Platform/Platform.h> | ||||||
| 
 | 
 | ||||||
| 	/* Preprocessor Checks: */ | 	/* Preprocessor Checks: */ | ||||||
| 		#if !defined(__OPTIMIZE_SIZE__) | 		#if !defined(__OPTIMIZE_SIZE__) | ||||||
|  | |||||||
| @ -9,8 +9,8 @@ | |||||||
| 
 | 
 | ||||||
| 		<config name="config.compiler.optimization.level" value="size"/> | 		<config name="config.compiler.optimization.level" value="size"/> | ||||||
| 
 | 
 | ||||||
| 		<build type="define" name="F_CPU" value="8000000UL"/> | 		<build type="define" name="F_CPU" value="16000000UL"/> | ||||||
| 		<build type="define" name="F_USB" value="8000000UL"/> | 		<build type="define" name="F_USB" value="16000000UL"/> | ||||||
| 
 | 
 | ||||||
| 		<build type="define" name="BOOT_START_ADDR" value="0x1E000"/> | 		<build type="define" name="BOOT_START_ADDR" value="0x1E000"/> | ||||||
| 		<build type="linker-config" subtype="flags" value="--section-start=.text=0x1E000"/> | 		<build type="linker-config" subtype="flags" value="--section-start=.text=0x1E000"/> | ||||||
| @ -35,8 +35,8 @@ | |||||||
| 
 | 
 | ||||||
| 		<config name="config.compiler.optimization.level" value="size"/> | 		<config name="config.compiler.optimization.level" value="size"/> | ||||||
| 
 | 
 | ||||||
| 		<build type="define" name="F_CPU" value="8000000UL"/> | 		<build type="define" name="F_CPU" value="16000000UL"/> | ||||||
| 		<build type="define" name="F_USB" value="8000000UL"/> | 		<build type="define" name="F_USB" value="16000000UL"/> | ||||||
| 
 | 
 | ||||||
| 		<build type="define" name="BOOT_START_ADDR" value="0xE000"/> | 		<build type="define" name="BOOT_START_ADDR" value="0xE000"/> | ||||||
| 		<build type="linker-config" subtype="flags" value="--section-start=.text=0xE000"/> | 		<build type="linker-config" subtype="flags" value="--section-start=.text=0xE000"/> | ||||||
| @ -61,8 +61,8 @@ | |||||||
| 
 | 
 | ||||||
| 		<config name="config.compiler.optimization.level" value="size"/> | 		<config name="config.compiler.optimization.level" value="size"/> | ||||||
| 
 | 
 | ||||||
| 		<build type="define" name="F_CPU" value="8000000UL"/> | 		<build type="define" name="F_CPU" value="16000000UL"/> | ||||||
| 		<build type="define" name="F_USB" value="8000000UL"/> | 		<build type="define" name="F_USB" value="16000000UL"/> | ||||||
| 
 | 
 | ||||||
| 		<build type="define" name="BOOT_START_ADDR" value="0x7000"/> | 		<build type="define" name="BOOT_START_ADDR" value="0x7000"/> | ||||||
| 		<build type="linker-config" subtype="flags" value="--section-start=.text=0x7000"/> | 		<build type="linker-config" subtype="flags" value="--section-start=.text=0x7000"/> | ||||||
| @ -90,8 +90,8 @@ | |||||||
| 
 | 
 | ||||||
| 		<config name="config.compiler.optimization.level" value="size"/> | 		<config name="config.compiler.optimization.level" value="size"/> | ||||||
| 
 | 
 | ||||||
| 		<build type="define" name="F_CPU" value="8000000UL"/> | 		<build type="define" name="F_CPU" value="16000000UL"/> | ||||||
| 		<build type="define" name="F_USB" value="8000000UL"/> | 		<build type="define" name="F_USB" value="16000000UL"/> | ||||||
| 
 | 
 | ||||||
| 		<build type="define" name="BOOT_START_ADDR" value="0x3000"/> | 		<build type="define" name="BOOT_START_ADDR" value="0x3000"/> | ||||||
| 		<build type="linker-config" subtype="flags" value="--section-start=.text=0x3000"/> | 		<build type="linker-config" subtype="flags" value="--section-start=.text=0x3000"/> | ||||||
|  | |||||||
| @ -44,8 +44,9 @@ | |||||||
| 
 | 
 | ||||||
| 		#include "Descriptors.h" | 		#include "Descriptors.h" | ||||||
| 
 | 
 | ||||||
| 		#include <LUFA/Drivers/USB/USB.h> |  | ||||||
| 		#include <LUFA/Drivers/Board/LEDs.h> | 		#include <LUFA/Drivers/Board/LEDs.h> | ||||||
|  | 		#include <LUFA/Drivers/USB/USB.h> | ||||||
|  | 		#include <LUFA/Platform/Platform.h> | ||||||
| 
 | 
 | ||||||
| 	/* Preprocessor Checks: */ | 	/* Preprocessor Checks: */ | ||||||
| 		#if !defined(__OPTIMIZE_SIZE__) | 		#if !defined(__OPTIMIZE_SIZE__) | ||||||
|  | |||||||
| @ -9,8 +9,8 @@ | |||||||
| 
 | 
 | ||||||
| 		<config name="config.compiler.optimization.level" value="size"/> | 		<config name="config.compiler.optimization.level" value="size"/> | ||||||
| 
 | 
 | ||||||
| 		<build type="define" name="F_CPU" value="8000000UL"/> | 		<build type="define" name="F_CPU" value="16000000UL"/> | ||||||
| 		<build type="define" name="F_USB" value="8000000UL"/> | 		<build type="define" name="F_USB" value="16000000UL"/> | ||||||
| 
 | 
 | ||||||
| 		<build type="define" name="BOOT_START_ADDR" value="0x1F000"/> | 		<build type="define" name="BOOT_START_ADDR" value="0x1F000"/> | ||||||
| 		<build type="linker-config" subtype="flags" value="--section-start=.text=0x1F000"/> | 		<build type="linker-config" subtype="flags" value="--section-start=.text=0x1F000"/> | ||||||
| @ -33,8 +33,8 @@ | |||||||
| 
 | 
 | ||||||
| 		<config name="config.compiler.optimization.level" value="size"/> | 		<config name="config.compiler.optimization.level" value="size"/> | ||||||
| 
 | 
 | ||||||
| 		<build type="define" name="F_CPU" value="8000000UL"/> | 		<build type="define" name="F_CPU" value="16000000UL"/> | ||||||
| 		<build type="define" name="F_USB" value="8000000UL"/> | 		<build type="define" name="F_USB" value="16000000UL"/> | ||||||
| 
 | 
 | ||||||
| 		<build type="define" name="BOOT_START_ADDR" value="0xF000"/> | 		<build type="define" name="BOOT_START_ADDR" value="0xF000"/> | ||||||
| 		<build type="linker-config" subtype="flags" value="--section-start=.text=0xF000"/> | 		<build type="linker-config" subtype="flags" value="--section-start=.text=0xF000"/> | ||||||
| @ -57,8 +57,8 @@ | |||||||
| 
 | 
 | ||||||
| 		<config name="config.compiler.optimization.level" value="size"/> | 		<config name="config.compiler.optimization.level" value="size"/> | ||||||
| 
 | 
 | ||||||
| 		<build type="define" name="F_CPU" value="8000000UL"/> | 		<build type="define" name="F_CPU" value="16000000UL"/> | ||||||
| 		<build type="define" name="F_USB" value="8000000UL"/> | 		<build type="define" name="F_USB" value="16000000UL"/> | ||||||
| 
 | 
 | ||||||
| 		<build type="define" name="BOOT_START_ADDR" value="0x7000"/> | 		<build type="define" name="BOOT_START_ADDR" value="0x7000"/> | ||||||
| 		<build type="linker-config" subtype="flags" value="--section-start=.text=0x7000"/> | 		<build type="linker-config" subtype="flags" value="--section-start=.text=0x7000"/> | ||||||
| @ -81,8 +81,8 @@ | |||||||
| 
 | 
 | ||||||
| 		<config name="config.compiler.optimization.level" value="size"/> | 		<config name="config.compiler.optimization.level" value="size"/> | ||||||
| 
 | 
 | ||||||
| 		<build type="define" name="F_CPU" value="8000000UL"/> | 		<build type="define" name="F_CPU" value="16000000UL"/> | ||||||
| 		<build type="define" name="F_USB" value="8000000UL"/> | 		<build type="define" name="F_USB" value="16000000UL"/> | ||||||
| 
 | 
 | ||||||
| 		<build type="define" name="BOOT_START_ADDR" value="0x3000"/> | 		<build type="define" name="BOOT_START_ADDR" value="0x3000"/> | ||||||
| 		<build type="linker-config" subtype="flags" value="--section-start=.text=0x3000"/> | 		<build type="linker-config" subtype="flags" value="--section-start=.text=0x3000"/> | ||||||
| @ -105,8 +105,8 @@ | |||||||
| 
 | 
 | ||||||
| 		<config name="config.compiler.optimization.level" value="size"/> | 		<config name="config.compiler.optimization.level" value="size"/> | ||||||
| 
 | 
 | ||||||
| 		<build type="define" name="F_CPU" value="8000000UL"/> | 		<build type="define" name="F_CPU" value="16000000UL"/> | ||||||
| 		<build type="define" name="F_USB" value="8000000UL"/> | 		<build type="define" name="F_USB" value="16000000UL"/> | ||||||
| 
 | 
 | ||||||
| 		<build type="define" name="BOOT_START_ADDR" value="0x1000"/> | 		<build type="define" name="BOOT_START_ADDR" value="0x1000"/> | ||||||
| 		<build type="linker-config" subtype="flags" value="--section-start=.text=0x1000"/> | 		<build type="linker-config" subtype="flags" value="--section-start=.text=0x1000"/> | ||||||
|  | |||||||
| @ -79,12 +79,14 @@ int main(void) | |||||||
| /** Configures the board hardware and chip peripherals for the demo's functionality. */ | /** Configures the board hardware and chip peripherals for the demo's functionality. */ | ||||||
| void SetupHardware(void) | void SetupHardware(void) | ||||||
| { | { | ||||||
|  | #if (ARCH == ARCH_AVR8) | ||||||
| 	/* Disable watchdog if enabled by bootloader/fuses */ | 	/* Disable watchdog if enabled by bootloader/fuses */ | ||||||
| 	MCUSR &= ~(1 << WDRF); | 	MCUSR &= ~(1 << WDRF); | ||||||
| 	wdt_disable(); | 	wdt_disable(); | ||||||
| 
 | 
 | ||||||
| 	/* Disable clock division */ | 	/* Disable clock division */ | ||||||
| 	clock_prescale_set(clock_div_1); | 	clock_prescale_set(clock_div_1); | ||||||
|  | #endif | ||||||
| 
 | 
 | ||||||
| 	/* Hardware Initialization */ | 	/* Hardware Initialization */ | ||||||
| 	LEDs_Init(); | 	LEDs_Init(); | ||||||
| @ -265,7 +267,7 @@ bool CALLBACK_Audio_Device_GetSetInterfaceProperty(USB_ClassInfo_Audio_Device_t* | |||||||
|                                                    const uint8_t EntityAddress, |                                                    const uint8_t EntityAddress, | ||||||
|                                                    const uint16_t Parameter, |                                                    const uint16_t Parameter, | ||||||
|                                                    uint16_t* const DataLength, |                                                    uint16_t* const DataLength, | ||||||
|                                                    uint8_t* Data)  |                                                    uint8_t* Data) | ||||||
| { | { | ||||||
| 	/* No audio interface entities in the device descriptor, thus no properties to get or set. */ | 	/* No audio interface entities in the device descriptor, thus no properties to get or set. */ | ||||||
| 	return false; | 	return false; | ||||||
|  | |||||||
| @ -46,6 +46,7 @@ | |||||||
| 		#include <LUFA/Drivers/Board/Buttons.h> | 		#include <LUFA/Drivers/Board/Buttons.h> | ||||||
| 		#include <LUFA/Drivers/Peripheral/ADC.h> | 		#include <LUFA/Drivers/Peripheral/ADC.h> | ||||||
| 		#include <LUFA/Drivers/USB/USB.h> | 		#include <LUFA/Drivers/USB/USB.h> | ||||||
|  | 		#include <LUFA/Platform/Platform.h> | ||||||
| 
 | 
 | ||||||
| 		#include "Descriptors.h" | 		#include "Descriptors.h" | ||||||
| 		#include "Config/AppConfig.h" | 		#include "Config/AppConfig.h" | ||||||
| @ -76,7 +77,7 @@ | |||||||
| 		void EVENT_USB_Device_Disconnect(void); | 		void EVENT_USB_Device_Disconnect(void); | ||||||
| 		void EVENT_USB_Device_ConfigurationChanged(void); | 		void EVENT_USB_Device_ConfigurationChanged(void); | ||||||
| 		void EVENT_USB_Device_ControlRequest(void); | 		void EVENT_USB_Device_ControlRequest(void); | ||||||
| 		 | 
 | ||||||
| 		bool CALLBACK_Audio_Device_GetSetEndpointProperty(USB_ClassInfo_Audio_Device_t* const AudioInterfaceInfo, | 		bool CALLBACK_Audio_Device_GetSetEndpointProperty(USB_ClassInfo_Audio_Device_t* const AudioInterfaceInfo, | ||||||
| 		                                                  const uint8_t EndpointProperty, | 		                                                  const uint8_t EndpointProperty, | ||||||
| 		                                                  const uint8_t EndpointAddress, | 		                                                  const uint8_t EndpointAddress, | ||||||
|  | |||||||
| @ -1,14 +1,14 @@ | |||||||
| <asf xmlversion="1.0"> | <asf xmlversion="1.0"> | ||||||
| 	<project caption="Audio Input Device Demo (Class Driver APIs)" id="lufa.demos.device.class.audio_input.example"> | 	<project caption="Audio Input Device Demo (Class Driver APIs)" id="lufa.demos.device.class.audio_input.example.avr8"> | ||||||
| 		<require idref="lufa.demos.device.class.audio_input"/> | 		<require idref="lufa.demos.device.class.audio_input"/> | ||||||
| 		<require idref="lufa.boards.dummy.avr8"/> | 		<require idref="lufa.boards.dummy.avr8"/> | ||||||
| 		<generator value="as5_8"/> | 		<generator value="as5_8"/> | ||||||
| 
 | 
 | ||||||
| 		<device-support value="at90usb1287"/> | 		<device-support value="at90usb1287"/> | ||||||
| 		<config name="lufa.drivers.board.name" value="usbkey"/> | 		<config name="lufa.drivers.board.name" value="none"/> | ||||||
| 
 | 
 | ||||||
| 		<build type="define" name="F_CPU" value="8000000UL"/> | 		<build type="define" name="F_CPU" value="16000000UL"/> | ||||||
| 		<build type="define" name="F_USB" value="8000000UL"/> | 		<build type="define" name="F_USB" value="16000000UL"/> | ||||||
| 	</project> | 	</project> | ||||||
| 
 | 
 | ||||||
| 	<module type="application" id="lufa.demos.device.class.audio_input" caption="Audio Input Device Demo (Class Driver APIs)"> | 	<module type="application" id="lufa.demos.device.class.audio_input" caption="Audio Input Device Demo (Class Driver APIs)"> | ||||||
|  | |||||||
| @ -79,12 +79,14 @@ int main(void) | |||||||
| /** Configures the board hardware and chip peripherals for the demo's functionality. */ | /** Configures the board hardware and chip peripherals for the demo's functionality. */ | ||||||
| void SetupHardware(void) | void SetupHardware(void) | ||||||
| { | { | ||||||
|  | #if (ARCH == ARCH_AVR8) | ||||||
| 	/* Disable watchdog if enabled by bootloader/fuses */ | 	/* Disable watchdog if enabled by bootloader/fuses */ | ||||||
| 	MCUSR &= ~(1 << WDRF); | 	MCUSR &= ~(1 << WDRF); | ||||||
| 	wdt_disable(); | 	wdt_disable(); | ||||||
| 
 | 
 | ||||||
| 	/* Disable clock division */ | 	/* Disable clock division */ | ||||||
| 	clock_prescale_set(clock_div_1); | 	clock_prescale_set(clock_div_1); | ||||||
|  | #endif | ||||||
| 
 | 
 | ||||||
| 	/* Hardware Initialization */ | 	/* Hardware Initialization */ | ||||||
| 	LEDs_Init(); | 	LEDs_Init(); | ||||||
| @ -302,7 +304,7 @@ bool CALLBACK_Audio_Device_GetSetInterfaceProperty(USB_ClassInfo_Audio_Device_t* | |||||||
|                                                    const uint8_t EntityAddress, |                                                    const uint8_t EntityAddress, | ||||||
|                                                    const uint16_t Parameter, |                                                    const uint16_t Parameter, | ||||||
|                                                    uint16_t* const DataLength, |                                                    uint16_t* const DataLength, | ||||||
|                                                    uint8_t* Data)  |                                                    uint8_t* Data) | ||||||
| { | { | ||||||
| 	/* No audio interface entities in the device descriptor, thus no properties to get or set. */ | 	/* No audio interface entities in the device descriptor, thus no properties to get or set. */ | ||||||
| 	return false; | 	return false; | ||||||
|  | |||||||
| @ -48,6 +48,7 @@ | |||||||
| 
 | 
 | ||||||
| 		#include <LUFA/Drivers/Board/LEDs.h> | 		#include <LUFA/Drivers/Board/LEDs.h> | ||||||
| 		#include <LUFA/Drivers/USB/USB.h> | 		#include <LUFA/Drivers/USB/USB.h> | ||||||
|  | 		#include <LUFA/Platform/Platform.h> | ||||||
| 
 | 
 | ||||||
| 	/* Macros: */ | 	/* Macros: */ | ||||||
| 		/** LED mask for the library LED driver, to indicate that the USB interface is not ready. */ | 		/** LED mask for the library LED driver, to indicate that the USB interface is not ready. */ | ||||||
| @ -81,6 +82,6 @@ | |||||||
| 		                                                   const uint8_t EntityAddress, | 		                                                   const uint8_t EntityAddress, | ||||||
| 		                                                   const uint16_t Parameter, | 		                                                   const uint16_t Parameter, | ||||||
| 		                                                   uint16_t* const DataLength, | 		                                                   uint16_t* const DataLength, | ||||||
| 		                                                   uint8_t* Data);		 | 		                                                   uint8_t* Data); | ||||||
| #endif | #endif | ||||||
| 
 | 
 | ||||||
|  | |||||||
| @ -1,14 +1,14 @@ | |||||||
| <asf xmlversion="1.0"> | <asf xmlversion="1.0"> | ||||||
| 	<project caption="Audio Output Device Demo (Class Driver APIs)" id="lufa.demos.device.class.audio_output.example"> | 	<project caption="Audio Output Device Demo (Class Driver APIs)" id="lufa.demos.device.class.audio_output.example.avr8"> | ||||||
| 		<require idref="lufa.demos.device.class.audio_output"/> | 		<require idref="lufa.demos.device.class.audio_output"/> | ||||||
| 		<require idref="lufa.boards.dummy.avr8"/> | 		<require idref="lufa.boards.dummy.avr8"/> | ||||||
| 		<generator value="as5_8"/> | 		<generator value="as5_8"/> | ||||||
| 
 | 
 | ||||||
| 		<device-support value="at90usb1287"/> | 		<device-support value="at90usb1287"/> | ||||||
| 		<config name="lufa.drivers.board.name" value="usbkey"/> | 		<config name="lufa.drivers.board.name" value="none"/> | ||||||
| 
 | 
 | ||||||
| 		<build type="define" name="F_CPU" value="8000000UL"/> | 		<build type="define" name="F_CPU" value="16000000UL"/> | ||||||
| 		<build type="define" name="F_USB" value="8000000UL"/> | 		<build type="define" name="F_USB" value="16000000UL"/> | ||||||
| 	</project> | 	</project> | ||||||
| 
 | 
 | ||||||
| 	<module type="application" id="lufa.demos.device.class.audio_output" caption="Audio Output Device Demo (Class Driver APIs)"> | 	<module type="application" id="lufa.demos.device.class.audio_output" caption="Audio Output Device Demo (Class Driver APIs)"> | ||||||
| @ -45,6 +45,5 @@ | |||||||
| 		<require idref="lufa.drivers.usb"/> | 		<require idref="lufa.drivers.usb"/> | ||||||
| 		<require idref="lufa.drivers.board"/> | 		<require idref="lufa.drivers.board"/> | ||||||
| 		<require idref="lufa.drivers.board.leds"/> | 		<require idref="lufa.drivers.board.leds"/> | ||||||
| 		<require idref="lufa.drivers.board.buttons"/> |  | ||||||
| 	</module> | 	</module> | ||||||
| </asf> | </asf> | ||||||
|  | |||||||
| @ -85,6 +85,39 @@ | |||||||
| //		#define NO_AUTO_VBUS_MANAGEMENT
 | //		#define NO_AUTO_VBUS_MANAGEMENT
 | ||||||
| //		#define INVERTED_VBUS_ENABLE_LINE
 | //		#define INVERTED_VBUS_ENABLE_LINE
 | ||||||
| 
 | 
 | ||||||
|  | 	#elif (ARCH == ARCH_XMEGA) | ||||||
|  | 
 | ||||||
|  | 		/* Non-USB Related Configuration Tokens: */ | ||||||
|  | //		#define DISABLE_TERMINAL_CODES
 | ||||||
|  | 
 | ||||||
|  | 		/* USB Class Driver Related Tokens: */ | ||||||
|  | //		#define HID_HOST_BOOT_PROTOCOL_ONLY
 | ||||||
|  | //		#define HID_STATETABLE_STACK_DEPTH       {Insert Value Here}
 | ||||||
|  | //		#define HID_USAGE_STACK_DEPTH            {Insert Value Here}
 | ||||||
|  | //		#define HID_MAX_COLLECTIONS              {Insert Value Here}
 | ||||||
|  | //		#define HID_MAX_REPORTITEMS              {Insert Value Here}
 | ||||||
|  | //		#define HID_MAX_REPORT_IDS               {Insert Value Here}
 | ||||||
|  | //		#define NO_CLASS_DRIVER_AUTOFLUSH
 | ||||||
|  | 
 | ||||||
|  | 		/* General USB Driver Related Tokens: */ | ||||||
|  | 		#define USE_STATIC_OPTIONS               (USB_DEVICE_OPT_FULLSPEED | USB_OPT_RC32MCLKSRC | USB_OPT_BUSEVENT_PRIHIGH) | ||||||
|  | //		#define USB_STREAM_TIMEOUT_MS            {Insert Value Here}
 | ||||||
|  | //		#define NO_LIMITED_CONTROLLER_CONNECT
 | ||||||
|  | //		#define NO_SOF_EVENTS
 | ||||||
|  | 
 | ||||||
|  | 		/* USB Device Mode Driver Related Tokens: */ | ||||||
|  | //		#define USE_RAM_DESCRIPTORS
 | ||||||
|  | 		#define USE_FLASH_DESCRIPTORS | ||||||
|  | //		#define USE_EEPROM_DESCRIPTORS
 | ||||||
|  | //		#define NO_INTERNAL_SERIAL
 | ||||||
|  | 		#define FIXED_CONTROL_ENDPOINT_SIZE      8 | ||||||
|  | //		#define DEVICE_STATE_AS_GPIOR            {Insert Value Here}
 | ||||||
|  | 		#define FIXED_NUM_CONFIGURATIONS         1 | ||||||
|  | //		#define CONTROL_ONLY_DEVICE
 | ||||||
|  | 		#define MAX_ENDPOINT_INDEX               6 | ||||||
|  | //		#define NO_DEVICE_REMOTE_WAKEUP
 | ||||||
|  | //		#define NO_DEVICE_SELF_POWER
 | ||||||
|  | 
 | ||||||
| 	#else | 	#else | ||||||
| 
 | 
 | ||||||
| 		#error Unsupported architecture for this LUFA configuration file. | 		#error Unsupported architecture for this LUFA configuration file. | ||||||
|  | |||||||
| @ -131,12 +131,24 @@ int main(void) | |||||||
| /** Configures the board hardware and chip peripherals for the demo's functionality. */ | /** Configures the board hardware and chip peripherals for the demo's functionality. */ | ||||||
| void SetupHardware(void) | void SetupHardware(void) | ||||||
| { | { | ||||||
|  | #if (ARCH == ARCH_AVR8) | ||||||
| 	/* Disable watchdog if enabled by bootloader/fuses */ | 	/* Disable watchdog if enabled by bootloader/fuses */ | ||||||
| 	MCUSR &= ~(1 << WDRF); | 	MCUSR &= ~(1 << WDRF); | ||||||
| 	wdt_disable(); | 	wdt_disable(); | ||||||
| 
 | 
 | ||||||
| 	/* Disable clock division */ | 	/* Disable clock division */ | ||||||
| 	clock_prescale_set(clock_div_1); | 	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 */ | 	/* Hardware Initialization */ | ||||||
| 	Joystick_Init(); | 	Joystick_Init(); | ||||||
|  | |||||||
| @ -48,6 +48,7 @@ | |||||||
| 		#include <LUFA/Drivers/Board/LEDs.h> | 		#include <LUFA/Drivers/Board/LEDs.h> | ||||||
| 		#include <LUFA/Drivers/Board/Joystick.h> | 		#include <LUFA/Drivers/Board/Joystick.h> | ||||||
| 		#include <LUFA/Drivers/USB/USB.h> | 		#include <LUFA/Drivers/USB/USB.h> | ||||||
|  | 		#include <LUFA/Platform/Platform.h> | ||||||
| 
 | 
 | ||||||
| 	/* Macros: */ | 	/* Macros: */ | ||||||
| 		/** LED mask for the library LED driver, to indicate that the USB interface is not ready. */ | 		/** LED mask for the library LED driver, to indicate that the USB interface is not ready. */ | ||||||
|  | |||||||
| @ -13,6 +13,9 @@ | |||||||
|  *  \li Series 7 USB AVRs (AT90USBxxx7) |  *  \li Series 7 USB AVRs (AT90USBxxx7) | ||||||
|  *  \li Series 6 USB AVRs (AT90USBxxx6) |  *  \li Series 6 USB AVRs (AT90USBxxx6) | ||||||
|  *  \li Series 4 USB AVRs (ATMEGAxxU4) |  *  \li Series 4 USB AVRs (ATMEGAxxU4) | ||||||
|  |  *  \li Series AU XMEGA AVRs (ATXMEGAxxxAxU) | ||||||
|  |  *  \li Series B XMEGA AVRs (ATXMEGAxxxBxU) | ||||||
|  |  *  \li Series C XMEGA AVRs (ATXMEGAxxxCxU) | ||||||
|  * |  * | ||||||
|  *  \section Sec_Info USB Information: |  *  \section Sec_Info USB Information: | ||||||
|  * |  * | ||||||
|  | |||||||
| @ -1,14 +1,26 @@ | |||||||
| <asf xmlversion="1.0"> | <asf xmlversion="1.0"> | ||||||
| 	<project caption="Dual Virtual Serial Device Demo (Class Driver APIs)" id="lufa.demos.device.class.dual_cdc.example"> | 	<project caption="Dual Virtual Serial Device Demo (Class Driver APIs)" id="lufa.demos.device.class.dual_cdc.example.avr8"> | ||||||
| 		<require idref="lufa.demos.device.class.dual_cdc"/> | 		<require idref="lufa.demos.device.class.dual_cdc"/> | ||||||
| 		<require idref="lufa.boards.dummy.avr8"/> | 		<require idref="lufa.boards.dummy.avr8"/> | ||||||
| 		<generator value="as5_8"/> | 		<generator value="as5_8"/> | ||||||
| 
 | 
 | ||||||
| 		<device-support value="at90usb1287"/> | 		<device-support value="at90usb1287"/> | ||||||
| 		<config name="lufa.drivers.board.name" value="usbkey"/> | 		<config name="lufa.drivers.board.name" value="none"/> | ||||||
| 
 | 
 | ||||||
| 		<build type="define" name="F_CPU" value="8000000UL"/> | 		<build type="define" name="F_CPU" value="16000000UL"/> | ||||||
| 		<build type="define" name="F_USB" value="8000000UL"/> | 		<build type="define" name="F_USB" value="16000000UL"/> | ||||||
|  | 	</project> | ||||||
|  | 
 | ||||||
|  | 	<project caption="Dual Virtual Serial Device Demo (Class Driver APIs)" id="lufa.demos.device.class.dual_cdc.example.xmega"> | ||||||
|  | 		<require idref="lufa.demos.device.class.dual_cdc"/> | ||||||
|  | 		<require idref="lufa.boards.dummy.xmega"/> | ||||||
|  | 		<generator value="as5_8"/> | ||||||
|  | 
 | ||||||
|  | 		<device-support value="atxmega128a1u"/> | ||||||
|  | 		<config name="lufa.drivers.board.name" value="none"/> | ||||||
|  | 
 | ||||||
|  | 		<build type="define" name="F_CPU" value="32000000UL"/> | ||||||
|  | 		<build type="define" name="F_USB" value="48000000UL"/> | ||||||
| 	</project> | 	</project> | ||||||
| 
 | 
 | ||||||
| 	<module type="application" id="lufa.demos.device.class.dual_cdc" caption="Dual Virtual Serial Device Demo (Class Driver APIs)"> | 	<module type="application" id="lufa.demos.device.class.dual_cdc" caption="Dual Virtual Serial Device Demo (Class Driver APIs)"> | ||||||
|  | |||||||
| @ -85,6 +85,39 @@ | |||||||
| //		#define NO_AUTO_VBUS_MANAGEMENT
 | //		#define NO_AUTO_VBUS_MANAGEMENT
 | ||||||
| //		#define INVERTED_VBUS_ENABLE_LINE
 | //		#define INVERTED_VBUS_ENABLE_LINE
 | ||||||
| 
 | 
 | ||||||
|  | 	#elif (ARCH == ARCH_XMEGA) | ||||||
|  | 
 | ||||||
|  | 		/* Non-USB Related Configuration Tokens: */ | ||||||
|  | //		#define DISABLE_TERMINAL_CODES
 | ||||||
|  | 
 | ||||||
|  | 		/* USB Class Driver Related Tokens: */ | ||||||
|  | //		#define HID_HOST_BOOT_PROTOCOL_ONLY
 | ||||||
|  | //		#define HID_STATETABLE_STACK_DEPTH       {Insert Value Here}
 | ||||||
|  | //		#define HID_USAGE_STACK_DEPTH            {Insert Value Here}
 | ||||||
|  | //		#define HID_MAX_COLLECTIONS              {Insert Value Here}
 | ||||||
|  | //		#define HID_MAX_REPORTITEMS              {Insert Value Here}
 | ||||||
|  | //		#define HID_MAX_REPORT_IDS               {Insert Value Here}
 | ||||||
|  | //		#define NO_CLASS_DRIVER_AUTOFLUSH
 | ||||||
|  | 
 | ||||||
|  | 		/* General USB Driver Related Tokens: */ | ||||||
|  | 		#define USE_STATIC_OPTIONS               (USB_DEVICE_OPT_FULLSPEED | USB_OPT_RC32MCLKSRC | USB_OPT_BUSEVENT_PRIHIGH) | ||||||
|  | //		#define USB_STREAM_TIMEOUT_MS            {Insert Value Here}
 | ||||||
|  | //		#define NO_LIMITED_CONTROLLER_CONNECT
 | ||||||
|  | //		#define NO_SOF_EVENTS
 | ||||||
|  | 
 | ||||||
|  | 		/* USB Device Mode Driver Related Tokens: */ | ||||||
|  | //		#define USE_RAM_DESCRIPTORS
 | ||||||
|  | 		#define USE_FLASH_DESCRIPTORS | ||||||
|  | //		#define USE_EEPROM_DESCRIPTORS
 | ||||||
|  | //		#define NO_INTERNAL_SERIAL
 | ||||||
|  | 		#define FIXED_CONTROL_ENDPOINT_SIZE      8 | ||||||
|  | //		#define DEVICE_STATE_AS_GPIOR            {Insert Value Here}
 | ||||||
|  | 		#define FIXED_NUM_CONFIGURATIONS         1 | ||||||
|  | //		#define CONTROL_ONLY_DEVICE
 | ||||||
|  | 		#define MAX_ENDPOINT_INDEX               1 | ||||||
|  | //		#define NO_DEVICE_REMOTE_WAKEUP
 | ||||||
|  | //		#define NO_DEVICE_SELF_POWER
 | ||||||
|  | 
 | ||||||
| 	#else | 	#else | ||||||
| 
 | 
 | ||||||
| 		#error Unsupported architecture for this LUFA configuration file. | 		#error Unsupported architecture for this LUFA configuration file. | ||||||
|  | |||||||
| @ -80,12 +80,24 @@ int main(void) | |||||||
| /** Configures the board hardware and chip peripherals for the demo's functionality. */ | /** Configures the board hardware and chip peripherals for the demo's functionality. */ | ||||||
| void SetupHardware(void) | void SetupHardware(void) | ||||||
| { | { | ||||||
|  | #if (ARCH == ARCH_AVR8) | ||||||
| 	/* Disable watchdog if enabled by bootloader/fuses */ | 	/* Disable watchdog if enabled by bootloader/fuses */ | ||||||
| 	MCUSR &= ~(1 << WDRF); | 	MCUSR &= ~(1 << WDRF); | ||||||
| 	wdt_disable(); | 	wdt_disable(); | ||||||
| 
 | 
 | ||||||
| 	/* Disable clock division */ | 	/* Disable clock division */ | ||||||
| 	clock_prescale_set(clock_div_1); | 	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 */ | 	/* Hardware Initialization */ | ||||||
| 	LEDs_Init(); | 	LEDs_Init(); | ||||||
|  | |||||||
| @ -45,9 +45,10 @@ | |||||||
| 
 | 
 | ||||||
| 		#include "Descriptors.h" | 		#include "Descriptors.h" | ||||||
| 		#include "Config/AppConfig.h" | 		#include "Config/AppConfig.h" | ||||||
| 		 | 
 | ||||||
| 		#include <LUFA/Drivers/Board/LEDs.h> | 		#include <LUFA/Drivers/Board/LEDs.h> | ||||||
| 		#include <LUFA/Drivers/USB/USB.h> | 		#include <LUFA/Drivers/USB/USB.h> | ||||||
|  | 		#include <LUFA/Platform/Platform.h> | ||||||
| 
 | 
 | ||||||
| 	/* Macros: */ | 	/* Macros: */ | ||||||
| 		/** LED mask for the library LED driver, to indicate that the USB interface is not ready. */ | 		/** LED mask for the library LED driver, to indicate that the USB interface is not ready. */ | ||||||
|  | |||||||
| @ -14,6 +14,9 @@ | |||||||
|  *  \li Series 6 USB AVRs (AT90USBxxx6) |  *  \li Series 6 USB AVRs (AT90USBxxx6) | ||||||
|  *  \li Series 4 USB AVRs (ATMEGAxxU4) |  *  \li Series 4 USB AVRs (ATMEGAxxU4) | ||||||
|  *  \li Series 2 USB AVRs (AT90USBxx2, ATMEGAxxU2) |  *  \li Series 2 USB AVRs (AT90USBxx2, ATMEGAxxU2) | ||||||
|  |  *  \li Series AU XMEGA AVRs (ATXMEGAxxxAxU) | ||||||
|  |  *  \li Series B XMEGA AVRs (ATXMEGAxxxBxU) | ||||||
|  |  *  \li Series C XMEGA AVRs (ATXMEGAxxxCxU) | ||||||
|  * |  * | ||||||
|  *  \section Sec_Info USB Information: |  *  \section Sec_Info USB Information: | ||||||
|  * |  * | ||||||
| @ -68,7 +71,7 @@ | |||||||
|  *   <tr> |  *   <tr> | ||||||
|  *    <td>GENERIC_REPORT_SIZE</td> |  *    <td>GENERIC_REPORT_SIZE</td> | ||||||
|  *    <td>AppConfig.h</td> |  *    <td>AppConfig.h</td> | ||||||
|  *    <td>This token defines the size of the device reports, both sent and received (including report ID byte). The value  |  *    <td>This token defines the size of the device reports, both sent and received (including report ID byte). The value | ||||||
|  *        must be an integer ranging from 1 to 255.</td> |  *        must be an integer ranging from 1 to 255.</td> | ||||||
|  *   </tr> |  *   </tr> | ||||||
|  *  </table> |  *  </table> | ||||||
|  | |||||||
| @ -1,14 +1,26 @@ | |||||||
| <asf xmlversion="1.0"> | <asf xmlversion="1.0"> | ||||||
| 	<project caption="Generic HID Device Demo (Class Driver APIs)" id="lufa.demos.device.class.generic_hid.example"> | 	<project caption="Generic HID Device Demo (Class Driver APIs)" id="lufa.demos.device.class.generic_hid.example.avr8"> | ||||||
| 		<require idref="lufa.demos.device.class.generic_hid"/> | 		<require idref="lufa.demos.device.class.generic_hid"/> | ||||||
| 		<require idref="lufa.boards.dummy.avr8"/> | 		<require idref="lufa.boards.dummy.avr8"/> | ||||||
| 		<generator value="as5_8"/> | 		<generator value="as5_8"/> | ||||||
| 
 | 
 | ||||||
| 		<device-support value="at90usb1287"/> | 		<device-support value="at90usb1287"/> | ||||||
| 		<config name="lufa.drivers.board.name" value="usbkey"/> | 		<config name="lufa.drivers.board.name" value="none"/> | ||||||
| 
 | 
 | ||||||
| 		<build type="define" name="F_CPU" value="8000000UL"/> | 		<build type="define" name="F_CPU" value="16000000UL"/> | ||||||
| 		<build type="define" name="F_USB" value="8000000UL"/> | 		<build type="define" name="F_USB" value="16000000UL"/> | ||||||
|  | 	</project> | ||||||
|  | 
 | ||||||
|  | 	<project caption="Generic HID Device Demo (Class Driver APIs)" id="lufa.demos.device.class.generic_hid.example.xmega"> | ||||||
|  | 		<require idref="lufa.demos.device.class.generic_hid"/> | ||||||
|  | 		<require idref="lufa.boards.dummy.xmega"/> | ||||||
|  | 		<generator value="as5_8"/> | ||||||
|  | 
 | ||||||
|  | 		<device-support value="atxmega128a1u"/> | ||||||
|  | 		<config name="lufa.drivers.board.name" value="none"/> | ||||||
|  | 
 | ||||||
|  | 		<build type="define" name="F_CPU" value="32000000UL"/> | ||||||
|  | 		<build type="define" name="F_USB" value="48000000UL"/> | ||||||
| 	</project> | 	</project> | ||||||
| 
 | 
 | ||||||
| 	<module type="application" id="lufa.demos.device.class.generic_hid" caption="Generic HID Device Demo (Class Driver APIs)"> | 	<module type="application" id="lufa.demos.device.class.generic_hid" caption="Generic HID Device Demo (Class Driver APIs)"> | ||||||
|  | |||||||
| @ -85,6 +85,39 @@ | |||||||
| //		#define NO_AUTO_VBUS_MANAGEMENT
 | //		#define NO_AUTO_VBUS_MANAGEMENT
 | ||||||
| //		#define INVERTED_VBUS_ENABLE_LINE
 | //		#define INVERTED_VBUS_ENABLE_LINE
 | ||||||
| 
 | 
 | ||||||
|  | 	#elif (ARCH == ARCH_XMEGA) | ||||||
|  | 
 | ||||||
|  | 		/* Non-USB Related Configuration Tokens: */ | ||||||
|  | //		#define DISABLE_TERMINAL_CODES
 | ||||||
|  | 
 | ||||||
|  | 		/* USB Class Driver Related Tokens: */ | ||||||
|  | //		#define HID_HOST_BOOT_PROTOCOL_ONLY
 | ||||||
|  | //		#define HID_STATETABLE_STACK_DEPTH       {Insert Value Here}
 | ||||||
|  | //		#define HID_USAGE_STACK_DEPTH            {Insert Value Here}
 | ||||||
|  | //		#define HID_MAX_COLLECTIONS              {Insert Value Here}
 | ||||||
|  | //		#define HID_MAX_REPORTITEMS              {Insert Value Here}
 | ||||||
|  | //		#define HID_MAX_REPORT_IDS               {Insert Value Here}
 | ||||||
|  | //		#define NO_CLASS_DRIVER_AUTOFLUSH
 | ||||||
|  | 
 | ||||||
|  | 		/* General USB Driver Related Tokens: */ | ||||||
|  | 		#define USE_STATIC_OPTIONS               (USB_DEVICE_OPT_FULLSPEED | USB_OPT_RC32MCLKSRC | USB_OPT_BUSEVENT_PRIHIGH) | ||||||
|  | //		#define USB_STREAM_TIMEOUT_MS            {Insert Value Here}
 | ||||||
|  | //		#define NO_LIMITED_CONTROLLER_CONNECT
 | ||||||
|  | //		#define NO_SOF_EVENTS
 | ||||||
|  | 
 | ||||||
|  | 		/* USB Device Mode Driver Related Tokens: */ | ||||||
|  | //		#define USE_RAM_DESCRIPTORS
 | ||||||
|  | 		#define USE_FLASH_DESCRIPTORS | ||||||
|  | //		#define USE_EEPROM_DESCRIPTORS
 | ||||||
|  | //		#define NO_INTERNAL_SERIAL
 | ||||||
|  | 		#define FIXED_CONTROL_ENDPOINT_SIZE      8 | ||||||
|  | //		#define DEVICE_STATE_AS_GPIOR            {Insert Value Here}
 | ||||||
|  | 		#define FIXED_NUM_CONFIGURATIONS         1 | ||||||
|  | //		#define CONTROL_ONLY_DEVICE
 | ||||||
|  | 		#define MAX_ENDPOINT_INDEX               1 | ||||||
|  | //		#define NO_DEVICE_REMOTE_WAKEUP
 | ||||||
|  | //		#define NO_DEVICE_SELF_POWER
 | ||||||
|  | 
 | ||||||
| 	#else | 	#else | ||||||
| 
 | 
 | ||||||
| 		#error Unsupported architecture for this LUFA configuration file. | 		#error Unsupported architecture for this LUFA configuration file. | ||||||
|  | |||||||
| @ -80,12 +80,24 @@ int main(void) | |||||||
| /** Configures the board hardware and chip peripherals for the demo's functionality. */ | /** Configures the board hardware and chip peripherals for the demo's functionality. */ | ||||||
| void SetupHardware(void) | void SetupHardware(void) | ||||||
| { | { | ||||||
|  | #if (ARCH == ARCH_AVR8) | ||||||
| 	/* Disable watchdog if enabled by bootloader/fuses */ | 	/* Disable watchdog if enabled by bootloader/fuses */ | ||||||
| 	MCUSR &= ~(1 << WDRF); | 	MCUSR &= ~(1 << WDRF); | ||||||
| 	wdt_disable(); | 	wdt_disable(); | ||||||
| 
 | 
 | ||||||
| 	/* Disable clock division */ | 	/* Disable clock division */ | ||||||
| 	clock_prescale_set(clock_div_1); | 	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 */ | 	/* Hardware Initialization */ | ||||||
| 	Joystick_Init(); | 	Joystick_Init(); | ||||||
|  | |||||||
| @ -49,6 +49,7 @@ | |||||||
| 		#include <LUFA/Drivers/Board/LEDs.h> | 		#include <LUFA/Drivers/Board/LEDs.h> | ||||||
| 		#include <LUFA/Drivers/Board/Buttons.h> | 		#include <LUFA/Drivers/Board/Buttons.h> | ||||||
| 		#include <LUFA/Drivers/USB/USB.h> | 		#include <LUFA/Drivers/USB/USB.h> | ||||||
|  | 		#include <LUFA/Platform/Platform.h> | ||||||
| 
 | 
 | ||||||
| 	/* Type Defines: */ | 	/* Type Defines: */ | ||||||
| 		/** Type define for the joystick HID report structure, for creating and sending HID reports to the host PC.
 | 		/** Type define for the joystick HID report structure, for creating and sending HID reports to the host PC.
 | ||||||
|  | |||||||
| @ -14,6 +14,9 @@ | |||||||
|  *  \li Series 6 USB AVRs (AT90USBxxx6) |  *  \li Series 6 USB AVRs (AT90USBxxx6) | ||||||
|  *  \li Series 4 USB AVRs (ATMEGAxxU4) |  *  \li Series 4 USB AVRs (ATMEGAxxU4) | ||||||
|  *  \li Series 2 USB AVRs (AT90USBxx2, ATMEGAxxU2) |  *  \li Series 2 USB AVRs (AT90USBxx2, ATMEGAxxU2) | ||||||
|  |  *  \li Series AU XMEGA AVRs (ATXMEGAxxxAxU) | ||||||
|  |  *  \li Series B XMEGA AVRs (ATXMEGAxxxBxU) | ||||||
|  |  *  \li Series C XMEGA AVRs (ATXMEGAxxxCxU) | ||||||
|  * |  * | ||||||
|  *  \section Sec_Info USB Information: |  *  \section Sec_Info USB Information: | ||||||
|  * |  * | ||||||
|  | |||||||
| @ -1,14 +1,26 @@ | |||||||
| <asf xmlversion="1.0"> | <asf xmlversion="1.0"> | ||||||
| 	<project caption="Joystick HID Device Demo (Class Driver APIs)" id="lufa.demos.device.class.joystick.example"> | 	<project caption="Joystick HID Device Demo (Class Driver APIs)" id="lufa.demos.device.class.joystick.example.avr8"> | ||||||
| 		<require idref="lufa.demos.device.class.joystick"/> | 		<require idref="lufa.demos.device.class.joystick"/> | ||||||
| 		<require idref="lufa.boards.dummy.avr8"/> | 		<require idref="lufa.boards.dummy.avr8"/> | ||||||
| 		<generator value="as5_8"/> | 		<generator value="as5_8"/> | ||||||
| 
 | 
 | ||||||
| 		<device-support value="at90usb1287"/> | 		<device-support value="at90usb1287"/> | ||||||
| 		<config name="lufa.drivers.board.name" value="usbkey"/> | 		<config name="lufa.drivers.board.name" value="none"/> | ||||||
| 
 | 
 | ||||||
| 		<build type="define" name="F_CPU" value="8000000UL"/> | 		<build type="define" name="F_CPU" value="16000000UL"/> | ||||||
| 		<build type="define" name="F_USB" value="8000000UL"/> | 		<build type="define" name="F_USB" value="16000000UL"/> | ||||||
|  | 	</project> | ||||||
|  | 
 | ||||||
|  | 	<project caption="Joystick HID Device Demo (Class Driver APIs)" id="lufa.demos.device.class.joystick.example.xmega"> | ||||||
|  | 		<require idref="lufa.demos.device.class.joystick"/> | ||||||
|  | 		<require idref="lufa.boards.dummy.xmega"/> | ||||||
|  | 		<generator value="as5_8"/> | ||||||
|  | 
 | ||||||
|  | 		<device-support value="atxmega128a1u"/> | ||||||
|  | 		<config name="lufa.drivers.board.name" value="none"/> | ||||||
|  | 
 | ||||||
|  | 		<build type="define" name="F_CPU" value="32000000UL"/> | ||||||
|  | 		<build type="define" name="F_USB" value="48000000UL"/> | ||||||
| 	</project> | 	</project> | ||||||
| 
 | 
 | ||||||
| 	<module type="application" id="lufa.demos.device.class.joystick" caption="Joystick HID Device Demo (Class Driver APIs)"> | 	<module type="application" id="lufa.demos.device.class.joystick" caption="Joystick HID Device Demo (Class Driver APIs)"> | ||||||
| @ -43,6 +55,7 @@ | |||||||
| 		<require idref="lufa.drivers.usb"/> | 		<require idref="lufa.drivers.usb"/> | ||||||
| 		<require idref="lufa.drivers.board"/> | 		<require idref="lufa.drivers.board"/> | ||||||
| 		<require idref="lufa.drivers.board.leds"/> | 		<require idref="lufa.drivers.board.leds"/> | ||||||
|  | 		<require idref="lufa.drivers.board.buttons"/> | ||||||
| 		<require idref="lufa.drivers.board.joystick"/> | 		<require idref="lufa.drivers.board.joystick"/> | ||||||
| 	</module> | 	</module> | ||||||
| </asf> | </asf> | ||||||
|  | |||||||
| @ -85,6 +85,39 @@ | |||||||
| //		#define NO_AUTO_VBUS_MANAGEMENT
 | //		#define NO_AUTO_VBUS_MANAGEMENT
 | ||||||
| //		#define INVERTED_VBUS_ENABLE_LINE
 | //		#define INVERTED_VBUS_ENABLE_LINE
 | ||||||
| 
 | 
 | ||||||
|  | 	#elif (ARCH == ARCH_XMEGA) | ||||||
|  | 
 | ||||||
|  | 		/* Non-USB Related Configuration Tokens: */ | ||||||
|  | //		#define DISABLE_TERMINAL_CODES
 | ||||||
|  | 
 | ||||||
|  | 		/* USB Class Driver Related Tokens: */ | ||||||
|  | //		#define HID_HOST_BOOT_PROTOCOL_ONLY
 | ||||||
|  | //		#define HID_STATETABLE_STACK_DEPTH       {Insert Value Here}
 | ||||||
|  | //		#define HID_USAGE_STACK_DEPTH            {Insert Value Here}
 | ||||||
|  | //		#define HID_MAX_COLLECTIONS              {Insert Value Here}
 | ||||||
|  | //		#define HID_MAX_REPORTITEMS              {Insert Value Here}
 | ||||||
|  | //		#define HID_MAX_REPORT_IDS               {Insert Value Here}
 | ||||||
|  | //		#define NO_CLASS_DRIVER_AUTOFLUSH
 | ||||||
|  | 
 | ||||||
|  | 		/* General USB Driver Related Tokens: */ | ||||||
|  | 		#define USE_STATIC_OPTIONS               (USB_DEVICE_OPT_FULLSPEED | USB_OPT_RC32MCLKSRC | USB_OPT_BUSEVENT_PRIHIGH) | ||||||
|  | //		#define USB_STREAM_TIMEOUT_MS            {Insert Value Here}
 | ||||||
|  | //		#define NO_LIMITED_CONTROLLER_CONNECT
 | ||||||
|  | //		#define NO_SOF_EVENTS
 | ||||||
|  | 
 | ||||||
|  | 		/* USB Device Mode Driver Related Tokens: */ | ||||||
|  | //		#define USE_RAM_DESCRIPTORS
 | ||||||
|  | 		#define USE_FLASH_DESCRIPTORS | ||||||
|  | //		#define USE_EEPROM_DESCRIPTORS
 | ||||||
|  | //		#define NO_INTERNAL_SERIAL
 | ||||||
|  | 		#define FIXED_CONTROL_ENDPOINT_SIZE      8 | ||||||
|  | //		#define DEVICE_STATE_AS_GPIOR            {Insert Value Here}
 | ||||||
|  | 		#define FIXED_NUM_CONFIGURATIONS         1 | ||||||
|  | //		#define CONTROL_ONLY_DEVICE
 | ||||||
|  | 		#define MAX_ENDPOINT_INDEX               1 | ||||||
|  | //		#define NO_DEVICE_REMOTE_WAKEUP
 | ||||||
|  | //		#define NO_DEVICE_SELF_POWER
 | ||||||
|  | 
 | ||||||
| 	#else | 	#else | ||||||
| 
 | 
 | ||||||
| 		#error Unsupported architecture for this LUFA configuration file. | 		#error Unsupported architecture for this LUFA configuration file. | ||||||
|  | |||||||
| @ -80,12 +80,24 @@ int main(void) | |||||||
| /** Configures the board hardware and chip peripherals for the demo's functionality. */ | /** Configures the board hardware and chip peripherals for the demo's functionality. */ | ||||||
| void SetupHardware() | void SetupHardware() | ||||||
| { | { | ||||||
|  | #if (ARCH == ARCH_AVR8) | ||||||
| 	/* Disable watchdog if enabled by bootloader/fuses */ | 	/* Disable watchdog if enabled by bootloader/fuses */ | ||||||
| 	MCUSR &= ~(1 << WDRF); | 	MCUSR &= ~(1 << WDRF); | ||||||
| 	wdt_disable(); | 	wdt_disable(); | ||||||
| 
 | 
 | ||||||
| 	/* Disable clock division */ | 	/* Disable clock division */ | ||||||
| 	clock_prescale_set(clock_div_1); | 	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 */ | 	/* Hardware Initialization */ | ||||||
| 	Joystick_Init(); | 	Joystick_Init(); | ||||||
|  | |||||||
| @ -50,6 +50,7 @@ | |||||||
| 		#include <LUFA/Drivers/Board/LEDs.h> | 		#include <LUFA/Drivers/Board/LEDs.h> | ||||||
| 		#include <LUFA/Drivers/Board/Buttons.h> | 		#include <LUFA/Drivers/Board/Buttons.h> | ||||||
| 		#include <LUFA/Drivers/USB/USB.h> | 		#include <LUFA/Drivers/USB/USB.h> | ||||||
|  | 		#include <LUFA/Platform/Platform.h> | ||||||
| 
 | 
 | ||||||
| 	/* Macros: */ | 	/* Macros: */ | ||||||
| 		/** LED mask for the library LED driver, to indicate that the USB interface is not ready. */ | 		/** LED mask for the library LED driver, to indicate that the USB interface is not ready. */ | ||||||
|  | |||||||
| @ -14,6 +14,9 @@ | |||||||
|  *  \li Series 6 USB AVRs (AT90USBxxx6) |  *  \li Series 6 USB AVRs (AT90USBxxx6) | ||||||
|  *  \li Series 4 USB AVRs (ATMEGAxxU4) |  *  \li Series 4 USB AVRs (ATMEGAxxU4) | ||||||
|  *  \li Series 2 USB AVRs (AT90USBxx2, ATMEGAxxU2) |  *  \li Series 2 USB AVRs (AT90USBxx2, ATMEGAxxU2) | ||||||
|  |  *  \li Series AU XMEGA AVRs (ATXMEGAxxxAxU) | ||||||
|  |  *  \li Series B XMEGA AVRs (ATXMEGAxxxBxU) | ||||||
|  |  *  \li Series C XMEGA AVRs (ATXMEGAxxxCxU) | ||||||
|  * |  * | ||||||
|  *  \section Sec_Info USB Information: |  *  \section Sec_Info USB Information: | ||||||
|  * |  * | ||||||
|  | |||||||
| @ -1,14 +1,26 @@ | |||||||
| <asf xmlversion="1.0"> | <asf xmlversion="1.0"> | ||||||
| 	<project caption="Keyboard HID Device Demo (Class Driver APIs)" id="lufa.demos.device.class.keyboard.example"> | 	<project caption="Keyboard HID Device Demo (Class Driver APIs)" id="lufa.demos.device.class.keyboard.example.avr8"> | ||||||
| 		<require idref="lufa.demos.device.class.keyboard"/> | 		<require idref="lufa.demos.device.class.keyboard"/> | ||||||
| 		<require idref="lufa.boards.dummy.avr8"/> | 		<require idref="lufa.boards.dummy.avr8"/> | ||||||
| 		<generator value="as5_8"/> | 		<generator value="as5_8"/> | ||||||
| 
 | 
 | ||||||
| 		<device-support value="at90usb1287"/> | 		<device-support value="at90usb1287"/> | ||||||
| 		<config name="lufa.drivers.board.name" value="usbkey"/> | 		<config name="lufa.drivers.board.name" value="none"/> | ||||||
| 
 | 
 | ||||||
| 		<build type="define" name="F_CPU" value="8000000UL"/> | 		<build type="define" name="F_CPU" value="16000000UL"/> | ||||||
| 		<build type="define" name="F_USB" value="8000000UL"/> | 		<build type="define" name="F_USB" value="16000000UL"/> | ||||||
|  | 	</project> | ||||||
|  | 
 | ||||||
|  | 	<project caption="Keyboard HID Device Demo (Class Driver APIs)" id="lufa.demos.device.class.keyboard.example.xmega"> | ||||||
|  | 		<require idref="lufa.demos.device.class.keyboard"/> | ||||||
|  | 		<require idref="lufa.boards.dummy.xmega"/> | ||||||
|  | 		<generator value="as5_8"/> | ||||||
|  | 
 | ||||||
|  | 		<device-support value="atxmega128a1u"/> | ||||||
|  | 		<config name="lufa.drivers.board.name" value="none"/> | ||||||
|  | 
 | ||||||
|  | 		<build type="define" name="F_CPU" value="32000000UL"/> | ||||||
|  | 		<build type="define" name="F_USB" value="48000000UL"/> | ||||||
| 	</project> | 	</project> | ||||||
| 
 | 
 | ||||||
| 	<module type="application" id="lufa.demos.device.class.keyboard" caption="Keyboard HID Device Demo (Class Driver APIs)"> | 	<module type="application" id="lufa.demos.device.class.keyboard" caption="Keyboard HID Device Demo (Class Driver APIs)"> | ||||||
|  | |||||||
| @ -85,6 +85,39 @@ | |||||||
| //		#define NO_AUTO_VBUS_MANAGEMENT
 | //		#define NO_AUTO_VBUS_MANAGEMENT
 | ||||||
| //		#define INVERTED_VBUS_ENABLE_LINE
 | //		#define INVERTED_VBUS_ENABLE_LINE
 | ||||||
| 
 | 
 | ||||||
|  | 	#elif (ARCH == ARCH_XMEGA) | ||||||
|  | 
 | ||||||
|  | 		/* Non-USB Related Configuration Tokens: */ | ||||||
|  | //		#define DISABLE_TERMINAL_CODES
 | ||||||
|  | 
 | ||||||
|  | 		/* USB Class Driver Related Tokens: */ | ||||||
|  | //		#define HID_HOST_BOOT_PROTOCOL_ONLY
 | ||||||
|  | //		#define HID_STATETABLE_STACK_DEPTH       {Insert Value Here}
 | ||||||
|  | //		#define HID_USAGE_STACK_DEPTH            {Insert Value Here}
 | ||||||
|  | //		#define HID_MAX_COLLECTIONS              {Insert Value Here}
 | ||||||
|  | //		#define HID_MAX_REPORTITEMS              {Insert Value Here}
 | ||||||
|  | //		#define HID_MAX_REPORT_IDS               {Insert Value Here}
 | ||||||
|  | //		#define NO_CLASS_DRIVER_AUTOFLUSH
 | ||||||
|  | 
 | ||||||
|  | 		/* General USB Driver Related Tokens: */ | ||||||
|  | 		#define USE_STATIC_OPTIONS               (USB_DEVICE_OPT_FULLSPEED | USB_OPT_RC32MCLKSRC | USB_OPT_BUSEVENT_PRIHIGH) | ||||||
|  | //		#define USB_STREAM_TIMEOUT_MS            {Insert Value Here}
 | ||||||
|  | //		#define NO_LIMITED_CONTROLLER_CONNECT
 | ||||||
|  | //		#define NO_SOF_EVENTS
 | ||||||
|  | 
 | ||||||
|  | 		/* USB Device Mode Driver Related Tokens: */ | ||||||
|  | //		#define USE_RAM_DESCRIPTORS
 | ||||||
|  | 		#define USE_FLASH_DESCRIPTORS | ||||||
|  | //		#define USE_EEPROM_DESCRIPTORS
 | ||||||
|  | //		#define NO_INTERNAL_SERIAL
 | ||||||
|  | 		#define FIXED_CONTROL_ENDPOINT_SIZE      8 | ||||||
|  | //		#define DEVICE_STATE_AS_GPIOR            {Insert Value Here}
 | ||||||
|  | 		#define FIXED_NUM_CONFIGURATIONS         1 | ||||||
|  | //		#define CONTROL_ONLY_DEVICE
 | ||||||
|  | 		#define MAX_ENDPOINT_INDEX               3 | ||||||
|  | //		#define NO_DEVICE_REMOTE_WAKEUP
 | ||||||
|  | //		#define NO_DEVICE_SELF_POWER
 | ||||||
|  | 
 | ||||||
| 	#else | 	#else | ||||||
| 
 | 
 | ||||||
| 		#error Unsupported architecture for this LUFA configuration file. | 		#error Unsupported architecture for this LUFA configuration file. | ||||||
|  | |||||||
| @ -106,12 +106,24 @@ int main(void) | |||||||
| /** Configures the board hardware and chip peripherals for the demo's functionality. */ | /** Configures the board hardware and chip peripherals for the demo's functionality. */ | ||||||
| void SetupHardware() | void SetupHardware() | ||||||
| { | { | ||||||
|  | #if (ARCH == ARCH_AVR8) | ||||||
| 	/* Disable watchdog if enabled by bootloader/fuses */ | 	/* Disable watchdog if enabled by bootloader/fuses */ | ||||||
| 	MCUSR &= ~(1 << WDRF); | 	MCUSR &= ~(1 << WDRF); | ||||||
| 	wdt_disable(); | 	wdt_disable(); | ||||||
| 
 | 
 | ||||||
| 	/* Disable clock division */ | 	/* Disable clock division */ | ||||||
| 	clock_prescale_set(clock_div_1); | 	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 */ | 	/* Hardware Initialization */ | ||||||
| 	Joystick_Init(); | 	Joystick_Init(); | ||||||
|  | |||||||
| @ -45,6 +45,7 @@ | |||||||
| 		#include <LUFA/Drivers/Board/LEDs.h> | 		#include <LUFA/Drivers/Board/LEDs.h> | ||||||
| 		#include <LUFA/Drivers/Board/Buttons.h> | 		#include <LUFA/Drivers/Board/Buttons.h> | ||||||
| 		#include <LUFA/Drivers/USB/USB.h> | 		#include <LUFA/Drivers/USB/USB.h> | ||||||
|  | 		#include <LUFA/Platform/Platform.h> | ||||||
| 
 | 
 | ||||||
| 	/* Macros: */ | 	/* Macros: */ | ||||||
| 		/** LED mask for the library LED driver, to indicate that the USB interface is not ready. */ | 		/** LED mask for the library LED driver, to indicate that the USB interface is not ready. */ | ||||||
|  | |||||||
| @ -14,6 +14,9 @@ | |||||||
|  *  \li Series 6 USB AVRs (AT90USBxxx6) |  *  \li Series 6 USB AVRs (AT90USBxxx6) | ||||||
|  *  \li Series 4 USB AVRs (ATMEGAxxU4) |  *  \li Series 4 USB AVRs (ATMEGAxxU4) | ||||||
|  *  \li Series 2 USB AVRs (AT90USBxx2, ATMEGAxxU2) |  *  \li Series 2 USB AVRs (AT90USBxx2, ATMEGAxxU2) | ||||||
|  |  *  \li Series AU XMEGA AVRs (ATXMEGAxxxAxU) | ||||||
|  |  *  \li Series B XMEGA AVRs (ATXMEGAxxxBxU) | ||||||
|  |  *  \li Series C XMEGA AVRs (ATXMEGAxxxCxU) | ||||||
|  * |  * | ||||||
|  *  \section Sec_Info USB Information: |  *  \section Sec_Info USB Information: | ||||||
|  * |  * | ||||||
|  | |||||||
| @ -1,14 +1,26 @@ | |||||||
| <asf xmlversion="1.0"> | <asf xmlversion="1.0"> | ||||||
| 	<project caption="Keyboard and Mouse HID Device Demo (Class Driver APIs)" id="lufa.demos.device.class.keyboard_mouse.example"> | 	<project caption="Keyboard and Mouse HID Device Demo (Class Driver APIs)" id="lufa.demos.device.class.keyboard_mouse.example.avr8"> | ||||||
| 		<require idref="lufa.demos.device.class.keyboard_mouse"/> | 		<require idref="lufa.demos.device.class.keyboard_mouse"/> | ||||||
| 		<require idref="lufa.boards.dummy.avr8"/> | 		<require idref="lufa.boards.dummy.avr8"/> | ||||||
| 		<generator value="as5_8"/> | 		<generator value="as5_8"/> | ||||||
| 
 | 
 | ||||||
| 		<device-support value="at90usb1287"/> | 		<device-support value="at90usb1287"/> | ||||||
| 		<config name="lufa.drivers.board.name" value="usbkey"/> | 		<config name="lufa.drivers.board.name" value="none"/> | ||||||
| 
 | 
 | ||||||
| 		<build type="define" name="F_CPU" value="8000000UL"/> | 		<build type="define" name="F_CPU" value="16000000UL"/> | ||||||
| 		<build type="define" name="F_USB" value="8000000UL"/> | 		<build type="define" name="F_USB" value="16000000UL"/> | ||||||
|  | 	</project> | ||||||
|  | 
 | ||||||
|  | 	<project caption="Keyboard and Mouse HID Device Demo (Class Driver APIs)" id="lufa.demos.device.class.keyboard_mouse.example.xmega"> | ||||||
|  | 		<require idref="lufa.demos.device.class.keyboard_mouse"/> | ||||||
|  | 		<require idref="lufa.boards.dummy.xmega"/> | ||||||
|  | 		<generator value="as5_8"/> | ||||||
|  | 
 | ||||||
|  | 		<device-support value="atxmega128a1u"/> | ||||||
|  | 		<config name="lufa.drivers.board.name" value="none"/> | ||||||
|  | 
 | ||||||
|  | 		<build type="define" name="F_CPU" value="32000000UL"/> | ||||||
|  | 		<build type="define" name="F_USB" value="48000000UL"/> | ||||||
| 	</project> | 	</project> | ||||||
| 
 | 
 | ||||||
| 	<module type="application" id="lufa.demos.device.class.keyboard_mouse" caption="Keyboard and Mouse HID Device Demo (Class Driver APIs)"> | 	<module type="application" id="lufa.demos.device.class.keyboard_mouse" caption="Keyboard and Mouse HID Device Demo (Class Driver APIs)"> | ||||||
|  | |||||||
| @ -85,6 +85,39 @@ | |||||||
| //		#define NO_AUTO_VBUS_MANAGEMENT
 | //		#define NO_AUTO_VBUS_MANAGEMENT
 | ||||||
| //		#define INVERTED_VBUS_ENABLE_LINE
 | //		#define INVERTED_VBUS_ENABLE_LINE
 | ||||||
| 
 | 
 | ||||||
|  | 	#elif (ARCH == ARCH_XMEGA) | ||||||
|  | 
 | ||||||
|  | 		/* Non-USB Related Configuration Tokens: */ | ||||||
|  | //		#define DISABLE_TERMINAL_CODES
 | ||||||
|  | 
 | ||||||
|  | 		/* USB Class Driver Related Tokens: */ | ||||||
|  | //		#define HID_HOST_BOOT_PROTOCOL_ONLY
 | ||||||
|  | //		#define HID_STATETABLE_STACK_DEPTH       {Insert Value Here}
 | ||||||
|  | //		#define HID_USAGE_STACK_DEPTH            {Insert Value Here}
 | ||||||
|  | //		#define HID_MAX_COLLECTIONS              {Insert Value Here}
 | ||||||
|  | //		#define HID_MAX_REPORTITEMS              {Insert Value Here}
 | ||||||
|  | //		#define HID_MAX_REPORT_IDS               {Insert Value Here}
 | ||||||
|  | //		#define NO_CLASS_DRIVER_AUTOFLUSH
 | ||||||
|  | 
 | ||||||
|  | 		/* General USB Driver Related Tokens: */ | ||||||
|  | 		#define USE_STATIC_OPTIONS               (USB_DEVICE_OPT_FULLSPEED | USB_OPT_RC32MCLKSRC | USB_OPT_BUSEVENT_PRIHIGH) | ||||||
|  | //		#define USB_STREAM_TIMEOUT_MS            {Insert Value Here}
 | ||||||
|  | //		#define NO_LIMITED_CONTROLLER_CONNECT
 | ||||||
|  | //		#define NO_SOF_EVENTS
 | ||||||
|  | 
 | ||||||
|  | 		/* USB Device Mode Driver Related Tokens: */ | ||||||
|  | //		#define USE_RAM_DESCRIPTORS
 | ||||||
|  | 		#define USE_FLASH_DESCRIPTORS | ||||||
|  | //		#define USE_EEPROM_DESCRIPTORS
 | ||||||
|  | //		#define NO_INTERNAL_SERIAL
 | ||||||
|  | 		#define FIXED_CONTROL_ENDPOINT_SIZE      8 | ||||||
|  | //		#define DEVICE_STATE_AS_GPIOR            {Insert Value Here}
 | ||||||
|  | 		#define FIXED_NUM_CONFIGURATIONS         1 | ||||||
|  | //		#define CONTROL_ONLY_DEVICE
 | ||||||
|  | 		#define MAX_ENDPOINT_INDEX               1 | ||||||
|  | //		#define NO_DEVICE_REMOTE_WAKEUP
 | ||||||
|  | //		#define NO_DEVICE_SELF_POWER
 | ||||||
|  | 
 | ||||||
| 	#else | 	#else | ||||||
| 
 | 
 | ||||||
| 		#error Unsupported architecture for this LUFA configuration file. | 		#error Unsupported architecture for this LUFA configuration file. | ||||||
|  | |||||||
| @ -80,12 +80,24 @@ int main(void) | |||||||
| /** Configures the board hardware and chip peripherals for the demo's functionality. */ | /** Configures the board hardware and chip peripherals for the demo's functionality. */ | ||||||
| void SetupHardware() | void SetupHardware() | ||||||
| { | { | ||||||
|  | #if (ARCH == ARCH_AVR8) | ||||||
| 	/* Disable watchdog if enabled by bootloader/fuses */ | 	/* Disable watchdog if enabled by bootloader/fuses */ | ||||||
| 	MCUSR &= ~(1 << WDRF); | 	MCUSR &= ~(1 << WDRF); | ||||||
| 	wdt_disable(); | 	wdt_disable(); | ||||||
| 
 | 
 | ||||||
| 	/* Disable clock division */ | 	/* Disable clock division */ | ||||||
| 	clock_prescale_set(clock_div_1); | 	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 */ | 	/* Hardware Initialization */ | ||||||
| 	Joystick_Init(); | 	Joystick_Init(); | ||||||
|  | |||||||
| @ -45,6 +45,7 @@ | |||||||
| 		#include <LUFA/Drivers/Board/LEDs.h> | 		#include <LUFA/Drivers/Board/LEDs.h> | ||||||
| 		#include <LUFA/Drivers/Board/Buttons.h> | 		#include <LUFA/Drivers/Board/Buttons.h> | ||||||
| 		#include <LUFA/Drivers/USB/USB.h> | 		#include <LUFA/Drivers/USB/USB.h> | ||||||
|  | 		#include <LUFA/Platform/Platform.h> | ||||||
| 
 | 
 | ||||||
| 	/* Macros: */ | 	/* Macros: */ | ||||||
| 		/** LED mask for the library LED driver, to indicate that the USB interface is not ready. */ | 		/** LED mask for the library LED driver, to indicate that the USB interface is not ready. */ | ||||||
|  | |||||||
| @ -14,6 +14,9 @@ | |||||||
|  *  \li Series 6 USB AVRs (AT90USBxxx6) |  *  \li Series 6 USB AVRs (AT90USBxxx6) | ||||||
|  *  \li Series 4 USB AVRs (ATMEGAxxU4) |  *  \li Series 4 USB AVRs (ATMEGAxxU4) | ||||||
|  *  \li Series 2 USB AVRs (AT90USBxx2, ATMEGAxxU2) |  *  \li Series 2 USB AVRs (AT90USBxx2, ATMEGAxxU2) | ||||||
|  |  *  \li Series AU XMEGA AVRs (ATXMEGAxxxAxU) | ||||||
|  |  *  \li Series B XMEGA AVRs (ATXMEGAxxxBxU) | ||||||
|  |  *  \li Series C XMEGA AVRs (ATXMEGAxxxCxU) | ||||||
|  * |  * | ||||||
|  *  \section Sec_Info USB Information: |  *  \section Sec_Info USB Information: | ||||||
|  * |  * | ||||||
|  | |||||||
| @ -1,14 +1,26 @@ | |||||||
| <asf xmlversion="1.0"> | <asf xmlversion="1.0"> | ||||||
| 	<project caption="Keyboard and Mouse HID (Multi Report) Device Demo (Class Driver APIs)" id="lufa.demos.device.class.keyboard_mouse_mr.example"> | 	<project caption="Keyboard and Mouse HID (Multi Report) Device Demo (Class Driver APIs)" id="lufa.demos.device.class.keyboard_mouse_mr.example.avr8"> | ||||||
| 		<require idref="lufa.demos.device.class.keyboard_mouse_mr"/> | 		<require idref="lufa.demos.device.class.keyboard_mouse_mr"/> | ||||||
| 		<require idref="lufa.boards.dummy.avr8"/> | 		<require idref="lufa.boards.dummy.avr8"/> | ||||||
| 		<generator value="as5_8"/> | 		<generator value="as5_8"/> | ||||||
| 
 | 
 | ||||||
| 		<device-support value="at90usb1287"/> | 		<device-support value="at90usb1287"/> | ||||||
| 		<config name="lufa.drivers.board.name" value="usbkey"/> | 		<config name="lufa.drivers.board.name" value="none"/> | ||||||
| 
 | 
 | ||||||
| 		<build type="define" name="F_CPU" value="8000000UL"/> | 		<build type="define" name="F_CPU" value="16000000UL"/> | ||||||
| 		<build type="define" name="F_USB" value="8000000UL"/> | 		<build type="define" name="F_USB" value="16000000UL"/> | ||||||
|  | 	</project> | ||||||
|  | 
 | ||||||
|  | 	<project caption="Keyboard and Mouse HID (Multi Report) Device Demo (Class Driver APIs)" id="lufa.demos.device.class.keyboard_mouse_mr.example.xmega"> | ||||||
|  | 		<require idref="lufa.demos.device.class.keyboard_mouse_mr"/> | ||||||
|  | 		<require idref="lufa.boards.dummy.xmega"/> | ||||||
|  | 		<generator value="as5_8"/> | ||||||
|  | 
 | ||||||
|  | 		<device-support value="atxmega128a1u"/> | ||||||
|  | 		<config name="lufa.drivers.board.name" value="none"/> | ||||||
|  | 
 | ||||||
|  | 		<build type="define" name="F_CPU" value="32000000UL"/> | ||||||
|  | 		<build type="define" name="F_USB" value="48000000UL"/> | ||||||
| 	</project> | 	</project> | ||||||
| 
 | 
 | ||||||
| 	<module type="application" id="lufa.demos.device.class.keyboard_mouse_mr" caption="Keyboard and Mouse HID (Multi Report) Device Demo (Class Driver APIs)"> | 	<module type="application" id="lufa.demos.device.class.keyboard_mouse_mr" caption="Keyboard and Mouse HID (Multi Report) Device Demo (Class Driver APIs)"> | ||||||
|  | |||||||
| @ -85,6 +85,39 @@ | |||||||
| //		#define NO_AUTO_VBUS_MANAGEMENT
 | //		#define NO_AUTO_VBUS_MANAGEMENT
 | ||||||
| //		#define INVERTED_VBUS_ENABLE_LINE
 | //		#define INVERTED_VBUS_ENABLE_LINE
 | ||||||
| 
 | 
 | ||||||
|  | 	#elif (ARCH == ARCH_XMEGA) | ||||||
|  | 
 | ||||||
|  | 		/* Non-USB Related Configuration Tokens: */ | ||||||
|  | //		#define DISABLE_TERMINAL_CODES
 | ||||||
|  | 
 | ||||||
|  | 		/* USB Class Driver Related Tokens: */ | ||||||
|  | //		#define HID_HOST_BOOT_PROTOCOL_ONLY
 | ||||||
|  | //		#define HID_STATETABLE_STACK_DEPTH       {Insert Value Here}
 | ||||||
|  | //		#define HID_USAGE_STACK_DEPTH            {Insert Value Here}
 | ||||||
|  | //		#define HID_MAX_COLLECTIONS              {Insert Value Here}
 | ||||||
|  | //		#define HID_MAX_REPORTITEMS              {Insert Value Here}
 | ||||||
|  | //		#define HID_MAX_REPORT_IDS               {Insert Value Here}
 | ||||||
|  | //		#define NO_CLASS_DRIVER_AUTOFLUSH
 | ||||||
|  | 
 | ||||||
|  | 		/* General USB Driver Related Tokens: */ | ||||||
|  | 		#define USE_STATIC_OPTIONS               (USB_DEVICE_OPT_FULLSPEED | USB_OPT_RC32MCLKSRC | USB_OPT_BUSEVENT_PRIHIGH) | ||||||
|  | //		#define USB_STREAM_TIMEOUT_MS            {Insert Value Here}
 | ||||||
|  | //		#define NO_LIMITED_CONTROLLER_CONNECT
 | ||||||
|  | //		#define NO_SOF_EVENTS
 | ||||||
|  | 
 | ||||||
|  | 		/* USB Device Mode Driver Related Tokens: */ | ||||||
|  | //		#define USE_RAM_DESCRIPTORS
 | ||||||
|  | 		#define USE_FLASH_DESCRIPTORS | ||||||
|  | //		#define USE_EEPROM_DESCRIPTORS
 | ||||||
|  | //		#define NO_INTERNAL_SERIAL
 | ||||||
|  | 		#define FIXED_CONTROL_ENDPOINT_SIZE      8 | ||||||
|  | //		#define DEVICE_STATE_AS_GPIOR            {Insert Value Here}
 | ||||||
|  | 		#define FIXED_NUM_CONFIGURATIONS         1 | ||||||
|  | //		#define CONTROL_ONLY_DEVICE
 | ||||||
|  | 		#define MAX_ENDPOINT_INDEX               2 | ||||||
|  | //		#define NO_DEVICE_REMOTE_WAKEUP
 | ||||||
|  | //		#define NO_DEVICE_SELF_POWER
 | ||||||
|  | 
 | ||||||
| 	#else | 	#else | ||||||
| 
 | 
 | ||||||
| 		#error Unsupported architecture for this LUFA configuration file. | 		#error Unsupported architecture for this LUFA configuration file. | ||||||
|  | |||||||
| @ -92,12 +92,24 @@ int main(void) | |||||||
| /** Configures the board hardware and chip peripherals for the demo's functionality. */ | /** Configures the board hardware and chip peripherals for the demo's functionality. */ | ||||||
| void SetupHardware(void) | void SetupHardware(void) | ||||||
| { | { | ||||||
|  | #if (ARCH == ARCH_AVR8) | ||||||
| 	/* Disable watchdog if enabled by bootloader/fuses */ | 	/* Disable watchdog if enabled by bootloader/fuses */ | ||||||
| 	MCUSR &= ~(1 << WDRF); | 	MCUSR &= ~(1 << WDRF); | ||||||
| 	wdt_disable(); | 	wdt_disable(); | ||||||
| 
 | 
 | ||||||
| 	/* Disable clock division */ | 	/* Disable clock division */ | ||||||
| 	clock_prescale_set(clock_div_1); | 	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 */ | 	/* Hardware Initialization */ | ||||||
| 	Joystick_Init(); | 	Joystick_Init(); | ||||||
|  | |||||||
| @ -50,6 +50,7 @@ | |||||||
| 		#include <LUFA/Drivers/Board/Joystick.h> | 		#include <LUFA/Drivers/Board/Joystick.h> | ||||||
| 		#include <LUFA/Drivers/Board/Buttons.h> | 		#include <LUFA/Drivers/Board/Buttons.h> | ||||||
| 		#include <LUFA/Drivers/USB/USB.h> | 		#include <LUFA/Drivers/USB/USB.h> | ||||||
|  | 		#include <LUFA/Platform/Platform.h> | ||||||
| 
 | 
 | ||||||
| 	/* Macros: */ | 	/* Macros: */ | ||||||
| 		/** LED mask for the library LED driver, to indicate that the USB interface is not ready. */ | 		/** LED mask for the library LED driver, to indicate that the USB interface is not ready. */ | ||||||
|  | |||||||
| @ -14,6 +14,9 @@ | |||||||
|  *  \li Series 6 USB AVRs (AT90USBxxx6) |  *  \li Series 6 USB AVRs (AT90USBxxx6) | ||||||
|  *  \li Series 4 USB AVRs (ATMEGAxxU4) |  *  \li Series 4 USB AVRs (ATMEGAxxU4) | ||||||
|  *  \li Series 2 USB AVRs (AT90USBxx2, ATMEGAxxU2) |  *  \li Series 2 USB AVRs (AT90USBxx2, ATMEGAxxU2) | ||||||
|  |  *  \li Series AU XMEGA AVRs (ATXMEGAxxxAxU) | ||||||
|  |  *  \li Series B XMEGA AVRs (ATXMEGAxxxBxU) | ||||||
|  |  *  \li Series C XMEGA AVRs (ATXMEGAxxxCxU) | ||||||
|  * |  * | ||||||
|  *  \section Sec_Info USB Information: |  *  \section Sec_Info USB Information: | ||||||
|  * |  * | ||||||
|  | |||||||
| @ -1,14 +1,26 @@ | |||||||
| <asf xmlversion="1.0"> | <asf xmlversion="1.0"> | ||||||
| 	<project caption="MIDI Device Demo (Class Driver APIs)" id="lufa.demos.device.class.midi.example"> | 	<project caption="MIDI Device Demo (Class Driver APIs)" id="lufa.demos.device.class.midi.example.avr8"> | ||||||
| 		<require idref="lufa.demos.device.class.midi"/> | 		<require idref="lufa.demos.device.class.midi"/> | ||||||
| 		<require idref="lufa.boards.dummy.avr8"/> | 		<require idref="lufa.boards.dummy.avr8"/> | ||||||
| 		<generator value="as5_8"/> | 		<generator value="as5_8"/> | ||||||
| 
 | 
 | ||||||
| 		<device-support value="at90usb1287"/> | 		<device-support value="at90usb1287"/> | ||||||
| 		<config name="lufa.drivers.board.name" value="usbkey"/> | 		<config name="lufa.drivers.board.name" value="none"/> | ||||||
| 
 | 
 | ||||||
| 		<build type="define" name="F_CPU" value="8000000UL"/> | 		<build type="define" name="F_CPU" value="16000000UL"/> | ||||||
| 		<build type="define" name="F_USB" value="8000000UL"/> | 		<build type="define" name="F_USB" value="16000000UL"/> | ||||||
|  | 	</project> | ||||||
|  | 
 | ||||||
|  | 	<project caption="MIDI Device Demo (Class Driver APIs)" id="lufa.demos.device.class.midi.example.xmega"> | ||||||
|  | 		<require idref="lufa.demos.device.class.midi"/> | ||||||
|  | 		<require idref="lufa.boards.dummy.xmega"/> | ||||||
|  | 		<generator value="as5_8"/> | ||||||
|  | 
 | ||||||
|  | 		<device-support value="atxmega128a1u"/> | ||||||
|  | 		<config name="lufa.drivers.board.name" value="none"/> | ||||||
|  | 
 | ||||||
|  | 		<build type="define" name="F_CPU" value="32000000UL"/> | ||||||
|  | 		<build type="define" name="F_USB" value="48000000UL"/> | ||||||
| 	</project> | 	</project> | ||||||
| 
 | 
 | ||||||
| 	<module type="application" id="lufa.demos.device.class.midi" caption="MIDI Device Demo (Class Driver APIs)"> | 	<module type="application" id="lufa.demos.device.class.midi" caption="MIDI Device Demo (Class Driver APIs)"> | ||||||
|  | |||||||
| @ -85,6 +85,39 @@ | |||||||
| //		#define NO_AUTO_VBUS_MANAGEMENT
 | //		#define NO_AUTO_VBUS_MANAGEMENT
 | ||||||
| //		#define INVERTED_VBUS_ENABLE_LINE
 | //		#define INVERTED_VBUS_ENABLE_LINE
 | ||||||
| 
 | 
 | ||||||
|  | 	#elif (ARCH == ARCH_XMEGA) | ||||||
|  | 
 | ||||||
|  | 		/* Non-USB Related Configuration Tokens: */ | ||||||
|  | //		#define DISABLE_TERMINAL_CODES
 | ||||||
|  | 
 | ||||||
|  | 		/* USB Class Driver Related Tokens: */ | ||||||
|  | //		#define HID_HOST_BOOT_PROTOCOL_ONLY
 | ||||||
|  | //		#define HID_STATETABLE_STACK_DEPTH       {Insert Value Here}
 | ||||||
|  | //		#define HID_USAGE_STACK_DEPTH            {Insert Value Here}
 | ||||||
|  | //		#define HID_MAX_COLLECTIONS              {Insert Value Here}
 | ||||||
|  | //		#define HID_MAX_REPORTITEMS              {Insert Value Here}
 | ||||||
|  | //		#define HID_MAX_REPORT_IDS               {Insert Value Here}
 | ||||||
|  | //		#define NO_CLASS_DRIVER_AUTOFLUSH
 | ||||||
|  | 
 | ||||||
|  | 		/* General USB Driver Related Tokens: */ | ||||||
|  | 		#define USE_STATIC_OPTIONS               (USB_DEVICE_OPT_FULLSPEED | USB_OPT_RC32MCLKSRC | USB_OPT_BUSEVENT_PRIHIGH) | ||||||
|  | //		#define USB_STREAM_TIMEOUT_MS            {Insert Value Here}
 | ||||||
|  | //		#define NO_LIMITED_CONTROLLER_CONNECT
 | ||||||
|  | //		#define NO_SOF_EVENTS
 | ||||||
|  | 
 | ||||||
|  | 		/* USB Device Mode Driver Related Tokens: */ | ||||||
|  | //		#define USE_RAM_DESCRIPTORS
 | ||||||
|  | 		#define USE_FLASH_DESCRIPTORS | ||||||
|  | //		#define USE_EEPROM_DESCRIPTORS
 | ||||||
|  | //		#define NO_INTERNAL_SERIAL
 | ||||||
|  | 		#define FIXED_CONTROL_ENDPOINT_SIZE      8 | ||||||
|  | //		#define DEVICE_STATE_AS_GPIOR            {Insert Value Here}
 | ||||||
|  | 		#define FIXED_NUM_CONFIGURATIONS         1 | ||||||
|  | //		#define CONTROL_ONLY_DEVICE
 | ||||||
|  | 		#define MAX_ENDPOINT_INDEX               4 | ||||||
|  | //		#define NO_DEVICE_REMOTE_WAKEUP
 | ||||||
|  | //		#define NO_DEVICE_SELF_POWER
 | ||||||
|  | 
 | ||||||
| 	#else | 	#else | ||||||
| 
 | 
 | ||||||
| 		#error Unsupported architecture for this LUFA configuration file. | 		#error Unsupported architecture for this LUFA configuration file. | ||||||
|  | |||||||
| @ -82,12 +82,24 @@ int main(void) | |||||||
| /** Configures the board hardware and chip peripherals for the demo's functionality. */ | /** Configures the board hardware and chip peripherals for the demo's functionality. */ | ||||||
| void SetupHardware(void) | void SetupHardware(void) | ||||||
| { | { | ||||||
|  | #if (ARCH == ARCH_AVR8) | ||||||
| 	/* Disable watchdog if enabled by bootloader/fuses */ | 	/* Disable watchdog if enabled by bootloader/fuses */ | ||||||
| 	MCUSR &= ~(1 << WDRF); | 	MCUSR &= ~(1 << WDRF); | ||||||
| 	wdt_disable(); | 	wdt_disable(); | ||||||
| 
 | 
 | ||||||
| 	/* Disable clock division */ | 	/* Disable clock division */ | ||||||
| 	clock_prescale_set(clock_div_1); | 	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 */ | 	/* Hardware Initialization */ | ||||||
| 	LEDs_Init(); | 	LEDs_Init(); | ||||||
|  | |||||||
| @ -51,6 +51,7 @@ | |||||||
| 
 | 
 | ||||||
| 		#include <LUFA/Drivers/Board/LEDs.h> | 		#include <LUFA/Drivers/Board/LEDs.h> | ||||||
| 		#include <LUFA/Drivers/USB/USB.h> | 		#include <LUFA/Drivers/USB/USB.h> | ||||||
|  | 		#include <LUFA/Platform/Platform.h> | ||||||
| 
 | 
 | ||||||
| 	/* Macros: */ | 	/* Macros: */ | ||||||
| 		/** LED mask for the library LED driver, to indicate that the USB interface is not ready. */ | 		/** LED mask for the library LED driver, to indicate that the USB interface is not ready. */ | ||||||
|  | |||||||
| @ -14,6 +14,9 @@ | |||||||
|  *  \li Series 6 USB AVRs (AT90USBxxx6) |  *  \li Series 6 USB AVRs (AT90USBxxx6) | ||||||
|  *  \li Series 4 USB AVRs (ATMEGAxxU4) |  *  \li Series 4 USB AVRs (ATMEGAxxU4) | ||||||
|  *  \li Series 2 USB AVRs (AT90USBxx2, ATMEGAxxU2) |  *  \li Series 2 USB AVRs (AT90USBxx2, ATMEGAxxU2) | ||||||
|  |  *  \li Series AU XMEGA AVRs (ATXMEGAxxxAxU) | ||||||
|  |  *  \li Series B XMEGA AVRs (ATXMEGAxxxBxU) | ||||||
|  |  *  \li Series C XMEGA AVRs (ATXMEGAxxxCxU) | ||||||
|  * |  * | ||||||
|  *  \section Sec_Info USB Information: |  *  \section Sec_Info USB Information: | ||||||
|  * |  * | ||||||
|  | |||||||
| @ -1,14 +1,26 @@ | |||||||
| <asf xmlversion="1.0"> | <asf xmlversion="1.0"> | ||||||
| 	<project caption="Mass Storage Device Demo (Class Driver APIs)" id="lufa.demos.device.class.mass_storage.example"> | 	<project caption="Mass Storage Device Demo (Class Driver APIs)" id="lufa.demos.device.class.mass_storage.example.avr8"> | ||||||
| 		<require idref="lufa.demos.device.class.mass_storage"/> | 		<require idref="lufa.demos.device.class.mass_storage"/> | ||||||
| 		<require idref="lufa.boards.dummy.avr8"/> | 		<require idref="lufa.boards.dummy.avr8"/> | ||||||
| 		<generator value="as5_8"/> | 		<generator value="as5_8"/> | ||||||
| 
 | 
 | ||||||
| 		<device-support value="at90usb1287"/> | 		<device-support value="at90usb1287"/> | ||||||
| 		<config name="lufa.drivers.board.name" value="usbkey"/> | 		<config name="lufa.drivers.board.name" value="none"/> | ||||||
| 
 | 
 | ||||||
| 		<build type="define" name="F_CPU" value="8000000UL"/> | 		<build type="define" name="F_CPU" value="16000000UL"/> | ||||||
| 		<build type="define" name="F_USB" value="8000000UL"/> | 		<build type="define" name="F_USB" value="16000000UL"/> | ||||||
|  | 	</project> | ||||||
|  | 
 | ||||||
|  | 	<project caption="Mass Storage Device Demo (Class Driver APIs)" id="lufa.demos.device.class.mass_storage.example.xmega"> | ||||||
|  | 		<require idref="lufa.demos.device.class.mass_storage"/> | ||||||
|  | 		<require idref="lufa.boards.dummy.xmega"/> | ||||||
|  | 		<generator value="as5_8"/> | ||||||
|  | 
 | ||||||
|  | 		<device-support value="atxmega128a1u"/> | ||||||
|  | 		<config name="lufa.drivers.board.name" value="none"/> | ||||||
|  | 
 | ||||||
|  | 		<build type="define" name="F_CPU" value="32000000UL"/> | ||||||
|  | 		<build type="define" name="F_USB" value="48000000UL"/> | ||||||
| 	</project> | 	</project> | ||||||
| 
 | 
 | ||||||
| 	<module type="application" id="lufa.demos.device.class.mass_storage" caption="Mass Storage Device Demo (Class Driver APIs)"> | 	<module type="application" id="lufa.demos.device.class.mass_storage" caption="Mass Storage Device Demo (Class Driver APIs)"> | ||||||
|  | |||||||
| @ -85,6 +85,39 @@ | |||||||
| //		#define NO_AUTO_VBUS_MANAGEMENT
 | //		#define NO_AUTO_VBUS_MANAGEMENT
 | ||||||
| //		#define INVERTED_VBUS_ENABLE_LINE
 | //		#define INVERTED_VBUS_ENABLE_LINE
 | ||||||
| 
 | 
 | ||||||
|  | 	#elif (ARCH == ARCH_XMEGA) | ||||||
|  | 
 | ||||||
|  | 		/* Non-USB Related Configuration Tokens: */ | ||||||
|  | //		#define DISABLE_TERMINAL_CODES
 | ||||||
|  | 
 | ||||||
|  | 		/* USB Class Driver Related Tokens: */ | ||||||
|  | //		#define HID_HOST_BOOT_PROTOCOL_ONLY
 | ||||||
|  | //		#define HID_STATETABLE_STACK_DEPTH       {Insert Value Here}
 | ||||||
|  | //		#define HID_USAGE_STACK_DEPTH            {Insert Value Here}
 | ||||||
|  | //		#define HID_MAX_COLLECTIONS              {Insert Value Here}
 | ||||||
|  | //		#define HID_MAX_REPORTITEMS              {Insert Value Here}
 | ||||||
|  | //		#define HID_MAX_REPORT_IDS               {Insert Value Here}
 | ||||||
|  | //		#define NO_CLASS_DRIVER_AUTOFLUSH
 | ||||||
|  | 
 | ||||||
|  | 		/* General USB Driver Related Tokens: */ | ||||||
|  | 		#define USE_STATIC_OPTIONS               (USB_DEVICE_OPT_FULLSPEED | USB_OPT_RC32MCLKSRC | USB_OPT_BUSEVENT_PRIHIGH) | ||||||
|  | //		#define USB_STREAM_TIMEOUT_MS            {Insert Value Here}
 | ||||||
|  | //		#define NO_LIMITED_CONTROLLER_CONNECT
 | ||||||
|  | //		#define NO_SOF_EVENTS
 | ||||||
|  | 
 | ||||||
|  | 		/* USB Device Mode Driver Related Tokens: */ | ||||||
|  | //		#define USE_RAM_DESCRIPTORS
 | ||||||
|  | 		#define USE_FLASH_DESCRIPTORS | ||||||
|  | //		#define USE_EEPROM_DESCRIPTORS
 | ||||||
|  | //		#define NO_INTERNAL_SERIAL
 | ||||||
|  | 		#define FIXED_CONTROL_ENDPOINT_SIZE      8 | ||||||
|  | //		#define DEVICE_STATE_AS_GPIOR            {Insert Value Here}
 | ||||||
|  | 		#define FIXED_NUM_CONFIGURATIONS         1 | ||||||
|  | //		#define CONTROL_ONLY_DEVICE
 | ||||||
|  | 		#define MAX_ENDPOINT_INDEX               5 | ||||||
|  | //		#define NO_DEVICE_REMOTE_WAKEUP
 | ||||||
|  | //		#define NO_DEVICE_SELF_POWER
 | ||||||
|  | 
 | ||||||
| 	#else | 	#else | ||||||
| 
 | 
 | ||||||
| 		#error Unsupported architecture for this LUFA configuration file. | 		#error Unsupported architecture for this LUFA configuration file. | ||||||
|  | |||||||
| @ -106,12 +106,24 @@ int main(void) | |||||||
| /** Configures the board hardware and chip peripherals for the demo's functionality. */ | /** Configures the board hardware and chip peripherals for the demo's functionality. */ | ||||||
| void SetupHardware(void) | void SetupHardware(void) | ||||||
| { | { | ||||||
|  | #if (ARCH == ARCH_AVR8) | ||||||
| 	/* Disable watchdog if enabled by bootloader/fuses */ | 	/* Disable watchdog if enabled by bootloader/fuses */ | ||||||
| 	MCUSR &= ~(1 << WDRF); | 	MCUSR &= ~(1 << WDRF); | ||||||
| 	wdt_disable(); | 	wdt_disable(); | ||||||
| 
 | 
 | ||||||
| 	/* Disable clock division */ | 	/* Disable clock division */ | ||||||
| 	clock_prescale_set(clock_div_1); | 	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 */ | 	/* Hardware Initialization */ | ||||||
| 	LEDs_Init(); | 	LEDs_Init(); | ||||||
|  | |||||||
| @ -56,6 +56,7 @@ | |||||||
| 		#include <LUFA/Drivers/Board/LEDs.h> | 		#include <LUFA/Drivers/Board/LEDs.h> | ||||||
| 		#include <LUFA/Drivers/Board/Buttons.h> | 		#include <LUFA/Drivers/Board/Buttons.h> | ||||||
| 		#include <LUFA/Drivers/USB/USB.h> | 		#include <LUFA/Drivers/USB/USB.h> | ||||||
|  | 		#include <LUFA/Platform/Platform.h> | ||||||
| 
 | 
 | ||||||
| 	/* Macros: */ | 	/* Macros: */ | ||||||
| 		/** LED mask for the library LED driver, to indicate that the USB interface is not ready. */ | 		/** LED mask for the library LED driver, to indicate that the USB interface is not ready. */ | ||||||
|  | |||||||
| @ -14,6 +14,9 @@ | |||||||
|  *  \li Series 6 USB AVRs (AT90USBxxx6) |  *  \li Series 6 USB AVRs (AT90USBxxx6) | ||||||
|  *  \li Series 4 USB AVRs (ATMEGAxxU4) |  *  \li Series 4 USB AVRs (ATMEGAxxU4) | ||||||
|  *  \li Series 2 USB AVRs (AT90USBxx2, ATMEGAxxU2) |  *  \li Series 2 USB AVRs (AT90USBxx2, ATMEGAxxU2) | ||||||
|  |  *  \li Series AU XMEGA AVRs (ATXMEGAxxxAxU) | ||||||
|  |  *  \li Series B XMEGA AVRs (ATXMEGAxxxBxU) | ||||||
|  |  *  \li Series C XMEGA AVRs (ATXMEGAxxxCxU) | ||||||
|  * |  * | ||||||
|  *  \section Sec_Info USB Information: |  *  \section Sec_Info USB Information: | ||||||
|  * |  * | ||||||
|  | |||||||
| @ -1,14 +1,26 @@ | |||||||
| <asf xmlversion="1.0"> | <asf xmlversion="1.0"> | ||||||
| 	<project caption="Mass Storage and HID Keyboard Device Demo (Class Driver APIs)" id="lufa.demos.device.class.mass_storage_keyboard.example"> | 	<project caption="Mass Storage and HID Keyboard Device Demo (Class Driver APIs)" id="lufa.demos.device.class.mass_storage_keyboard.example.avr8"> | ||||||
| 		<require idref="lufa.demos.device.class.mass_storage_keyboard"/> | 		<require idref="lufa.demos.device.class.mass_storage_keyboard"/> | ||||||
| 		<require idref="lufa.boards.dummy.avr8"/> | 		<require idref="lufa.boards.dummy.avr8"/> | ||||||
| 		<generator value="as5_8"/> | 		<generator value="as5_8"/> | ||||||
| 
 | 
 | ||||||
| 		<device-support value="at90usb1287"/> | 		<device-support value="at90usb1287"/> | ||||||
| 		<config name="lufa.drivers.board.name" value="usbkey"/> | 		<config name="lufa.drivers.board.name" value="none"/> | ||||||
| 
 | 
 | ||||||
| 		<build type="define" name="F_CPU" value="8000000UL"/> | 		<build type="define" name="F_CPU" value="16000000UL"/> | ||||||
| 		<build type="define" name="F_USB" value="8000000UL"/> | 		<build type="define" name="F_USB" value="16000000UL"/> | ||||||
|  | 	</project> | ||||||
|  | 
 | ||||||
|  | 	<project caption="Mass Storage and HID Keyboard Device Demo (Class Driver APIs)" id="lufa.demos.device.class.mass_storage_keyboard.example.xmega"> | ||||||
|  | 		<require idref="lufa.demos.device.class.mass_storage_keyboard"/> | ||||||
|  | 		<require idref="lufa.boards.dummy.xmega"/> | ||||||
|  | 		<generator value="as5_8"/> | ||||||
|  | 
 | ||||||
|  | 		<device-support value="atxmega128a1u"/> | ||||||
|  | 		<config name="lufa.drivers.board.name" value="none"/> | ||||||
|  | 
 | ||||||
|  | 		<build type="define" name="F_CPU" value="32000000UL"/> | ||||||
|  | 		<build type="define" name="F_USB" value="48000000UL"/> | ||||||
| 	</project> | 	</project> | ||||||
| 
 | 
 | ||||||
| 	<module type="application" id="lufa.demos.device.class.mass_storage_keyboard" caption="Mass Storage and HID Keyboard Device Demo (Class Driver APIs)"> | 	<module type="application" id="lufa.demos.device.class.mass_storage_keyboard" caption="Mass Storage and HID Keyboard Device Demo (Class Driver APIs)"> | ||||||
|  | |||||||
| @ -85,6 +85,39 @@ | |||||||
| //		#define NO_AUTO_VBUS_MANAGEMENT
 | //		#define NO_AUTO_VBUS_MANAGEMENT
 | ||||||
| //		#define INVERTED_VBUS_ENABLE_LINE
 | //		#define INVERTED_VBUS_ENABLE_LINE
 | ||||||
| 
 | 
 | ||||||
|  | 	#elif (ARCH == ARCH_XMEGA) | ||||||
|  | 
 | ||||||
|  | 		/* Non-USB Related Configuration Tokens: */ | ||||||
|  | //		#define DISABLE_TERMINAL_CODES
 | ||||||
|  | 
 | ||||||
|  | 		/* USB Class Driver Related Tokens: */ | ||||||
|  | //		#define HID_HOST_BOOT_PROTOCOL_ONLY
 | ||||||
|  | //		#define HID_STATETABLE_STACK_DEPTH       {Insert Value Here}
 | ||||||
|  | //		#define HID_USAGE_STACK_DEPTH            {Insert Value Here}
 | ||||||
|  | //		#define HID_MAX_COLLECTIONS              {Insert Value Here}
 | ||||||
|  | //		#define HID_MAX_REPORTITEMS              {Insert Value Here}
 | ||||||
|  | //		#define HID_MAX_REPORT_IDS               {Insert Value Here}
 | ||||||
|  | //		#define NO_CLASS_DRIVER_AUTOFLUSH
 | ||||||
|  | 
 | ||||||
|  | 		/* General USB Driver Related Tokens: */ | ||||||
|  | 		#define USE_STATIC_OPTIONS               (USB_DEVICE_OPT_FULLSPEED | USB_OPT_RC32MCLKSRC | USB_OPT_BUSEVENT_PRIHIGH) | ||||||
|  | //		#define USB_STREAM_TIMEOUT_MS            {Insert Value Here}
 | ||||||
|  | //		#define NO_LIMITED_CONTROLLER_CONNECT
 | ||||||
|  | //		#define NO_SOF_EVENTS
 | ||||||
|  | 
 | ||||||
|  | 		/* USB Device Mode Driver Related Tokens: */ | ||||||
|  | //		#define USE_RAM_DESCRIPTORS
 | ||||||
|  | 		#define USE_FLASH_DESCRIPTORS | ||||||
|  | //		#define USE_EEPROM_DESCRIPTORS
 | ||||||
|  | //		#define NO_INTERNAL_SERIAL
 | ||||||
|  | 		#define FIXED_CONTROL_ENDPOINT_SIZE      8 | ||||||
|  | //		#define DEVICE_STATE_AS_GPIOR            {Insert Value Here}
 | ||||||
|  | 		#define FIXED_NUM_CONFIGURATIONS         1 | ||||||
|  | //		#define CONTROL_ONLY_DEVICE
 | ||||||
|  | 		#define MAX_ENDPOINT_INDEX               1 | ||||||
|  | //		#define NO_DEVICE_REMOTE_WAKEUP
 | ||||||
|  | //		#define NO_DEVICE_SELF_POWER
 | ||||||
|  | 
 | ||||||
| 	#else | 	#else | ||||||
| 
 | 
 | ||||||
| 		#error Unsupported architecture for this LUFA configuration file. | 		#error Unsupported architecture for this LUFA configuration file. | ||||||
|  | |||||||
| @ -80,12 +80,24 @@ int main(void) | |||||||
| /** Configures the board hardware and chip peripherals for the demo's functionality. */ | /** Configures the board hardware and chip peripherals for the demo's functionality. */ | ||||||
| void SetupHardware(void) | void SetupHardware(void) | ||||||
| { | { | ||||||
|  | #if (ARCH == ARCH_AVR8) | ||||||
| 	/* Disable watchdog if enabled by bootloader/fuses */ | 	/* Disable watchdog if enabled by bootloader/fuses */ | ||||||
| 	MCUSR &= ~(1 << WDRF); | 	MCUSR &= ~(1 << WDRF); | ||||||
| 	wdt_disable(); | 	wdt_disable(); | ||||||
| 
 | 
 | ||||||
| 	/* Disable clock division */ | 	/* Disable clock division */ | ||||||
| 	clock_prescale_set(clock_div_1); | 	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 */ | 	/* Hardware Initialization */ | ||||||
| 	Joystick_Init(); | 	Joystick_Init(); | ||||||
|  | |||||||
| @ -51,6 +51,7 @@ | |||||||
| 		#include <LUFA/Drivers/Board/LEDs.h> | 		#include <LUFA/Drivers/Board/LEDs.h> | ||||||
| 		#include <LUFA/Drivers/Board/Buttons.h> | 		#include <LUFA/Drivers/Board/Buttons.h> | ||||||
| 		#include <LUFA/Drivers/USB/USB.h> | 		#include <LUFA/Drivers/USB/USB.h> | ||||||
|  | 		#include <LUFA/Platform/Platform.h> | ||||||
| 
 | 
 | ||||||
| 	/* Macros: */ | 	/* Macros: */ | ||||||
| 		/** LED mask for the library LED driver, to indicate that the USB interface is not ready. */ | 		/** LED mask for the library LED driver, to indicate that the USB interface is not ready. */ | ||||||
|  | |||||||
| @ -14,6 +14,9 @@ | |||||||
|  *  \li Series 6 USB AVRs (AT90USBxxx6) |  *  \li Series 6 USB AVRs (AT90USBxxx6) | ||||||
|  *  \li Series 4 USB AVRs (ATMEGAxxU4) |  *  \li Series 4 USB AVRs (ATMEGAxxU4) | ||||||
|  *  \li Series 2 USB AVRs (AT90USBxx2, ATMEGAxxU2) |  *  \li Series 2 USB AVRs (AT90USBxx2, ATMEGAxxU2) | ||||||
|  |  *  \li Series AU XMEGA AVRs (ATXMEGAxxxAxU) | ||||||
|  |  *  \li Series B XMEGA AVRs (ATXMEGAxxxBxU) | ||||||
|  |  *  \li Series C XMEGA AVRs (ATXMEGAxxxCxU) | ||||||
|  * |  * | ||||||
|  *  \section Sec_Info USB Information: |  *  \section Sec_Info USB Information: | ||||||
|  * |  * | ||||||
|  | |||||||
| @ -1,14 +1,26 @@ | |||||||
| <asf xmlversion="1.0"> | <asf xmlversion="1.0"> | ||||||
| 	<project caption="Mouse HID Device Demo (Class Driver APIs)" id="lufa.demos.device.class.mouse.example"> | 	<project caption="Mouse HID Device Demo (Class Driver APIs)" id="lufa.demos.device.class.mouse.example.avr8"> | ||||||
| 		<require idref="lufa.demos.device.class.mouse"/> | 		<require idref="lufa.demos.device.class.mouse"/> | ||||||
| 		<require idref="lufa.boards.dummy.avr8"/> | 		<require idref="lufa.boards.dummy.avr8"/> | ||||||
| 		<generator value="as5_8"/> | 		<generator value="as5_8"/> | ||||||
| 
 | 
 | ||||||
| 		<device-support value="at90usb1287"/> | 		<device-support value="at90usb1287"/> | ||||||
| 		<config name="lufa.drivers.board.name" value="usbkey"/> | 		<config name="lufa.drivers.board.name" value="none"/> | ||||||
| 
 | 
 | ||||||
| 		<build type="define" name="F_CPU" value="8000000UL"/> | 		<build type="define" name="F_CPU" value="16000000UL"/> | ||||||
| 		<build type="define" name="F_USB" value="8000000UL"/> | 		<build type="define" name="F_USB" value="16000000UL"/> | ||||||
|  | 	</project> | ||||||
|  | 
 | ||||||
|  | 	<project caption="Mouse HID Device Demo (Class Driver APIs)" id="lufa.demos.device.class.mouse.example.xmega"> | ||||||
|  | 		<require idref="lufa.demos.device.class.mouse"/> | ||||||
|  | 		<require idref="lufa.boards.dummy.xmega"/> | ||||||
|  | 		<generator value="as5_8"/> | ||||||
|  | 
 | ||||||
|  | 		<device-support value="atxmega128a1u"/> | ||||||
|  | 		<config name="lufa.drivers.board.name" value="none"/> | ||||||
|  | 
 | ||||||
|  | 		<build type="define" name="F_CPU" value="32000000UL"/> | ||||||
|  | 		<build type="define" name="F_USB" value="48000000UL"/> | ||||||
| 	</project> | 	</project> | ||||||
| 
 | 
 | ||||||
| 	<module type="application" id="lufa.demos.device.class.mouse" caption="Mouse HID Device Demo (Class Driver APIs)"> | 	<module type="application" id="lufa.demos.device.class.mouse" caption="Mouse HID Device Demo (Class Driver APIs)"> | ||||||
|  | |||||||
| @ -85,6 +85,39 @@ | |||||||
| //		#define NO_AUTO_VBUS_MANAGEMENT
 | //		#define NO_AUTO_VBUS_MANAGEMENT
 | ||||||
| //		#define INVERTED_VBUS_ENABLE_LINE
 | //		#define INVERTED_VBUS_ENABLE_LINE
 | ||||||
| 
 | 
 | ||||||
|  | 	#elif (ARCH == ARCH_XMEGA) | ||||||
|  | 
 | ||||||
|  | 		/* Non-USB Related Configuration Tokens: */ | ||||||
|  | //		#define DISABLE_TERMINAL_CODES
 | ||||||
|  | 
 | ||||||
|  | 		/* USB Class Driver Related Tokens: */ | ||||||
|  | //		#define HID_HOST_BOOT_PROTOCOL_ONLY
 | ||||||
|  | //		#define HID_STATETABLE_STACK_DEPTH       {Insert Value Here}
 | ||||||
|  | //		#define HID_USAGE_STACK_DEPTH            {Insert Value Here}
 | ||||||
|  | //		#define HID_MAX_COLLECTIONS              {Insert Value Here}
 | ||||||
|  | //		#define HID_MAX_REPORTITEMS              {Insert Value Here}
 | ||||||
|  | //		#define HID_MAX_REPORT_IDS               {Insert Value Here}
 | ||||||
|  | //		#define NO_CLASS_DRIVER_AUTOFLUSH
 | ||||||
|  | 
 | ||||||
|  | 		/* General USB Driver Related Tokens: */ | ||||||
|  | 		#define USE_STATIC_OPTIONS               (USB_DEVICE_OPT_FULLSPEED | USB_OPT_RC32MCLKSRC | USB_OPT_BUSEVENT_PRIHIGH) | ||||||
|  | //		#define USB_STREAM_TIMEOUT_MS            {Insert Value Here}
 | ||||||
|  | //		#define NO_LIMITED_CONTROLLER_CONNECT
 | ||||||
|  | //		#define NO_SOF_EVENTS
 | ||||||
|  | 
 | ||||||
|  | 		/* USB Device Mode Driver Related Tokens: */ | ||||||
|  | //		#define USE_RAM_DESCRIPTORS
 | ||||||
|  | 		#define USE_FLASH_DESCRIPTORS | ||||||
|  | //		#define USE_EEPROM_DESCRIPTORS
 | ||||||
|  | //		#define NO_INTERNAL_SERIAL
 | ||||||
|  | 		#define FIXED_CONTROL_ENDPOINT_SIZE      8 | ||||||
|  | //		#define DEVICE_STATE_AS_GPIOR            {Insert Value Here}
 | ||||||
|  | 		#define FIXED_NUM_CONFIGURATIONS         1 | ||||||
|  | //		#define CONTROL_ONLY_DEVICE
 | ||||||
|  | 		#define MAX_ENDPOINT_INDEX               3 | ||||||
|  | //		#define NO_DEVICE_REMOTE_WAKEUP
 | ||||||
|  | //		#define NO_DEVICE_SELF_POWER
 | ||||||
|  | 
 | ||||||
| 	#else | 	#else | ||||||
| 
 | 
 | ||||||
| 		#error Unsupported architecture for this LUFA configuration file. | 		#error Unsupported architecture for this LUFA configuration file. | ||||||
|  | |||||||
| @ -115,12 +115,24 @@ int main(void) | |||||||
| /** Configures the board hardware and chip peripherals for the demo's functionality. */ | /** Configures the board hardware and chip peripherals for the demo's functionality. */ | ||||||
| void SetupHardware(void) | void SetupHardware(void) | ||||||
| { | { | ||||||
|  | #if (ARCH == ARCH_AVR8) | ||||||
| 	/* Disable watchdog if enabled by bootloader/fuses */ | 	/* Disable watchdog if enabled by bootloader/fuses */ | ||||||
| 	MCUSR &= ~(1 << WDRF); | 	MCUSR &= ~(1 << WDRF); | ||||||
| 	wdt_disable(); | 	wdt_disable(); | ||||||
| 
 | 
 | ||||||
| 	/* Disable clock division */ | 	/* Disable clock division */ | ||||||
| 	clock_prescale_set(clock_div_1); | 	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 */ | 	/* Hardware Initialization */ | ||||||
| 	LEDs_Init(); | 	LEDs_Init(); | ||||||
|  | |||||||
| @ -50,10 +50,11 @@ | |||||||
| 		#include "Lib/ARP.h" | 		#include "Lib/ARP.h" | ||||||
| 		#include "Lib/Webserver.h" | 		#include "Lib/Webserver.h" | ||||||
| 		#include "Config/AppConfig.h" | 		#include "Config/AppConfig.h" | ||||||
| 		 | 
 | ||||||
| 		#include <LUFA/Drivers/Board/LEDs.h> | 		#include <LUFA/Drivers/Board/LEDs.h> | ||||||
| 		#include <LUFA/Drivers/Peripheral/Serial.h> | 		#include <LUFA/Drivers/Peripheral/Serial.h> | ||||||
| 		#include <LUFA/Drivers/USB/USB.h> | 		#include <LUFA/Drivers/USB/USB.h> | ||||||
|  | 		#include <LUFA/Platform/Platform.h> | ||||||
| 
 | 
 | ||||||
| 	/* Macros: */ | 	/* Macros: */ | ||||||
| 		/** LED mask for the library LED driver, to indicate that the USB interface is not ready. */ | 		/** LED mask for the library LED driver, to indicate that the USB interface is not ready. */ | ||||||
|  | |||||||
| @ -12,6 +12,9 @@ | |||||||
|  * |  * | ||||||
|  *  \li Series 7 USB AVRs (AT90USBxxx7) |  *  \li Series 7 USB AVRs (AT90USBxxx7) | ||||||
|  *  \li Series 6 USB AVRs (AT90USBxxx6) |  *  \li Series 6 USB AVRs (AT90USBxxx6) | ||||||
|  |  *  \li Series AU XMEGA AVRs (ATXMEGAxxxAxU) | ||||||
|  |  *  \li Series B XMEGA AVRs (ATXMEGAxxxBxU) | ||||||
|  |  *  \li Series C XMEGA AVRs (ATXMEGAxxxCxU) | ||||||
|  * |  * | ||||||
|  *  \section Sec_Info USB Information: |  *  \section Sec_Info USB Information: | ||||||
|  * |  * | ||||||
|  | |||||||
| @ -1,14 +1,26 @@ | |||||||
| <asf xmlversion="1.0"> | <asf xmlversion="1.0"> | ||||||
| 	<project caption="RNDIS Ethernet Device Demo (Class Driver APIs)" id="lufa.demos.device.class.rndis.example"> | 	<project caption="RNDIS Ethernet Device Demo (Class Driver APIs)" id="lufa.demos.device.class.rndis.example.avr8"> | ||||||
| 		<require idref="lufa.demos.device.class.rndis"/> | 		<require idref="lufa.demos.device.class.rndis"/> | ||||||
| 		<require idref="lufa.boards.dummy.avr8"/> | 		<require idref="lufa.boards.dummy.avr8"/> | ||||||
| 		<generator value="as5_8"/> | 		<generator value="as5_8"/> | ||||||
| 
 | 
 | ||||||
| 		<device-support value="at90usb1287"/> | 		<device-support value="at90usb1287"/> | ||||||
| 		<config name="lufa.drivers.board.name" value="usbkey"/> | 		<config name="lufa.drivers.board.name" value="none"/> | ||||||
| 
 | 
 | ||||||
| 		<build type="define" name="F_CPU" value="8000000UL"/> | 		<build type="define" name="F_CPU" value="16000000UL"/> | ||||||
| 		<build type="define" name="F_USB" value="8000000UL"/> | 		<build type="define" name="F_USB" value="16000000UL"/> | ||||||
|  | 	</project> | ||||||
|  | 
 | ||||||
|  | 	<project caption="RNDIS Ethernet Device Demo (Class Driver APIs)" id="lufa.demos.device.class.rndis.example.xmega"> | ||||||
|  | 		<require idref="lufa.demos.device.class.rndis"/> | ||||||
|  | 		<require idref="lufa.boards.dummy.xmega"/> | ||||||
|  | 		<generator value="as5_8"/> | ||||||
|  | 
 | ||||||
|  | 		<device-support value="atxmega128a1u"/> | ||||||
|  | 		<config name="lufa.drivers.board.name" value="none"/> | ||||||
|  | 
 | ||||||
|  | 		<build type="define" name="F_CPU" value="32000000UL"/> | ||||||
|  | 		<build type="define" name="F_USB" value="48000000UL"/> | ||||||
| 	</project> | 	</project> | ||||||
| 
 | 
 | ||||||
| 	<module type="application" id="lufa.demos.device.class.rndis" caption="RNDIS Ethernet Device Demo (Class Driver APIs)"> | 	<module type="application" id="lufa.demos.device.class.rndis" caption="RNDIS Ethernet Device Demo (Class Driver APIs)"> | ||||||
|  | |||||||
| @ -85,6 +85,39 @@ | |||||||
| //		#define NO_AUTO_VBUS_MANAGEMENT
 | //		#define NO_AUTO_VBUS_MANAGEMENT
 | ||||||
| //		#define INVERTED_VBUS_ENABLE_LINE
 | //		#define INVERTED_VBUS_ENABLE_LINE
 | ||||||
| 
 | 
 | ||||||
|  | 	#elif (ARCH == ARCH_XMEGA) | ||||||
|  | 
 | ||||||
|  | 		/* Non-USB Related Configuration Tokens: */ | ||||||
|  | //		#define DISABLE_TERMINAL_CODES
 | ||||||
|  | 
 | ||||||
|  | 		/* USB Class Driver Related Tokens: */ | ||||||
|  | //		#define HID_HOST_BOOT_PROTOCOL_ONLY
 | ||||||
|  | //		#define HID_STATETABLE_STACK_DEPTH       {Insert Value Here}
 | ||||||
|  | //		#define HID_USAGE_STACK_DEPTH            {Insert Value Here}
 | ||||||
|  | //		#define HID_MAX_COLLECTIONS              {Insert Value Here}
 | ||||||
|  | //		#define HID_MAX_REPORTITEMS              {Insert Value Here}
 | ||||||
|  | //		#define HID_MAX_REPORT_IDS               {Insert Value Here}
 | ||||||
|  | //		#define NO_CLASS_DRIVER_AUTOFLUSH
 | ||||||
|  | 
 | ||||||
|  | 		/* General USB Driver Related Tokens: */ | ||||||
|  | 		#define USE_STATIC_OPTIONS               (USB_DEVICE_OPT_FULLSPEED | USB_OPT_RC32MCLKSRC | USB_OPT_BUSEVENT_PRIHIGH) | ||||||
|  | //		#define USB_STREAM_TIMEOUT_MS            {Insert Value Here}
 | ||||||
|  | //		#define NO_LIMITED_CONTROLLER_CONNECT
 | ||||||
|  | //		#define NO_SOF_EVENTS
 | ||||||
|  | 
 | ||||||
|  | 		/* USB Device Mode Driver Related Tokens: */ | ||||||
|  | //		#define USE_RAM_DESCRIPTORS
 | ||||||
|  | 		#define USE_FLASH_DESCRIPTORS | ||||||
|  | //		#define USE_EEPROM_DESCRIPTORS
 | ||||||
|  | //		#define NO_INTERNAL_SERIAL
 | ||||||
|  | 		#define FIXED_CONTROL_ENDPOINT_SIZE      8 | ||||||
|  | //		#define DEVICE_STATE_AS_GPIOR            {Insert Value Here}
 | ||||||
|  | 		#define FIXED_NUM_CONFIGURATIONS         1 | ||||||
|  | //		#define CONTROL_ONLY_DEVICE
 | ||||||
|  | 		#define MAX_ENDPOINT_INDEX               4 | ||||||
|  | //		#define NO_DEVICE_REMOTE_WAKEUP
 | ||||||
|  | //		#define NO_DEVICE_SELF_POWER
 | ||||||
|  | 
 | ||||||
| 	#else | 	#else | ||||||
| 
 | 
 | ||||||
| 		#error Unsupported architecture for this LUFA configuration file. | 		#error Unsupported architecture for this LUFA configuration file. | ||||||
|  | |||||||
| @ -100,12 +100,24 @@ int main(void) | |||||||
| /** Configures the board hardware and chip peripherals for the demo's functionality. */ | /** Configures the board hardware and chip peripherals for the demo's functionality. */ | ||||||
| void SetupHardware(void) | void SetupHardware(void) | ||||||
| { | { | ||||||
|  | #if (ARCH == ARCH_AVR8) | ||||||
| 	/* Disable watchdog if enabled by bootloader/fuses */ | 	/* Disable watchdog if enabled by bootloader/fuses */ | ||||||
| 	MCUSR &= ~(1 << WDRF); | 	MCUSR &= ~(1 << WDRF); | ||||||
| 	wdt_disable(); | 	wdt_disable(); | ||||||
| 
 | 
 | ||||||
| 	/* Disable clock division */ | 	/* Disable clock division */ | ||||||
| 	clock_prescale_set(clock_div_1); | 	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 */ | 	/* Hardware Initialization */ | ||||||
| 	Joystick_Init(); | 	Joystick_Init(); | ||||||
|  | |||||||
| @ -49,6 +49,7 @@ | |||||||
| 		#include <LUFA/Drivers/Board/LEDs.h> | 		#include <LUFA/Drivers/Board/LEDs.h> | ||||||
| 		#include <LUFA/Drivers/Board/Joystick.h> | 		#include <LUFA/Drivers/Board/Joystick.h> | ||||||
| 		#include <LUFA/Drivers/USB/USB.h> | 		#include <LUFA/Drivers/USB/USB.h> | ||||||
|  | 		#include <LUFA/Platform/Platform.h> | ||||||
| 
 | 
 | ||||||
| 	/* Macros: */ | 	/* Macros: */ | ||||||
| 		/** LED mask for the library LED driver, to indicate that the USB interface is not ready. */ | 		/** LED mask for the library LED driver, to indicate that the USB interface is not ready. */ | ||||||
|  | |||||||
| @ -14,6 +14,9 @@ | |||||||
|  *  \li Series 6 USB AVRs (AT90USBxxx6) |  *  \li Series 6 USB AVRs (AT90USBxxx6) | ||||||
|  *  \li Series 4 USB AVRs (ATMEGAxxU4) |  *  \li Series 4 USB AVRs (ATMEGAxxU4) | ||||||
|  *  \li Series 2 USB AVRs (AT90USBxx2, ATMEGAxxU2) |  *  \li Series 2 USB AVRs (AT90USBxx2, ATMEGAxxU2) | ||||||
|  |  *  \li Series AU XMEGA AVRs (ATXMEGAxxxAxU) | ||||||
|  |  *  \li Series B XMEGA AVRs (ATXMEGAxxxBxU) | ||||||
|  |  *  \li Series C XMEGA AVRs (ATXMEGAxxxCxU) | ||||||
|  * |  * | ||||||
|  *  \section Sec_Info USB Information: |  *  \section Sec_Info USB Information: | ||||||
|  * |  * | ||||||
|  | |||||||
| @ -1,14 +1,26 @@ | |||||||
| <asf xmlversion="1.0"> | <asf xmlversion="1.0"> | ||||||
| 	<project caption="Virtual Serial CDC Device Demo (Class Driver APIs)" id="lufa.demos.device.class.cdc.example"> | 	<project caption="Virtual Serial CDC Device Demo (Class Driver APIs)" id="lufa.demos.device.class.cdc.example.avr8"> | ||||||
| 		<require idref="lufa.demos.device.class.cdc"/> | 		<require idref="lufa.demos.device.class.cdc"/> | ||||||
| 		<require idref="lufa.boards.dummy.avr8"/> | 		<require idref="lufa.boards.dummy.avr8"/> | ||||||
| 		<generator value="as5_8"/> | 		<generator value="as5_8"/> | ||||||
| 
 | 
 | ||||||
| 		<device-support value="at90usb1287"/> | 		<device-support value="at90usb1287"/> | ||||||
| 		<config name="lufa.drivers.board.name" value="usbkey"/> | 		<config name="lufa.drivers.board.name" value="none"/> | ||||||
| 
 | 
 | ||||||
| 		<build type="define" name="F_CPU" value="8000000UL"/> | 		<build type="define" name="F_CPU" value="16000000UL"/> | ||||||
| 		<build type="define" name="F_USB" value="8000000UL"/> | 		<build type="define" name="F_USB" value="16000000UL"/> | ||||||
|  | 	</project> | ||||||
|  | 
 | ||||||
|  | 	<project caption="Virtual Serial CDC Device Demo (Class Driver APIs)" id="lufa.demos.device.class.cdc.example.xmega"> | ||||||
|  | 		<require idref="lufa.demos.device.class.cdc"/> | ||||||
|  | 		<require idref="lufa.boards.dummy.xmega"/> | ||||||
|  | 		<generator value="as5_8"/> | ||||||
|  | 
 | ||||||
|  | 		<device-support value="atxmega128a1u"/> | ||||||
|  | 		<config name="lufa.drivers.board.name" value="none"/> | ||||||
|  | 
 | ||||||
|  | 		<build type="define" name="F_CPU" value="32000000UL"/> | ||||||
|  | 		<build type="define" name="F_USB" value="48000000UL"/> | ||||||
| 	</project> | 	</project> | ||||||
| 
 | 
 | ||||||
| 	<module type="application" id="lufa.demos.device.class.cdc" caption="Virtual Serial CDC Device Demo (Class Driver APIs)"> | 	<module type="application" id="lufa.demos.device.class.cdc" caption="Virtual Serial CDC Device Demo (Class Driver APIs)"> | ||||||
|  | |||||||
| @ -85,6 +85,39 @@ | |||||||
| //		#define NO_AUTO_VBUS_MANAGEMENT
 | //		#define NO_AUTO_VBUS_MANAGEMENT
 | ||||||
| //		#define INVERTED_VBUS_ENABLE_LINE
 | //		#define INVERTED_VBUS_ENABLE_LINE
 | ||||||
| 
 | 
 | ||||||
|  | 	#elif (ARCH == ARCH_XMEGA) | ||||||
|  | 
 | ||||||
|  | 		/* Non-USB Related Configuration Tokens: */ | ||||||
|  | //		#define DISABLE_TERMINAL_CODES
 | ||||||
|  | 
 | ||||||
|  | 		/* USB Class Driver Related Tokens: */ | ||||||
|  | //		#define HID_HOST_BOOT_PROTOCOL_ONLY
 | ||||||
|  | //		#define HID_STATETABLE_STACK_DEPTH       {Insert Value Here}
 | ||||||
|  | //		#define HID_USAGE_STACK_DEPTH            {Insert Value Here}
 | ||||||
|  | //		#define HID_MAX_COLLECTIONS              {Insert Value Here}
 | ||||||
|  | //		#define HID_MAX_REPORTITEMS              {Insert Value Here}
 | ||||||
|  | //		#define HID_MAX_REPORT_IDS               {Insert Value Here}
 | ||||||
|  | //		#define NO_CLASS_DRIVER_AUTOFLUSH
 | ||||||
|  | 
 | ||||||
|  | 		/* General USB Driver Related Tokens: */ | ||||||
|  | 		#define USE_STATIC_OPTIONS               (USB_DEVICE_OPT_FULLSPEED | USB_OPT_RC32MCLKSRC | USB_OPT_BUSEVENT_PRIHIGH) | ||||||
|  | //		#define USB_STREAM_TIMEOUT_MS            {Insert Value Here}
 | ||||||
|  | //		#define NO_LIMITED_CONTROLLER_CONNECT
 | ||||||
|  | //		#define NO_SOF_EVENTS
 | ||||||
|  | 
 | ||||||
|  | 		/* USB Device Mode Driver Related Tokens: */ | ||||||
|  | //		#define USE_RAM_DESCRIPTORS
 | ||||||
|  | 		#define USE_FLASH_DESCRIPTORS | ||||||
|  | //		#define USE_EEPROM_DESCRIPTORS
 | ||||||
|  | //		#define NO_INTERNAL_SERIAL
 | ||||||
|  | 		#define FIXED_CONTROL_ENDPOINT_SIZE      8 | ||||||
|  | //		#define DEVICE_STATE_AS_GPIOR            {Insert Value Here}
 | ||||||
|  | 		#define FIXED_NUM_CONFIGURATIONS         1 | ||||||
|  | //		#define CONTROL_ONLY_DEVICE
 | ||||||
|  | 		#define MAX_ENDPOINT_INDEX               5 | ||||||
|  | //		#define NO_DEVICE_REMOTE_WAKEUP
 | ||||||
|  | //		#define NO_DEVICE_SELF_POWER
 | ||||||
|  | 
 | ||||||
| 	#else | 	#else | ||||||
| 
 | 
 | ||||||
| 		#error Unsupported architecture for this LUFA configuration file. | 		#error Unsupported architecture for this LUFA configuration file. | ||||||
|  | |||||||
| @ -126,12 +126,24 @@ int main(void) | |||||||
| /** Configures the board hardware and chip peripherals for the demo's functionality. */ | /** Configures the board hardware and chip peripherals for the demo's functionality. */ | ||||||
| void SetupHardware(void) | void SetupHardware(void) | ||||||
| { | { | ||||||
|  | #if (ARCH == ARCH_AVR8) | ||||||
| 	/* Disable watchdog if enabled by bootloader/fuses */ | 	/* Disable watchdog if enabled by bootloader/fuses */ | ||||||
| 	MCUSR &= ~(1 << WDRF); | 	MCUSR &= ~(1 << WDRF); | ||||||
| 	wdt_disable(); | 	wdt_disable(); | ||||||
| 
 | 
 | ||||||
| 	/* Disable clock division */ | 	/* Disable clock division */ | ||||||
| 	clock_prescale_set(clock_div_1); | 	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 */ | 	/* Hardware Initialization */ | ||||||
| 	LEDs_Init(); | 	LEDs_Init(); | ||||||
|  | |||||||
| @ -52,6 +52,7 @@ | |||||||
| 		#include <LUFA/Drivers/Board/LEDs.h> | 		#include <LUFA/Drivers/Board/LEDs.h> | ||||||
| 		#include <LUFA/Drivers/Board/Joystick.h> | 		#include <LUFA/Drivers/Board/Joystick.h> | ||||||
| 		#include <LUFA/Drivers/USB/USB.h> | 		#include <LUFA/Drivers/USB/USB.h> | ||||||
|  | 		#include <LUFA/Platform/Platform.h> | ||||||
| 
 | 
 | ||||||
| 	/* Macros: */ | 	/* Macros: */ | ||||||
| 		/** LED mask for the library LED driver, to indicate that the USB interface is not ready. */ | 		/** LED mask for the library LED driver, to indicate that the USB interface is not ready. */ | ||||||
|  | |||||||
| @ -13,6 +13,9 @@ | |||||||
|  *  \li Series 7 USB AVRs (AT90USBxxx7) |  *  \li Series 7 USB AVRs (AT90USBxxx7) | ||||||
|  *  \li Series 6 USB AVRs (AT90USBxxx6) |  *  \li Series 6 USB AVRs (AT90USBxxx6) | ||||||
|  *  \li Series 4 USB AVRs (ATMEGAxxU4) |  *  \li Series 4 USB AVRs (ATMEGAxxU4) | ||||||
|  |  *  \li Series AU XMEGA AVRs (ATXMEGAxxxAxU) | ||||||
|  |  *  \li Series B XMEGA AVRs (ATXMEGAxxxBxU) | ||||||
|  |  *  \li Series C XMEGA AVRs (ATXMEGAxxxCxU) | ||||||
|  * |  * | ||||||
|  *  \section Sec_Info USB Information: |  *  \section Sec_Info USB Information: | ||||||
|  * |  * | ||||||
|  | |||||||
| @ -1,14 +1,26 @@ | |||||||
| <asf xmlversion="1.0"> | <asf xmlversion="1.0"> | ||||||
| 	<project caption="Virtual Serial CDC and Mass Storage Device Demo (Class Driver APIs)" id="lufa.demos.device.class.cdc_ms.example"> | 	<project caption="Virtual Serial CDC and Mass Storage Device Demo (Class Driver APIs)" id="lufa.demos.device.class.cdc_ms.example.avr8"> | ||||||
| 		<require idref="lufa.demos.device.class.cdc_ms"/> | 		<require idref="lufa.demos.device.class.cdc_ms"/> | ||||||
| 		<require idref="lufa.boards.dummy.avr8"/> | 		<require idref="lufa.boards.dummy.avr8"/> | ||||||
| 		<generator value="as5_8"/> | 		<generator value="as5_8"/> | ||||||
| 
 | 
 | ||||||
| 		<device-support value="at90usb1287"/> | 		<device-support value="at90usb1287"/> | ||||||
| 		<config name="lufa.drivers.board.name" value="usbkey"/> | 		<config name="lufa.drivers.board.name" value="none"/> | ||||||
| 
 | 
 | ||||||
| 		<build type="define" name="F_CPU" value="8000000UL"/> | 		<build type="define" name="F_CPU" value="16000000UL"/> | ||||||
| 		<build type="define" name="F_USB" value="8000000UL"/> | 		<build type="define" name="F_USB" value="16000000UL"/> | ||||||
|  | 	</project> | ||||||
|  | 
 | ||||||
|  | 	<project caption="Virtual Serial CDC and Mass Storage Device Demo (Class Driver APIs)" id="lufa.demos.device.class.cdc_ms.example.xmega"> | ||||||
|  | 		<require idref="lufa.demos.device.class.cdc_ms"/> | ||||||
|  | 		<require idref="lufa.boards.dummy.xmega"/> | ||||||
|  | 		<generator value="as5_8"/> | ||||||
|  | 
 | ||||||
|  | 		<device-support value="atxmega128a1u"/> | ||||||
|  | 		<config name="lufa.drivers.board.name" value="none"/> | ||||||
|  | 
 | ||||||
|  | 		<build type="define" name="F_CPU" value="32000000UL"/> | ||||||
|  | 		<build type="define" name="F_USB" value="48000000UL"/> | ||||||
| 	</project> | 	</project> | ||||||
| 
 | 
 | ||||||
| 	<module type="application" id="lufa.demos.device.class.cdc_ms" caption="Virtual Serial CDC and Mass Storage Device Demo (Class Driver APIs)"> | 	<module type="application" id="lufa.demos.device.class.cdc_ms" caption="Virtual Serial CDC and Mass Storage Device Demo (Class Driver APIs)"> | ||||||
|  | |||||||
| @ -85,6 +85,39 @@ | |||||||
| //		#define NO_AUTO_VBUS_MANAGEMENT
 | //		#define NO_AUTO_VBUS_MANAGEMENT
 | ||||||
| //		#define INVERTED_VBUS_ENABLE_LINE
 | //		#define INVERTED_VBUS_ENABLE_LINE
 | ||||||
| 
 | 
 | ||||||
|  | 	#elif (ARCH == ARCH_XMEGA) | ||||||
|  | 
 | ||||||
|  | 		/* Non-USB Related Configuration Tokens: */ | ||||||
|  | //		#define DISABLE_TERMINAL_CODES
 | ||||||
|  | 
 | ||||||
|  | 		/* USB Class Driver Related Tokens: */ | ||||||
|  | //		#define HID_HOST_BOOT_PROTOCOL_ONLY
 | ||||||
|  | //		#define HID_STATETABLE_STACK_DEPTH       {Insert Value Here}
 | ||||||
|  | //		#define HID_USAGE_STACK_DEPTH            {Insert Value Here}
 | ||||||
|  | //		#define HID_MAX_COLLECTIONS              {Insert Value Here}
 | ||||||
|  | //		#define HID_MAX_REPORTITEMS              {Insert Value Here}
 | ||||||
|  | //		#define HID_MAX_REPORT_IDS               {Insert Value Here}
 | ||||||
|  | //		#define NO_CLASS_DRIVER_AUTOFLUSH
 | ||||||
|  | 
 | ||||||
|  | 		/* General USB Driver Related Tokens: */ | ||||||
|  | 		#define USE_STATIC_OPTIONS               (USB_DEVICE_OPT_FULLSPEED | USB_OPT_RC32MCLKSRC | USB_OPT_BUSEVENT_PRIHIGH) | ||||||
|  | //		#define USB_STREAM_TIMEOUT_MS            {Insert Value Here}
 | ||||||
|  | //		#define NO_LIMITED_CONTROLLER_CONNECT
 | ||||||
|  | //		#define NO_SOF_EVENTS
 | ||||||
|  | 
 | ||||||
|  | 		/* USB Device Mode Driver Related Tokens: */ | ||||||
|  | //		#define USE_RAM_DESCRIPTORS
 | ||||||
|  | 		#define USE_FLASH_DESCRIPTORS | ||||||
|  | //		#define USE_EEPROM_DESCRIPTORS
 | ||||||
|  | //		#define NO_INTERNAL_SERIAL
 | ||||||
|  | 		#define FIXED_CONTROL_ENDPOINT_SIZE      8 | ||||||
|  | //		#define DEVICE_STATE_AS_GPIOR            {Insert Value Here}
 | ||||||
|  | 		#define FIXED_NUM_CONFIGURATIONS         1 | ||||||
|  | //		#define CONTROL_ONLY_DEVICE
 | ||||||
|  | 		#define MAX_ENDPOINT_INDEX               4 | ||||||
|  | //		#define NO_DEVICE_REMOTE_WAKEUP
 | ||||||
|  | //		#define NO_DEVICE_SELF_POWER
 | ||||||
|  | 
 | ||||||
| 	#else | 	#else | ||||||
| 
 | 
 | ||||||
| 		#error Unsupported architecture for this LUFA configuration file. | 		#error Unsupported architecture for this LUFA configuration file. | ||||||
|  | |||||||
| @ -116,12 +116,24 @@ int main(void) | |||||||
| /** Configures the board hardware and chip peripherals for the demo's functionality. */ | /** Configures the board hardware and chip peripherals for the demo's functionality. */ | ||||||
| void SetupHardware(void) | void SetupHardware(void) | ||||||
| { | { | ||||||
|  | #if (ARCH == ARCH_AVR8) | ||||||
| 	/* Disable watchdog if enabled by bootloader/fuses */ | 	/* Disable watchdog if enabled by bootloader/fuses */ | ||||||
| 	MCUSR &= ~(1 << WDRF); | 	MCUSR &= ~(1 << WDRF); | ||||||
| 	wdt_disable(); | 	wdt_disable(); | ||||||
| 
 | 
 | ||||||
| 	/* Disable clock division */ | 	/* Disable clock division */ | ||||||
| 	clock_prescale_set(clock_div_1); | 	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 */ | 	/* Hardware Initialization */ | ||||||
| 	Joystick_Init(); | 	Joystick_Init(); | ||||||
|  | |||||||
| @ -49,6 +49,7 @@ | |||||||
| 		#include <LUFA/Drivers/Board/Joystick.h> | 		#include <LUFA/Drivers/Board/Joystick.h> | ||||||
| 		#include <LUFA/Drivers/Board/Buttons.h> | 		#include <LUFA/Drivers/Board/Buttons.h> | ||||||
| 		#include <LUFA/Drivers/USB/USB.h> | 		#include <LUFA/Drivers/USB/USB.h> | ||||||
|  | 		#include <LUFA/Platform/Platform.h> | ||||||
| 
 | 
 | ||||||
| 	/* Macros: */ | 	/* Macros: */ | ||||||
| 		/** LED mask for the library LED driver, to indicate that the USB interface is not ready. */ | 		/** LED mask for the library LED driver, to indicate that the USB interface is not ready. */ | ||||||
|  | |||||||
| @ -14,6 +14,9 @@ | |||||||
|  *  \li Series 6 USB AVRs (AT90USBxxx6) |  *  \li Series 6 USB AVRs (AT90USBxxx6) | ||||||
|  *  \li Series 4 USB AVRs (ATMEGAxxU4) |  *  \li Series 4 USB AVRs (ATMEGAxxU4) | ||||||
|  *  \li Series 2 USB AVRs (AT90USBxx2, ATMEGAxxU2) |  *  \li Series 2 USB AVRs (AT90USBxx2, ATMEGAxxU2) | ||||||
|  |  *  \li Series AU XMEGA AVRs (ATXMEGAxxxAxU) | ||||||
|  |  *  \li Series B XMEGA AVRs (ATXMEGAxxxBxU) | ||||||
|  |  *  \li Series C XMEGA AVRs (ATXMEGAxxxCxU) | ||||||
|  * |  * | ||||||
|  *  \section Sec_Info USB Information: |  *  \section Sec_Info USB Information: | ||||||
|  * |  * | ||||||
|  | |||||||
| @ -1,14 +1,26 @@ | |||||||
| <asf xmlversion="1.0"> | <asf xmlversion="1.0"> | ||||||
| 	<project caption="Virtual Serial CDC and Mouse HID Device Demo (Class Driver APIs)" id="lufa.demos.device.class.cdc_mouse.example"> | 	<project caption="Virtual Serial CDC and Mouse HID Device Demo (Class Driver APIs)" id="lufa.demos.device.class.cdc_mouse.example.avr8"> | ||||||
| 		<require idref="lufa.demos.device.class.cdc_mouse"/> | 		<require idref="lufa.demos.device.class.cdc_mouse"/> | ||||||
| 		<require idref="lufa.boards.dummy.avr8"/> | 		<require idref="lufa.boards.dummy.avr8"/> | ||||||
| 		<generator value="as5_8"/> | 		<generator value="as5_8"/> | ||||||
| 
 | 
 | ||||||
| 		<device-support value="at90usb1287"/> | 		<device-support value="at90usb1287"/> | ||||||
| 		<config name="lufa.drivers.board.name" value="usbkey"/> | 		<config name="lufa.drivers.board.name" value="none"/> | ||||||
| 
 | 
 | ||||||
| 		<build type="define" name="F_CPU" value="8000000UL"/> | 		<build type="define" name="F_CPU" value="16000000UL"/> | ||||||
| 		<build type="define" name="F_USB" value="8000000UL"/> | 		<build type="define" name="F_USB" value="16000000UL"/> | ||||||
|  | 	</project> | ||||||
|  | 
 | ||||||
|  | 	<project caption="Virtual Serial CDC and Mouse HID Device Demo (Class Driver APIs)" id="lufa.demos.device.class.cdc_mouse.example.xmega"> | ||||||
|  | 		<require idref="lufa.demos.device.class.cdc_mouse"/> | ||||||
|  | 		<require idref="lufa.boards.dummy.xmega"/> | ||||||
|  | 		<generator value="as5_8"/> | ||||||
|  | 
 | ||||||
|  | 		<device-support value="atxmega128a1u"/> | ||||||
|  | 		<config name="lufa.drivers.board.name" value="none"/> | ||||||
|  | 
 | ||||||
|  | 		<build type="define" name="F_CPU" value="32000000UL"/> | ||||||
|  | 		<build type="define" name="F_USB" value="48000000UL"/> | ||||||
| 	</project> | 	</project> | ||||||
| 
 | 
 | ||||||
| 	<module type="application" id="lufa.demos.device.class.cdc_mouse" caption="Virtual Serial CDC and Mouse HID Device Demo (Class Driver APIs)"> | 	<module type="application" id="lufa.demos.device.class.cdc_mouse" caption="Virtual Serial CDC and Mouse HID Device Demo (Class Driver APIs)"> | ||||||
|  | |||||||
| @ -85,6 +85,39 @@ | |||||||
| //		#define NO_AUTO_VBUS_MANAGEMENT
 | //		#define NO_AUTO_VBUS_MANAGEMENT
 | ||||||
| //		#define INVERTED_VBUS_ENABLE_LINE
 | //		#define INVERTED_VBUS_ENABLE_LINE
 | ||||||
| 
 | 
 | ||||||
|  | 	#elif (ARCH == ARCH_XMEGA) | ||||||
|  | 
 | ||||||
|  | 		/* Non-USB Related Configuration Tokens: */ | ||||||
|  | //		#define DISABLE_TERMINAL_CODES
 | ||||||
|  | 
 | ||||||
|  | 		/* USB Class Driver Related Tokens: */ | ||||||
|  | //		#define HID_HOST_BOOT_PROTOCOL_ONLY
 | ||||||
|  | //		#define HID_STATETABLE_STACK_DEPTH       {Insert Value Here}
 | ||||||
|  | //		#define HID_USAGE_STACK_DEPTH            {Insert Value Here}
 | ||||||
|  | //		#define HID_MAX_COLLECTIONS              {Insert Value Here}
 | ||||||
|  | //		#define HID_MAX_REPORTITEMS              {Insert Value Here}
 | ||||||
|  | //		#define HID_MAX_REPORT_IDS               {Insert Value Here}
 | ||||||
|  | //		#define NO_CLASS_DRIVER_AUTOFLUSH
 | ||||||
|  | 
 | ||||||
|  | 		/* General USB Driver Related Tokens: */ | ||||||
|  | 		#define USE_STATIC_OPTIONS               (USB_DEVICE_OPT_FULLSPEED | USB_OPT_RC32MCLKSRC | USB_OPT_BUSEVENT_PRIHIGH) | ||||||
|  | //		#define USB_STREAM_TIMEOUT_MS            {Insert Value Here}
 | ||||||
|  | //		#define NO_LIMITED_CONTROLLER_CONNECT
 | ||||||
|  | //		#define NO_SOF_EVENTS
 | ||||||
|  | 
 | ||||||
|  | 		/* USB Device Mode Driver Related Tokens: */ | ||||||
|  | //		#define USE_RAM_DESCRIPTORS
 | ||||||
|  | 		#define USE_FLASH_DESCRIPTORS | ||||||
|  | //		#define USE_EEPROM_DESCRIPTORS
 | ||||||
|  | //		#define NO_INTERNAL_SERIAL
 | ||||||
|  | 		#define FIXED_CONTROL_ENDPOINT_SIZE      8 | ||||||
|  | //		#define DEVICE_STATE_AS_GPIOR            {Insert Value Here}
 | ||||||
|  | 		#define FIXED_NUM_CONFIGURATIONS         1 | ||||||
|  | //		#define CONTROL_ONLY_DEVICE
 | ||||||
|  | 		#define MAX_ENDPOINT_INDEX               4 | ||||||
|  | //		#define NO_DEVICE_REMOTE_WAKEUP
 | ||||||
|  | //		#define NO_DEVICE_SELF_POWER
 | ||||||
|  | 
 | ||||||
| 	#else | 	#else | ||||||
| 
 | 
 | ||||||
| 		#error Unsupported architecture for this LUFA configuration file. | 		#error Unsupported architecture for this LUFA configuration file. | ||||||
|  | |||||||
| @ -93,12 +93,24 @@ int main(void) | |||||||
| /** Configures the board hardware and chip peripherals for the demo's functionality. */ | /** Configures the board hardware and chip peripherals for the demo's functionality. */ | ||||||
| void SetupHardware(void) | void SetupHardware(void) | ||||||
| { | { | ||||||
|  | #if (ARCH == ARCH_AVR8) | ||||||
| 	/* Disable watchdog if enabled by bootloader/fuses */ | 	/* Disable watchdog if enabled by bootloader/fuses */ | ||||||
| 	MCUSR &= ~(1 << WDRF); | 	MCUSR &= ~(1 << WDRF); | ||||||
| 	wdt_disable(); | 	wdt_disable(); | ||||||
| 
 | 
 | ||||||
| 	/* Disable clock division */ | 	/* Disable clock division */ | ||||||
| 	clock_prescale_set(clock_div_1); | 	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 */ | 	/* Hardware Initialization */ | ||||||
| 	LEDs_Init(); | 	LEDs_Init(); | ||||||
|  | |||||||
| @ -1,7 +1,7 @@ | |||||||
| /*
 | /*
 | ||||||
|              LUFA Library |              LUFA Library | ||||||
|      Copyright (C) Dean Camera, 2013. |      Copyright (C) Dean Camera, 2013. | ||||||
|                | 
 | ||||||
|   dean [at] fourwalledcubicle [dot] com |   dean [at] fourwalledcubicle [dot] com | ||||||
|            www.lufa-lib.org |            www.lufa-lib.org | ||||||
| */ | */ | ||||||
| @ -9,13 +9,13 @@ | |||||||
| /*
 | /*
 | ||||||
|   Copyright 2013  Dean Camera (dean [at] fourwalledcubicle [dot] com) |   Copyright 2013  Dean Camera (dean [at] fourwalledcubicle [dot] com) | ||||||
| 
 | 
 | ||||||
|   Permission to use, copy, modify, distribute, and sell this  |   Permission to use, copy, modify, distribute, and sell this | ||||||
|   software and its documentation for any purpose is hereby granted |   software and its documentation for any purpose is hereby granted | ||||||
|   without fee, provided that the above copyright notice appear in  |   without fee, provided that the above copyright notice appear in | ||||||
|   all copies and that both that the copyright notice and this |   all copies and that both that the copyright notice and this | ||||||
|   permission notice and warranty disclaimer appear in supporting  |   permission notice and warranty disclaimer appear in supporting | ||||||
|   documentation, and that the name of the author not be used in  |   documentation, and that the name of the author not be used in | ||||||
|   advertising or publicity pertaining to distribution of the  |   advertising or publicity pertaining to distribution of the | ||||||
|   software without specific, written prior permission. |   software without specific, written prior permission. | ||||||
| 
 | 
 | ||||||
|   The author disclaims all warranties with regard to this |   The author disclaims all warranties with regard to this | ||||||
| @ -39,8 +39,9 @@ | |||||||
| 
 | 
 | ||||||
| 		#include "Descriptors.h" | 		#include "Descriptors.h" | ||||||
| 
 | 
 | ||||||
| 		#include <LUFA/Drivers/USB/USB.h> |  | ||||||
| 		#include <LUFA/Drivers/Board/LEDs.h> | 		#include <LUFA/Drivers/Board/LEDs.h> | ||||||
|  | 		#include <LUFA/Drivers/USB/USB.h> | ||||||
|  | 		#include <LUFA/Platform/Platform.h> | ||||||
| 
 | 
 | ||||||
| 	/* Macros: */ | 	/* Macros: */ | ||||||
| 		/** LED mask for the library LED driver, to indicate that the USB interface is not ready. */ | 		/** LED mask for the library LED driver, to indicate that the USB interface is not ready. */ | ||||||
| @ -54,7 +55,7 @@ | |||||||
| 
 | 
 | ||||||
| 		/** LED mask for the library LED driver, to indicate that an error has occurred in the USB interface. */ | 		/** LED mask for the library LED driver, to indicate that an error has occurred in the USB interface. */ | ||||||
| 		#define LEDMASK_USB_ERROR                    (LEDS_LED1 | LEDS_LED3) | 		#define LEDMASK_USB_ERROR                    (LEDS_LED1 | LEDS_LED3) | ||||||
| 		 | 
 | ||||||
| 		/** LED mask for the library LED driver, to indicate that the USB interface is busy. */ | 		/** LED mask for the library LED driver, to indicate that the USB interface is busy. */ | ||||||
| 		#define LEDMASK_USB_BUSY                      LEDS_LED2 | 		#define LEDMASK_USB_BUSY                      LEDS_LED2 | ||||||
| 
 | 
 | ||||||
| @ -66,14 +67,14 @@ | |||||||
| 		#define Req_CheckClearStatus                  0x06 | 		#define Req_CheckClearStatus                  0x06 | ||||||
| 		#define Req_GetCapabilities                   0x07 | 		#define Req_GetCapabilities                   0x07 | ||||||
| 		#define Req_IndicatorPulse                    0x40 | 		#define Req_IndicatorPulse                    0x40 | ||||||
| 		 | 
 | ||||||
| 		#define TMC_STATUS_SUCCESS                    0x01 | 		#define TMC_STATUS_SUCCESS                    0x01 | ||||||
| 		#define TMC_STATUS_PENDING                    0x02 | 		#define TMC_STATUS_PENDING                    0x02 | ||||||
| 		#define TMC_STATUS_FAILED                     0x80 | 		#define TMC_STATUS_FAILED                     0x80 | ||||||
| 		#define TMC_STATUS_TRANSFER_NOT_IN_PROGRESS   0x81 | 		#define TMC_STATUS_TRANSFER_NOT_IN_PROGRESS   0x81 | ||||||
| 		#define TMC_STATUS_SPLIT_NOT_IN_PROGRESS      0x82 | 		#define TMC_STATUS_SPLIT_NOT_IN_PROGRESS      0x82 | ||||||
| 		#define TMC_STATUS_SPLIT_IN_PROGRESS          0x83 | 		#define TMC_STATUS_SPLIT_IN_PROGRESS          0x83 | ||||||
| 		 | 
 | ||||||
| 		#define TMC_MESSAGEID_DEV_DEP_MSG_OUT         0x01 | 		#define TMC_MESSAGEID_DEV_DEP_MSG_OUT         0x01 | ||||||
| 		#define TMC_MESSAGEID_DEV_DEP_MSG_IN          0x02 | 		#define TMC_MESSAGEID_DEV_DEP_MSG_IN          0x02 | ||||||
| 		#define TMC_MESSAGEID_DEV_VENDOR_OUT          0x7E | 		#define TMC_MESSAGEID_DEV_VENDOR_OUT          0x7E | ||||||
| @ -86,7 +87,7 @@ | |||||||
| 			uint8_t  Reserved; | 			uint8_t  Reserved; | ||||||
| 
 | 
 | ||||||
| 			uint16_t TMCVersion; | 			uint16_t TMCVersion; | ||||||
| 			 | 
 | ||||||
| 			struct | 			struct | ||||||
| 			{ | 			{ | ||||||
| 				unsigned ListenOnly             : 1; | 				unsigned ListenOnly             : 1; | ||||||
| @ -94,17 +95,17 @@ | |||||||
| 				unsigned PulseIndicateSupported : 1; | 				unsigned PulseIndicateSupported : 1; | ||||||
| 				unsigned Reserved               : 5; | 				unsigned Reserved               : 5; | ||||||
| 			} Interface; | 			} Interface; | ||||||
| 			 | 
 | ||||||
| 			struct | 			struct | ||||||
| 			{ | 			{ | ||||||
| 				unsigned SupportsAbortINOnMatch : 1; | 				unsigned SupportsAbortINOnMatch : 1; | ||||||
| 				unsigned Reserved               : 7; | 				unsigned Reserved               : 7; | ||||||
| 			} Device; | 			} Device; | ||||||
| 			 | 
 | ||||||
| 			uint8_t Reserved2[6]; | 			uint8_t Reserved2[6]; | ||||||
| 			uint8_t Reserved3[12];			 | 			uint8_t Reserved3[12]; | ||||||
| 		} TMC_Capabilities_t; | 		} TMC_Capabilities_t; | ||||||
| 		 | 
 | ||||||
| 		typedef struct | 		typedef struct | ||||||
| 		{ | 		{ | ||||||
| 			uint8_t LastMessageTransaction; | 			uint8_t LastMessageTransaction; | ||||||
| @ -125,7 +126,7 @@ | |||||||
| 			uint8_t  InverseTag; | 			uint8_t  InverseTag; | ||||||
| 			uint8_t  Reserved; | 			uint8_t  Reserved; | ||||||
| 			uint32_t TransferSize; | 			uint32_t TransferSize; | ||||||
| 			 | 
 | ||||||
| 			union | 			union | ||||||
| 			{ | 			{ | ||||||
| 				TMC_DevOUTMessageHeader_t DeviceOUT; | 				TMC_DevOUTMessageHeader_t DeviceOUT; | ||||||
|  | |||||||
| @ -62,12 +62,14 @@ int main(void) | |||||||
| /** Configures the board hardware and chip peripherals for the demo's functionality. */ | /** Configures the board hardware and chip peripherals for the demo's functionality. */ | ||||||
| void SetupHardware(void) | void SetupHardware(void) | ||||||
| { | { | ||||||
|  | #if (ARCH == ARCH_AVR8) | ||||||
| 	/* Disable watchdog if enabled by bootloader/fuses */ | 	/* Disable watchdog if enabled by bootloader/fuses */ | ||||||
| 	MCUSR &= ~(1 << WDRF); | 	MCUSR &= ~(1 << WDRF); | ||||||
| 	wdt_disable(); | 	wdt_disable(); | ||||||
| 
 | 
 | ||||||
| 	/* Disable clock division */ | 	/* Disable clock division */ | ||||||
| 	clock_prescale_set(clock_div_1); | 	clock_prescale_set(clock_div_1); | ||||||
|  | #endif | ||||||
| 
 | 
 | ||||||
| 	/* Hardware Initialization */ | 	/* Hardware Initialization */ | ||||||
| 	LEDs_Init(); | 	LEDs_Init(); | ||||||
|  | |||||||
| @ -49,6 +49,7 @@ | |||||||
| 		#include <LUFA/Drivers/Board/LEDs.h> | 		#include <LUFA/Drivers/Board/LEDs.h> | ||||||
| 		#include <LUFA/Drivers/Board/Buttons.h> | 		#include <LUFA/Drivers/Board/Buttons.h> | ||||||
| 		#include <LUFA/Drivers/Peripheral/ADC.h> | 		#include <LUFA/Drivers/Peripheral/ADC.h> | ||||||
|  | 		#include <LUFA/Platform/Platform.h> | ||||||
| 
 | 
 | ||||||
| 	/* Macros: */ | 	/* Macros: */ | ||||||
| 		/** Maximum audio sample value for the microphone input. */ | 		/** Maximum audio sample value for the microphone input. */ | ||||||
|  | |||||||
| @ -1,14 +1,14 @@ | |||||||
| <asf xmlversion="1.0"> | <asf xmlversion="1.0"> | ||||||
| 	<project caption="Audio Input Device Demo (Low Level APIs)" id="lufa.demos.device.lowlevel.audio_input.example"> | 	<project caption="Audio Input Device Demo (Low Level APIs)" id="lufa.demos.device.lowlevel.audio_input.example.avr8"> | ||||||
| 		<require idref="lufa.demos.device.lowlevel.audio_input"/> | 		<require idref="lufa.demos.device.lowlevel.audio_input"/> | ||||||
| 		<require idref="lufa.boards.dummy.avr8"/> | 		<require idref="lufa.boards.dummy.avr8"/> | ||||||
| 		<generator value="as5_8"/> | 		<generator value="as5_8"/> | ||||||
| 
 | 
 | ||||||
| 		<device-support value="at90usb1287"/> | 		<device-support value="at90usb1287"/> | ||||||
| 		<config name="lufa.drivers.board.name" value="usbkey"/> | 		<config name="lufa.drivers.board.name" value="none"/> | ||||||
| 
 | 
 | ||||||
| 		<build type="define" name="F_CPU" value="8000000UL"/> | 		<build type="define" name="F_CPU" value="16000000UL"/> | ||||||
| 		<build type="define" name="F_USB" value="8000000UL"/> | 		<build type="define" name="F_USB" value="16000000UL"/> | ||||||
| 	</project> | 	</project> | ||||||
| 
 | 
 | ||||||
| 	<module type="application" id="lufa.demos.device.lowlevel.audio_input" caption="Audio Input Device Demo (Low Level APIs)"> | 	<module type="application" id="lufa.demos.device.lowlevel.audio_input" caption="Audio Input Device Demo (Low Level APIs)"> | ||||||
|  | |||||||
| @ -62,12 +62,14 @@ int main(void) | |||||||
| /** Configures the board hardware and chip peripherals for the demo's functionality. */ | /** Configures the board hardware and chip peripherals for the demo's functionality. */ | ||||||
| void SetupHardware(void) | void SetupHardware(void) | ||||||
| { | { | ||||||
|  | #if (ARCH == ARCH_AVR8) | ||||||
| 	/* Disable watchdog if enabled by bootloader/fuses */ | 	/* Disable watchdog if enabled by bootloader/fuses */ | ||||||
| 	MCUSR &= ~(1 << WDRF); | 	MCUSR &= ~(1 << WDRF); | ||||||
| 	wdt_disable(); | 	wdt_disable(); | ||||||
| 
 | 
 | ||||||
| 	/* Disable clock division */ | 	/* Disable clock division */ | ||||||
| 	clock_prescale_set(clock_div_1); | 	clock_prescale_set(clock_div_1); | ||||||
|  | #endif | ||||||
| 
 | 
 | ||||||
| 	/* Hardware Initialization */ | 	/* Hardware Initialization */ | ||||||
| 	LEDs_Init(); | 	LEDs_Init(); | ||||||
|  | |||||||
| @ -47,6 +47,7 @@ | |||||||
| 
 | 
 | ||||||
| 		#include <LUFA/Drivers/USB/USB.h> | 		#include <LUFA/Drivers/USB/USB.h> | ||||||
| 		#include <LUFA/Drivers/Board/LEDs.h> | 		#include <LUFA/Drivers/Board/LEDs.h> | ||||||
|  | 		#include <LUFA/Platform/Platform.h> | ||||||
| 
 | 
 | ||||||
| 	/* Macros: */ | 	/* Macros: */ | ||||||
| 		/** LED mask for the library LED driver, to indicate that the USB interface is not ready. */ | 		/** LED mask for the library LED driver, to indicate that the USB interface is not ready. */ | ||||||
|  | |||||||
| @ -1,14 +1,14 @@ | |||||||
| <asf xmlversion="1.0"> | <asf xmlversion="1.0"> | ||||||
| 	<project caption="Audio Output Device Demo (Low Level APIs)" id="lufa.demos.device.lowlevel.audio_output.example"> | 	<project caption="Audio Output Device Demo (Low Level APIs)" id="lufa.demos.device.lowlevel.audio_output.example.avr8"> | ||||||
| 		<require idref="lufa.demos.device.lowlevel.audio_output"/> | 		<require idref="lufa.demos.device.lowlevel.audio_output"/> | ||||||
| 		<require idref="lufa.boards.dummy.avr8"/> | 		<require idref="lufa.boards.dummy.avr8"/> | ||||||
| 		<generator value="as5_8"/> | 		<generator value="as5_8"/> | ||||||
| 
 | 
 | ||||||
| 		<device-support value="at90usb1287"/> | 		<device-support value="at90usb1287"/> | ||||||
| 		<config name="lufa.drivers.board.name" value="usbkey"/> | 		<config name="lufa.drivers.board.name" value="none"/> | ||||||
| 
 | 
 | ||||||
| 		<build type="define" name="F_CPU" value="8000000UL"/> | 		<build type="define" name="F_CPU" value="16000000UL"/> | ||||||
| 		<build type="define" name="F_USB" value="8000000UL"/> | 		<build type="define" name="F_USB" value="16000000UL"/> | ||||||
| 	</project> | 	</project> | ||||||
| 
 | 
 | ||||||
| 	<module type="application" id="lufa.demos.device.lowlevel.audio_output" caption="Audio Output Device Demo (Low Level APIs)"> | 	<module type="application" id="lufa.demos.device.lowlevel.audio_output" caption="Audio Output Device Demo (Low Level APIs)"> | ||||||
|  | |||||||
| @ -85,6 +85,39 @@ | |||||||
| //		#define NO_AUTO_VBUS_MANAGEMENT
 | //		#define NO_AUTO_VBUS_MANAGEMENT
 | ||||||
| //		#define INVERTED_VBUS_ENABLE_LINE
 | //		#define INVERTED_VBUS_ENABLE_LINE
 | ||||||
| 
 | 
 | ||||||
|  | 	#elif (ARCH == ARCH_XMEGA) | ||||||
|  | 
 | ||||||
|  | 		/* Non-USB Related Configuration Tokens: */ | ||||||
|  | //		#define DISABLE_TERMINAL_CODES
 | ||||||
|  | 
 | ||||||
|  | 		/* USB Class Driver Related Tokens: */ | ||||||
|  | //		#define HID_HOST_BOOT_PROTOCOL_ONLY
 | ||||||
|  | //		#define HID_STATETABLE_STACK_DEPTH       {Insert Value Here}
 | ||||||
|  | //		#define HID_USAGE_STACK_DEPTH            {Insert Value Here}
 | ||||||
|  | //		#define HID_MAX_COLLECTIONS              {Insert Value Here}
 | ||||||
|  | //		#define HID_MAX_REPORTITEMS              {Insert Value Here}
 | ||||||
|  | //		#define HID_MAX_REPORT_IDS               {Insert Value Here}
 | ||||||
|  | //		#define NO_CLASS_DRIVER_AUTOFLUSH
 | ||||||
|  | 
 | ||||||
|  | 		/* General USB Driver Related Tokens: */ | ||||||
|  | 		#define USE_STATIC_OPTIONS               (USB_DEVICE_OPT_FULLSPEED | USB_OPT_RC32MCLKSRC | USB_OPT_BUSEVENT_PRIHIGH) | ||||||
|  | //		#define USB_STREAM_TIMEOUT_MS            {Insert Value Here}
 | ||||||
|  | //		#define NO_LIMITED_CONTROLLER_CONNECT
 | ||||||
|  | //		#define NO_SOF_EVENTS
 | ||||||
|  | 
 | ||||||
|  | 		/* USB Device Mode Driver Related Tokens: */ | ||||||
|  | //		#define USE_RAM_DESCRIPTORS
 | ||||||
|  | 		#define USE_FLASH_DESCRIPTORS | ||||||
|  | //		#define USE_EEPROM_DESCRIPTORS
 | ||||||
|  | //		#define NO_INTERNAL_SERIAL
 | ||||||
|  | 		#define FIXED_CONTROL_ENDPOINT_SIZE      8 | ||||||
|  | //		#define DEVICE_STATE_AS_GPIOR            {Insert Value Here}
 | ||||||
|  | 		#define FIXED_NUM_CONFIGURATIONS         1 | ||||||
|  | //		#define CONTROL_ONLY_DEVICE
 | ||||||
|  | 		#define MAX_ENDPOINT_INDEX               6 | ||||||
|  | //		#define NO_DEVICE_REMOTE_WAKEUP
 | ||||||
|  | //		#define NO_DEVICE_SELF_POWER
 | ||||||
|  | 
 | ||||||
| 	#else | 	#else | ||||||
| 
 | 
 | ||||||
| 		#error Unsupported architecture for this LUFA configuration file. | 		#error Unsupported architecture for this LUFA configuration file. | ||||||
|  | |||||||
| @ -58,7 +58,7 @@ | |||||||
| 		#define CDC2_RX_EPADDR                 (ENDPOINT_DIR_OUT | 5) | 		#define CDC2_RX_EPADDR                 (ENDPOINT_DIR_OUT | 5) | ||||||
| 
 | 
 | ||||||
| 		/** Endpoint address of the second CDC interface's device-to-host notification IN endpoint. */ | 		/** Endpoint address of the second CDC interface's device-to-host notification IN endpoint. */ | ||||||
| 		#define CDC2_NOTIFICATION_EPADDR       (ENDPOINT_DIR_IN | 6) | 		#define CDC2_NOTIFICATION_EPADDR       (ENDPOINT_DIR_IN  | 6) | ||||||
| 
 | 
 | ||||||
| 		/** Size in bytes of the CDC device-to-host notification IN endpoints. */ | 		/** Size in bytes of the CDC device-to-host notification IN endpoints. */ | ||||||
| 		#define CDC_NOTIFICATION_EPSIZE        8 | 		#define CDC_NOTIFICATION_EPSIZE        8 | ||||||
|  | |||||||
| @ -84,12 +84,24 @@ int main(void) | |||||||
| /** Configures the board hardware and chip peripherals for the demo's functionality. */ | /** Configures the board hardware and chip peripherals for the demo's functionality. */ | ||||||
| void SetupHardware(void) | void SetupHardware(void) | ||||||
| { | { | ||||||
|  | #if (ARCH == ARCH_AVR8) | ||||||
| 	/* Disable watchdog if enabled by bootloader/fuses */ | 	/* Disable watchdog if enabled by bootloader/fuses */ | ||||||
| 	MCUSR &= ~(1 << WDRF); | 	MCUSR &= ~(1 << WDRF); | ||||||
| 	wdt_disable(); | 	wdt_disable(); | ||||||
| 
 | 
 | ||||||
| 	/* Disable clock division */ | 	/* Disable clock division */ | ||||||
| 	clock_prescale_set(clock_div_1); | 	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 */ | 	/* Hardware Initialization */ | ||||||
| 	Joystick_Init(); | 	Joystick_Init(); | ||||||
|  | |||||||
| @ -48,6 +48,7 @@ | |||||||
| 		#include <LUFA/Drivers/USB/USB.h> | 		#include <LUFA/Drivers/USB/USB.h> | ||||||
| 		#include <LUFA/Drivers/Board/Joystick.h> | 		#include <LUFA/Drivers/Board/Joystick.h> | ||||||
| 		#include <LUFA/Drivers/Board/LEDs.h> | 		#include <LUFA/Drivers/Board/LEDs.h> | ||||||
|  | 		#include <LUFA/Platform/Platform.h> | ||||||
| 
 | 
 | ||||||
| 	/* Macros: */ | 	/* Macros: */ | ||||||
| 		/** LED mask for the library LED driver, to indicate that the USB interface is not ready. */ | 		/** LED mask for the library LED driver, to indicate that the USB interface is not ready. */ | ||||||
|  | |||||||
| @ -13,6 +13,9 @@ | |||||||
|  *  \li Series 7 USB AVRs (AT90USBxxx7) |  *  \li Series 7 USB AVRs (AT90USBxxx7) | ||||||
|  *  \li Series 6 USB AVRs (AT90USBxxx6) |  *  \li Series 6 USB AVRs (AT90USBxxx6) | ||||||
|  *  \li Series 4 USB AVRs (ATMEGAxxU4) |  *  \li Series 4 USB AVRs (ATMEGAxxU4) | ||||||
|  |  *  \li Series AU XMEGA AVRs (ATXMEGAxxxAxU) | ||||||
|  |  *  \li Series B XMEGA AVRs (ATXMEGAxxxBxU) | ||||||
|  |  *  \li Series C XMEGA AVRs (ATXMEGAxxxCxU) | ||||||
|  * |  * | ||||||
|  *  \section Sec_Info USB Information: |  *  \section Sec_Info USB Information: | ||||||
|  * |  * | ||||||
|  | |||||||
Some files were not shown because too many files have changed in this diff Show More
		Loading…
	
	
			
			x
			
			
		
	
		Reference in New Issue
	
	Block a user
	 Dean Camera
						Dean Camera