Compare commits

...

21 Commits

Author SHA1 Message Date
Fred Sundvik
9158673166 Reference issue #1478 from the unit tests 2017-07-08 21:59:51 -04:00
Fred Sundvik
b3af79eaff Reference issue #1477 from the unit tests 2017-07-08 21:59:51 -04:00
Fred Sundvik
41efcd6d73 Reference issue #524 from the unit tests 2017-07-08 21:59:51 -04:00
Fred Sundvik
60b1880a62 Reference issue #1476 from the unit tests 2017-07-08 21:59:51 -04:00
Fred Sundvik
67f722c9c8 Configure vscode file associations, use hpp instead of h 2017-07-08 21:59:51 -04:00
Fred Sundvik
631c09e976 Fix keymap formatting 2017-07-08 21:59:51 -04:00
Fred Sundvik
e5780a6dc6 Add tests for macros 2017-07-08 21:59:51 -04:00
Fred Sundvik
4087d6da0d Add wait support for tests 2017-07-08 21:59:51 -04:00
Fred Sundvik
fc4bfbe580 Rename tests to start with test_ 2017-07-08 21:59:51 -04:00
Fred Sundvik
4e69a8bda6 Add basic timing support, and SFT_T tests
Also expose some bugs...
2017-07-08 21:59:51 -04:00
Fred Sundvik
a62f449659 Add test for a combo key 2017-07-08 21:59:51 -04:00
Fred Sundvik
cae7a9c3ec Add simple modifier test 2017-07-08 21:59:51 -04:00
Fred Sundvik
1985f43bad Improve the tests a bit 2017-07-08 21:59:51 -04:00
Fred Sundvik
72c8df1f19 A bigger test matrix, and test for unmapped keys 2017-07-08 21:59:51 -04:00
Fred Sundvik
1e4cc36e14 Rename test.cpp to keypress.cpp 2017-07-08 21:59:51 -04:00
Fred Sundvik
0256cd8cca Build all cpp files in test directories 2017-07-08 21:59:51 -04:00
Fred Sundvik
7d79962785 Move test keymap to keymap.c 2017-07-08 21:59:51 -04:00
Fred Sundvik
448b91689f Exclude .build and .hex from Visual Studio code 2017-07-08 21:59:51 -04:00
skullY
6e2cae4cda commit files with wrong line endings 2017-07-08 12:34:36 -07:00
Jack Humbert
03706de946 Merge commit '5a3397d17ec917c7be5d5109e01a3a84a355cb1b' 2017-07-07 21:46:08 -04:00
Jack Humbert
5a3397d17e Squashed 'lib/lufa/' changes from a44056fb9..f2bd51f4e
f2bd51f4e fixing line endings

git-subtree-dir: lib/lufa
git-subtree-split: f2bd51f4edba87a259808c92c0424dc36475282b
2017-07-07 21:46:04 -04:00
51 changed files with 3163 additions and 2789 deletions

4
.gitignore vendored
View File

@@ -32,7 +32,9 @@ CMakeLists.txt
.browse.VC.db*
*.stackdump
util/Win_Check_Output.txt
.vscode
# Let these ones be user specific, since we have so many different configurations
.vscode/launch.json
.vscode/tasks.json
.stfolder
# ignore image files

14
.vscode/settings.json vendored Normal file
View File

@@ -0,0 +1,14 @@
// Place your settings in this file to overwrite default and user settings.
{
// Configure glob patterns for excluding files and folders.
"files.exclude": {
"**/.build": true,
"**/*.hex": true
},
"files.associations": {
"*.h": "c",
"*.c": "c",
"*.cpp": "cpp",
"*.hpp": "cpp"
}
}

View File

