|
- /* PS2Keyboard library example
-
- PS2Keyboard now requries both pins specified for begin()
-
- keyboard.begin(data_pin, irq_pin);
-
- Valid irq pins:
- Arduino Uno: 2, 3
- Arduino Due: All pins, except 13 (LED)
- Arduino Mega: 2, 3, 18, 19, 20, 21
- Teensy 3.0: All pins, except 13 (LED)
- Teensy 2.0: 5, 6, 7, 8
- Teensy 1.0: 0, 1, 2, 3, 4, 6, 7, 16
- Teensy++ 2.0: 0, 1, 2, 3, 18, 19, 36, 37
- Teensy++ 1.0: 0, 1, 2, 3, 18, 19, 36, 37
- Sanguino: 2, 10, 11
-
- for more information you can read the original wiki in arduino.cc
- at http://www.arduino.cc/playground/Main/PS2Keyboard
- or http://www.pjrc.com/teensy/td_libs_PS2Keyboard.html
-
- Like the Original library and example this is under LGPL license.
-
- Modified by Cuninganreset@gmail.com on 2010-03-22
- Modified by Paul Stoffregen <paul@pjrc.com> June 2010
- */
-
- #include <PS2Keyboard.h>
-
- const int DataPin = 8;
- const int IRQpin = 5;
-
- PS2Keyboard keyboard;
-
- void setup() {
- delay(1000);
- keyboard.begin(DataPin, IRQpin);
- Serial.begin(9600);
- Serial.println("Keyboard Test:");
- }
-
- void loop() {
- if (keyboard.available()) {
-
- // read the next key
- char c = keyboard.read();
-
- // check for some of the special keys
- if (c == PS2_ENTER) {
- Serial.println();
- } else if (c == PS2_TAB) {
- Serial.print("[Tab]");
- } else if (c == PS2_ESC) {
- Serial.print("[ESC]");
- } else if (c == PS2_PAGEDOWN) {
- Serial.print("[PgDn]");
- } else if (c == PS2_PAGEUP) {
- Serial.print("[PgUp]");
- } else if (c == PS2_LEFTARROW) {
- Serial.print("[Left]");
- } else if (c == PS2_RIGHTARROW) {
- Serial.print("[Right]");
- } else if (c == PS2_UPARROW) {
- Serial.print("[Up]");
- } else if (c == PS2_DOWNARROW) {
- Serial.print("[Down]");
- } else if (c == PS2_DELETE) {
- Serial.print("[Del]");
- } else {
-
- // otherwise, just print all normal characters
- Serial.print(c);
- }
- }
- }
|