Difference between revisions of "Universal 4x4 keypad"
From ScienceZero
m (Versatile keypad moved to Universal 4x4 keypad) |
|||
Line 1: | Line 1: | ||
[[Image:Hexkeypad.png|thumb|400px|right|Versatile keypad]] | [[Image:Hexkeypad.png|thumb|400px|right|Versatile keypad]] | ||
− | The | + | The universal 4x4 keypad uses a PIC16C84 or compatible running at 4 MHz to transmit keycodes from a standard matrix keypad over a selectable interface. |
==Keypads== | ==Keypads== |
Revision as of 02:54, 2 April 2009
The universal 4x4 keypad uses a PIC16C84 or compatible running at 4 MHz to transmit keycodes from a standard matrix keypad over a selectable interface.
Contents
Keypads
3 predefined keypads, one user definable. Selectable decimal, ASCII or key number output.
Telephone Calculator User defined (default content) 1 2 3 A 7 8 9 + 7 8 9 / 4 5 6 B 4 5 6 - 4 5 6 * 7 8 9 C 1 2 3 * 1 2 3 - * 0 # D 0 . E / C 0 = +
Interfaces
- RS-232
- 16 to 43 478 Baud
- Data out and inverted data out for generating standard RS-232 voltages with no external components by using one data output as a virtual ground.
- SPI
- 83.33 kHz clock with enable.
- Parallel
- 4 bit parallel output of key number with 64 µs enable.
- MIDI
Misc
- Selectable beep/LED
Configuration mode
Hold down a key when turning on to enter configuration mode.
- Press 1 to identify keyboard type or key number two for user defined map
- 1 Initialise EEPROM to default settings
- 2 Beep On/Off (1|0)
- 3 Baudrate (00016-43478)
- 4 Character map (RAW=1 | Telephone=2 | Calculator=3 | User defined=4)
- 5 Character type (Decimal=1, ASCII=2)
- 6 Interface (RS-232=1 | SPI=2 | Parallel=3 | MIDI=4 | I2C=5(Not done) | 1Wire=6(Not done) | PS2=7(Not done) | OFF=8)
- 7 Define keys (key then 000-255)
- Any other key to exit configuration mode
Default settings
- Interface - RS-232, 1200 Baud, 8N1
- Keymap - Telephone
- Type - ASCII
- Beep - On
Pin assignment
- RB0-3 = Keyboard row output/Parallel data output
- RB4-7 = Keyboard column input
- RA0 = DATA (RS-232, SPI, MIDI)
- RA1 = CLOCK (SPI), /DATA (RS-232)
- RA2 = ENABLE (SPI, Parallel)
- RA3 = Beeper/LED
- RA4 = Not connected
Connection diagram for keypad
If the keypad is 3 keys wide; leave RB7 disconnected.
RB0---X---X---X---X-- | | | | RB1---X---X---X---X-- | | | | RB2---X---X---X---X-- | | | | RB3---X---X---X---X-- | | | | RB4 RB5 RB6 RB7
Source code and HEX file
- Still testing... E-mail if interested.