@@ -18,13 +18,15 @@
TEST_PATH=tests/$(TEST)
$(TEST)_SRC= \
$(TEST_PATH)/test.cpp \
$(TEST_PATH)/keymap.c \
$(TMK_COMMON_SRC) \
$(QUANTUM_SRC) \
tests/test_common/matrix.c \
tests/test_common/test_driver.cpp \
tests/test_common/keyboard_report_util.cpp \
tests/test_common/test_fixture.cpp
$(TEST)_SRC += $(patsubst $(ROOTDIR)/%,%,$(wildcard $(TEST_PATH)/*.cpp))
$(TEST)_DEFS=$(TMK_COMMON_DEFS)
$(TEST)_CONFIG=$(TEST_PATH)/config.h
VPATH+=$(TOP_DIR)/tests/test_common
VPATH+=$(TOP_DIR)/tests/test_common

View File

@@ -1,65 +1,65 @@
/*
Copyright 2017 Jack Humbert
This program is free software: you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
the Free Software Foundation, either version 2 of the License, or
(at your option) any later version.
This program is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
GNU General Public License for more details.
You should have received a copy of the GNU General Public License
along with this program. If not, see <http://www.gnu.org/licenses/>.
*/
/** \file
* \brief General driver header for QMK-powered keyboards.
* \copydetails Group_BoardInfo_QMK
*
* \note This file should not be included directly. It is automatically included as needed by the Board driver
* dispatch header located in LUFA/Drivers/Board/Board.h.
*/
/** \ingroup Group_BoardInfo
* \defgroup Group_BoardInfo_QMK QMK
* \brief General driver header for QMK-powered keyboards.
*
* General driver header for QMK-powered keyboards (http://qmk.fm).
*
* @{
*/
#ifndef __BOARD_QMK_H__
#define __BOARD_QMK_H__
/* Includes: */
#include "../../../../Common/Common.h"
#include "../../LEDs.h"
/* Enable C linkage for C++ Compilers: */
#if defined(__cplusplus)
extern "C" {
#endif
/* Preprocessor Checks: */
#if !defined(__INCLUDE_FROM_BOARD_H)
#error Do not include this file directly. Include LUFA/Drivers/Board/Board.h instead.
#endif
/* Public Interface - May be used in end-application: */
/* Macros: */
/** Indicates the board has hardware LEDs mounted. */
#define BOARD_HAS_LEDS
/* Disable C linkage for C++ Compilers: */
#if defined(__cplusplus)
}
#endif
#endif
/** @} */
/*
Copyright 2017 Jack Humbert
This program is free software: you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
the Free Software Foundation, either version 2 of the License, or
(at your option) any later version.
This program is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
GNU General Public License for more details.
You should have received a copy of the GNU General Public License
along with this program. If not, see <http://www.gnu.org/licenses/>.
*/
/** \file
* \brief General driver header for QMK-powered keyboards.
* \copydetails Group_BoardInfo_QMK
*
* \note This file should not be included directly. It is automatically included as needed by the Board driver
* dispatch header located in LUFA/Drivers/Board/Board.h.
*/
/** \ingroup Group_BoardInfo
* \defgroup Group_BoardInfo_QMK QMK
* \brief General driver header for QMK-powered keyboards.
*
* General driver header for QMK-powered keyboards (http://qmk.fm).
*
* @{
*/
#ifndef __BOARD_QMK_H__
#define __BOARD_QMK_H__
/* Includes: */
#include "../../../../Common/Common.h"
#include "../../LEDs.h"
/* Enable C linkage for C++ Compilers: */
#if defined(__cplusplus)
extern "C" {
#endif
/* Preprocessor Checks: */
#if !defined(__INCLUDE_FROM_BOARD_H)
#error Do not include this file directly. Include LUFA/Drivers/Board/Board.h instead.
#endif
/* Public Interface - May be used in end-application: */
/* Macros: */
/** Indicates the board has hardware LEDs mounted. */
#define BOARD_HAS_LEDS
/* Disable C linkage for C++ Compilers: */
#if defined(__cplusplus)
}
#endif
#endif
/** @} */

View File

@@ -1,194 +1,194 @@
/*
Copyright 2017 Jack Humbert
This program is free software: you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
the Free Software Foundation, either version 2 of the License, or
(at your option) any later version.
This program is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
GNU General Public License for more details.
You should have received a copy of the GNU General Public License
along with this program. If not, see <http://www.gnu.org/licenses/>.
*/
/** \file
* \brief General driver header for QMK-powered keyboards.
* \copydetails Group_LEDs_QMK
*
* \note This file should not be included directly. It is automatically included as needed by the LEDs driver
* dispatch header located in LUFA/Drivers/Board/LEDs.h.
*/
/** \ingroup Group_LEDs
* \defgroup Group_LEDs_QMK QMK
* \brief General driver header for QMK-powered keyboards.
*
* General driver header for QMK-powered keyboards (http://qmk.fm).
*
* <b>QMK</b>:
* <table>
* <tr><th>Name</th><th>Color</th><th>Info</th><th>Active Level</th><th>Port Pin</th></tr>
* <tr><td>LEDS_LED1</td><td>Green</td><td>General Indicator</td><td>High</td><td>PORT(QMK_LED).6</td></tr>
* </table>
*
* @{
*/
#ifndef __LEDS_QMK_H__
#define __LEDS_QMK_H__
/* Includes: */
#include "../../../../Common/Common.h"
/* Enable C linkage for C++ Compilers: */
#if defined(__cplusplus)
extern "C" {
#endif
/* Preprocessor Checks: */
#if !defined(__INCLUDE_FROM_LEDS_H)
#error Do not include this file directly. Include LUFA/Drivers/Board/LEDS.h instead.
#endif
#define B0 0x30
#define B1 0x31
#define B2 0x32
#define B3 0x33
#define B4 0x34
#define B5 0x35
#define B6 0x36
#define B7 0x37
#define C0 0x60
#define C1 0x61
#define C2 0x62
#define C3 0x63
#define C4 0x64
#define C5 0x65
#define C6 0x66
#define C7 0x67
#define D0 0x90
#define D1 0x91
#define D2 0x92
#define D3 0x93
#define D4 0x94
#define D5 0x95
#define D6 0x96
#define D7 0x97
#define E0 0xC0
#define E1 0xC1
#define E2 0xC2
#define E3 0xC3
#define E4 0xC4
#define E5 0xC5
#define E6 0xC6
#define E7 0xC7
#define F0 0xF0
#define F1 0xF1
#define F2 0xF2
#define F3 0xF3
#define F4 0xF4
#define F5 0xF5
#define F6 0xF6
#define F7 0xF7
#define A0 0x00
#define A1 0x01
#define A2 0x02
#define A3 0x03
#define A4 0x04
#define A5 0x05
#define A6 0x06
#define A7 0x07
#define QMK_ESC_COL F1
#define QMK_ESC_ROW D5
#define QMK_LED E6
#define QMK_SPEAKER C6
#define DDR(pin) _SFR_IO8(((pin) >> 4) + 1)
#define PORT(pin) _SFR_IO8(((pin) >> 4) + 2)
#define PIN(pin) _SFR_IO8((pin) >> 4)
#define NUM(pin) _BV((pin) & 0xF)
/* Public Interface - May be used in end-application: */
/* Macros: */
/** LED mask for the first LED on the board. */
#define LEDS_LED1 NUM(QMK_LED)
#define LEDS_LED2 NUM(QMK_SPEAKER)
/** LED mask for all the LEDs on the board. */
#define LEDS_ALL_LEDS LEDS_LED1 | LEDS_LED2
/** LED mask for none of the board LEDs. */
#define LEDS_NO_LEDS 0
/* Inline Functions: */
#if !defined(__DOXYGEN__)
static inline void LEDs_Init(void)
{
DDR(QMK_LED) |= LEDS_LED1;
PORT(QMK_LED) |= LEDS_LED1;
DDR(QMK_SPEAKER) |= LEDS_LED2;
PORT(QMK_SPEAKER) |= LEDS_LED2;
}
static inline void LEDs_Disable(void)
{
DDR(QMK_LED) &= ~LEDS_LED1;
PORT(QMK_LED) &= ~LEDS_LED2;
DDR(QMK_SPEAKER) &= ~LEDS_LED1;
PORT(QMK_SPEAKER) &= ~LEDS_LED2;
}
static inline void LEDs_TurnOnLEDs(const uint8_t LEDMask)
{
PORT(QMK_LED) &= (LEDS_LED1 & ~LEDMask);
PORT(QMK_SPEAKER) &= (LEDS_LED2 & ~LEDMask);
}
static inline void LEDs_TurnOffLEDs(const uint8_t LEDMask)
{
PORT(QMK_LED) |= (LEDS_LED1 & LEDMask);
PORT(QMK_SPEAKER) |= (LEDS_LED2 & LEDMask);
}
static inline void LEDs_SetAllLEDs(const uint8_t LEDMask)
{
PORT(QMK_LED) = ((PORT(QMK_LED) | LEDS_LED1) & ~LEDMask);
PORT(QMK_SPEAKER) = ((PORT(QMK_SPEAKER) | LEDS_LED2) & ~LEDMask);
}
static inline void LEDs_ChangeLEDs(const uint8_t LEDMask,
const uint8_t ActiveMask)
{
PORT(QMK_LED) = ((PORT(QMK_LED) | (LEDS_LED1 & LEDMask)) & ~ActiveMask);
PORT(QMK_SPEAKER) = ((PORT(QMK_SPEAKER) | (LEDS_LED1 & LEDMask)) & ~ActiveMask);
}
static inline void LEDs_ToggleLEDs(const uint8_t LEDMask)
{
PIN(QMK_LED) = (LEDS_LED1 & LEDMask);
PIN(QMK_SPEAKER) = (LEDS_LED2 & LEDMask);
}
static inline uint8_t LEDs_GetLEDs(void) ATTR_WARN_UNUSED_RESULT;
static inline uint8_t LEDs_GetLEDs(void)
{
return (~PORT(QMK_LED) & LEDS_LED1) | (~(PORT(QMK_SPEAKER) & LEDS_LED2));
}
#endif
/* Disable C linkage for C++ Compilers: */
#if defined(__cplusplus)
}
#endif
#endif
/** @} */
/*
Copyright 2017 Jack Humbert
This program is free software: you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
the Free Software Foundation, either version 2 of the License, or
(at your option) any later version.
This program is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
GNU General Public License for more details.
You should have received a copy of the GNU General Public License
along with this program. If not, see <http://www.gnu.org/licenses/>.
*/
/** \file
* \brief General driver header for QMK-powered keyboards.
* \copydetails Group_LEDs_QMK
*
* \note This file should not be included directly. It is automatically included as needed by the LEDs driver
* dispatch header located in LUFA/Drivers/Board/LEDs.h.
*/
/** \ingroup Group_LEDs
* \defgroup Group_LEDs_QMK QMK
* \brief General driver header for QMK-powered keyboards.
*
* General driver header for QMK-powered keyboards (http://qmk.fm).
*
* <b>QMK</b>:
* <table>
* <tr><th>Name</th><th>Color</th><th>Info</th><th>Active Level</th><th>Port Pin</th></tr>
* <tr><td>LEDS_LED1</td><td>Green</td><td>General Indicator</td><td>High</td><td>PORT(QMK_LED).6</td></tr>
* </table>
*
* @{
*/
#ifndef __LEDS_QMK_H__
#define __LEDS_QMK_H__
/* Includes: */
#include "../../../../Common/Common.h"
/* Enable C linkage for C++ Compilers: */
#if defined(__cplusplus)
extern "C" {
#endif
/* Preprocessor Checks: */
#if !defined(__INCLUDE_FROM_LEDS_H)
#error Do not include this file directly. Include LUFA/Drivers/Board/LEDS.h instead.
#endif
#define B0 0x30
#define B1 0x31
#define B2 0x32
#define B3 0x33
#define B4 0x34
#define B5 0x35
#define B6 0x36
#define B7 0x37
#define C0 0x60
#define C1 0x61
#define C2 0x62
#define C3 0x63
#define C4 0x64
#define C5 0x65
#define C6 0x66
#define C7 0x67
#define D0 0x90
#define D1 0x91
#define D2 0x92
#define D3 0x93
#define D4 0x94
#define D5 0x95
#define D6 0x96
#define D7 0x97
#define E0 0xC0
#define E1 0xC1
#define E2 0xC2
#define E3 0xC3
#define E4 0xC4
#define E5 0xC5
#define E6 0xC6
#define E7 0xC7
#define F0 0xF0
#define F1 0xF1
#define F2 0xF2
#define F3 0xF3
#define F4 0xF4
#define F5 0xF5
#define F6 0xF6
#define F7 0xF7
#define A0 0x00
#define A1 0x01
#define A2 0x02
#define A3 0x03
#define A4 0x04
#define A5 0x05
#define A6 0x06
#define A7 0x07
#define QMK_ESC_COL F1
#define QMK_ESC_ROW D5
#define QMK_LED E6
#define QMK_SPEAKER C6
#define DDR(pin) _SFR_IO8(((pin) >> 4) + 1)
#define PORT(pin) _SFR_IO8(((pin) >> 4) + 2)
#define PIN(pin) _SFR_IO8((pin) >> 4)
#define NUM(pin) _BV((pin) & 0xF)
/* Public Interface - May be used in end-application: */
/* Macros: */
/** LED mask for the first LED on the board. */
#define LEDS_LED1 NUM(QMK_LED)
#define LEDS_LED2 NUM(QMK_SPEAKER)
/** LED mask for all the LEDs on the board. */
#define LEDS_ALL_LEDS LEDS_LED1 | LEDS_LED2
/** LED mask for none of the board LEDs. */
#define LEDS_NO_LEDS 0
/* Inline Functions: */
#if !defined(__DOXYGEN__)
static inline void LEDs_Init(void)
{
DDR(QMK_LED) |= LEDS_LED1;
PORT(QMK_LED) |= LEDS_LED1;
DDR(QMK_SPEAKER) |= LEDS_LED2;
PORT(QMK_SPEAKER) |= LEDS_LED2;
}
static inline void LEDs_Disable(void)
{
DDR(QMK_LED) &= ~LEDS_LED1;
PORT(QMK_LED) &= ~LEDS_LED2;
DDR(QMK_SPEAKER) &= ~LEDS_LED1;
PORT(QMK_SPEAKER) &= ~LEDS_LED2;
}
static inline void LEDs_TurnOnLEDs(const uint8_t LEDMask)
{
PORT(QMK_LED) &= (LEDS_LED1 & ~LEDMask);
PORT(QMK_SPEAKER) &= (LEDS_LED2 & ~LEDMask);
}
static inline void LEDs_TurnOffLEDs(const uint8_t LEDMask)
{
PORT(QMK_LED) |= (LEDS_LED1 & LEDMask);
PORT(QMK_SPEAKER) |= (LEDS_LED2 & LEDMask);
}
static inline void LEDs_SetAllLEDs(const uint8_t LEDMask)
{
PORT(QMK_LED) = ((PORT(QMK_LED) | LEDS_LED1) & ~LEDMask);
PORT(QMK_SPEAKER) = ((PORT(QMK_SPEAKER) | LEDS_LED2) & ~LEDMask);
}
static inline void LEDs_ChangeLEDs(const uint8_t LEDMask,
const uint8_t ActiveMask)
{
PORT(QMK_LED) = ((PORT(QMK_LED) | (LEDS_LED1 & LEDMask)) & ~ActiveMask);
PORT(QMK_SPEAKER) = ((PORT(QMK_SPEAKER) | (LEDS_LED1 & LEDMask)) & ~ActiveMask);
}
static inline void LEDs_ToggleLEDs(const uint8_t LEDMask)
{
PIN(QMK_LED) = (LEDS_LED1 & LEDMask);
PIN(QMK_SPEAKER) = (LEDS_LED2 & LEDMask);
}
static inline uint8_t LEDs_GetLEDs(void) ATTR_WARN_UNUSED_RESULT;
static inline uint8_t LEDs_GetLEDs(void)
{
return (~PORT(QMK_LED) & LEDS_LED1) | (~(PORT(QMK_SPEAKER) & LEDS_LED2));
}
#endif
/* Disable C linkage for C++ Compilers: */
#if defined(__cplusplus)
}
#endif
#endif
/** @} */

View File

@@ -1 +1 @@
Copy the Docbook XSLT docbook-xsl-1.78.1 release contents into this directory (i.e. with the root Docbook files in the current folder). The Docbook releases can be found at http://sourceforge.net/projects/docbook/files/docbook-xsl/ .
Copy the Docbook XSLT docbook-xsl-1.78.1 release contents into this directory (i.e. with the root Docbook files in the current folder). The Docbook releases can be found at http://sourceforge.net/projects/docbook/files/docbook-xsl/ .

View File

@@ -1,53 +1,53 @@
/*
LUFA Library
Copyright (C) Dean Camera, 2017.
dean [at] fourwalledcubicle [dot] com
www.lufa-lib.org
*/
.programlisting {
display: block;
margin-left: 15px;
padding: 10px;
background-color: #f4f4f4;
border: 1px solid #aaaaaa;
font-family: "Consolas", "Courier New", sans-serif;
}
code {
background-color: #f4f4f4;
font-family: "Consolas", "Courier New", sans-serif;
}
.note, .warning, .tip {
display: block;
margin-left: 15px;
padding-left: 10px;
padding-bottom: 5px;
background-color: #f4f4f4;
border: 1px solid #aaaaaa;
}
table {
border: 1px solid #aaaaaa;
border-collapse: collapse;
margin-left: 15px;
font-size: 10pt;
}
table thead {
background-color: #f4f4f4;
}
table thead th {
padding: 5px;
}
table tbody td {
padding: 5px;
}
ul {
padding-left: 20px;
}
/*
LUFA Library
Copyright (C) Dean Camera, 2017.
dean [at] fourwalledcubicle [dot] com
www.lufa-lib.org
*/
.programlisting {
display: block;
margin-left: 15px;
padding: 10px;
background-color: #f4f4f4;
border: 1px solid #aaaaaa;
font-family: "Consolas", "Courier New", sans-serif;
}
code {
background-color: #f4f4f4;
font-family: "Consolas", "Courier New", sans-serif;
}
.note, .warning, .tip {
display: block;
margin-left: 15px;
padding-left: 10px;
padding-bottom: 5px;
background-color: #f4f4f4;
border: 1px solid #aaaaaa;
}
table {
border: 1px solid #aaaaaa;
border-collapse: collapse;
margin-left: 15px;
font-size: 10pt;
}
table thead {
background-color: #f4f4f4;
}
table thead th {
padding: 5px;
}
table tbody td {
padding: 5px;
}
ul {
padding-left: 20px;
}

View File

@@ -1,13 +1,13 @@
<Types xmlns="http://schemas.openxmlformats.org/package/2006/content-types">
<Default Extension="vsixmanifest" ContentType="text/xml"/>
<Default Extension="cache" ContentType="text/xml"/>
<Default Extension="png" ContentType="application/octet-stream"/>
<Default Extension="txt" ContentType="text/plain"/>
<Default Extension="xml" ContentType="text/xml"/>
<Default Extension="zip" ContentType="application/octet-stream"/>
<Default Extension="dll" ContentType="application/octet-stream" />
<Default Extension="pkgdef" ContentType="text/plain" />
<Default Extension="htm" ContentType="text/html" />
<Default Extension="msha" ContentType="text/html" />
<Default Extension="mshc" ContentType="application/octet-stream"/>
</Types>
<Types xmlns="http://schemas.openxmlformats.org/package/2006/content-types">
<Default Extension="vsixmanifest" ContentType="text/xml"/>
<Default Extension="cache" ContentType="text/xml"/>
<Default Extension="png" ContentType="application/octet-stream"/>
<Default Extension="txt" ContentType="text/plain"/>
<Default Extension="xml" ContentType="text/xml"/>
<Default Extension="zip" ContentType="application/octet-stream"/>
<Default Extension="dll" ContentType="application/octet-stream" />
<Default Extension="pkgdef" ContentType="text/plain" />
<Default Extension="htm" ContentType="text/html" />
<Default Extension="msha" ContentType="text/html" />
<Default Extension="mshc" ContentType="application/octet-stream"/>
</Types>

View File

@@ -1,18 +1,18 @@
<AsfContentProvider Version="1.0.0">
<Identifier Id="0e160d5c-e331-48d9-850b-e0387912171b">
<Org>FourWalledCubicle</Org>
<ShortName>LUFA</ShortName>
<Author>Dean Camera</Author>
<Description/>
<FollowFolderStructure>True</FollowFolderStructure>
</Identifier>
<AsfContent Type="zip" Path="contents.zip">
<Content>
<Version>0</Version>
<HelpURL/>
<Locator/>
<DbXMLPath>content.xml.cache</DbXMLPath>
<Description/>
</Content>
</AsfContent>
</AsfContentProvider>
<AsfContentProvider Version="1.0.0">
<Identifier Id="0e160d5c-e331-48d9-850b-e0387912171b">
<Org>FourWalledCubicle</Org>
<ShortName>LUFA</ShortName>
<Author>Dean Camera</Author>
<Description/>
<FollowFolderStructure>True</FollowFolderStructure>
</Identifier>
<AsfContent Type="zip" Path="contents.zip">
<Content>
<Version>0</Version>
<HelpURL/>
<Locator/>
<DbXMLPath>content.xml.cache</DbXMLPath>
<Description/>
</Content>
</AsfContent>
</AsfContentProvider>

View File

@@ -1,38 +1,38 @@
"""
LUFA Library
Copyright (C) Dean Camera, 2017.
dean [at] fourwalledcubicle [dot] com
www.lufa-lib.org
"""
import sys
sys.path.append("ProjectGenerator")
def show_message(message):
print("[Project Generator] %s" % message)
sys.stdout.flush()
def main(lufa_root_path):
try:
from asf_avrstudio5_interface import PythonFacade
except ImportError:
print("Fatal Error: The ASF project generator is missing.")
return 1
p = PythonFacade(lufa_root_path)
show_message("Checking database sanity...")
p.check_extension_database_sanity(lufa_root_path)
show_message("Building cache files...")
p.generate_extension_cache_files(lufa_root_path)
show_message("Cache files created.")
return 0
if __name__ == "__main__":
sys.exit(main(sys.argv[1]))
"""
LUFA Library
Copyright (C) Dean Camera, 2017.
dean [at] fourwalledcubicle [dot] com
www.lufa-lib.org
"""
import sys
sys.path.append("ProjectGenerator")
def show_message(message):
print("[Project Generator] %s" % message)
sys.stdout.flush()
def main(lufa_root_path):
try:
from asf_avrstudio5_interface import PythonFacade
except ImportError:
print("Fatal Error: The ASF project generator is missing.")
return 1
p = PythonFacade(lufa_root_path)
show_message("Checking database sanity...")
p.check_extension_database_sanity(lufa_root_path)
show_message("Building cache files...")
p.generate_extension_cache_files(lufa_root_path)
show_message("Cache files created.")
return 0
if __name__ == "__main__":
sys.exit(main(sys.argv[1]))

View File

@@ -1,96 +1,96 @@
<!--
LUFA Library
Copyright (C) Dean Camera, 2017.
dean [at] fourwalledcubicle [dot] com
www.lufa-lib.org
-->
<!-- Atmel Studio framework integration file -->
<lufa>
<extension-container>
<extension uuid="0e160d5c-e331-48d9-850b-e0387912171b" org="FourWalledCubicle" shortname="LUFA" version="" fullname="Lightweight USB Framework for AVRs (LUFA)">
<author name="Dean Camera" website="http://www.lufa-lib.org/" email="dean@fourwalledcubicle.com"/>
<description>Lightweight USB Framework for AVRs (LUFA), a USB software stack/framework.</description>
<icon-image path="LUFA/DoxygenPages/Images/LUFA_thumb.png"/>
<preview-image path="LUFA/DoxygenPages/Images/LUFA.png"/>
<license caption="LUFA License" path="LUFA/License.txt"/>
<release-notes caption="LUFA Information" url="http://www.lufa-lib.org"/>
<online-help>
<index-page caption="LUFA Documentation" url="http://www.lufa-lib.org/documentation/"/>
<module-help-page scheme="append" baseurl="http://www.lufa-lib.org/documentation/"/>
<module-guide-page scheme="append" baseurl="http://www.lufa-lib.org/documentation/"/>
</online-help>
<dependencies/>
</extension>
</extension-container>
<asf>
<device-alias-map name="lufa_avr8">
<device-support value="at90usb82"/>
<device-support value="atmega8u2"/>
<device-support value="at90usb162"/>
<device-support value="atmega16u2"/>
<device-support value="atmega16u4"/>
<device-support value="atmega32u2"/>
<device-support value="atmega32u4"/>
<device-support value="at90usb646"/>
<device-support value="at90usb647"/>
<device-support value="at90usb1286"/>
<device-support value="at90usb1287"/>
</device-alias-map>
<device-alias-map name="lufa_xmega">
<device-support value="atxmega16a4u"/>
<device-support value="atxmega32a4u"/>
<device-support value="atxmega64a4u"/>
<device-support value="atxmega128a4u"/>
<device-support value="atxmega64a3u"/>
<device-support value="atxmega128a3u"/>
<device-support value="atxmega192a3u"/>
<device-support value="atxmega256a3u"/>
<device-support value="atxmega256a3bu"/>
<device-support value="atxmega128a1u"/>
<device-support value="atxmega64b3"/>
<device-support value="atxmega128b3"/>
<device-support value="atxmega64b1"/>
<device-support value="atxmega128b1"/>
<device-support value="atxmega64c3"/>
<device-support value="atxmega128c3"/>
<device-support value="atxmega192c3"/>
<device-support value="atxmega256c3"/>
<device-support value="atxmega384c3"/>
<device-support value="atxmega16c4"/>
</device-alias-map>
<device-alias-map name="lufa_uc3">
<device-support value="at32uc3a364"/>
<device-support value="at32uc3a364s"/>
<device-support value="at32uc3a464"/>
<device-support value="at32uc3a464s"/>
<device-support value="at32uc3b064"/>
<device-support value="at32uc3b164"/>
<device-support value="at32uc3a0128"/>
<device-support value="at32uc3a1128"/>
<device-support value="at32uc3a3128"/>
<device-support value="at32uc3a3128s"/>
<device-support value="at32uc3a4128"/>
<device-support value="at32uc3a4128s"/>
<device-support value="at32uc3b0128"/>
<device-support value="at32uc3b1128"/>
<device-support value="at32uc3a0256"/>
<device-support value="at32uc3a1256"/>
<device-support value="at32uc3a3256"/>
<device-support value="at32uc3a3256s"/>
<device-support value="at32uc3a4256"/>
<device-support value="at32uc3a4256s"/>
<device-support value="at32uc3b0256"/>
<device-support value="at32uc3b1256"/>
<device-support value="at32uc3a0512"/>
<device-support value="at32uc3a1512"/>
<device-support value="at32uc3b0512"/>
<device-support value="at32uc3b1512"/>
</device-alias-map>
</asf>
</lufa>
<!--
LUFA Library
Copyright (C) Dean Camera, 2017.
dean [at] fourwalledcubicle [dot] com
www.lufa-lib.org
-->
<!-- Atmel Studio framework integration file -->
<lufa>
<extension-container>
<extension uuid="0e160d5c-e331-48d9-850b-e0387912171b" org="FourWalledCubicle" shortname="LUFA" version="" fullname="Lightweight USB Framework for AVRs (LUFA)">
<author name="Dean Camera" website="http://www.lufa-lib.org/" email="dean@fourwalledcubicle.com"/>
<description>Lightweight USB Framework for AVRs (LUFA), a USB software stack/framework.</description>
<icon-image path="LUFA/DoxygenPages/Images/LUFA_thumb.png"/>
<preview-image path="LUFA/DoxygenPages/Images/LUFA.png"/>
<license caption="LUFA License" path="LUFA/License.txt"/>
<release-notes caption="LUFA Information" url="http://www.lufa-lib.org"/>
<online-help>
<index-page caption="LUFA Documentation" url="http://www.lufa-lib.org/documentation/"/>
<module-help-page scheme="append" baseurl="http://www.lufa-lib.org/documentation/"/>
<module-guide-page scheme="append" baseurl="http://www.lufa-lib.org/documentation/"/>
</online-help>
<dependencies/>
</extension>
</extension-container>
<asf>
<device-alias-map name="lufa_avr8">
<device-support value="at90usb82"/>
<device-support value="atmega8u2"/>
<device-support value="at90usb162"/>
<device-support value="atmega16u2"/>
<device-support value="atmega16u4"/>
<device-support value="atmega32u2"/>
<device-support value="atmega32u4"/>
<device-support value="at90usb646"/>
<device-support value="at90usb647"/>
<device-support value="at90usb1286"/>
<device-support value="at90usb1287"/>
</device-alias-map>
<device-alias-map name="lufa_xmega">
<device-support value="atxmega16a4u"/>
<device-support value="atxmega32a4u"/>
<device-support value="atxmega64a4u"/>
<device-support value="atxmega128a4u"/>
<device-support value="atxmega64a3u"/>
<device-support value="atxmega128a3u"/>
<device-support value="atxmega192a3u"/>
<device-support value="atxmega256a3u"/>
<device-support value="atxmega256a3bu"/>
<device-support value="atxmega128a1u"/>
<device-support value="atxmega64b3"/>
<device-support value="atxmega128b3"/>
<device-support value="atxmega64b1"/>
<device-support value="atxmega128b1"/>
<device-support value="atxmega64c3"/>
<device-support value="atxmega128c3"/>
<device-support value="atxmega192c3"/>
<device-support value="atxmega256c3"/>
<device-support value="atxmega384c3"/>
<device-support value="atxmega16c4"/>
</device-alias-map>
<device-alias-map name="lufa_uc3">
<device-support value="at32uc3a364"/>
<device-support value="at32uc3a364s"/>
<device-support value="at32uc3a464"/>
<device-support value="at32uc3a464s"/>
<device-support value="at32uc3b064"/>
<device-support value="at32uc3b164"/>
<device-support value="at32uc3a0128"/>
<device-support value="at32uc3a1128"/>
<device-support value="at32uc3a3128"/>
<device-support value="at32uc3a3128s"/>
<device-support value="at32uc3a4128"/>
<device-support value="at32uc3a4128s"/>
<device-support value="at32uc3b0128"/>
<device-support value="at32uc3b1128"/>
<device-support value="at32uc3a0256"/>
<device-support value="at32uc3a1256"/>
<device-support value="at32uc3a3256"/>
<device-support value="at32uc3a3256s"/>
<device-support value="at32uc3a4256"/>
<device-support value="at32uc3a4256s"/>
<device-support value="at32uc3b0256"/>
<device-support value="at32uc3b1256"/>
<device-support value="at32uc3a0512"/>
<device-support value="at32uc3a1512"/>
<device-support value="at32uc3b0512"/>
<device-support value="at32uc3b1512"/>
</device-alias-map>
</asf>
</lufa>

View File

@@ -1,34 +1,34 @@
<!--
LUFA Library
Copyright (C) Dean Camera, 2017.
dean [at] fourwalledcubicle [dot] com
www.lufa-lib.org
-->
<!-- Atmel Studio framework integration file -->
<lufa>
<asf>
<module type="service" id="lufa.common" caption="LUFA Common Infrastructure">
<device-support-alias value="lufa_avr8"/>
<device-support-alias value="lufa_xmega"/>
<device-support-alias value="lufa_uc3"/>
<info type="gui-flag" value="hidden"/>
<build type="doxygen-entry-point" value="Group_Common"/>
<build type="include-path" value=".."/>
<build type="header-file" subtype="api" value="Version.h"/>
<build type="distribute" subtype="license" value="License.txt"/>
<build type="header-file" subtype="api" value="Common/Common.h"/>
<build type="header-file" value="Common/Architectures.h"/>
<build type="header-file" value="Common/ArchitectureSpecific.h"/>
<build type="header-file" value="Common/Attributes.h"/>
<build type="header-file" value="Common/BoardTypes.h"/>
<build type="header-file" value="Common/CompilerSpecific.h"/>
<build type="header-file" value="Common/Endianness.h"/>
</module>
</asf>
</lufa>
<!--
LUFA Library
Copyright (C) Dean Camera, 2017.
dean [at] fourwalledcubicle [dot] com
www.lufa-lib.org
-->
<!-- Atmel Studio framework integration file -->
<lufa>
<asf>
<module type="service" id="lufa.common" caption="LUFA Common Infrastructure">
<device-support-alias value="lufa_avr8"/>
<device-support-alias value="lufa_xmega"/>
<device-support-alias value="lufa_uc3"/>
<info type="gui-flag" value="hidden"/>
<build type="doxygen-entry-point" value="Group_Common"/>
<build type="include-path" value=".."/>
<build type="header-file" subtype="api" value="Version.h"/>
<build type="distribute" subtype="license" value="License.txt"/>
<build type="header-file" subtype="api" value="Common/Common.h"/>
<build type="header-file" value="Common/Architectures.h"/>
<build type="header-file" value="Common/ArchitectureSpecific.h"/>
<build type="header-file" value="Common/Attributes.h"/>
<build type="header-file" value="Common/BoardTypes.h"/>
<build type="header-file" value="Common/CompilerSpecific.h"/>
<build type="header-file" value="Common/Endianness.h"/>
</module>
</asf>
</lufa>

View File

@@ -1,114 +1,114 @@
<!--
LUFA Library
Copyright (C) Dean Camera, 2017.
dean [at] fourwalledcubicle [dot] com
www.lufa-lib.org
-->
<!-- Atmel Studio framework integration file -->
<lufa>
<asf>
<board id="lufa.boards.dummy.avr8" vendor="LUFA" caption="AVR8 Architecture">
<device-support value="mega"/>
<require idref="lufa.drivers.board"/>
<require idref="lufa.drivers.board.info"/>
</board>
<board id="lufa.boards.dummy.xmega" vendor="LUFA" caption="XMEGA Architecture">
<device-support value="xmega"/>
<require idref="lufa.drivers.board"/>
<require idref="lufa.drivers.board.info"/>
</board>
<board id="lufa.boards.dummy.uc3" vendor="LUFA" caption="UC3 Architecture">
<device-support value="uc3"/>
<require idref="lufa.drivers.board"/>
<require idref="lufa.drivers.board.info"/>
</board>
<module type="driver" id="lufa.drivers.board.info" caption="LUFA Board Hardware Information Driver">
<device-support-alias value="lufa_avr8"/>
<device-support-alias value="lufa_xmega"/>
<device-support-alias value="lufa_uc3"/>
<build type="doxygen-entry-point" value="Group_BoardInfo"/>
<require idref="lufa.common"/>
<build type="include-path" value=".."/>
<build type="header-file" subtype="api" value="Drivers/Board/Board.h"/>
</module>
<module type="driver" id="lufa.drivers.board.leds" caption="LUFA Board LED Driver">
<device-support-alias value="lufa_avr8"/>
<device-support-alias value="lufa_xmega"/>
<device-support-alias value="lufa_uc3"/>
<build type="doxygen-entry-point" value="Group_LEDs"/>
<require idref="lufa.common"/>
<build type="include-path" value=".."/>
<build type="header-file" subtype="api" value="Drivers/Board/LEDs.h"/>
</module>
<module type="driver" id="lufa.drivers.board.buttons" caption="LUFA Board Buttons Driver">
<device-support-alias value="lufa_avr8"/>
<device-support-alias value="lufa_xmega"/>
<device-support-alias value="lufa_uc3"/>
<build type="doxygen-entry-point" value="Group_Buttons"/>
<require idref="lufa.common"/>
<build type="include-path" value=".."/>
<build type="header-file" subtype="api" value="Drivers/Board/Buttons.h"/>
</module>
<module type="driver" id="lufa.drivers.board.dataflash" caption="LUFA Board Dataflash Driver">
<device-support-alias value="lufa_avr8"/>
<device-support-alias value="lufa_xmega"/>
<device-support-alias value="lufa_uc3"/>
<build type="doxygen-entry-point" value="Group_Dataflash"/>
<require idref="lufa.common"/>
<build type="include-path" value=".."/>
<build type="header-file" subtype="api" value="Drivers/Board/Dataflash.h"/>
</module>
<module type="driver" id="lufa.drivers.board.joystick" caption="LUFA Board Joystick Driver">
<device-support-alias value="lufa_avr8"/>
<device-support-alias value="lufa_xmega"/>
<device-support-alias value="lufa_uc3"/>
<build type="doxygen-entry-point" value="Group_Joystick"/>
<require idref="lufa.common"/>
<build type="include-path" value=".."/>
<build type="header-file" subtype="api" value="Drivers/Board/Joystick.h"/>
</module>
<module type="driver" id="lufa.drivers.board.temperature" caption="LUFA Board Temperature Sensor Driver">
<device-support-alias value="lufa_avr8"/>
<device-support-alias value="lufa_xmega"/>
<device-support-alias value="lufa_uc3"/>
<build type="doxygen-entry-point" value="Group_Temperature"/>
<require idref="lufa.common"/>
<require idref="lufa.drivers.peripheral.adc"/>
<build type="c-source" value="Drivers/Board/Temperature.c"/>
<build type="include-path" value=".."/>
<build type="header-file" subtype="api" value="Drivers/Board/Temperature.h"/>
</module>
</asf>
</lufa>
<!--
LUFA Library
Copyright (C) Dean Camera, 2017.
dean [at] fourwalledcubicle [dot] com
www.lufa-lib.org
-->
<!-- Atmel Studio framework integration file -->
<lufa>
<asf>
<board id="lufa.boards.dummy.avr8" vendor="LUFA" caption="AVR8 Architecture">
<device-support value="mega"/>
<require idref="lufa.drivers.board"/>
<require idref="lufa.drivers.board.info"/>
</board>
<board id="lufa.boards.dummy.xmega" vendor="LUFA" caption="XMEGA Architecture">
<device-support value="xmega"/>
<require idref="lufa.drivers.board"/>
<require idref="lufa.drivers.board.info"/>
</board>
<board id="lufa.boards.dummy.uc3" vendor="LUFA" caption="UC3 Architecture">
<device-support value="uc3"/>
<require idref="lufa.drivers.board"/>
<require idref="lufa.drivers.board.info"/>
</board>
<module type="driver" id="lufa.drivers.board.info" caption="LUFA Board Hardware Information Driver">
<device-support-alias value="lufa_avr8"/>
<device-support-alias value="lufa_xmega"/>
<device-support-alias value="lufa_uc3"/>
<build type="doxygen-entry-point" value="Group_BoardInfo"/>
<require idref="lufa.common"/>
<build type="include-path" value=".."/>
<build type="header-file" subtype="api" value="Drivers/Board/Board.h"/>
</module>
<module type="driver" id="lufa.drivers.board.leds" caption="LUFA Board LED Driver">
<device-support-alias value="lufa_avr8"/>
<device-support-alias value="lufa_xmega"/>
<device-support-alias value="lufa_uc3"/>
<build type="doxygen-entry-point" value="Group_LEDs"/>
<require idref="lufa.common"/>
<build type="include-path" value=".."/>
<build type="header-file" subtype="api" value="Drivers/Board/LEDs.h"/>
</module>
<module type="driver" id="lufa.drivers.board.buttons" caption="LUFA Board Buttons Driver">
<device-support-alias value="lufa_avr8"/>
<device-support-alias value="lufa_xmega"/>
<device-support-alias value="lufa_uc3"/>
<build type="doxygen-entry-point" value="Group_Buttons"/>
<require idref="lufa.common"/>
<build type="include-path" value=".."/>
<build type="header-file" subtype="api" value="Drivers/Board/Buttons.h"/>
</module>
<module type="driver" id="lufa.drivers.board.dataflash" caption="LUFA Board Dataflash Driver">
<device-support-alias value="lufa_avr8"/>
<device-support-alias value="lufa_xmega"/>
<device-support-alias value="lufa_uc3"/>
<build type="doxygen-entry-point" value="Group_Dataflash"/>
<require idref="lufa.common"/>
<build type="include-path" value=".."/>
<build type="header-file" subtype="api" value="Drivers/Board/Dataflash.h"/>
</module>
<module type="driver" id="lufa.drivers.board.joystick" caption="LUFA Board Joystick Driver">
<device-support-alias value="lufa_avr8"/>
<device-support-alias value="lufa_xmega"/>
<device-support-alias value="lufa_uc3"/>
<build type="doxygen-entry-point" value="Group_Joystick"/>
<require idref="lufa.common"/>
<build type="include-path" value=".."/>
<build type="header-file" subtype="api" value="Drivers/Board/Joystick.h"/>
</module>
<module type="driver" id="lufa.drivers.board.temperature" caption="LUFA Board Temperature Sensor Driver">
<device-support-alias value="lufa_avr8"/>
<device-support-alias value="lufa_xmega"/>
<device-support-alias value="lufa_uc3"/>
<build type="doxygen-entry-point" value="Group_Temperature"/>
<require idref="lufa.common"/>
<require idref="lufa.drivers.peripheral.adc"/>
<build type="c-source" value="Drivers/Board/Temperature.c"/>
<build type="include-path" value=".."/>
<build type="header-file" subtype="api" value="Drivers/Board/Temperature.h"/>
</module>
</asf>
</lufa>

File diff suppressed because it is too large Load Diff

View File

@@ -1,57 +1,57 @@
<!--
LUFA Library
Copyright (C) Dean Camera, 2017.
dean [at] fourwalledcubicle [dot] com
www.lufa-lib.org
-->
<!-- Atmel Studio framework integration file -->
<lufa>
<asf>
<module type="component" id="lufa.drivers.misc.at45db321c" caption="LUFA AT45DB321C Dataflash Commands">
<device-support-alias value="lufa_avr8"/>
<device-support-alias value="lufa_xmega"/>
<device-support-alias value="lufa_uc3"/>
<build type="doxygen-entry-point" value="Group_AT45DB321C"/>
<build type="include-path" value=".."/>
<build type="header-file" subtype="api" value="Drivers/Misc/AT45DB321C.h"/>
</module>
<module type="component" id="lufa.drivers.misc.at45db642d" caption="LUFA AT45DB642D Dataflash Commands">
<device-support-alias value="lufa_avr8"/>
<device-support-alias value="lufa_xmega"/>
<device-support-alias value="lufa_uc3"/>
<build type="doxygen-entry-point" value="Group_AT45DB321C"/>
<build type="include-path" value=".."/>
<build type="header-file" subtype="api" value="Drivers/Misc/AT45DB642D.h"/>
</module>
<module type="service" id="lufa.drivers.misc.ringbuffer" caption="LUFA Ring Buffer">
<device-support-alias value="lufa_avr8"/>
<device-support-alias value="lufa_xmega"/>
<device-support-alias value="lufa_uc3"/>
<build type="doxygen-entry-point" value="Group_RingBuff"/>
<build type="include-path" value=".."/>
<build type="header-file" subtype="api" value="Drivers/Misc/RingBuffer.h"/>
</module>
<module type="service" id="lufa.drivers.misc.ansi" caption="LUFA ANSI Terminal Commands">
<device-support-alias value="lufa_avr8"/>
<device-support-alias value="lufa_xmega"/>
<device-support-alias value="lufa_uc3"/>
<build type="doxygen-entry-point" value="Group_Terminal"/>
<build type="include-path" value=".."/>
<build type="header-file" subtype="api" value="Drivers/Misc/TerminalCodes.h"/>
</module>
</asf>
</lufa>
<!--
LUFA Library
Copyright (C) Dean Camera, 2017.
dean [at] fourwalledcubicle [dot] com
www.lufa-lib.org
-->
<!-- Atmel Studio framework integration file -->
<lufa>
<asf>
<module type="component" id="lufa.drivers.misc.at45db321c" caption="LUFA AT45DB321C Dataflash Commands">
<device-support-alias value="lufa_avr8"/>
<device-support-alias value="lufa_xmega"/>
<device-support-alias value="lufa_uc3"/>
<build type="doxygen-entry-point" value="Group_AT45DB321C"/>
<build type="include-path" value=".."/>
<build type="header-file" subtype="api" value="Drivers/Misc/AT45DB321C.h"/>
</module>
<module type="component" id="lufa.drivers.misc.at45db642d" caption="LUFA AT45DB642D Dataflash Commands">
<device-support-alias value="lufa_avr8"/>
<device-support-alias value="lufa_xmega"/>
<device-support-alias value="lufa_uc3"/>
<build type="doxygen-entry-point" value="Group_AT45DB321C"/>
<build type="include-path" value=".."/>
<build type="header-file" subtype="api" value="Drivers/Misc/AT45DB642D.h"/>
</module>
<module type="service" id="lufa.drivers.misc.ringbuffer" caption="LUFA Ring Buffer">
<device-support-alias value="lufa_avr8"/>
<device-support-alias value="lufa_xmega"/>
<device-support-alias value="lufa_uc3"/>
<build type="doxygen-entry-point" value="Group_RingBuff"/>
<build type="include-path" value=".."/>
<build type="header-file" subtype="api" value="Drivers/Misc/RingBuffer.h"/>
</module>
<module type="service" id="lufa.drivers.misc.ansi" caption="LUFA ANSI Terminal Commands">
<device-support-alias value="lufa_avr8"/>
<device-support-alias value="lufa_xmega"/>
<device-support-alias value="lufa_uc3"/>
<build type="doxygen-entry-point" value="Group_Terminal"/>
<build type="include-path" value=".."/>
<build type="header-file" subtype="api" value="Drivers/Misc/TerminalCodes.h"/>
</module>
</asf>
</lufa>

View File

@@ -1,198 +1,198 @@
<!--
LUFA Library
Copyright (C) Dean Camera, 2017.
dean [at] fourwalledcubicle [dot] com
www.lufa-lib.org
-->
<!-- Atmel Studio framework integration file -->
<lufa>
<asf>
<select-by-device id="lufa.drivers.peripheral.usart" caption="LUFA USART Driver">
<module type="driver" id="lufa.drivers.peripheral.usart#avr8" caption="LUFA USART Driver - AVR8">
<device-support-alias value="lufa_avr8"/>
<build type="doxygen-entry-point" value="Group_Serial"/>
<require idref="lufa.common"/>
<require idref="lufa.drivers.misc.ansi"/>
<build type="c-source" value="Drivers/Peripheral/AVR8/Serial_AVR8.c"/>
<build type="header-file" value="Drivers/Peripheral/AVR8/Serial_AVR8.h"/>
<build type="include-path" value=".."/>
<build type="header-file" subtype="api" value="Drivers/Peripheral/Serial.h"/>
</module>
<module type="driver" id="lufa.drivers.peripheral.usart#xmega" caption="LUFA USART Driver - AVR8">
<device-support-alias value="lufa_xmega"/>
<build type="doxygen-entry-point" value="Group_Serial"/>
<require idref="lufa.common"/>
<require idref="lufa.drivers.misc.ansi"/>
<build type="c-source" value="Drivers/Peripheral/XMEGA/Serial_XMEGA.c"/>
<build type="header-file" value="Drivers/Peripheral/XMEGA/Serial_XMEGA.h"/>
<build type="include-path" value=".."/>
<build type="header-file" subtype="api" value="Drivers/Peripheral/Serial.h"/>
</module>
<module type="driver" id="lufa.drivers.peripheral.usart#uc3" caption="LUFA USART Driver - UC3">
<device-support-alias value="lufa_uc3"/>
<build type="doxygen-entry-point" value="Group_Serial"/>
<require idref="lufa.common"/>
<require idref="lufa.drivers.misc.ansi"/>
<info type="gui-flag" value="hidden"/>
</module>
</select-by-device>
<select-by-device id="lufa.drivers.peripheral.spi" caption="LUFA SPI Driver">
<module type="driver" id="lufa.drivers.peripheral.spi#avr8" caption="LUFA SPI Driver - AVR8">
<device-support-alias value="lufa_avr8"/>
<build type="doxygen-entry-point" value="Group_SPI"/>
<require idref="lufa.common"/>
<build type="header-file" value="Drivers/Peripheral/AVR8/SPI_AVR8.h"/>
<build type="include-path" value=".."/>
<build type="header-file" subtype="api" value="Drivers/Peripheral/SPI.h"/>
</module>
<module type="driver" id="lufa.drivers.peripheral.spi#xmega" caption="LUFA SPI Driver - XMEGA">
<device-support-alias value="lufa_xmega"/>
<build type="doxygen-entry-point" value="Group_SPI"/>
<require idref="lufa.common"/>
<build type="header-file" value="Drivers/Peripheral/XMEGA/SPI_XMEGA.h"/>
<build type="include-path" value=".."/>
<build type="header-file" subtype="api" value="Drivers/Peripheral/SPI.h"/>
</module>
<module type="driver" id="lufa.drivers.peripheral.spi#uc3" caption="LUFA SPI Driver - UC3">
<device-support-alias value="lufa_uc3"/>
<build type="doxygen-entry-point" value="Group_SPI"/>
<require idref="lufa.common"/>
<info type="gui-flag" value="hidden"/>
</module>
</select-by-device>
<select-by-device id="lufa.drivers.peripheral.usart_spi" caption="LUFA USART SPI Driver">
<module type="driver" id="lufa.drivers.peripheral.usart_spi#avr8" caption="LUFA USART SPI Driver - AVR8">
<device-support-alias value="lufa_avr8"/>
<build type="doxygen-entry-point" value="Group_SerialSPI"/>
<require idref="lufa.common"/>
<build type="header-file" value="Drivers/Peripheral/AVR8/SerialSPI_AVR8.h"/>
<build type="include-path" value=".."/>
<build type="header-file" subtype="api" value="Drivers/Peripheral/SerialSPI.h"/>
</module>
<module type="driver" id="lufa.drivers.peripheral.usart_spi#xmega" caption="LUFA USART SPI Driver - XMEGA">
<device-support-alias value="lufa_xmega"/>
<build type="doxygen-entry-point" value="Group_SerialSPI"/>
<require idref="lufa.common"/>
<build type="header-file" value="Drivers/Peripheral/XMEGA/SerialSPI_XMEGA.h"/>
<build type="include-path" value=".."/>
<build type="header-file" subtype="api" value="Drivers/Peripheral/SerialSPI.h"/>
</module>
<module type="driver" id="lufa.drivers.peripheral.usart_spi#uc3" caption="LUFA USART SPI Driver - UC3">
<device-support-alias value="lufa_uc3"/>
<build type="doxygen-entry-point" value="Group_SerialSPI"/>
<require idref="lufa.common"/>
<info type="gui-flag" value="hidden"/>
</module>
</select-by-device>
<select-by-device id="lufa.drivers.peripheral.twi" caption="LUFA TWI Master Driver">
<module type="driver" id="lufa.drivers.peripheral.twi#avr8" caption="LUFA TWI Master Driver - AVR8">
<device-support-alias value="lufa_avr8"/>
<build type="doxygen-entry-point" value="Group_TWI"/>
<require idref="lufa.common"/>
<build type="c-source" value="Drivers/Peripheral/AVR8/TWI_AVR8.c"/>
<build type="header-file" value="Drivers/Peripheral/AVR8/TWI_AVR8.h"/>
<build type="include-path" value=".."/>
<build type="header-file" subtype="api" value="Drivers/Peripheral/TWI.h"/>
</module>
<module type="driver" id="lufa.drivers.peripheral.twi#xmega" caption="LUFA TWI Master Driver - XMEGA">
<device-support-alias value="lufa_xmega"/>
<build type="doxygen-entry-point" value="Group_TWI"/>
<require idref="lufa.common"/>
<build type="c-source" value="Drivers/Peripheral/XMEGA/TWI_XMEGA.c"/>
<build type="header-file" value="Drivers/Peripheral/XMEGA/TWI_XMEGA.h"/>
<build type="include-path" value=".."/>
<build type="header-file" subtype="api" value="Drivers/Peripheral/TWI.h"/>
</module>
<module type="driver" id="lufa.drivers.peripheral.twi#uc3" caption="LUFA TWI Master Driver - UC3">
<device-support-alias value="lufa_uc3"/>
<build type="doxygen-entry-point" value="Group_TWI"/>
<require idref="lufa.common"/>
<info type="gui-flag" value="hidden"/>
</module>
</select-by-device>
<select-by-device id="lufa.drivers.peripheral.adc" caption="LUFA ADC Driver">
<module type="driver" id="lufa.drivers.peripheral.adc#avr8" caption="LUFA ADC Driver - AVR8">
<device-support-alias value="lufa_avr8"/>
<build type="doxygen-entry-point" value="Group_ADC"/>
<require idref="lufa.common"/>
<build type="header-file" value="Drivers/Peripheral/AVR8/ADC_AVR8.h"/>
<build type="include-path" value=".."/>
<build type="header-file" subtype="api" value="Drivers/Peripheral/ADC.h"/>
</module>
<module type="driver" id="lufa.drivers.peripheral.adc#xmega" caption="LUFA ADC Driver - XMEGA">
<device-support-alias value="lufa_xmega"/>
<build type="doxygen-entry-point" value="Group_ADC"/>
<require idref="lufa.common"/>
<info type="gui-flag" value="hidden"/>
</module>
<module type="driver" id="lufa.drivers.peripheral.adc#uc3" caption="LUFA ADC Driver - UC3">
<device-support-alias value="lufa_uc3"/>
<build type="doxygen-entry-point" value="Group_ADC"/>
<require idref="lufa.common"/>
<info type="gui-flag" value="hidden"/>
</module>
</select-by-device>
</asf>
</lufa>
<!--
LUFA Library
Copyright (C) Dean Camera, 2017.
dean [at] fourwalledcubicle [dot] com
www.lufa-lib.org
-->
<!-- Atmel Studio framework integration file -->
<lufa>
<asf>
<select-by-device id="lufa.drivers.peripheral.usart" caption="LUFA USART Driver">
<module type="driver" id="lufa.drivers.peripheral.usart#avr8" caption="LUFA USART Driver - AVR8">
<device-support-alias value="lufa_avr8"/>
<build type="doxygen-entry-point" value="Group_Serial"/>
<require idref="lufa.common"/>
<require idref="lufa.drivers.misc.ansi"/>
<build type="c-source" value="Drivers/Peripheral/AVR8/Serial_AVR8.c"/>
<build type="header-file" value="Drivers/Peripheral/AVR8/Serial_AVR8.h"/>
<build type="include-path" value=".."/>
<build type="header-file" subtype="api" value="Drivers/Peripheral/Serial.h"/>
</module>
<module type="driver" id="lufa.drivers.peripheral.usart#xmega" caption="LUFA USART Driver - AVR8">
<device-support-alias value="lufa_xmega"/>
<build type="doxygen-entry-point" value="Group_Serial"/>
<require idref="lufa.common"/>
<require idref="lufa.drivers.misc.ansi"/>
<build type="c-source" value="Drivers/Peripheral/XMEGA/Serial_XMEGA.c"/>
<build type="header-file" value="Drivers/Peripheral/XMEGA/Serial_XMEGA.h"/>
<build type="include-path" value=".."/>
<build type="header-file" subtype="api" value="Drivers/Peripheral/Serial.h"/>
</module>
<module type="driver" id="lufa.drivers.peripheral.usart#uc3" caption="LUFA USART Driver - UC3">
<device-support-alias value="lufa_uc3"/>
<build type="doxygen-entry-point" value="Group_Serial"/>
<require idref="lufa.common"/>
<require idref="lufa.drivers.misc.ansi"/>
<info type="gui-flag" value="hidden"/>
</module>
</select-by-device>
<select-by-device id="lufa.drivers.peripheral.spi" caption="LUFA SPI Driver">
<module type="driver" id="lufa.drivers.peripheral.spi#avr8" caption="LUFA SPI Driver - AVR8">
<device-support-alias value="lufa_avr8"/>
<build type="doxygen-entry-point" value="Group_SPI"/>
<require idref="lufa.common"/>
<build type="header-file" value="Drivers/Peripheral/AVR8/SPI_AVR8.h"/>
<build type="include-path" value=".."/>
<build type="header-file" subtype="api" value="Drivers/Peripheral/SPI.h"/>
</module>
<module type="driver" id="lufa.drivers.peripheral.spi#xmega" caption="LUFA SPI Driver - XMEGA">
<device-support-alias value="lufa_xmega"/>
<build type="doxygen-entry-point" value="Group_SPI"/>
<require idref="lufa.common"/>
<build type="header-file" value="Drivers/Peripheral/XMEGA/SPI_XMEGA.h"/>
<build type="include-path" value=".."/>
<build type="header-file" subtype="api" value="Drivers/Peripheral/SPI.h"/>
</module>
<module type="driver" id="lufa.drivers.peripheral.spi#uc3" caption="LUFA SPI Driver - UC3">
<device-support-alias value="lufa_uc3"/>
<build type="doxygen-entry-point" value="Group_SPI"/>
<require idref="lufa.common"/>
<info type="gui-flag" value="hidden"/>
</module>
</select-by-device>
<select-by-device id="lufa.drivers.peripheral.usart_spi" caption="LUFA USART SPI Driver">
<module type="driver" id="lufa.drivers.peripheral.usart_spi#avr8" caption="LUFA USART SPI Driver - AVR8">
<device-support-alias value="lufa_avr8"/>
<build type="doxygen-entry-point" value="Group_SerialSPI"/>
<require idref="lufa.common"/>
<build type="header-file" value="Drivers/Peripheral/AVR8/SerialSPI_AVR8.h"/>
<build type="include-path" value=".."/>
<build type="header-file" subtype="api" value="Drivers/Peripheral/SerialSPI.h"/>
</module>
<module type="driver" id="lufa.drivers.peripheral.usart_spi#xmega" caption="LUFA USART SPI Driver - XMEGA">
<device-support-alias value="lufa_xmega"/>
<build type="doxygen-entry-point" value="Group_SerialSPI"/>
<require idref="lufa.common"/>
<build type="header-file" value="Drivers/Peripheral/XMEGA/SerialSPI_XMEGA.h"/>
<build type="include-path" value=".."/>
<build type="header-file" subtype="api" value="Drivers/Peripheral/SerialSPI.h"/>
</module>
<module type="driver" id="lufa.drivers.peripheral.usart_spi#uc3" caption="LUFA USART SPI Driver - UC3">
<device-support-alias value="lufa_uc3"/>
<build type="doxygen-entry-point" value="Group_SerialSPI"/>
<require idref="lufa.common"/>
<info type="gui-flag" value="hidden"/>
</module>
</select-by-device>
<select-by-device id="lufa.drivers.peripheral.twi" caption="LUFA TWI Master Driver">
<module type="driver" id="lufa.drivers.peripheral.twi#avr8" caption="LUFA TWI Master Driver - AVR8">
<device-support-alias value="lufa_avr8"/>
<build type="doxygen-entry-point" value="Group_TWI"/>
<require idref="lufa.common"/>
<build type="c-source" value="Drivers/Peripheral/AVR8/TWI_AVR8.c"/>
<build type="header-file" value="Drivers/Peripheral/AVR8/TWI_AVR8.h"/>
<build type="include-path" value=".."/>
<build type="header-file" subtype="api" value="Drivers/Peripheral/TWI.h"/>
</module>
<module type="driver" id="lufa.drivers.peripheral.twi#xmega" caption="LUFA TWI Master Driver - XMEGA">
<device-support-alias value="lufa_xmega"/>
<build type="doxygen-entry-point" value="Group_TWI"/>
<require idref="lufa.common"/>
<build type="c-source" value="Drivers/Peripheral/XMEGA/TWI_XMEGA.c"/>
<build type="header-file" value="Drivers/Peripheral/XMEGA/TWI_XMEGA.h"/>
<build type="include-path" value=".."/>
<build type="header-file" subtype="api" value="Drivers/Peripheral/TWI.h"/>
</module>
<module type="driver" id="lufa.drivers.peripheral.twi#uc3" caption="LUFA TWI Master Driver - UC3">
<device-support-alias value="lufa_uc3"/>
<build type="doxygen-entry-point" value="Group_TWI"/>
<require idref="lufa.common"/>
<info type="gui-flag" value="hidden"/>
</module>
</select-by-device>
<select-by-device id="lufa.drivers.peripheral.adc" caption="LUFA ADC Driver">
<module type="driver" id="lufa.drivers.peripheral.adc#avr8" caption="LUFA ADC Driver - AVR8">
<device-support-alias value="lufa_avr8"/>
<build type="doxygen-entry-point" value="Group_ADC"/>
<require idref="lufa.common"/>
<build type="header-file" value="Drivers/Peripheral/AVR8/ADC_AVR8.h"/>
<build type="include-path" value=".."/>
<build type="header-file" subtype="api" value="Drivers/Peripheral/ADC.h"/>
</module>
<module type="driver" id="lufa.drivers.peripheral.adc#xmega" caption="LUFA ADC Driver - XMEGA">
<device-support-alias value="lufa_xmega"/>
<build type="doxygen-entry-point" value="Group_ADC"/>
<require idref="lufa.common"/>
<info type="gui-flag" value="hidden"/>
</module>
<module type="driver" id="lufa.drivers.peripheral.adc#uc3" caption="LUFA ADC Driver - UC3">
<device-support-alias value="lufa_uc3"/>
<build type="doxygen-entry-point" value="Group_ADC"/>
<require idref="lufa.common"/>
<info type="gui-flag" value="hidden"/>
</module>
</select-by-device>
</asf>
</lufa>

View File

@@ -1,32 +1,32 @@
<!--
LUFA Library
Copyright (C) Dean Camera, 2017.
dean [at] fourwalledcubicle [dot] com
www.lufa-lib.org
-->
<!-- Atmel Studio framework integration file -->
<lufa>
<asf>
<module type="driver" id="lufa.drivers.usb" caption="LUFA USB Driver">
<device-support-alias value="lufa_avr8"/>
<device-support-alias value="lufa_xmega"/>
<device-support-alias value="lufa_uc3"/>
<build type="doxygen-entry-point" value="Group_USB"/>
<build type="define" name="USE_LUFA_CONFIG_HEADER" value=""/>
<build type="module-config" subtype="path" value="CodeTemplates"/>
<build type="module-config" subtype="required-header-file" value="LUFAConfig.h"/>
<build type="include-path" value=".."/>
<build type="header-file" subtype="api" value="Drivers/USB/USB.h"/>
<require idref="lufa.common"/>
<require idref="lufa.drivers.usb.class"/>
<require idref="lufa.drivers.usb.core"/>
</module>
</asf>
</lufa>
<!--
LUFA Library
Copyright (C) Dean Camera, 2017.
dean [at] fourwalledcubicle [dot] com
www.lufa-lib.org
-->
<!-- Atmel Studio framework integration file -->
<lufa>
<asf>
<module type="driver" id="lufa.drivers.usb" caption="LUFA USB Driver">
<device-support-alias value="lufa_avr8"/>
<device-support-alias value="lufa_xmega"/>
<device-support-alias value="lufa_uc3"/>
<build type="doxygen-entry-point" value="Group_USB"/>
<build type="define" name="USE_LUFA_CONFIG_HEADER" value=""/>
<build type="module-config" subtype="path" value="CodeTemplates"/>
<build type="module-config" subtype="required-header-file" value="LUFAConfig.h"/>
<build type="include-path" value=".."/>
<build type="header-file" subtype="api" value="Drivers/USB/USB.h"/>
<require idref="lufa.common"/>
<require idref="lufa.drivers.usb.class"/>
<require idref="lufa.drivers.usb.core"/>
</module>
</asf>
</lufa>

View File

@@ -1,32 +1,32 @@
<!--
LUFA Library
Copyright (C) Dean Camera, 2017.
dean [at] fourwalledcubicle [dot] com
www.lufa-lib.org
-->
<!-- Atmel Studio framework integration file -->
<lufa>
<asf>
<module type="service" id="lufa.drivers.usb.class" caption="LUFA USB Class Drivers">
<device-support-alias value="lufa_avr8"/>
<device-support-alias value="lufa_xmega"/>
<device-support-alias value="lufa_uc3"/>
<info type="gui-flag" value="hidden"/>
<build type="doxygen-entry-point" value="Group_USBClassDrivers"/>
<require idref="lufa.drivers.usb.class.android"/>
<require idref="lufa.drivers.usb.class.audio"/>
<require idref="lufa.drivers.usb.class.cdc"/>
<require idref="lufa.drivers.usb.class.hid"/>
<require idref="lufa.drivers.usb.class.ms"/>
<require idref="lufa.drivers.usb.class.midi"/>
<require idref="lufa.drivers.usb.class.printer"/>
<require idref="lufa.drivers.usb.class.rndis"/>
<require idref="lufa.drivers.usb.class.si"/>
</module>
</asf>
</lufa>
<!--
LUFA Library
Copyright (C) Dean Camera, 2017.
dean [at] fourwalledcubicle [dot] com
www.lufa-lib.org
-->
<!-- Atmel Studio framework integration file -->
<lufa>
<asf>
<module type="service" id="lufa.drivers.usb.class" caption="LUFA USB Class Drivers">
<device-support-alias value="lufa_avr8"/>
<device-support-alias value="lufa_xmega"/>
<device-support-alias value="lufa_uc3"/>
<info type="gui-flag" value="hidden"/>
<build type="doxygen-entry-point" value="Group_USBClassDrivers"/>
<require idref="lufa.drivers.usb.class.android"/>
<require idref="lufa.drivers.usb.class.audio"/>
<require idref="lufa.drivers.usb.class.cdc"/>
<require idref="lufa.drivers.usb.class.hid"/>
<require idref="lufa.drivers.usb.class.ms"/>
<require idref="lufa.drivers.usb.class.midi"/>
<require idref="lufa.drivers.usb.class.printer"/>
<require idref="lufa.drivers.usb.class.rndis"/>
<require idref="lufa.drivers.usb.class.si"/>
</module>
</asf>
</lufa>

View File

@@ -1,85 +1,85 @@
<!--
LUFA Library
Copyright (C) Dean Camera, 2017.
dean [at] fourwalledcubicle [dot] com
www.lufa-lib.org
-->
<!-- Atmel Studio framework integration file -->
<lufa>
<asf>
<module type="driver" id="lufa.drivers.usb.core.common" caption="LUFA USB Core Driver - Common">
<device-support-alias value="lufa_avr8"/>
<device-support-alias value="lufa_xmega"/>
<device-support-alias value="lufa_uc3"/>
<build type="doxygen-entry-point" value="Group_USBManagement"/>
<info type="gui-flag" value="hidden"/>
<build type="header-file" value="Drivers/USB/Core/Device.h"/>
<build type="header-file" value="Drivers/USB/Core/Endpoint.h"/>
<build type="header-file" value="Drivers/USB/Core/Host.h"/>
<build type="header-file" value="Drivers/USB/Core/Pipe.h"/>
<build type="header-file" value="Drivers/USB/Core/OTG.h"/>
<build type="header-file" value="Drivers/USB/Core/USBController.h"/>
<build type="header-file" value="Drivers/USB/Core/USBInterrupt.h"/>
<build type="header-file" value="Drivers/USB/Core/EndpointStream.h"/>
<build type="header-file" value="Drivers/USB/Core/PipeStream.h"/>
<build type="c-source" value="Drivers/USB/Core/ConfigDescriptors.c"/>
<build type="header-file" value="Drivers/USB/Core/ConfigDescriptors.h"/>
<build type="c-source" value="Drivers/USB/Core/DeviceStandardReq.c"/>
<build type="header-file" value="Drivers/USB/Core/DeviceStandardReq.h"/>
<build type="c-source" value="Drivers/USB/Core/Events.c"/>
<build type="header-file" value="Drivers/USB/Core/Events.h"/>
<build type="c-source" value="Drivers/USB/Core/HostStandardReq.c"/>
<build type="header-file" value="Drivers/USB/Core/HostStandardReq.h"/>
<build type="c-source" value="Drivers/USB/Core/USBTask.c"/>
<build type="header-file" value="Drivers/USB/Core/USBTask.h"/>
<build type="header-file" value="Drivers/USB/Core/USBMode.h"/>
<build type="header-file" value="Drivers/USB/Core/StdDescriptors.h"/>
<build type="header-file" value="Drivers/USB/Core/StdRequestType.h"/>
<build type="c-source" value="Drivers/USB/Class/Common/HIDParser.c"/>
<build type="header-file" value="Drivers/USB/Class/Common/HIDParser.h"/>
<build type="header-file" value="Drivers/USB/Class/Common/HIDReportData.h"/>
</module>
<select-by-device id="lufa.drivers.usb.core" caption="LUFA USB Core Driver">
<module type="driver" id="lufa.drivers.usb.core#avr8" caption="LUFA USB Core Driver - AVR8">
<device-support-alias value="lufa_avr8"/>
<info type="gui-flag" value="hidden"/>
<build type="doxygen-entry-point" value="Group_USBManagement_AVR8"/>
<require idref="lufa.drivers.usb.core.common"/>
<require idref="lufa.drivers.usb.core.avr8"/>
</module>
<module type="driver" id="lufa.drivers.usb.core#xmega" caption="LUFA USB Core Driver - XMEGA">
<device-support-alias value="lufa_xmega"/>
<info type="gui-flag" value="hidden"/>
<build type="doxygen-entry-point" value="Group_USBManagement_XMEGA"/>
<require idref="lufa.drivers.usb.core.common"/>
<require idref="lufa.drivers.usb.core.xmega"/>
</module>
<module type="driver" id="lufa.drivers.usb.core#uc3" caption="LUFA USB Core Driver - UC3">
<device-support-alias value="lufa_uc3"/>
<info type="gui-flag" value="hidden"/>
<build type="doxygen-entry-point" value="Group_USBManagement_UC3"/>
<require idref="lufa.drivers.usb.core.common"/>
<require idref="lufa.drivers.usb.core.uc3"/>
</module>
</select-by-device>
</asf>
</lufa>
<!--
LUFA Library
Copyright (C) Dean Camera, 2017.
dean [at] fourwalledcubicle [dot] com
www.lufa-lib.org
-->
<!-- Atmel Studio framework integration file -->
<lufa>
<asf>
<module type="driver" id="lufa.drivers.usb.core.common" caption="LUFA USB Core Driver - Common">
<device-support-alias value="lufa_avr8"/>
<device-support-alias value="lufa_xmega"/>
<device-support-alias value="lufa_uc3"/>
<build type="doxygen-entry-point" value="Group_USBManagement"/>
<info type="gui-flag" value="hidden"/>
<build type="header-file" value="Drivers/USB/Core/Device.h"/>
<build type="header-file" value="Drivers/USB/Core/Endpoint.h"/>
<build type="header-file" value="Drivers/USB/Core/Host.h"/>
<build type="header-file" value="Drivers/USB/Core/Pipe.h"/>
<build type="header-file" value="Drivers/USB/Core/OTG.h"/>
<build type="header-file" value="Drivers/USB/Core/USBController.h"/>
<build type="header-file" value="Drivers/USB/Core/USBInterrupt.h"/>
<build type="header-file" value="Drivers/USB/Core/EndpointStream.h"/>
<build type="header-file" value="Drivers/USB/Core/PipeStream.h"/>
<build type="c-source" value="Drivers/USB/Core/ConfigDescriptors.c"/>
<build type="header-file" value="Drivers/USB/Core/ConfigDescriptors.h"/>
<build type="c-source" value="Drivers/USB/Core/DeviceStandardReq.c"/>
<build type="header-file" value="Drivers/USB/Core/DeviceStandardReq.h"/>
<build type="c-source" value="Drivers/USB/Core/Events.c"/>
<build type="header-file" value="Drivers/USB/Core/Events.h"/>
<build type="c-source" value="Drivers/USB/Core/HostStandardReq.c"/>
<build type="header-file" value="Drivers/USB/Core/HostStandardReq.h"/>
<build type="c-source" value="Drivers/USB/Core/USBTask.c"/>
<build type="header-file" value="Drivers/USB/Core/USBTask.h"/>
<build type="header-file" value="Drivers/USB/Core/USBMode.h"/>
<build type="header-file" value="Drivers/USB/Core/StdDescriptors.h"/>
<build type="header-file" value="Drivers/USB/Core/StdRequestType.h"/>
<build type="c-source" value="Drivers/USB/Class/Common/HIDParser.c"/>
<build type="header-file" value="Drivers/USB/Class/Common/HIDParser.h"/>
<build type="header-file" value="Drivers/USB/Class/Common/HIDReportData.h"/>
</module>
<select-by-device id="lufa.drivers.usb.core" caption="LUFA USB Core Driver">
<module type="driver" id="lufa.drivers.usb.core#avr8" caption="LUFA USB Core Driver - AVR8">
<device-support-alias value="lufa_avr8"/>
<info type="gui-flag" value="hidden"/>
<build type="doxygen-entry-point" value="Group_USBManagement_AVR8"/>
<require idref="lufa.drivers.usb.core.common"/>
<require idref="lufa.drivers.usb.core.avr8"/>
</module>
<module type="driver" id="lufa.drivers.usb.core#xmega" caption="LUFA USB Core Driver - XMEGA">
<device-support-alias value="lufa_xmega"/>
<info type="gui-flag" value="hidden"/>
<build type="doxygen-entry-point" value="Group_USBManagement_XMEGA"/>
<require idref="lufa.drivers.usb.core.common"/>
<require idref="lufa.drivers.usb.core.xmega"/>
</module>
<module type="driver" id="lufa.drivers.usb.core#uc3" caption="LUFA USB Core Driver - UC3">
<device-support-alias value="lufa_uc3"/>
<info type="gui-flag" value="hidden"/>
<build type="doxygen-entry-point" value="Group_USBManagement_UC3"/>
<require idref="lufa.drivers.usb.core.common"/>
<require idref="lufa.drivers.usb.core.uc3"/>
</module>
</select-by-device>
</asf>
</lufa>

View File

@@ -1,43 +1,43 @@
<!--
LUFA Library
Copyright (C) Dean Camera, 2017.
dean [at] fourwalledcubicle [dot] com
www.lufa-lib.org
-->
<!-- Atmel Studio framework integration file -->
<lufa>
<asf>
<module type="driver" id="lufa.drivers.usb.core.avr8" caption="LUFA USB Core Driver for AVR8">
<device-support-alias value="lufa_avr8"/>
<info type="gui-flag" value="hidden"/>
<build type="doxygen-entry-point" value="Group_USBManagement_AVR8"/>
<build type="c-source" value="Drivers/USB/Core/AVR8/Template/Template_Endpoint_Control_R.c"/>
<build type="c-source" value="Drivers/USB/Core/AVR8/Template/Template_Endpoint_Control_W.c"/>
<build type="c-source" value="Drivers/USB/Core/AVR8/Template/Template_Endpoint_RW.c"/>
<build type="c-source" value="Drivers/USB/Core/AVR8/Template/Template_Pipe_RW.c"/>
<build type="c-source" value="Drivers/USB/Core/AVR8/Device_AVR8.c"/>
<build type="header-file" value="Drivers/USB/Core/AVR8/Device_AVR8.h"/>
<build type="c-source" value="Drivers/USB/Core/AVR8/Endpoint_AVR8.c"/>
<build type="header-file" value="Drivers/USB/Core/AVR8/Endpoint_AVR8.h"/>
<build type="c-source" value="Drivers/USB/Core/AVR8/Host_AVR8.c"/>
<build type="header-file" value="Drivers/USB/Core/AVR8/Host_AVR8.h"/>
<build type="c-source" value="Drivers/USB/Core/AVR8/Pipe_AVR8.c"/>
<build type="header-file" value="Drivers/USB/Core/AVR8/Pipe_AVR8.h"/>
<build type="header-file" value="Drivers/USB/Core/AVR8/OTG_AVR8.h"/>
<build type="c-source" value="Drivers/USB/Core/AVR8/USBController_AVR8.c"/>
<build type="header-file" value="Drivers/USB/Core/AVR8/USBController_AVR8.h"/>
<build type="c-source" value="Drivers/USB/Core/AVR8/USBInterrupt_AVR8.c"/>
<build type="header-file" value="Drivers/USB/Core/AVR8/USBInterrupt_AVR8.h"/>
<build type="c-source" value="Drivers/USB/Core/AVR8/EndpointStream_AVR8.c"/>
<build type="header-file" value="Drivers/USB/Core/AVR8/EndpointStream_AVR8.h"/>
<build type="c-source" value="Drivers/USB/Core/AVR8/PipeStream_AVR8.c"/>
<build type="header-file" value="Drivers/USB/Core/AVR8/PipeStream_AVR8.h"/>
</module>
</asf>
</lufa>
<!--
LUFA Library
Copyright (C) Dean Camera, 2017.
dean [at] fourwalledcubicle [dot] com
www.lufa-lib.org
-->
<!-- Atmel Studio framework integration file -->
<lufa>
<asf>
<module type="driver" id="lufa.drivers.usb.core.avr8" caption="LUFA USB Core Driver for AVR8">
<device-support-alias value="lufa_avr8"/>
<info type="gui-flag" value="hidden"/>
<build type="doxygen-entry-point" value="Group_USBManagement_AVR8"/>
<build type="c-source" value="Drivers/USB/Core/AVR8/Template/Template_Endpoint_Control_R.c"/>
<build type="c-source" value="Drivers/USB/Core/AVR8/Template/Template_Endpoint_Control_W.c"/>
<build type="c-source" value="Drivers/USB/Core/AVR8/Template/Template_Endpoint_RW.c"/>
<build type="c-source" value="Drivers/USB/Core/AVR8/Template/Template_Pipe_RW.c"/>
<build type="c-source" value="Drivers/USB/Core/AVR8/Device_AVR8.c"/>
<build type="header-file" value="Drivers/USB/Core/AVR8/Device_AVR8.h"/>
<build type="c-source" value="Drivers/USB/Core/AVR8/Endpoint_AVR8.c"/>
<build type="header-file" value="Drivers/USB/Core/AVR8/Endpoint_AVR8.h"/>
<build type="c-source" value="Drivers/USB/Core/AVR8/Host_AVR8.c"/>
<build type="header-file" value="Drivers/USB/Core/AVR8/Host_AVR8.h"/>
<build type="c-source" value="Drivers/USB/Core/AVR8/Pipe_AVR8.c"/>
<build type="header-file" value="Drivers/USB/Core/AVR8/Pipe_AVR8.h"/>
<build type="header-file" value="Drivers/USB/Core/AVR8/OTG_AVR8.h"/>
<build type="c-source" value="Drivers/USB/Core/AVR8/USBController_AVR8.c"/>
<build type="header-file" value="Drivers/USB/Core/AVR8/USBController_AVR8.h"/>
<build type="c-source" value="Drivers/USB/Core/AVR8/USBInterrupt_AVR8.c"/>
<build type="header-file" value="Drivers/USB/Core/AVR8/USBInterrupt_AVR8.h"/>
<build type="c-source" value="Drivers/USB/Core/AVR8/EndpointStream_AVR8.c"/>
<build type="header-file" value="Drivers/USB/Core/AVR8/EndpointStream_AVR8.h"/>
<build type="c-source" value="Drivers/USB/Core/AVR8/PipeStream_AVR8.c"/>
<build type="header-file" value="Drivers/USB/Core/AVR8/PipeStream_AVR8.h"/>
</module>
</asf>
</lufa>

View File

@@ -1,42 +1,42 @@
<!--
LUFA Library
Copyright (C) Dean Camera, 2017.
dean [at] fourwalledcubicle [dot] com
www.lufa-lib.org
-->
<!-- Atmel Studio framework integration file -->
<lufa>
<asf>
<module type="driver" id="lufa.drivers.usb.core.uc3" caption="LUFA USB Core Driver for UC3">
<device-support-alias value="lufa_uc3"/>
<info type="gui-flag" value="hidden"/>
<build type="doxygen-entry-point" value="Group_USBManagement_UC3"/>
<build type="c-source" value="Drivers/USB/Core/UC3/Template/Template_Endpoint_Control_R.c"/>
<build type="c-source" value="Drivers/USB/Core/UC3/Template/Template_Endpoint_Control_W.c"/>
<build type="c-source" value="Drivers/USB/Core/UC3/Template/Template_Endpoint_RW.c"/>
<build type="c-source" value="Drivers/USB/Core/UC3/Template/Template_Pipe_RW.c"/>
<build type="c-source" value="Drivers/USB/Core/UC3/Device_UC3.c"/>
<build type="header-file" value="Drivers/USB/Core/UC3/Device_UC3.h"/>
<build type="c-source" value="Drivers/USB/Core/UC3/Endpoint_UC3.c"/>
<build type="header-file" value="Drivers/USB/Core/UC3/Endpoint_UC3.h"/>
<build type="c-source" value="Drivers/USB/Core/UC3/Host_UC3.c"/>
<build type="header-file" value="Drivers/USB/Core/UC3/Host_UC3.h"/>
<build type="c-source" value="Drivers/USB/Core/UC3/Pipe_UC3.c"/>
<build type="header-file" value="Drivers/USB/Core/UC3/Pipe_UC3.h"/>
<build type="c-source" value="Drivers/USB/Core/UC3/USBController_UC3.c"/>
<build type="header-file" value="Drivers/USB/Core/UC3/USBController_UC3.h"/>
<build type="c-source" value="Drivers/USB/Core/UC3/USBInterrupt_UC3.c"/>
<build type="header-file" value="Drivers/USB/Core/UC3/USBInterrupt_UC3.h"/>
<build type="c-source" value="Drivers/USB/Core/UC3/EndpointStream_UC3.c"/>
<build type="header-file" value="Drivers/USB/Core/UC3/EndpointStream_UC3.h"/>
<build type="c-source" value="Drivers/USB/Core/UC3/PipeStream_UC3.c"/>
<build type="header-file" value="Drivers/USB/Core/UC3/PipeStream_UC3.h"/>
</module>
</asf>
</lufa>
<!--
LUFA Library
Copyright (C) Dean Camera, 2017.
dean [at] fourwalledcubicle [dot] com
www.lufa-lib.org
-->
<!-- Atmel Studio framework integration file -->
<lufa>
<asf>
<module type="driver" id="lufa.drivers.usb.core.uc3" caption="LUFA USB Core Driver for UC3">
<device-support-alias value="lufa_uc3"/>
<info type="gui-flag" value="hidden"/>
<build type="doxygen-entry-point" value="Group_USBManagement_UC3"/>
<build type="c-source" value="Drivers/USB/Core/UC3/Template/Template_Endpoint_Control_R.c"/>
<build type="c-source" value="Drivers/USB/Core/UC3/Template/Template_Endpoint_Control_W.c"/>
<build type="c-source" value="Drivers/USB/Core/UC3/Template/Template_Endpoint_RW.c"/>
<build type="c-source" value="Drivers/USB/Core/UC3/Template/Template_Pipe_RW.c"/>
<build type="c-source" value="Drivers/USB/Core/UC3/Device_UC3.c"/>
<build type="header-file" value="Drivers/USB/Core/UC3/Device_UC3.h"/>
<build type="c-source" value="Drivers/USB/Core/UC3/Endpoint_UC3.c"/>
<build type="header-file" value="Drivers/USB/Core/UC3/Endpoint_UC3.h"/>
<build type="c-source" value="Drivers/USB/Core/UC3/Host_UC3.c"/>
<build type="header-file" value="Drivers/USB/Core/UC3/Host_UC3.h"/>
<build type="c-source" value="Drivers/USB/Core/UC3/Pipe_UC3.c"/>
<build type="header-file" value="Drivers/USB/Core/UC3/Pipe_UC3.h"/>
<build type="c-source" value="Drivers/USB/Core/UC3/USBController_UC3.c"/>
<build type="header-file" value="Drivers/USB/Core/UC3/USBController_UC3.h"/>
<build type="c-source" value="Drivers/USB/Core/UC3/USBInterrupt_UC3.c"/>
<build type="header-file" value="Drivers/USB/Core/UC3/USBInterrupt_UC3.h"/>
<build type="c-source" value="Drivers/USB/Core/UC3/EndpointStream_UC3.c"/>
<build type="header-file" value="Drivers/USB/Core/UC3/EndpointStream_UC3.h"/>
<build type="c-source" value="Drivers/USB/Core/UC3/PipeStream_UC3.c"/>
<build type="header-file" value="Drivers/USB/Core/UC3/PipeStream_UC3.h"/>
</module>
</asf>
</lufa>

View File

@@ -1,36 +1,36 @@
<!--
LUFA Library
Copyright (C) Dean Camera, 2017.
dean [at] fourwalledcubicle [dot] com
www.lufa-lib.org
-->
<!-- Atmel Studio framework integration file -->
<lufa>
<asf>
<module type="driver" id="lufa.drivers.usb.core.xmega" caption="LUFA USB Core Driver for XMEGA">
<device-support-alias value="lufa_xmega"/>
<info type="gui-flag" value="hidden"/>
<build type="doxygen-entry-point" value="Group_USBManagement_XMEGA"/>
<build type="c-source" value="Drivers/USB/Core/XMEGA/Template/Template_Endpoint_Control_R.c"/>
<build type="c-source" value="Drivers/USB/Core/XMEGA/Template/Template_Endpoint_Control_W.c"/>
<build type="c-source" value="Drivers/USB/Core/XMEGA/Template/Template_Endpoint_RW.c"/>
<build type="c-source" value="Drivers/USB/Core/XMEGA/Device_XMEGA.c"/>
<build type="header-file" value="Drivers/USB/Core/XMEGA/Device_XMEGA.h"/>
<build type="c-source" value="Drivers/USB/Core/XMEGA/Endpoint_XMEGA.c"/>
<build type="header-file" value="Drivers/USB/Core/XMEGA/Endpoint_XMEGA.h"/>
<build type="c-source" value="Drivers/USB/Core/XMEGA/Pipe_XMEGA.c"/>
<build type="c-source" value="Drivers/USB/Core/XMEGA/USBController_XMEGA.c"/>
<build type="header-file" value="Drivers/USB/Core/XMEGA/USBController_XMEGA.h"/>
<build type="c-source" value="Drivers/USB/Core/XMEGA/USBInterrupt_XMEGA.c"/>
<build type="header-file" value="Drivers/USB/Core/XMEGA/USBInterrupt_XMEGA.h"/>
<build type="c-source" value="Drivers/USB/Core/XMEGA/EndpointStream_XMEGA.c"/>
<build type="header-file" value="Drivers/USB/Core/XMEGA/EndpointStream_XMEGA.h"/>
</module>
</asf>
</lufa>
<!--
LUFA Library
Copyright (C) Dean Camera, 2017.
dean [at] fourwalledcubicle [dot] com
www.lufa-lib.org
-->
<!-- Atmel Studio framework integration file -->
<lufa>
<asf>
<module type="driver" id="lufa.drivers.usb.core.xmega" caption="LUFA USB Core Driver for XMEGA">
<device-support-alias value="lufa_xmega"/>
<info type="gui-flag" value="hidden"/>
<build type="doxygen-entry-point" value="Group_USBManagement_XMEGA"/>
<build type="c-source" value="Drivers/USB/Core/XMEGA/Template/Template_Endpoint_Control_R.c"/>
<build type="c-source" value="Drivers/USB/Core/XMEGA/Template/Template_Endpoint_Control_W.c"/>
<build type="c-source" value="Drivers/USB/Core/XMEGA/Template/Template_Endpoint_RW.c"/>
<build type="c-source" value="Drivers/USB/Core/XMEGA/Device_XMEGA.c"/>
<build type="header-file" value="Drivers/USB/Core/XMEGA/Device_XMEGA.h"/>
<build type="c-source" value="Drivers/USB/Core/XMEGA/Endpoint_XMEGA.c"/>
<build type="header-file" value="Drivers/USB/Core/XMEGA/Endpoint_XMEGA.h"/>
<build type="c-source" value="Drivers/USB/Core/XMEGA/Pipe_XMEGA.c"/>
<build type="c-source" value="Drivers/USB/Core/XMEGA/USBController_XMEGA.c"/>
<build type="header-file" value="Drivers/USB/Core/XMEGA/USBController_XMEGA.h"/>
<build type="c-source" value="Drivers/USB/Core/XMEGA/USBInterrupt_XMEGA.c"/>
<build type="header-file" value="Drivers/USB/Core/XMEGA/USBInterrupt_XMEGA.h"/>
<build type="c-source" value="Drivers/USB/Core/XMEGA/EndpointStream_XMEGA.c"/>
<build type="header-file" value="Drivers/USB/Core/XMEGA/EndpointStream_XMEGA.h"/>
</module>
</asf>
</lufa>

View File

@@ -1,60 +1,60 @@
<!--
LUFA Library
Copyright (C) Dean Camera, 2017.
dean [at] fourwalledcubicle [dot] com
www.lufa-lib.org
-->
<!-- Atmel Studio framework integration file -->
<lufa>
<asf>
<select-by-device id="lufa.platform" caption="LUFA Platform Specific Support">
<module type="service" id="lufa.platform#avr8" caption="LUFA Platform Specific Support - AVR8">
<device-support-alias value="lufa_avr8"/>
<build type="define" name="ARCH" value="ARCH_AVR8"/>
<build type="doxygen-entry-point" value="Group_PlatformDrivers"/>
<build type="include-path" value=".."/>
<build type="header-file" subtype="api" value="Platform/Platform.h"/>
<require idref="lufa.common"/>
</module>
<module type="service" id="lufa.platform#xmega" caption="LUFA Platform Specific Support - XMEGA">
<device-support-alias value="lufa_xmega"/>
<build type="define" name="ARCH" value="ARCH_XMEGA"/>
<build type="doxygen-entry-point" value="Group_PlatformDrivers"/>
<build type="include-path" value=".."/>
<build type="header-file" subtype="api" value="Platform/Platform.h"/>
<build type="distribute" value="Platform/XMEGA/XMEGAExperimentalInfo.txt" subtype="license"/>
<require idref="lufa.platform.xmega"/>
<require idref="lufa.common"/>
</module>
<module type="service" id="lufa.platform#uc3" caption="LUFA Platform Specific Support - UC3">
<device-support-alias value="lufa_uc3"/>
<build type="define" name="ARCH" value="ARCH_UC3"/>
<build type="doxygen-entry-point" value="Group_PlatformDrivers"/>
<build type="include-path" value=".."/>
<build type="header-file" subtype="api" value="Platform/Platform.h"/>
<build type="distribute" value="Platform/UC3/UC3ExperimentalInfo.txt" subtype="license"/>
<require idref="lufa.platform.uc3"/>
<require idref="lufa.common"/>
</module>
</select-by-device>
</asf>
</lufa>
<!--
LUFA Library
Copyright (C) Dean Camera, 2017.
dean [at] fourwalledcubicle [dot] com
www.lufa-lib.org
-->
<!-- Atmel Studio framework integration file -->
<lufa>
<asf>
<select-by-device id="lufa.platform" caption="LUFA Platform Specific Support">
<module type="service" id="lufa.platform#avr8" caption="LUFA Platform Specific Support - AVR8">
<device-support-alias value="lufa_avr8"/>
<build type="define" name="ARCH" value="ARCH_AVR8"/>
<build type="doxygen-entry-point" value="Group_PlatformDrivers"/>
<build type="include-path" value=".."/>
<build type="header-file" subtype="api" value="Platform/Platform.h"/>
<require idref="lufa.common"/>
</module>
<module type="service" id="lufa.platform#xmega" caption="LUFA Platform Specific Support - XMEGA">
<device-support-alias value="lufa_xmega"/>
<build type="define" name="ARCH" value="ARCH_XMEGA"/>
<build type="doxygen-entry-point" value="Group_PlatformDrivers"/>
<build type="include-path" value=".."/>
<build type="header-file" subtype="api" value="Platform/Platform.h"/>
<build type="distribute" value="Platform/XMEGA/XMEGAExperimentalInfo.txt" subtype="license"/>
<require idref="lufa.platform.xmega"/>
<require idref="lufa.common"/>
</module>
<module type="service" id="lufa.platform#uc3" caption="LUFA Platform Specific Support - UC3">
<device-support-alias value="lufa_uc3"/>
<build type="define" name="ARCH" value="ARCH_UC3"/>
<build type="doxygen-entry-point" value="Group_PlatformDrivers"/>
<build type="include-path" value=".."/>
<build type="header-file" subtype="api" value="Platform/Platform.h"/>
<build type="distribute" value="Platform/UC3/UC3ExperimentalInfo.txt" subtype="license"/>
<require idref="lufa.platform.uc3"/>
<require idref="lufa.common"/>
</module>
</select-by-device>
</asf>
</lufa>

View File

@@ -1,26 +1,26 @@
<!--
LUFA Library
Copyright (C) Dean Camera, 2017.
dean [at] fourwalledcubicle [dot] com
www.lufa-lib.org
-->
<!-- Atmel Studio framework integration file -->
<lufa>
<asf>
<module type="driver" id="lufa.platform.uc3" caption="LUFA UC3 Platform Drivers">
<device-support-alias value="lufa_uc3"/>
<info type="gui-flag" value="hidden"/>
<build type="doxygen-entry-point" value="Group_PlatformDrivers_UC3"/>
<build type="header-file" value="Platform/UC3/ClockManagement.h"/>
<build type="header-file" value="Platform/UC3/InterruptManagement.h"/>
<build type="c-source" value="Platform/UC3/InterruptManagement.c"/>
<build type="asm-source" value="Platform/UC3/Exception.S"/>
</module>
</asf>
</lufa>
<!--
LUFA Library
Copyright (C) Dean Camera, 2017.
dean [at] fourwalledcubicle [dot] com
www.lufa-lib.org
-->
<!-- Atmel Studio framework integration file -->
<lufa>
<asf>
<module type="driver" id="lufa.platform.uc3" caption="LUFA UC3 Platform Drivers">
<device-support-alias value="lufa_uc3"/>
<info type="gui-flag" value="hidden"/>
<build type="doxygen-entry-point" value="Group_PlatformDrivers_UC3"/>
<build type="header-file" value="Platform/UC3/ClockManagement.h"/>
<build type="header-file" value="Platform/UC3/InterruptManagement.h"/>
<build type="c-source" value="Platform/UC3/InterruptManagement.c"/>
<build type="asm-source" value="Platform/UC3/Exception.S"/>
</module>
</asf>
</lufa>

View File

@@ -1,23 +1,23 @@
<!--
LUFA Library
Copyright (C) Dean Camera, 2017.
dean [at] fourwalledcubicle [dot] com
www.lufa-lib.org
-->
<!-- Atmel Studio framework integration file -->
<lufa>
<asf xmlversion="1.0">
<module type="driver" id="lufa.platform.xmega" caption="LUFA XMEGA Platform Drivers">
<device-support-alias value="lufa_xmega"/>
<info type="gui-flag" value="hidden"/>
<build type="doxygen-entry-point" value="Group_PlatformDrivers_XMEGA"/>
<build type="header-file" value="Platform/XMEGA/ClockManagement.h"/>
</module>
</asf>
</lufa>
<!--
LUFA Library
Copyright (C) Dean Camera, 2017.
dean [at] fourwalledcubicle [dot] com
www.lufa-lib.org
-->
<!-- Atmel Studio framework integration file -->
<lufa>
<asf xmlversion="1.0">
<module type="driver" id="lufa.platform.xmega" caption="LUFA XMEGA Platform Drivers">
<device-support-alias value="lufa_xmega"/>
<info type="gui-flag" value="hidden"/>
<build type="doxygen-entry-point" value="Group_PlatformDrivers_XMEGA"/>
<build type="header-file" value="Platform/XMEGA/ClockManagement.h"/>
</module>
</asf>
</lufa>

View File

@@ -1,45 +1,45 @@
<!--
LUFA Library
Copyright (C) Dean Camera, 2017.
dean [at] fourwalledcubicle [dot] com
www.lufa-lib.org
-->
<!-- Atmel Studio framework integration file -->
<lufa>
<asf>
<select-by-device id="common.utils.toolchain_config" caption="Toolchain configuration defaults">
<module type="build-specific" id="common.utils.toolchain_config#avr" caption="Toolchain configuration defaults for 8-bit AVR">
<info type="gui-flag" value="hidden"/>
<device-support value="avr"/>
<toolchain-config name="avrgcc.compiler.general.ChangeDefaultBitFieldUnsigned" value="True" toolchain="avrgcc"/>
<toolchain-config name="avrgcc.compiler.general.ChangeDefaultCharTypeUnsigned" value="True" toolchain="avrgcc"/>
<toolchain-config name="avrgcc.compiler.optimization.OtherFlags" value="-fdata-sections" toolchain="avrgcc"/>
<toolchain-config name="avrgcc.compiler.optimization.PrepareFunctionsForGarbageCollection" value="True" toolchain="avrgcc"/>
<toolchain-config name="avrgcc.compiler.warnings.AllWarnings" value="True" toolchain="avrgcc"/>
<toolchain-config name="avrgcc.compiler.miscellaneous.OtherFlags" value="-mrelax -std=gnu99 -fno-strict-aliasing -fno-jump-tables" toolchain="avrgcc"/>
<toolchain-config name="avrgcc.linker.optimization.GarbageCollectUnusedSections" value="True" toolchain="avrgcc"/>
<toolchain-config name="avrgcc.linker.optimization.RelaxBranches" value="True" toolchain="avrgcc"/>
<toolchain-config name="avrgcc.linker.miscellaneous.LinkerFlags" value="-Wl,--relax" toolchain="avrgcc"/>
</module>
</select-by-device>
<module type="build-specific" id="common.utils.toolchain_config#uc3" caption="Toolchain configuration defaults for 32-bit AVR">
<info type="gui-flag" value="hidden"/>
<device-support value="uc3"/>
<toolchain-config name="avrgcc.compiler.general.ChangeDefaultBitFieldUnsigned" value="True" toolchain="avr32gcc"/>
<toolchain-config name="avrgcc.compiler.general.ChangeDefaultCharTypeUnsigned" value="True" toolchain="avr32gcc"/>
<toolchain-config name="avr32gcc.compiler.optimization.OtherFlags" value="-fdata-sections" toolchain="avr32gcc"/>
<toolchain-config name="avr32gcc.compiler.optimization.PrepareFunctionsForGarbageCollection" value="True" toolchain="avr32gcc"/>
<toolchain-config name="avr32gcc.compiler.warnings.AllWarnings" value="True" toolchain="avr32gcc"/>
<toolchain-config name="avr32gcc.compiler.miscellaneous.OtherFlags" value="-mrelax -std=gnu99 -fno-strict-aliasing -mno-cond-exec-before-reload" toolchain="avr32gcc"/>
<toolchain-config name="avr32gcc.linker.optimization.GarbageCollectUnusedSections" value="True" toolchain="avr32gcc"/>
<toolchain-config name="avr32gcc.linker.optimization.RelaxBranches" value="True" toolchain="avr32gcc"/>
<toolchain-config name="avr32gcc.linker.miscellaneous.LinkerFlags" value="-Wl,--relax" toolchain="avr32gcc"/>
</module>
</asf>
</lufa>
<!--
LUFA Library
Copyright (C) Dean Camera, 2017.
dean [at] fourwalledcubicle [dot] com
www.lufa-lib.org
-->
<!-- Atmel Studio framework integration file -->
<lufa>
<asf>
<select-by-device id="common.utils.toolchain_config" caption="Toolchain configuration defaults">
<module type="build-specific" id="common.utils.toolchain_config#avr" caption="Toolchain configuration defaults for 8-bit AVR">
<info type="gui-flag" value="hidden"/>
<device-support value="avr"/>
<toolchain-config name="avrgcc.compiler.general.ChangeDefaultBitFieldUnsigned" value="True" toolchain="avrgcc"/>
<toolchain-config name="avrgcc.compiler.general.ChangeDefaultCharTypeUnsigned" value="True" toolchain="avrgcc"/>
<toolchain-config name="avrgcc.compiler.optimization.OtherFlags" value="-fdata-sections" toolchain="avrgcc"/>
<toolchain-config name="avrgcc.compiler.optimization.PrepareFunctionsForGarbageCollection" value="True" toolchain="avrgcc"/>
<toolchain-config name="avrgcc.compiler.warnings.AllWarnings" value="True" toolchain="avrgcc"/>
<toolchain-config name="avrgcc.compiler.miscellaneous.OtherFlags" value="-mrelax -std=gnu99 -fno-strict-aliasing -fno-jump-tables" toolchain="avrgcc"/>
<toolchain-config name="avrgcc.linker.optimization.GarbageCollectUnusedSections" value="True" toolchain="avrgcc"/>
<toolchain-config name="avrgcc.linker.optimization.RelaxBranches" value="True" toolchain="avrgcc"/>
<toolchain-config name="avrgcc.linker.miscellaneous.LinkerFlags" value="-Wl,--relax" toolchain="avrgcc"/>
</module>
</select-by-device>
<module type="build-specific" id="common.utils.toolchain_config#uc3" caption="Toolchain configuration defaults for 32-bit AVR">
<info type="gui-flag" value="hidden"/>
<device-support value="uc3"/>
<toolchain-config name="avrgcc.compiler.general.ChangeDefaultBitFieldUnsigned" value="True" toolchain="avr32gcc"/>
<toolchain-config name="avrgcc.compiler.general.ChangeDefaultCharTypeUnsigned" value="True" toolchain="avr32gcc"/>
<toolchain-config name="avr32gcc.compiler.optimization.OtherFlags" value="-fdata-sections" toolchain="avr32gcc"/>
<toolchain-config name="avr32gcc.compiler.optimization.PrepareFunctionsForGarbageCollection" value="True" toolchain="avr32gcc"/>
<toolchain-config name="avr32gcc.compiler.warnings.AllWarnings" value="True" toolchain="avr32gcc"/>
<toolchain-config name="avr32gcc.compiler.miscellaneous.OtherFlags" value="-mrelax -std=gnu99 -fno-strict-aliasing -mno-cond-exec-before-reload" toolchain="avr32gcc"/>
<toolchain-config name="avr32gcc.linker.optimization.GarbageCollectUnusedSections" value="True" toolchain="avr32gcc"/>
<toolchain-config name="avr32gcc.linker.optimization.RelaxBranches" value="True" toolchain="avr32gcc"/>
<toolchain-config name="avr32gcc.linker.miscellaneous.LinkerFlags" value="-Wl,--relax" toolchain="avr32gcc"/>
</module>
</asf>
</lufa>

View File

@@ -1,91 +1,91 @@
<asf xmlversion="1.0">
<project caption="AVRISP-MKII Clone Programmer" id="lufa.projects.avrispmkii_clone.avr8">
<require idref="lufa.projects.avrispmkii_clone"/>
<require idref="lufa.boards.dummy.avr8"/>
<generator value="as5_8"/>
<device-support value="at90usb1287"/>
<config name="lufa.drivers.board.name" value="usbkey"/>
<build type="define" name="F_CPU" value="8000000UL"/>
<build type="define" name="F_USB" value="8000000UL"/>
</project>
<!-- Required by the XPLAIN Bridge project as well, so split into a meta module -->
<module type="meta" id="lufa.projects.avrispmkii_clone.src" caption="AVRISP-MKII Clone Programmer">
<info type="gui-flag" value="hidden"/>
<device-support-alias value="lufa_avr8"/>
<device-support-alias value="lufa_xmega"/>
<device-support-alias value="lufa_uc3"/>
<info type="gui-flag" value="move-to-root"/>
<build type="include-path" value="."/>
<build type="c-source" value="AVRISPDescriptors.c"/>
<build type="header-file" value="AVRISPDescriptors.h"/>
<build type="include-path" value="Lib"/>
<build type="header-file" value="Lib/V2ProtocolConstants.h"/>
<build type="c-source" value="Lib/V2Protocol.c"/>
<build type="header-file" value="Lib/V2Protocol.h"/>
<build type="c-source" value="Lib/V2ProtocolParams.c"/>
<build type="header-file" value="Lib/V2ProtocolParams.h"/>
<build type="c-source" value="Lib/ISP/ISPProtocol.c"/>
<build type="header-file" value="Lib/ISP/ISPProtocol.h"/>
<build type="c-source" value="Lib/ISP/ISPTarget.c"/>
<build type="header-file" value="Lib/ISP/ISPTarget.h"/>
<build type="c-source" value="Lib/XPROG/XPROGTarget.c"/>
<build type="header-file" value="Lib/XPROG/XPROGTarget.h"/>
<build type="c-source" value="Lib/XPROG/XPROGProtocol.c"/>
<build type="header-file" value="Lib/XPROG/XPROGProtocol.h"/>
<build type="c-source" value="Lib/XPROG/XMEGANVM.c"/>
<build type="header-file" value="Lib/XPROG/XMEGANVM.h"/>
<build type="c-source" value="Lib/XPROG/TINYNVM.c"/>
<build type="header-file" value="Lib/XPROG/TINYNVM.h"/>
<require idref="lufa.drivers.peripheral.adc"/>
<require idref="lufa.drivers.peripheral.spi"/>
</module>
<module type="application" id="lufa.projects.avrispmkii_clone" caption="AVRISP-MKII Clone Programmer">
<info type="description" value="summary">
Clone firmware of the Atmel AVRISP-MKII programmer.
</info>
<info type="gui-flag" value="move-to-root"/>
<info type="keyword" value="Technology">
<keyword value="Low Level APIs"/>
<keyword value="USB Device"/>
</info>
<device-support-alias value="lufa_avr8"/>
<device-support-alias value="lufa_xmega"/>
<device-support-alias value="lufa_uc3"/>
<build type="distribute" subtype="user-file" value="doxyfile"/>
<build type="distribute" subtype="user-file" value="AVRISP-MKII.txt"/>
<build type="distribute" subtype="directory" value="WindowsDriver"/>
<build type="c-source" value="AVRISP-MKII.c"/>
<build type="header-file" value="AVRISP-MKII.h"/>
<require idref="lufa.projects.avrispmkii_clone.src"/>
<build type="module-config" subtype="path" value="Config"/>
<build type="module-config" subtype="required-header-file" value="AppConfig.h"/>
<build type="header-file" value="Config/AppConfig.h"/>
<build type="header-file" value="Config/LUFAConfig.h"/>
<require idref="lufa.common"/>
<require idref="lufa.platform"/>
<require idref="lufa.drivers.usb"/>
<require idref="lufa.drivers.peripheral.adc"/>
<require idref="lufa.drivers.peripheral.spi"/>
<require idref="lufa.drivers.board"/>
<require idref="lufa.drivers.board.leds"/>
</module>
</asf>
<asf xmlversion="1.0">
<project caption="AVRISP-MKII Clone Programmer" id="lufa.projects.avrispmkii_clone.avr8">
<require idref="lufa.projects.avrispmkii_clone"/>
<require idref="lufa.boards.dummy.avr8"/>
<generator value="as5_8"/>
<device-support value="at90usb1287"/>
<config name="lufa.drivers.board.name" value="usbkey"/>
<build type="define" name="F_CPU" value="8000000UL"/>
<build type="define" name="F_USB" value="8000000UL"/>
</project>
<!-- Required by the XPLAIN Bridge project as well, so split into a meta module -->
<module type="meta" id="lufa.projects.avrispmkii_clone.src" caption="AVRISP-MKII Clone Programmer">
<info type="gui-flag" value="hidden"/>
<device-support-alias value="lufa_avr8"/>
<device-support-alias value="lufa_xmega"/>
<device-support-alias value="lufa_uc3"/>
<info type="gui-flag" value="move-to-root"/>
<build type="include-path" value="."/>
<build type="c-source" value="AVRISPDescriptors.c"/>
<build type="header-file" value="AVRISPDescriptors.h"/>
<build type="include-path" value="Lib"/>
<build type="header-file" value="Lib/V2ProtocolConstants.h"/>
<build type="c-source" value="Lib/V2Protocol.c"/>
<build type="header-file" value="Lib/V2Protocol.h"/>
<build type="c-source" value="Lib/V2ProtocolParams.c"/>
<build type="header-file" value="Lib/V2ProtocolParams.h"/>
<build type="c-source" value="Lib/ISP/ISPProtocol.c"/>
<build type="header-file" value="Lib/ISP/ISPProtocol.h"/>
<build type="c-source" value="Lib/ISP/ISPTarget.c"/>
<build type="header-file" value="Lib/ISP/ISPTarget.h"/>
<build type="c-source" value="Lib/XPROG/XPROGTarget.c"/>
<build type="header-file" value="Lib/XPROG/XPROGTarget.h"/>
<build type="c-source" value="Lib/XPROG/XPROGProtocol.c"/>
<build type="header-file" value="Lib/XPROG/XPROGProtocol.h"/>
<build type="c-source" value="Lib/XPROG/XMEGANVM.c"/>
<build type="header-file" value="Lib/XPROG/XMEGANVM.h"/>
<build type="c-source" value="Lib/XPROG/TINYNVM.c"/>
<build type="header-file" value="Lib/XPROG/TINYNVM.h"/>
<require idref="lufa.drivers.peripheral.adc"/>
<require idref="lufa.drivers.peripheral.spi"/>
</module>
<module type="application" id="lufa.projects.avrispmkii_clone" caption="AVRISP-MKII Clone Programmer">
<info type="description" value="summary">
Clone firmware of the Atmel AVRISP-MKII programmer.
</info>
<info type="gui-flag" value="move-to-root"/>
<info type="keyword" value="Technology">
<keyword value="Low Level APIs"/>
<keyword value="USB Device"/>
</info>
<device-support-alias value="lufa_avr8"/>
<device-support-alias value="lufa_xmega"/>
<device-support-alias value="lufa_uc3"/>
<build type="distribute" subtype="user-file" value="doxyfile"/>
<build type="distribute" subtype="user-file" value="AVRISP-MKII.txt"/>
<build type="distribute" subtype="directory" value="WindowsDriver"/>
<build type="c-source" value="AVRISP-MKII.c"/>
<build type="header-file" value="AVRISP-MKII.h"/>
<require idref="lufa.projects.avrispmkii_clone.src"/>
<build type="module-config" subtype="path" value="Config"/>
<build type="module-config" subtype="required-header-file" value="AppConfig.h"/>
<build type="header-file" value="Config/AppConfig.h"/>
<build type="header-file" value="Config/LUFAConfig.h"/>
<require idref="lufa.common"/>
<require idref="lufa.platform"/>
<require idref="lufa.drivers.usb"/>
<require idref="lufa.drivers.peripheral.adc"/>
<require idref="lufa.drivers.peripheral.spi"/>
<require idref="lufa.drivers.board"/>
<require idref="lufa.drivers.board.leds"/>
</module>
</asf>

View File

@@ -1,53 +1,53 @@
<asf xmlversion="1.0">
<project caption="Benito Programmer" id="lufa.projects.benito.avr8">
<require idref="lufa.projects.benito"/>
<require idref="lufa.boards.dummy.avr8"/>
<generator value="as5_8"/>
<device-support value="at90usb1287"/>
<config name="lufa.drivers.board.name" value="usbkey"/>
<build type="define" name="F_CPU" value="8000000UL"/>
<build type="define" name="F_USB" value="8000000UL"/>
</project>
<module type="application" id="lufa.projects.benito" caption="Benito Programmer">
<info type="description" value="summary">
Benito AVR programmer.
</info>
<info type="gui-flag" value="move-to-root"/>
<info type="keyword" value="Technology">
<keyword value="Class Driver APIs"/>
<keyword value="USB Device"/>
<keyword value="CDC Class"/>
</info>
<device-support-alias value="lufa_avr8"/>
<device-support-alias value="lufa_xmega"/>
<device-support-alias value="lufa_uc3"/>
<build type="distribute" subtype="user-file" value="doxyfile"/>
<build type="distribute" subtype="user-file" value="Benito.txt"/>
<build type="distribute" subtype="user-file" value="LUFA Benito Programmer.inf"/>
<build type="c-source" value="Benito.c"/>
<build type="c-source" value="Descriptors.c"/>
<build type="header-file" value="Benito.h"/>
<build type="header-file" value="Descriptors.h"/>
<build type="module-config" subtype="path" value="Config"/>
<build type="module-config" subtype="required-header-file" value="AppConfig.h"/>
<build type="header-file" value="Config/AppConfig.h"/>
<build type="header-file" value="Config/LUFAConfig.h"/>
<require idref="lufa.common"/>
<require idref="lufa.platform"/>
<require idref="lufa.drivers.usb"/>
<require idref="lufa.drivers.peripheral.usart"/>
<require idref="lufa.drivers.misc.ringbuffer"/>
<require idref="lufa.drivers.board"/>
<require idref="lufa.drivers.board.leds"/>
</module>
</asf>
<asf xmlversion="1.0">
<project caption="Benito Programmer" id="lufa.projects.benito.avr8">
<require idref="lufa.projects.benito"/>
<require idref="lufa.boards.dummy.avr8"/>
<generator value="as5_8"/>
<device-support value="at90usb1287"/>
<config name="lufa.drivers.board.name" value="usbkey"/>
<build type="define" name="F_CPU" value="8000000UL"/>
<build type="define" name="F_USB" value="8000000UL"/>
</project>
<module type="application" id="lufa.projects.benito" caption="Benito Programmer">
<info type="description" value="summary">
Benito AVR programmer.
</info>
<info type="gui-flag" value="move-to-root"/>
<info type="keyword" value="Technology">
<keyword value="Class Driver APIs"/>
<keyword value="USB Device"/>
<keyword value="CDC Class"/>
</info>
<device-support-alias value="lufa_avr8"/>
<device-support-alias value="lufa_xmega"/>
<device-support-alias value="lufa_uc3"/>
<build type="distribute" subtype="user-file" value="doxyfile"/>
<build type="distribute" subtype="user-file" value="Benito.txt"/>
<build type="distribute" subtype="user-file" value="LUFA Benito Programmer.inf"/>
<build type="c-source" value="Benito.c"/>
<build type="c-source" value="Descriptors.c"/>
<build type="header-file" value="Benito.h"/>
<build type="header-file" value="Descriptors.h"/>
<build type="module-config" subtype="path" value="Config"/>
<build type="module-config" subtype="required-header-file" value="AppConfig.h"/>
<build type="header-file" value="Config/AppConfig.h"/>
<build type="header-file" value="Config/LUFAConfig.h"/>
<require idref="lufa.common"/>
<require idref="lufa.platform"/>
<require idref="lufa.drivers.usb"/>
<require idref="lufa.drivers.peripheral.usart"/>
<require idref="lufa.drivers.misc.ringbuffer"/>
<require idref="lufa.drivers.board"/>
<require idref="lufa.drivers.board.leds"/>
</module>
</asf>

View File

@@ -1,48 +1,48 @@
<asf xmlversion="1.0">
<project caption="HID Report Viewer" id="lufa.projects.hid_viewer.avr8">
<require idref="lufa.projects.hid_viewer"/>
<require idref="lufa.boards.dummy.avr8"/>
<generator value="as5_8"/>
<device-support value="at90usb1287"/>
<config name="lufa.drivers.board.name" value="usbkey"/>
<build type="define" name="F_CPU" value="8000000UL"/>
<build type="define" name="F_USB" value="8000000UL"/>
</project>
<module type="application" id="lufa.projects.hid_viewer" caption="HID Report Viewer">
<info type="description" value="summary">
HID device report viewer project.
</info>
<info type="gui-flag" value="move-to-root"/>
<info type="keyword" value="Technology">
<keyword value="Class Driver APIs"/>
<keyword value="USB Host"/>
<keyword value="HID Class"/>
</info>
<device-support-alias value="lufa_avr8"/>
<device-support-alias value="lufa_xmega"/>
<device-support-alias value="lufa_uc3"/>
<build type="distribute" subtype="user-file" value="doxyfile"/>
<build type="distribute" subtype="user-file" value="HIDReportViewer.txt"/>
<build type="c-source" value="HIDReportViewer.c"/>
<build type="header-file" value="HIDReportViewer.h"/>
<build type="module-config" subtype="path" value="Config"/>
<build type="header-file" value="Config/LUFAConfig.h"/>
<require idref="lufa.common"/>
<require idref="lufa.platform"/>
<require idref="lufa.drivers.usb"/>
<require idref="lufa.drivers.peripheral.usart"/>
<require idref="lufa.drivers.misc.ansi"/>
<require idref="lufa.drivers.board"/>
<require idref="lufa.drivers.board.leds"/>
</module>
</asf>
<asf xmlversion="1.0">
<project caption="HID Report Viewer" id="lufa.projects.hid_viewer.avr8">
<require idref="lufa.projects.hid_viewer"/>
<require idref="lufa.boards.dummy.avr8"/>
<generator value="as5_8"/>
<device-support value="at90usb1287"/>
<config name="lufa.drivers.board.name" value="usbkey"/>
<build type="define" name="F_CPU" value="8000000UL"/>
<build type="define" name="F_USB" value="8000000UL"/>
</project>
<module type="application" id="lufa.projects.hid_viewer" caption="HID Report Viewer">
<info type="description" value="summary">
HID device report viewer project.
</info>
<info type="gui-flag" value="move-to-root"/>
<info type="keyword" value="Technology">
<keyword value="Class Driver APIs"/>
<keyword value="USB Host"/>
<keyword value="HID Class"/>
</info>
<device-support-alias value="lufa_avr8"/>
<device-support-alias value="lufa_xmega"/>
<device-support-alias value="lufa_uc3"/>
<build type="distribute" subtype="user-file" value="doxyfile"/>
<build type="distribute" subtype="user-file" value="HIDReportViewer.txt"/>
<build type="c-source" value="HIDReportViewer.c"/>
<build type="header-file" value="HIDReportViewer.h"/>
<build type="module-config" subtype="path" value="Config"/>
<build type="header-file" value="Config/LUFAConfig.h"/>
<require idref="lufa.common"/>
<require idref="lufa.platform"/>
<require idref="lufa.drivers.usb"/>
<require idref="lufa.drivers.peripheral.usart"/>
<require idref="lufa.drivers.misc.ansi"/>
<require idref="lufa.drivers.board"/>
<require idref="lufa.drivers.board.leds"/>
</module>
</asf>

View File

@@ -1,51 +1,51 @@
<asf xmlversion="1.0">
<project caption="LED Notifier Widget" id="lufa.projects.led_notifier.avr8">
<require idref="lufa.projects.led_notifier"/>
<require idref="lufa.boards.dummy.avr8"/>
<generator value="as5_8"/>
<device-support value="at90usb1287"/>
<config name="lufa.drivers.board.name" value="usbkey"/>
<build type="define" name="F_CPU" value="8000000UL"/>
<build type="define" name="F_USB" value="8000000UL"/>
</project>
<module type="application" id="lufa.projects.led_notifier" caption="LED Notifier Widget">
<info type="description" value="summary">
RGB LED notification widget project.
</info>
<info type="gui-flag" value="move-to-root"/>
<info type="keyword" value="Technology">
<keyword value="Class Driver APIs"/>
<keyword value="USB Device"/>
<keyword value="CDC Class"/>
</info>
<device-support-alias value="lufa_avr8"/>
<device-support-alias value="lufa_xmega"/>
<device-support-alias value="lufa_uc3"/>
<build type="distribute" subtype="user-file" value="doxyfile"/>
<build type="distribute" subtype="user-file" value="LEDNotifier.txt"/>
<build type="distribute" subtype="user-file" value="LUFA LED Notifier.inf"/>
<build type="distribute" subtype="directory" value="CPUUsageApp"/>
<build type="distribute" subtype="directory" value="LEDMixerApp"/>
<build type="c-source" value="LEDNotifier.c"/>
<build type="c-source" value="Descriptors.c"/>
<build type="header-file" value="LEDNotifier.h"/>
<build type="header-file" value="Descriptors.h"/>
<build type="module-config" subtype="path" value="Config"/>
<build type="header-file" value="Config/LUFAConfig.h"/>
<require idref="lufa.common"/>
<require idref="lufa.platform"/>
<require idref="lufa.drivers.usb"/>
<require idref="lufa.drivers.board"/>
<require idref="lufa.drivers.board.leds"/>
</module>
</asf>
<asf xmlversion="1.0">
<project caption="LED Notifier Widget" id="lufa.projects.led_notifier.avr8">
<require idref="lufa.projects.led_notifier"/>
<require idref="lufa.boards.dummy.avr8"/>
<generator value="as5_8"/>
<device-support value="at90usb1287"/>
<config name="lufa.drivers.board.name" value="usbkey"/>
<build type="define" name="F_CPU" value="8000000UL"/>
<build type="define" name="F_USB" value="8000000UL"/>
</project>
<module type="application" id="lufa.projects.led_notifier" caption="LED Notifier Widget">
<info type="description" value="summary">
RGB LED notification widget project.
</info>
<info type="gui-flag" value="move-to-root"/>
<info type="keyword" value="Technology">
<keyword value="Class Driver APIs"/>
<keyword value="USB Device"/>
<keyword value="CDC Class"/>
</info>
<device-support-alias value="lufa_avr8"/>
<device-support-alias value="lufa_xmega"/>
<device-support-alias value="lufa_uc3"/>
<build type="distribute" subtype="user-file" value="doxyfile"/>
<build type="distribute" subtype="user-file" value="LEDNotifier.txt"/>
<build type="distribute" subtype="user-file" value="LUFA LED Notifier.inf"/>
<build type="distribute" subtype="directory" value="CPUUsageApp"/>
<build type="distribute" subtype="directory" value="LEDMixerApp"/>
<build type="c-source" value="LEDNotifier.c"/>
<build type="c-source" value="Descriptors.c"/>
<build type="header-file" value="LEDNotifier.h"/>
<build type="header-file" value="Descriptors.h"/>
<build type="module-config" subtype="path" value="Config"/>
<build type="header-file" value="Config/LUFAConfig.h"/>
<require idref="lufa.common"/>
<require idref="lufa.platform"/>
<require idref="lufa.drivers.usb"/>
<require idref="lufa.drivers.board"/>
<require idref="lufa.drivers.board.leds"/>
</module>
</asf>

View File

@@ -1,50 +1,50 @@
<asf xmlversion="1.0">
<project caption="MIDI Tone Generator" id="lufa.projects.midi_tone_gen.avr8">
<require idref="lufa.projects.midi_tone_gen"/>
<require idref="lufa.boards.dummy.avr8"/>
<generator value="as5_8"/>
<device-support value="at90usb1287"/>
<config name="lufa.drivers.board.name" value="usbkey"/>
<build type="define" name="F_CPU" value="8000000UL"/>
<build type="define" name="F_USB" value="8000000UL"/>
</project>
<module type="application" id="lufa.projects.midi_tone_gen" caption="MIDI Tone Generator">
<info type="description" value="summary">
MIDI tone generator project.
</info>
<info type="gui-flag" value="move-to-root"/>
<info type="keyword" value="Technology">
<keyword value="Class Driver APIs"/>
<keyword value="USB Device"/>
<keyword value="MIDI Class"/>
</info>
<device-support-alias value="lufa_avr8"/>
<device-support-alias value="lufa_xmega"/>
<device-support-alias value="lufa_uc3"/>
<build type="distribute" subtype="user-file" value="doxyfile"/>
<build type="distribute" subtype="user-file" value="MIDIToneGenerator.txt"/>
<build type="c-source" value="MIDIToneGenerator.c"/>
<build type="c-source" value="Descriptors.c"/>
<build type="header-file" value="MIDIToneGenerator.h"/>
<build type="header-file" value="Descriptors.h"/>
<build type="module-config" subtype="path" value="Config"/>
<build type="module-config" subtype="required-header-file" value="AppConfig.h"/>
<build type="header-file" value="Config/AppConfig.h"/>
<build type="header-file" value="Config/LUFAConfig.h"/>
<require idref="lufa.common"/>
<require idref="lufa.platform"/>
<require idref="lufa.drivers.usb"/>
<require idref="lufa.drivers.board"/>
<require idref="lufa.drivers.board.leds"/>
</module>
</asf>
<asf xmlversion="1.0">
<project caption="MIDI Tone Generator" id="lufa.projects.midi_tone_gen.avr8">
<require idref="lufa.projects.midi_tone_gen"/>
<require idref="lufa.boards.dummy.avr8"/>
<generator value="as5_8"/>
<device-support value="at90usb1287"/>
<config name="lufa.drivers.board.name" value="usbkey"/>
<build type="define" name="F_CPU" value="8000000UL"/>
<build type="define" name="F_USB" value="8000000UL"/>
</project>
<module type="application" id="lufa.projects.midi_tone_gen" caption="MIDI Tone Generator">
<info type="description" value="summary">
MIDI tone generator project.
</info>
<info type="gui-flag" value="move-to-root"/>
<info type="keyword" value="Technology">
<keyword value="Class Driver APIs"/>
<keyword value="USB Device"/>
<keyword value="MIDI Class"/>
</info>
<device-support-alias value="lufa_avr8"/>
<device-support-alias value="lufa_xmega"/>
<device-support-alias value="lufa_uc3"/>
<build type="distribute" subtype="user-file" value="doxyfile"/>
<build type="distribute" subtype="user-file" value="MIDIToneGenerator.txt"/>
<build type="c-source" value="MIDIToneGenerator.c"/>
<build type="c-source" value="Descriptors.c"/>
<build type="header-file" value="MIDIToneGenerator.h"/>
<build type="header-file" value="Descriptors.h"/>
<build type="module-config" subtype="path" value="Config"/>
<build type="module-config" subtype="required-header-file" value="AppConfig.h"/>
<build type="header-file" value="Config/AppConfig.h"/>
<build type="header-file" value="Config/LUFAConfig.h"/>
<require idref="lufa.common"/>
<require idref="lufa.platform"/>
<require idref="lufa.drivers.usb"/>
<require idref="lufa.drivers.board"/>
<require idref="lufa.drivers.board.leds"/>
</module>
</asf>

View File

@@ -1,52 +1,52 @@
<asf xmlversion="1.0">
<project caption="Magnetic Strip Card Reader" id="lufa.projects.magstripe.avr8">
<require idref="lufa.projects.magstripe"/>
<require idref="lufa.boards.dummy.avr8"/>
<generator value="as5_8"/>
<device-support value="at90usb1287"/>
<config name="lufa.drivers.board.name" value="usbkey"/>
<build type="define" name="F_CPU" value="8000000UL"/>
<build type="define" name="F_USB" value="8000000UL"/>
</project>
<module type="application" id="lufa.projects.magstripe" caption="Magnetic Strip Card Reader">
<info type="description" value="summary">
Magnetic strip card reader project.
</info>
<info type="gui-flag" value="move-to-root"/>
<info type="keyword" value="Technology">
<keyword value="Class Driver APIs"/>
<keyword value="USB Device"/>
<keyword value="HID Class"/>
</info>
<device-support-alias value="lufa_avr8"/>
<device-support-alias value="lufa_xmega"/>
<device-support-alias value="lufa_uc3"/>
<build type="distribute" subtype="user-file" value="doxyfile"/>
<build type="distribute" subtype="user-file" value="Magstripe.txt"/>
<build type="c-source" value="Magstripe.c"/>
<build type="c-source" value="Descriptors.c"/>
<build type="header-file" value="Magstripe.h"/>
<build type="header-file" value="Descriptors.h"/>
<build type="c-source" value="Lib/CircularBitBuffer.c"/>
<build type="header-file" value="Lib/CircularBitBuffer.h"/>
<build type="header-file" value="Lib/MagstripeHW.h"/>
<build type="module-config" subtype="path" value="Config"/>
<build type="module-config" subtype="required-header-file" value="AppConfig.h"/>
<build type="header-file" value="Config/AppConfig.h"/>
<build type="header-file" value="Config/LUFAConfig.h"/>
<require idref="lufa.common"/>
<require idref="lufa.platform"/>
<require idref="lufa.drivers.usb"/>
</module>
</asf>
<asf xmlversion="1.0">
<project caption="Magnetic Strip Card Reader" id="lufa.projects.magstripe.avr8">
<require idref="lufa.projects.magstripe"/>
<require idref="lufa.boards.dummy.avr8"/>
<generator value="as5_8"/>
<device-support value="at90usb1287"/>
<config name="lufa.drivers.board.name" value="usbkey"/>
<build type="define" name="F_CPU" value="8000000UL"/>
<build type="define" name="F_USB" value="8000000UL"/>
</project>
<module type="application" id="lufa.projects.magstripe" caption="Magnetic Strip Card Reader">
<info type="description" value="summary">
Magnetic strip card reader project.
</info>
<info type="gui-flag" value="move-to-root"/>
<info type="keyword" value="Technology">
<keyword value="Class Driver APIs"/>
<keyword value="USB Device"/>
<keyword value="HID Class"/>
</info>
<device-support-alias value="lufa_avr8"/>
<device-support-alias value="lufa_xmega"/>
<device-support-alias value="lufa_uc3"/>
<build type="distribute" subtype="user-file" value="doxyfile"/>
<build type="distribute" subtype="user-file" value="Magstripe.txt"/>
<build type="c-source" value="Magstripe.c"/>
<build type="c-source" value="Descriptors.c"/>
<build type="header-file" value="Magstripe.h"/>
<build type="header-file" value="Descriptors.h"/>
<build type="c-source" value="Lib/CircularBitBuffer.c"/>
<build type="header-file" value="Lib/CircularBitBuffer.h"/>
<build type="header-file" value="Lib/MagstripeHW.h"/>
<build type="module-config" subtype="path" value="Config"/>
<build type="module-config" subtype="required-header-file" value="AppConfig.h"/>
<build type="header-file" value="Config/AppConfig.h"/>
<build type="header-file" value="Config/LUFAConfig.h"/>
<require idref="lufa.common"/>
<require idref="lufa.platform"/>
<require idref="lufa.drivers.usb"/>
</module>
</asf>

View File

@@ -1,50 +1,50 @@
<asf xmlversion="1.0">
<project caption="Media Controller" id="lufa.projects.media_control.avr8">
<require idref="lufa.projects.media_control"/>
<require idref="lufa.boards.dummy.avr8"/>
<generator value="as5_8"/>
<device-support value="at90usb1287"/>
<config name="lufa.drivers.board.name" value="usbkey"/>
<build type="define" name="F_CPU" value="8000000UL"/>
<build type="define" name="F_USB" value="8000000UL"/>
</project>
<module type="application" id="lufa.projects.media_control" caption="Media Controller">
<info type="description" value="summary">
Magnetic strip card reader project.
</info>
<info type="gui-flag" value="move-to-root"/>
<info type="keyword" value="Technology">
<keyword value="Class Driver APIs"/>
<keyword value="USB Device"/>
<keyword value="HID Class"/>
</info>
<device-support-alias value="lufa_avr8"/>
<device-support-alias value="lufa_xmega"/>
<device-support-alias value="lufa_uc3"/>
<build type="distribute" subtype="user-file" value="doxyfile"/>
<build type="distribute" subtype="user-file" value="MediaController.txt"/>
<build type="c-source" value="MediaController.c"/>
<build type="c-source" value="Descriptors.c"/>
<build type="header-file" value="MediaController.h"/>
<build type="header-file" value="Descriptors.h"/>
<build type="module-config" subtype="path" value="Config"/>
<build type="header-file" value="Config/LUFAConfig.h"/>
<require idref="lufa.common"/>
<require idref="lufa.platform"/>
<require idref="lufa.drivers.usb"/>
<require idref="lufa.drivers.board"/>
<require idref="lufa.drivers.board.leds"/>
<require idref="lufa.drivers.board.buttons"/>
<require idref="lufa.drivers.board.joystick"/>
</module>
</asf>
<asf xmlversion="1.0">
<project caption="Media Controller" id="lufa.projects.media_control.avr8">
<require idref="lufa.projects.media_control"/>
<require idref="lufa.boards.dummy.avr8"/>
<generator value="as5_8"/>
<device-support value="at90usb1287"/>
<config name="lufa.drivers.board.name" value="usbkey"/>
<build type="define" name="F_CPU" value="8000000UL"/>
<build type="define" name="F_USB" value="8000000UL"/>
</project>
<module type="application" id="lufa.projects.media_control" caption="Media Controller">
<info type="description" value="summary">
Magnetic strip card reader project.
</info>
<info type="gui-flag" value="move-to-root"/>
<info type="keyword" value="Technology">
<keyword value="Class Driver APIs"/>
<keyword value="USB Device"/>
<keyword value="HID Class"/>
</info>
<device-support-alias value="lufa_avr8"/>
<device-support-alias value="lufa_xmega"/>
<device-support-alias value="lufa_uc3"/>
<build type="distribute" subtype="user-file" value="doxyfile"/>
<build type="distribute" subtype="user-file" value="MediaController.txt"/>
<build type="c-source" value="MediaController.c"/>
<build type="c-source" value="Descriptors.c"/>
<build type="header-file" value="MediaController.h"/>
<build type="header-file" value="Descriptors.h"/>
<build type="module-config" subtype="path" value="Config"/>
<build type="header-file" value="Config/LUFAConfig.h"/>
<require idref="lufa.common"/>
<require idref="lufa.platform"/>
<require idref="lufa.drivers.usb"/>
<require idref="lufa.drivers.board"/>
<require idref="lufa.drivers.board.leds"/>
<require idref="lufa.drivers.board.buttons"/>
<require idref="lufa.drivers.board.joystick"/>
</module>
</asf>

View File

@@ -1,49 +1,49 @@
<asf xmlversion="1.0">
<project caption="Missile Launcher" id="lufa.projects.missile_launcher.avr8">
<require idref="lufa.projects.missile_launcher"/>
<require idref="lufa.boards.dummy.avr8"/>
<generator value="as5_8"/>
<device-support value="at90usb1287"/>
<config name="lufa.drivers.board.name" value="usbkey"/>
<build type="define" name="F_CPU" value="8000000UL"/>
<build type="define" name="F_USB" value="8000000UL"/>
</project>
<module type="application" id="lufa.projects.missile_launcher" caption="Missile Launcher">
<info type="description" value="summary">
Missile launcher project.
</info>
<info type="gui-flag" value="move-to-root"/>
<info type="keyword" value="Technology">
<keyword value="Low Level APIs"/>
<keyword value="USB Host"/>
</info>
<device-support-alias value="lufa_avr8"/>
<device-support-alias value="lufa_xmega"/>
<device-support-alias value="lufa_uc3"/>
<build type="distribute" subtype="user-file" value="doxyfile"/>
<build type="distribute" subtype="user-file" value="MissileLauncher.txt"/>
<build type="c-source" value="MissileLauncher.c"/>
<build type="c-source" value="ConfigDescriptor.c"/>
<build type="header-file" value="MissileLauncher.h"/>
<build type="header-file" value="ConfigDescriptor.h"/>
<build type="module-config" subtype="path" value="Config"/>
<build type="header-file" value="Config/LUFAConfig.h"/>
<require idref="lufa.common"/>
<require idref="lufa.platform"/>
<require idref="lufa.drivers.usb"/>
<require idref="lufa.drivers.board"/>
<require idref="lufa.drivers.board.buttons"/>
<require idref="lufa.drivers.board.joystick"/>
<require idref="lufa.drivers.board.leds"/>
</module>
</asf>
<asf xmlversion="1.0">
<project caption="Missile Launcher" id="lufa.projects.missile_launcher.avr8">
<require idref="lufa.projects.missile_launcher"/>
<require idref="lufa.boards.dummy.avr8"/>
<generator value="as5_8"/>
<device-support value="at90usb1287"/>
<config name="lufa.drivers.board.name" value="usbkey"/>
<build type="define" name="F_CPU" value="8000000UL"/>
<build type="define" name="F_USB" value="8000000UL"/>
</project>
<module type="application" id="lufa.projects.missile_launcher" caption="Missile Launcher">
<info type="description" value="summary">
Missile launcher project.
</info>
<info type="gui-flag" value="move-to-root"/>
<info type="keyword" value="Technology">
<keyword value="Low Level APIs"/>
<keyword value="USB Host"/>
</info>
<device-support-alias value="lufa_avr8"/>
<device-support-alias value="lufa_xmega"/>
<device-support-alias value="lufa_uc3"/>
<build type="distribute" subtype="user-file" value="doxyfile"/>
<build type="distribute" subtype="user-file" value="MissileLauncher.txt"/>
<build type="c-source" value="MissileLauncher.c"/>
<build type="c-source" value="ConfigDescriptor.c"/>
<build type="header-file" value="MissileLauncher.h"/>
<build type="header-file" value="ConfigDescriptor.h"/>
<build type="module-config" subtype="path" value="Config"/>
<build type="header-file" value="Config/LUFAConfig.h"/>
<require idref="lufa.common"/>
<require idref="lufa.platform"/>
<require idref="lufa.drivers.usb"/>
<require idref="lufa.drivers.board"/>
<require idref="lufa.drivers.board.buttons"/>
<require idref="lufa.drivers.board.joystick"/>
<require idref="lufa.drivers.board.leds"/>
</module>
</asf>

View File

@@ -1,47 +1,47 @@
<asf xmlversion="1.0">
<project caption="Relay Board Controller" id="lufa.projects.relay_board.avr8">
<require idref="lufa.projects.relay_board"/>
<require idref="lufa.boards.dummy.avr8"/>
<generator value="as5_8"/>
<device-support value="at90usb1287"/>
<config name="lufa.drivers.board.name" value="usbkey"/>
<build type="define" name="F_CPU" value="8000000UL"/>
<build type="define" name="F_USB" value="8000000UL"/>
</project>
<module type="application" id="lufa.projects.relay_board" caption="Relay Board Controller">
<info type="description" value="summary">
Relay Board Controller project.
</info>
<info type="gui-flag" value="move-to-root"/>
<info type="keyword" value="Technology">
<keyword value="Low Level APIs"/>
<keyword value="USB Device"/>
</info>
<device-support-alias value="lufa_avr8"/>
<device-support-alias value="lufa_xmega"/>
<device-support-alias value="lufa_uc3"/>
<build type="distribute" subtype="user-file" value="doxyfile"/>
<build type="distribute" subtype="user-file" value="RelayBoard.txt"/>
<build type="c-source" value="RelayBoard.c"/>
<build type="c-source" value="Descriptors.c"/>
<build type="header-file" value="RelayBoard.h"/>
<build type="header-file" value="Descriptors.h"/>
<build type="module-config" subtype="path" value="Config"/>
<build type="header-file" value="Config/LUFAConfig.h"/>
<require idref="lufa.common"/>
<require idref="lufa.platform"/>
<require idref="lufa.drivers.usb"/>
<require idref="lufa.drivers.board"/>
<require idref="lufa.drivers.board.leds"/>
</module>
</asf>
<asf xmlversion="1.0">
<project caption="Relay Board Controller" id="lufa.projects.relay_board.avr8">
<require idref="lufa.projects.relay_board"/>
<require idref="lufa.boards.dummy.avr8"/>
<generator value="as5_8"/>
<device-support value="at90usb1287"/>
<config name="lufa.drivers.board.name" value="usbkey"/>
<build type="define" name="F_CPU" value="8000000UL"/>
<build type="define" name="F_USB" value="8000000UL"/>
</project>
<module type="application" id="lufa.projects.relay_board" caption="Relay Board Controller">
<info type="description" value="summary">
Relay Board Controller project.
</info>
<info type="gui-flag" value="move-to-root"/>
<info type="keyword" value="Technology">
<keyword value="Low Level APIs"/>
<keyword value="USB Device"/>
</info>
<device-support-alias value="lufa_avr8"/>
<device-support-alias value="lufa_xmega"/>
<device-support-alias value="lufa_uc3"/>
<build type="distribute" subtype="user-file" value="doxyfile"/>
<build type="distribute" subtype="user-file" value="RelayBoard.txt"/>
<build type="c-source" value="RelayBoard.c"/>
<build type="c-source" value="Descriptors.c"/>
<build type="header-file" value="RelayBoard.h"/>
<build type="header-file" value="Descriptors.h"/>
<build type="module-config" subtype="path" value="Config"/>
<build type="header-file" value="Config/LUFAConfig.h"/>
<require idref="lufa.common"/>
<require idref="lufa.platform"/>
<require idref="lufa.drivers.usb"/>
<require idref="lufa.drivers.board"/>
<require idref="lufa.drivers.board.leds"/>
</module>
</asf>

View File

@@ -1,51 +1,51 @@
<asf xmlversion="1.0">
<project caption="USB Serial to LCD Display" id="lufa.projects.serial_to_lcd.avr8">
<require idref="lufa.projects.serial_to_lcd"/>
<require idref="lufa.boards.dummy.avr8"/>
<generator value="as5_8"/>
<device-support value="at90usb1287"/>
<config name="lufa.drivers.board.name" value="usbkey"/>
<build type="define" name="F_CPU" value="8000000UL"/>
<build type="define" name="F_USB" value="8000000UL"/>
</project>
<module type="application" id="lufa.projects.serial_to_lcd" caption="USB Serial to LCD Display">
<info type="description" value="summary">
USB Serial to LCD Controller project.
</info>
<info type="gui-flag" value="move-to-root"/>
<info type="keyword" value="Technology">
<keyword value="Class Driver APIs"/>
<keyword value="USB Device"/>
<keyword value="CDC Class"/>
</info>
<device-support-alias value="lufa_avr8"/>
<device-support-alias value="lufa_xmega"/>
<device-support-alias value="lufa_uc3"/>
<build type="distribute" subtype="user-file" value="doxyfile"/>
<build type="distribute" subtype="user-file" value="SerialToLCD.txt"/>
<build type="distribute" subtype="user-file" value="LUFA SerialToLCD.inf"/>
<build type="c-source" value="SerialToLCD.c"/>
<build type="c-source" value="Descriptors.c"/>
<build type="header-file" value="SerialToLCD.h"/>
<build type="header-file" value="Descriptors.h"/>
<build type="c-source" value="Lib/HD44780.c"/>
<build type="header-file" value="Lib/HD44780.h"/>
<build type="module-config" subtype="path" value="Config"/>
<build type="header-file" value="Config/LUFAConfig.h"/>
<require idref="lufa.common"/>
<require idref="lufa.platform"/>
<require idref="lufa.drivers.usb"/>
<require idref="lufa.drivers.misc.ringbuffer"/>
</module>
</asf>
<asf xmlversion="1.0">
<project caption="USB Serial to LCD Display" id="lufa.projects.serial_to_lcd.avr8">
<require idref="lufa.projects.serial_to_lcd"/>
<require idref="lufa.boards.dummy.avr8"/>
<generator value="as5_8"/>
<device-support value="at90usb1287"/>
<config name="lufa.drivers.board.name" value="usbkey"/>
<build type="define" name="F_CPU" value="8000000UL"/>
<build type="define" name="F_USB" value="8000000UL"/>
</project>
<module type="application" id="lufa.projects.serial_to_lcd" caption="USB Serial to LCD Display">
<info type="description" value="summary">
USB Serial to LCD Controller project.
</info>
<info type="gui-flag" value="move-to-root"/>
<info type="keyword" value="Technology">
<keyword value="Class Driver APIs"/>
<keyword value="USB Device"/>
<keyword value="CDC Class"/>
</info>
<device-support-alias value="lufa_avr8"/>
<device-support-alias value="lufa_xmega"/>
<device-support-alias value="lufa_uc3"/>
<build type="distribute" subtype="user-file" value="doxyfile"/>
<build type="distribute" subtype="user-file" value="SerialToLCD.txt"/>
<build type="distribute" subtype="user-file" value="LUFA SerialToLCD.inf"/>
<build type="c-source" value="SerialToLCD.c"/>
<build type="c-source" value="Descriptors.c"/>
<build type="header-file" value="SerialToLCD.h"/>
<build type="header-file" value="Descriptors.h"/>
<build type="c-source" value="Lib/HD44780.c"/>
<build type="header-file" value="Lib/HD44780.h"/>
<build type="module-config" subtype="path" value="Config"/>
<build type="header-file" value="Config/LUFAConfig.h"/>
<require idref="lufa.common"/>
<require idref="lufa.platform"/>
<require idref="lufa.drivers.usb"/>
<require idref="lufa.drivers.misc.ringbuffer"/>
</module>
</asf>

View File

@@ -17,8 +17,7 @@
#ifndef TESTS_BASIC_CONFIG_H_
#define TESTS_BASIC_CONFIG_H_
#define MATRIX_ROWS 2
#define MATRIX_COLS 2
#define MATRIX_ROWS 4
#define MATRIX_COLS 10
#endif /* TESTS_BASIC_CONFIG_H_ */

43
tests/basic/keymap.c Normal file
View File

@@ -0,0 +1,43 @@
/* Copyright 2017 Fred Sundvik
*
* This program is free software: you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
* the Free Software Foundation, either version 2 of the License, or
* (at your option) any later version.
*
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
*
* You should have received a copy of the GNU General Public License
* along with this program. If not, see <http://www.gnu.org/licenses/>.
*/
#include "quantum.h"
// Don't rearrange keys as existing tests might rely on the order
// Col2, Row 0 has to be KC_NO, because tests rely on it
#define COMBO1 RSFT(LCTL(KC_O))
const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
[0] = {
// 0 1 2 3 4 5 6 7 8 9
{KC_A, KC_B, KC_NO, KC_LSFT, KC_RSFT, KC_LCTL, COMBO1, SFT_T(KC_P), M(0), KC_NO},
{KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO},
{KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO},
{KC_C, KC_D, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO},
},
};
const macro_t *action_get_macro(keyrecord_t *record, uint8_t id, uint8_t opt) {
if (record->event.pressed) {
switch(id) {
case 0:
return MACRO(D(LSFT), T(H), U(LSFT), T(E), T(L), T(L), T(O), T(SPACE), W(100),
D(LSFT), T(W), U(LSFT), I(10), T(O), T(R), T(L), T(D), D(LSFT), T(1), U(LSFT), END);
}
}
return MACRO_NONE;
};

View File

@@ -1,60 +0,0 @@
/* Copyright 2017 Fred Sundvik
*
* This program is free software: you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
* the Free Software Foundation, either version 2 of the License, or
* (at your option) any later version.
*
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
*
* You should have received a copy of the GNU General Public License
* along with this program. If not, see <http://www.gnu.org/licenses/>.
*/
#include "gtest/gtest.h"
#include "gmock/gmock.h"
#include "quantum.h"
#include "test_driver.h"
#include "test_matrix.h"
#include "keyboard_report_util.h"
#include "test_fixture.h"
using testing::_;
using testing::Return;
const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
[0] = {
{KC_A, KC_B},
{KC_C, KC_D}
},
};
class KeyPress : public TestFixture {};
TEST_F(KeyPress, SendKeyboardIsNotCalledWhenNoKeyIsPressed) {
TestDriver driver;
EXPECT_CALL(driver, send_keyboard_mock(_)).Times(0);
keyboard_task();
}
TEST_F(KeyPress, CorrectKeyIsReportedWhenPressed) {
TestDriver driver;
press_key(0, 0);
EXPECT_CALL(driver, send_keyboard_mock(KeyboardReport(KC_A)));
keyboard_task();
}
TEST_F(KeyPress, CorrectKeysAreReportedWhenTwoKeysArePressed) {
TestDriver driver;
press_key(1, 0);
press_key(0, 1);
//Note that QMK only processes one key at a time
EXPECT_CALL(driver, send_keyboard_mock(KeyboardReport(KC_B)));
keyboard_task();
EXPECT_CALL(driver, send_keyboard_mock(KeyboardReport(KC_B, KC_C)));
keyboard_task();
}

