Arduino – Pripojenie PS2 klávesnice

Follow me

Marv Marvelous

http://www.grafovision.sk
Follow me

Na pripojenie klávesnice a arduina potrebujeme 4 vodiče.

Dva na napájanie(+5V a 0V) a dva na komunikáciu(DATA,CLK).

ps2

 

Výsledok vyhľadávania obrázkov pre dopyt keyboard ps2

CLOCK -CLK treba pripojiť na arduino D3 a DATA na D2.

Ak budeme využívať aj vstup aj výstup, napríklad ako datalogger použijeme D3 a D4 napr a D2 a D5. Arduino AT328P má len 2 prerušenia a to D2 a D3 piny.

knižnica je tu:

https://github.com/yosemitebandit/PS2Keyboard

Program je tu: ako priklad

#include < PS2Keyboard.h>

const int DataPin = 8; const int IRQpin = 3;

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); } } }

Marv Marvelous

Zanechať odpoveď