Keypad port chapter 9, Keypad port pin out - j5, Commands – Remote Processing RPC-2350 User Manual
Page 51
KEYPAD PORT
CHAPTER 9
9-2
The following example sets up CAM BASIC to scan a 16
position keypa d. P orts A a nd B are set fo r outputs
(presumably to drive the LCD display and high current
port) The results are echo' ed to the display.
10 CONFIG PIO 1,0,0,1,0,64
20 'Optionally change keypad char 'B'
30 ' to the letter 'M'
40 POKE SYS(8)+7,77
60 ON KEYPAD$ 16 GOSUB 500
70 PRINT " Enter a number";
100 'loop for this example
110 GOTO 100
500 A$ = KEYPAD$(0)
510 IF A$ = "C" THEN ..clear_beep
520 IF A$ = CHR$(13) THEN ..enter
530 PRINT A$;
540 B$ = B$+A$
560 RETURN
600 ..clear_beep
610 B$=""
630 DELAY .4
650 PRINT CHR$(12); “ ” CAR$(12);
660 RETURN
700 ..enter
710 FL = 1
730 RETURN
Program Explanation
Lines 10-80 set up the parameters for the keypad.
Lines 500 to 730 process the key press. If a "C " or " #"
is pressed, it is an exception and is handled that way.
Otherwise, the character is displayed and stored.
Lines 700 to 730 process the "enter" key. The enter
flag, FL , is set to a 1 to indicate to another part of the
program that B$ has complete data.
The KEYPA D$(0) function returns a single character
string that has been assigned to a particular key.
Char acters ar e assigned usin g the SYS(8 ) statemen t.
Keypad Commands
There are several keypad commands. See the table at
the end of this chapter.
KEYPAD PORT PIN OUT - J5
The keypad port uses port C from an 82C55. Lower
port C is configured as an input. Upper port C are
outputs.
The table b elow lists J5' s pin out, 82C55 p ort and bit,
and its intended function.
Pin
82C55
Port/bit @ U19
Function
1
C / 0
Row 1
2
C / 6
Column 3
3
C / 5
Column 2
4
C / 1
Row 2
5
C / 2
Row 3
6
C / 4
Column 1
7
C / 7
Column 4
8
C / 3
Row 4
9
B/0
Column 5
10
B/1
Column 6
Ground is not used.
COMMANDS
The following is a list of CAMBASIC com mands for the
keypad.
Command
Function
CON FIG PIO
Configures digital I/O port
I N P U T KE Y P A D $
Input data from a keypad
KEYPA D$(n)
Returns last key from keypad
port.
ON KE YPAD $ 16
ON KE YPAD $ 24
Causes a program branch
when a key is pressed
SYS(8)
Returns keypad string address
to modify char acters.