View File

@@ -0,0 +1,124 @@
/* Copyright 2017 Fred Sundvik
*
* This program is free software: you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
* the Free Software Foundation, either version 2 of the License, or
* (at your option) any later version.
*
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
*
* You should have received a copy of the GNU General Public License
* along with this program. If not, see <http://www.gnu.org/licenses/>.
*/
#include "test_common.hpp"
using testing::_;
using testing::Return;
class KeyPress : public TestFixture {};
TEST_F(KeyPress, SendKeyboardIsNotCalledWhenNoKeyIsPressed) {
TestDriver driver;
EXPECT_CALL(driver, send_keyboard_mock(_)).Times(0);
keyboard_task();
}
TEST_F(KeyPress, CorrectKeyIsReportedWhenPressed) {
TestDriver driver;
press_key(0, 0);
EXPECT_CALL(driver, send_keyboard_mock(KeyboardReport(KC_A)));
keyboard_task();
release_key(0, 0);
EXPECT_CALL(driver, send_keyboard_mock(KeyboardReport()));
keyboard_task();
}
TEST_F(KeyPress, CorrectKeysAreReportedWhenTwoKeysArePressed) {
TestDriver driver;
press_key(1, 0);
press_key(0, 3);
//Note that QMK only processes one key at a time
//See issue #1476 for more information
EXPECT_CALL(driver, send_keyboard_mock(KeyboardReport(KC_B)));
keyboard_task();
EXPECT_CALL(driver, send_keyboard_mock(KeyboardReport(KC_B, KC_C)));
keyboard_task();
release_key(1, 0);
release_key(0, 3);
//Note that the first key released is the first one in the matrix order
EXPECT_CALL(driver, send_keyboard_mock(KeyboardReport(KC_C)));
keyboard_task();
EXPECT_CALL(driver, send_keyboard_mock(KeyboardReport()));
keyboard_task();
}
TEST_F(KeyPress, ANonMappedKeyDoesNothing) {
TestDriver driver;
press_key(2, 0);
EXPECT_CALL(driver, send_keyboard_mock(_)).Times(0);
keyboard_task();
keyboard_task();
}
TEST_F(KeyPress, LeftShiftIsReportedCorrectly) {
TestDriver driver;
press_key(3, 0);
press_key(0, 0);
// Unfortunately modifiers are also processed in the wrong order
// See issue #1476 for more information
EXPECT_CALL(driver, send_keyboard_mock(KeyboardReport(KC_A)));
keyboard_task();
EXPECT_CALL(driver, send_keyboard_mock(KeyboardReport(KC_A, KC_LSFT)));
keyboard_task();
release_key(0, 0);
EXPECT_CALL(driver, send_keyboard_mock(KeyboardReport(KC_LSFT)));
keyboard_task();
release_key(3, 0);
EXPECT_CALL(driver, send_keyboard_mock(KeyboardReport()));
keyboard_task();
}
TEST_F(KeyPress, PressLeftShiftAndControl) {
TestDriver driver;
press_key(3, 0);
press_key(5, 0);
// Unfortunately modifiers are also processed in the wrong order
// See issue #1476 for more information
EXPECT_CALL(driver, send_keyboard_mock(KeyboardReport(KC_LSFT)));
keyboard_task();
EXPECT_CALL(driver, send_keyboard_mock(KeyboardReport(KC_LSFT, KC_LCTRL)));
keyboard_task();
}
TEST_F(KeyPress, LeftAndRightShiftCanBePressedAtTheSameTime) {
TestDriver driver;
press_key(3, 0);
press_key(4, 0);
// Unfortunately modifiers are also processed in the wrong order
// See issue #1476 for more information
EXPECT_CALL(driver, send_keyboard_mock(KeyboardReport(KC_LSFT)));
keyboard_task();
EXPECT_CALL(driver, send_keyboard_mock(KeyboardReport(KC_LSFT, KC_RSFT)));
keyboard_task();
}
TEST_F(KeyPress, RightShiftLeftControlAndCharWithTheSameKey) {
TestDriver driver;
press_key(6, 0);
// BUG: The press is split into two reports
// BUG: It reports RSFT instead of LSFT
// See issue #524 for more information
// The underlying cause is that we use only one bit to represent the right hand
// modifiers.
EXPECT_CALL(driver, send_keyboard_mock(KeyboardReport(KC_RSFT, KC_RCTRL)));
EXPECT_CALL(driver, send_keyboard_mock(KeyboardReport(KC_RSFT, KC_RCTRL, KC_O)));
keyboard_task();
release_key(6, 0);
EXPECT_CALL(driver, send_keyboard_mock(KeyboardReport(KC_RSFT, KC_RCTRL)));
EXPECT_CALL(driver, send_keyboard_mock(KeyboardReport()));
keyboard_task();
}

