A library to control a 4x3 matrix style keypad.

Keypad

A basic library to read in pushbutton presses from the Sparkfun Keypad - 12 Button.

The product site and documentation for the keypad is here. https://www.sparkfun.com/products/8653

Committer:
mitchpang
Date:
Wed Mar 11 14:50:03 2015 +0000
Revision:
0:fef7520ff0a6
test1

Who changed what in which revision?

UserRevisionLine numberNew contents of line
mitchpang 0:fef7520ff0a6 1 #ifndef MBED_SPFUN_KEYPAD_H
mitchpang 0:fef7520ff0a6 2 #define MBED_SPFUN_KEYPAD_H
mitchpang 0:fef7520ff0a6 3
mitchpang 0:fef7520ff0a6 4 #include "mbed.h"
mitchpang 0:fef7520ff0a6 5
mitchpang 0:fef7520ff0a6 6 class Keypad
mitchpang 0:fef7520ff0a6 7 {
mitchpang 0:fef7520ff0a6 8 private: // private member functions
mitchpang 0:fef7520ff0a6 9 int getColHit();
mitchpang 0:fef7520ff0a6 10 int getRowHit();
mitchpang 0:fef7520ff0a6 11 char decode();
mitchpang 0:fef7520ff0a6 12 void tristate_all();
mitchpang 0:fef7520ff0a6 13 int log2(int num);
mitchpang 0:fef7520ff0a6 14 public:
mitchpang 0:fef7520ff0a6 15
mitchpang 0:fef7520ff0a6 16 /** Create an ID12 RFID interface, connected to the specified Serial rx port
mitchpang 0:fef7520ff0a6 17 *
mitchpang 0:fef7520ff0a6 18 * @param rx Recieve pin
mitchpang 0:fef7520ff0a6 19 */
mitchpang 0:fef7520ff0a6 20 Keypad(PinName row1, PinName row2, PinName row3, PinName row4, PinName col1, PinName col2, PinName col3);
mitchpang 0:fef7520ff0a6 21
mitchpang 0:fef7520ff0a6 22 int getKey();
mitchpang 0:fef7520ff0a6 23 int isNewAndPressed();
mitchpang 0:fef7520ff0a6 24
mitchpang 0:fef7520ff0a6 25 private:
mitchpang 0:fef7520ff0a6 26 BusInOut rows;
mitchpang 0:fef7520ff0a6 27 BusInOut cols;
mitchpang 0:fef7520ff0a6 28 char last_key_hit;
mitchpang 0:fef7520ff0a6 29 int row_hit;
mitchpang 0:fef7520ff0a6 30 int col_hit;
mitchpang 0:fef7520ff0a6 31
mitchpang 0:fef7520ff0a6 32 };
mitchpang 0:fef7520ff0a6 33 #endif