diff options
| author | Dean <Dean@d5102386-fcda-11dd-9fdb-3debd5008f28> | 2009-10-08 08:46:27 +0000 |
|---|---|---|
| committer | Dean <Dean@d5102386-fcda-11dd-9fdb-3debd5008f28> | 2009-10-08 08:46:27 +0000 |
| commit | 796b39cc16f9bd784cbbb8d85613a5965da7d6e5 (patch) | |
| tree | daec9cabab609050e8f7f693a1ee41253e03c009 /Demos/Host/LowLevel/KeyboardHost | |
| parent | fc6669c1af3f3b740cdee1f76ebd506807ec62d1 (diff) | |
Add new MIDI Host Class driver to the library, and new MIDIHost ClassDriver demo.
Make MouseHost and KeyboardHost ClassDriver demos use the HID Class driver's structures for the boot protocol Mouse/Keyboard report data, rather than rolling their own.
git-svn-id: http://lufa-lib.googlecode.com/svn/trunk@863 d5102386-fcda-11dd-9fdb-3debd5008f28
Diffstat (limited to 'Demos/Host/LowLevel/KeyboardHost')
| -rw-r--r-- | Demos/Host/LowLevel/KeyboardHost/KeyboardHost.c | 12 | ||||
| -rw-r--r-- | Demos/Host/LowLevel/KeyboardHost/KeyboardHost.h | 10 |
2 files changed, 7 insertions, 15 deletions
diff --git a/Demos/Host/LowLevel/KeyboardHost/KeyboardHost.c b/Demos/Host/LowLevel/KeyboardHost/KeyboardHost.c index 258ccbc5..1d8a06ee 100644 --- a/Demos/Host/LowLevel/KeyboardHost/KeyboardHost.c +++ b/Demos/Host/LowLevel/KeyboardHost/KeyboardHost.c @@ -161,13 +161,13 @@ void ReadNextReport(void) char PressedKey = 0;
/* Retrieve pressed key character if alphanumeric */
- if ((KeyboardReport.KeyCode >= 0x04) && (KeyboardReport.KeyCode <= 0x1D))
- PressedKey = (KeyboardReport.KeyCode - 0x04) + 'A';
- else if ((KeyboardReport.KeyCode >= 0x1E) && (KeyboardReport.KeyCode <= 0x27))
- PressedKey = (KeyboardReport.KeyCode - 0x1E) + '0';
- else if (KeyboardReport.KeyCode == 0x2C)
+ if ((KeyboardReport.KeyCode[0] >= 0x04) && (KeyboardReport.KeyCode[0] <= 0x1D))
+ PressedKey = (KeyboardReport.KeyCode[0] - 0x04) + 'A';
+ else if ((KeyboardReport.KeyCode[0] >= 0x1E) && (KeyboardReport.KeyCode[0] <= 0x27))
+ PressedKey = (KeyboardReport.KeyCode[0] - 0x1E) + '0';
+ else if (KeyboardReport.KeyCode[0] == 0x2C)
PressedKey = ' ';
- else if (KeyboardReport.KeyCode == 0x28)
+ else if (KeyboardReport.KeyCode[0] == 0x28)
PressedKey = '\n';
/* Print the pressed key character out through the serial port if valid */
diff --git a/Demos/Host/LowLevel/KeyboardHost/KeyboardHost.h b/Demos/Host/LowLevel/KeyboardHost/KeyboardHost.h index aed6ca62..4c4356d3 100644 --- a/Demos/Host/LowLevel/KeyboardHost/KeyboardHost.h +++ b/Demos/Host/LowLevel/KeyboardHost/KeyboardHost.h @@ -47,6 +47,7 @@ #include <LUFA/Version.h>
#include <LUFA/Drivers/Misc/TerminalCodes.h>
#include <LUFA/Drivers/USB/USB.h>
+ #include <LUFA/Drivers/USB/Class/HID.h>
#include <LUFA/Drivers/Peripheral/SerialStream.h>
#include <LUFA/Drivers/Board/LEDs.h>
@@ -71,15 +72,6 @@ /** LED mask for the library LED driver, to indicate that an error has occurred in the USB interface. */
#define LEDMASK_USB_ERROR (LEDS_LED1 | LEDS_LED3)
- /* Type Defines: */
- /** Type define for a standard Boot Protocol Keyboard report */
- typedef struct
- {
- uint8_t Modifier; /**< Keyboard modifier byte, indicating pressed modifier keys (such as Shift, Control, etc.) */
- uint8_t RESERVED; /**< Reserved for OEM use, always set to 0 */
- uint8_t KeyCode; /**< Key code of the currently pressed key */
- } USB_KeyboardReport_Data_t;
-
/* Function Prototypes: */
void Keyboard_HID_Task(void);
void SetupHardware(void);
|