View File

@@ -0,0 +1,99 @@
/* Copyright 2017 Fred Sundvik
*
* This program is free software: you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
* the Free Software Foundation, either version 2 of the License, or
* (at your option) any later version.
*
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
*
* You should have received a copy of the GNU General Public License
* along with this program. If not, see <http://www.gnu.org/licenses/>.
*/
#include "test_common.hpp"
#include "time.h"
using testing::InSequence;
using testing::InvokeWithoutArgs;
class Macro : public TestFixture {};
#define AT_TIME(t) WillOnce(InvokeWithoutArgs([current_time]() {EXPECT_EQ(timer_elapsed32(current_time), t);}))
TEST_F(Macro, PlayASimpleMacro) {
TestDriver driver;
InSequence s;
press_key(8, 0);
uint32_t current_time = timer_read32();
EXPECT_CALL(driver, send_keyboard_mock(KeyboardReport(KC_LSFT)))
.AT_TIME(0);
EXPECT_CALL(driver, send_keyboard_mock(KeyboardReport(KC_LSFT, KC_H)))
.AT_TIME(0);
EXPECT_CALL(driver, send_keyboard_mock(KeyboardReport(KC_LSFT)))
.AT_TIME(0);
EXPECT_CALL(driver, send_keyboard_mock(KeyboardReport()))
.AT_TIME(0);
EXPECT_CALL(driver, send_keyboard_mock(KeyboardReport(KC_E)))
.AT_TIME(0);
// The macro system could actually skip these empty keyboard reports
// it should be enough to just send a report with the next key down
EXPECT_CALL(driver, send_keyboard_mock(KeyboardReport()))
.AT_TIME(0);
EXPECT_CALL(driver, send_keyboard_mock(KeyboardReport(KC_L)))
.AT_TIME(0);
EXPECT_CALL(driver, send_keyboard_mock(KeyboardReport()))
.AT_TIME(0);
EXPECT_CALL(driver, send_keyboard_mock(KeyboardReport(KC_L)))
.AT_TIME(0);
EXPECT_CALL(driver, send_keyboard_mock(KeyboardReport()))
.AT_TIME(0);
EXPECT_CALL(driver, send_keyboard_mock(KeyboardReport(KC_O)))
.AT_TIME(0);
EXPECT_CALL(driver, send_keyboard_mock(KeyboardReport()))
.AT_TIME(0);
EXPECT_CALL(driver, send_keyboard_mock(KeyboardReport(KC_SPACE)))
.AT_TIME(0);
EXPECT_CALL(driver, send_keyboard_mock(KeyboardReport()))
.AT_TIME(0);
EXPECT_CALL(driver, send_keyboard_mock(KeyboardReport(KC_LSFT)))
.AT_TIME(100);
EXPECT_CALL(driver, send_keyboard_mock(KeyboardReport(KC_LSFT, KC_W)))
.AT_TIME(100);
EXPECT_CALL(driver, send_keyboard_mock(KeyboardReport(KC_LSFT)))
.AT_TIME(100);
EXPECT_CALL(driver, send_keyboard_mock(KeyboardReport()))
.AT_TIME(100);
EXPECT_CALL(driver, send_keyboard_mock(KeyboardReport(KC_O)))
// BUG: The timer should not really have advanced 10 ms here
// See issue #1477
.AT_TIME(110);
EXPECT_CALL(driver, send_keyboard_mock(KeyboardReport()))
// BUG: The timer should not advance on both keydown and key-up
// See issue #1477
.AT_TIME(120);
EXPECT_CALL(driver, send_keyboard_mock(KeyboardReport(KC_R)))
.AT_TIME(130);
EXPECT_CALL(driver, send_keyboard_mock(KeyboardReport()))
.AT_TIME(140);
EXPECT_CALL(driver, send_keyboard_mock(KeyboardReport(KC_L)))
.AT_TIME(150);
EXPECT_CALL(driver, send_keyboard_mock(KeyboardReport()))
.AT_TIME(160);
EXPECT_CALL(driver, send_keyboard_mock(KeyboardReport(KC_D)))
.AT_TIME(170);
EXPECT_CALL(driver, send_keyboard_mock(KeyboardReport()))
.AT_TIME(180);
EXPECT_CALL(driver, send_keyboard_mock(KeyboardReport(KC_LSFT)))
.AT_TIME(190);
EXPECT_CALL(driver, send_keyboard_mock(KeyboardReport(KC_LSFT, KC_1)))
.AT_TIME(200);
EXPECT_CALL(driver, send_keyboard_mock(KeyboardReport(KC_LSFT)))
.AT_TIME(210);
EXPECT_CALL(driver, send_keyboard_mock(KeyboardReport()))
.AT_TIME(220);
run_one_scan_loop();
}

