User manual

mikroBasic PRO for dsPIC30/33 and PIC24
MikroElektronika
373
Library Example
The following code can be used for testing the keypad. It is written for keypad_4x3 or _4x4. The code returned by the
keypad functions (1..16) is transformed into ASCII codes [0..9,A..F], and then sent via UART1.
Copy Code To Clipboard
program Keypad_Test
dim kp, oldstate as byte
txt as char[6]
‘ Keypad module connections
dim keypadPort as word at PORTB
dim keypadPort_Direction as word at TRISB
‘ End Keypad module connections
main:
ADPCFG = 0xFFFF
oldstate = 0
UART1_Init(9600)
Delay_ms(100)
Keypad_Init() ‘ Initialize Keypad
UART1_Write_Text(“Press any key on your kaypad...”)
UART1_Write(10)
UART1_Write(13)
while TRUE
kp = 0 ‘ Reset key code variable
‘ Wait for key to be pressed and released
while ( kp = 0 )
kp = Keypad_Key_Click() ‘ Store key code in kp variable
wend
‘ Prepare value for output, transform key to it’s ASCII value
select case kp
case 10
‘ kp = 42 ‘ “*” ‘ Uncomment this block for keypad4x3
case 11
‘ kp = 48 ‘ “0”
case 12
‘ kp = 35 ‘ “#”
case else
‘ kp = kp + 48
case 1
kp = 49 ‘ 1 ‘ Uncomment this block for keypad4x4
case 2
kp = 50 ‘ 2
case 3
kp = 51 ‘ 3
case 4
kp = 65 ‘ A
case 5
kp = 52 ‘ 4
case 6
kp = 53 ‘ 5