mirror of
https://github.com/arduino/Arduino.git
synced 2024-12-04 15:24:12 +01:00
68e5047736
Renamed Leonardo Only examples folder to USB. Modified keyboard and Mouse examples to indicate Due compatibility. Minor modifications to Due examples to conform with existing example sketches. Added keywords to for Audio, Scheduer, and USBHost libraries.
84 lines
1.6 KiB
C++
84 lines
1.6 KiB
C++
/*
|
|
Keyboard Controller Example
|
|
|
|
Shows the output of a USB Keyboard connected to
|
|
the Native USB port on an Arduino Due Board.
|
|
|
|
created 8 Oct 2012
|
|
by Cristian Maglie
|
|
|
|
http://arduino.cc/en/Tutorial/KeyboardController
|
|
|
|
This samlple code is part of the public domain.
|
|
*/
|
|
|
|
|
|
// Require keyboard control library
|
|
#include <KeyboardController.h>
|
|
|
|
// Initialize USB Controller
|
|
USBHost usb;
|
|
|
|
// Attach keyboard controller to USB
|
|
KeyboardController keyboard(usb);
|
|
|
|
// This function intercepts key press
|
|
void keyPressed() {
|
|
Serial.print("Pressed: ");
|
|
printKey();
|
|
}
|
|
|
|
// This function intercepts key release
|
|
void keyReleased() {
|
|
Serial.print("Released: ");
|
|
printKey();
|
|
}
|
|
|
|
void printKey() {
|
|
// getOemKey() returns the OEM-code associated with the key
|
|
Serial.print(" key:");
|
|
Serial.print(keyboard.getOemKey());
|
|
|
|
// getModifiers() returns a bits field with the modifiers-keys
|
|
int mod = keyboard.getModifiers();
|
|
Serial.print(" mod:");
|
|
Serial.print(mod);
|
|
|
|
Serial.print(" => ");
|
|
|
|
if (mod & LeftCtrl)
|
|
Serial.print("L-Ctrl ");
|
|
if (mod & LeftShift)
|
|
Serial.print("L-Shift ");
|
|
if (mod & Alt)
|
|
Serial.print("Alt ");
|
|
if (mod & LeftCmd)
|
|
Serial.print("L-Cmd ");
|
|
if (mod & RightCtrl)
|
|
Serial.print("R-Ctrl ");
|
|
if (mod & RightShift)
|
|
Serial.print("R-Shift ");
|
|
if (mod & AltGr)
|
|
Serial.print("AltGr ");
|
|
if (mod & RightCmd)
|
|
Serial.print("R-Cmd ");
|
|
|
|
// getKey() returns the ASCII translation of OEM key
|
|
// combined with modifiers.
|
|
Serial.write(keyboard.getKey());
|
|
Serial.println();
|
|
}
|
|
|
|
void setup()
|
|
{
|
|
Serial.begin(9600);
|
|
Serial.println("Program started");
|
|
delay(200);
|
|
}
|
|
|
|
void loop()
|
|
{
|
|
// Process USB tasks
|
|
usb.Task();
|
|
}
|