View File

@@ -0,0 +1,97 @@
/* Copyright 2017 Fred Sundvik
*
* This program is free software: you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
* the Free Software Foundation, either version 2 of the License, or
* (at your option) any later version.
*
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
*
* You should have received a copy of the GNU General Public License
* along with this program. If not, see <http://www.gnu.org/licenses/>.
*/
#include "test_common.hpp"
#include "action_tapping.h"
using testing::_;
using testing::InSequence;
class Tapping : public TestFixture {};
TEST_F(Tapping, TapA_SHFT_T_KeyReportsKey) {
TestDriver driver;
InSequence s;
press_key(7, 0);
// Tapping keys does nothing on press
EXPECT_CALL(driver, send_keyboard_mock(_)).Times(0);
run_one_scan_loop();
release_key(7, 0);
// First we get the key press
EXPECT_CALL(driver, send_keyboard_mock(KeyboardReport(KC_P)));
// Then the release
EXPECT_CALL(driver, send_keyboard_mock(KeyboardReport()));
run_one_scan_loop();
}
TEST_F(Tapping, HoldA_SHFT_T_KeyReportsShift) {
TestDriver driver;
InSequence s;
press_key(7, 0);
// Tapping keys does nothing on press
EXPECT_CALL(driver, send_keyboard_mock(_)).Times(0);
idle_for(TAPPING_TERM);
EXPECT_CALL(driver, send_keyboard_mock(KeyboardReport(KC_LSFT)));
run_one_scan_loop();
}
TEST_F(Tapping, ANewTapWithinTappingTermIsBuggy) {
// See issue #1478 for more information
TestDriver driver;
InSequence s;
press_key(7, 0);
// Tapping keys does nothing on press
EXPECT_CALL(driver, send_keyboard_mock(_)).Times(0);
run_one_scan_loop();
release_key(7, 0);
// First we get the key press
EXPECT_CALL(driver, send_keyboard_mock(KeyboardReport(KC_P)));
// Then the release
EXPECT_CALL(driver, send_keyboard_mock(KeyboardReport()));
run_one_scan_loop();
// This sends KC_P, even if it should do nothing
press_key(7, 0);
// This test should not succed if everything works correctly
EXPECT_CALL(driver, send_keyboard_mock(KeyboardReport(KC_P)));
run_one_scan_loop();
release_key(7, 0);
EXPECT_CALL(driver, send_keyboard_mock(KeyboardReport()));
idle_for(TAPPING_TERM + 1);
// On the other hand, nothing is sent if we are outside the tapping term
press_key(7, 0);
EXPECT_CALL(driver, send_keyboard_mock(_)).Times(0);
run_one_scan_loop();
release_key(7, 0);
// First we get the key press
EXPECT_CALL(driver, send_keyboard_mock(KeyboardReport(KC_P)));
// Then the release
EXPECT_CALL(driver, send_keyboard_mock(KeyboardReport()));
idle_for(TAPPING_TERM + 1);
// Now we are geting into strange territory, as the hold registers too early here
// But the stranges part is:
// If TAPPING_TERM + 1 above is changed to TAPPING_TERM or TAPPING_TERM + 2 it doesn't
press_key(7, 0);
// Shouldn't be called here really
EXPECT_CALL(driver, send_keyboard_mock(KeyboardReport(KC_LSFT))).Times(1);
idle_for(TAPPING_TERM);
}

