A version of the PS/2 library customized for MbedConsole. Also includes a few things that make it's behavior easier to control and a few bug fixes.

Dependents:   MbedConsole

Fork of PS2 by Shinichiro Nakamura

Committer:
earlz
Date:
Fri Sep 28 04:03:35 2012 +0000
Revision:
5:ead90ca02b18
Parent:
1:823c2798e398
Changed interrupt priority and initialization to use keyboard defaults

Who changed what in which revision?

UserRevisionLine numberNew contents of line
shintamainjp 1:823c2798e398 1 /**
shintamainjp 1:823c2798e398 2 * PS/2 keyboard interface control class (Version 0.0.1)
shintamainjp 1:823c2798e398 3 *
shintamainjp 1:823c2798e398 4 * Copyright (C) 2010 Shinichiro Nakamura (CuBeatSystems)
shintamainjp 1:823c2798e398 5 * http://shinta.main.jp/
shintamainjp 1:823c2798e398 6 */
shintamainjp 1:823c2798e398 7 #ifndef _PS2_KEYBOARD_H_
shintamainjp 1:823c2798e398 8 #define _PS2_KEYBOARD_H_
shintamainjp 1:823c2798e398 9
shintamainjp 1:823c2798e398 10 #include "PS2KB_INIT.h"
shintamainjp 1:823c2798e398 11 #include "PS2KB.h"
shintamainjp 1:823c2798e398 12
shintamainjp 1:823c2798e398 13 class PS2Keyboard {
shintamainjp 1:823c2798e398 14 public:
shintamainjp 1:823c2798e398 15 PS2Keyboard(PinName clk_pin, PinName dat_pin);
shintamainjp 1:823c2798e398 16 ~PS2Keyboard();
shintamainjp 1:823c2798e398 17 typedef enum {
shintamainjp 1:823c2798e398 18 KeyMake,
shintamainjp 1:823c2798e398 19 KeyBreak
shintamainjp 1:823c2798e398 20 } Type;
shintamainjp 1:823c2798e398 21 typedef struct {
shintamainjp 1:823c2798e398 22 Type type;
shintamainjp 1:823c2798e398 23 int length;
shintamainjp 1:823c2798e398 24 char scancode[8];
shintamainjp 1:823c2798e398 25 } keyboard_event_t;
shintamainjp 1:823c2798e398 26 bool processing(keyboard_event_t *p);
shintamainjp 1:823c2798e398 27 private:
shintamainjp 1:823c2798e398 28 PS2KB_INIT ps2kb_init;
shintamainjp 1:823c2798e398 29 PS2KB ps2kb;
shintamainjp 1:823c2798e398 30 int count;
shintamainjp 1:823c2798e398 31 char scancode[8];
shintamainjp 1:823c2798e398 32 };
shintamainjp 1:823c2798e398 33
shintamainjp 1:823c2798e398 34 #endif