Search wiring.org.co:

This example is for Wiring version 1.0 build 0100+. If you have a previous version, use the examples included with your software. If you see any errors or have comments, please let us know.

CustomKeypad by BREVIG http://alexanderbrevig.com
*** THE KEYPAD REQUIRES PULL-UP RESISTORS ON THE ROW PINS. *** This defines a custom keypad and enable you to enter hexadecimal values

    #include <Keypad.h>

    const byte ROWS = 4; //four rows
    const byte COLS = 4; //four columns
    //define the cymbols on the buttons of the keypads
    char hexaKeys[ROWS][COLS] = {
      {'0','1','2','3'},
      {'4','5','6','7'},
      {'8','9','A','B'},
      {'C','D','E','F'}
    };
    byte rowPins[ROWS] = {3, 2, 1, 0}; //connect to the row pinouts of the keypad
    byte colPins[COLS] = {7, 6, 5, 4}; //connect to the column pinouts of the keypad

    //initialize an instance of class NewKeypad
    Keypad cusomKeypad = Keypad( makeKeymap(hexaKeys), rowPins, colPins, ROWS, COLS);

    void setup(){
      Serial.begin(9600);
    }

    void loop(){
      char customKey = cusomKeypad.getKey();

      if (customKey != NO_KEY){
        Serial.println(customKey);
      }
    }