View File

@@ -14,7 +14,7 @@
* along with this program. If not, see <http://www.gnu.org/licenses/>.
*/
#include "keyboard_report_util.h"
#include "keyboard_report_util.hpp"
#include <vector>
#include <algorithm>
using namespace testing;
@@ -47,19 +47,25 @@ bool operator==(const report_keyboard_t& lhs, const report_keyboard_t& rhs) {
std::ostream& operator<<(std::ostream& stream, const report_keyboard_t& value) {
stream << "Keyboard report:" << std::endl;
stream << "Mods: " << value.mods << std::endl;
stream << "Mods: " << (uint32_t)value.mods << std::endl;
stream << "Keys: ";
// TODO: This should probably print friendly names for the keys
for (uint32_t k: get_keys(value)) {
stream << k << std::endl;
stream << k << " ";
}
stream << std::endl;
return stream;
}
KeyboardReportMatcher::KeyboardReportMatcher(const std::vector<uint8_t>& keys) {
// TODO: Support modifiers
memset(m_report.raw, 0, sizeof(m_report.raw));
for (auto k: keys) {
add_key_to_report(&m_report, k);
if (IS_MOD(k)) {
m_report.mods |= MOD_BIT(k);
}
else {
add_key_to_report(&m_report, k);
}
}
}

View File

@@ -0,0 +1,24 @@
/* Copyright 2017 Fred Sundvik
*
* This program is free software: you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
* the Free Software Foundation, either version 2 of the License, or
* (at your option) any later version.
*
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
*
* You should have received a copy of the GNU General Public License
* along with this program. If not, see <http://www.gnu.org/licenses/>.
*/
#include "gtest/gtest.h"
#include "gmock/gmock.h"
#include "quantum.h"
#include "test_driver.hpp"
#include "test_matrix.h"
#include "keyboard_report_util.hpp"
#include "test_fixture.hpp"

View File

@@ -14,7 +14,7 @@
* along with this program. If not, see <http://www.gnu.org/licenses/>.
*/
#include "test_driver.h"
#include "test_driver.hpp"
TestDriver* TestDriver::m_this = nullptr;

View File

@@ -20,7 +20,7 @@
#include "gmock/gmock.h"
#include <stdint.h>
#include "host.h"
#include "keyboard_report_util.h"
#include "keyboard_report_util.hpp"
class TestDriver {

View File

@@ -1,8 +1,15 @@
#include "test_fixture.h"
#include "test_fixture.hpp"
#include "gmock/gmock.h"
#include "test_driver.h"
#include "test_driver.hpp"
#include "test_matrix.h"
#include "keyboard.h"
#include "action.h"
#include "action_tapping.h"
extern "C" {
void set_time(uint32_t t);
void advance_time(uint32_t ms);
}
using testing::_;
using testing::AnyNumber;
@@ -25,12 +32,20 @@ TestFixture::~TestFixture() {
TestDriver driver;
clear_all_keys();
// Run for a while to make sure all keys are completely released
// Should probably wait until tapping term etc, has timed out
EXPECT_CALL(driver, send_keyboard_mock(_)).Times(AnyNumber());
for (int i=0; i<100; i++) {
keyboard_task();
}
idle_for(TAPPING_TERM + 10);
testing::Mock::VerifyAndClearExpectations(&driver);
// Verify that the matrix really is cleared
EXPECT_CALL(driver, send_keyboard_mock(KeyboardReport())).Times(Between(0, 1));
}
void TestFixture::run_one_scan_loop() {
keyboard_task();
advance_time(1);
}
void TestFixture::idle_for(uint time) {
for (uint i=0; i<time; i++) {
run_one_scan_loop();
}
}

View File

@@ -25,4 +25,6 @@ public:
static void SetUpTestCase();
static void TearDownTestCase();
void run_one_scan_loop();
void idle_for(uint ms);
};

View File

@@ -16,15 +16,20 @@
#include "timer.h"
// TODO: the timer should work, but at a much faster rate than realtime
// It should also have some kind of integration with the testing system
static uint32_t current_time = 0;
void timer_init(void) {}
void timer_init(void) {current_time = 0;}
void timer_clear(void) {}
void timer_clear(void) {current_time = 0;}
uint16_t timer_read(void) { return 0; }
uint32_t timer_read32(void) { return 0; }
uint16_t timer_elapsed(uint16_t last) { return 0; }
uint32_t timer_elapsed32(uint32_t last) { return 0; }
uint16_t timer_read(void) { return current_time & 0xFFFF; }
uint32_t timer_read32(void) { return current_time; }
uint16_t timer_elapsed(uint16_t last) { return TIMER_DIFF_16(timer_read(), last); }
uint32_t timer_elapsed32(uint32_t last) { return TIMER_DIFF_32(timer_read32(), last); }
void set_time(uint32_t t) { current_time = t; }
void advance_time(uint32_t ms) { current_time += ms; }
void wait_ms(uint32_t ms) {
advance_time(ms);
}

View File

@@ -1,6 +1,8 @@
#ifndef WAIT_H
#define WAIT_H
#include <inttypes.h>
#ifdef __cplusplus
extern "C" {
#endif
@@ -16,8 +18,8 @@ extern "C" {
#elif defined(__arm__)
# include "wait_api.h"
#else // Unit tests
#define wait_ms(ms)
#define wait_us(us)
void wait_ms(uint32_t ms);
#define wait_us(us) wait_ms(us / 1000)
#endif
#ifdef __cplusplus