class library for a TS Keyboard, then press enter and the values are stored and the keypad disappears.

Fork of F7_TSKeypad_MultiKey by Armand Coetzer

Committer:
Armand
Date:
Tue Jun 20 11:58:10 2017 +0000
Revision:
1:a236c0568cdf
Child:
2:c5532af8da08
F7_TSKeyboard

Who changed what in which revision?

UserRevisionLine numberNew contents of line
Armand 1:a236c0568cdf 1 #include "F7_TSKeyboard.h"
Armand 1:a236c0568cdf 2 #include "mbed.h"
Armand 1:a236c0568cdf 3
Armand 1:a236c0568cdf 4 F7_TSKeyboard::F7_TSKeyboard()
Armand 1:a236c0568cdf 5 {
Armand 1:a236c0568cdf 6 btnsize = 35;
Armand 1:a236c0568cdf 7 state = 0;
Armand 1:a236c0568cdf 8 key = 0;
Armand 1:a236c0568cdf 9 Caps = 0;
Armand 1:a236c0568cdf 10 Func = 0;
Armand 1:a236c0568cdf 11
Armand 1:a236c0568cdf 12 status = ts.Init(lcd.GetXSize(), lcd.GetYSize());
Armand 1:a236c0568cdf 13 if (status != TS_OK)
Armand 1:a236c0568cdf 14 {
Armand 1:a236c0568cdf 15 lcd.Clear(LCD_COLOR_RED);
Armand 1:a236c0568cdf 16 lcd.SetBackColor(LCD_COLOR_RED);
Armand 1:a236c0568cdf 17 lcd.SetTextColor(LCD_COLOR_WHITE);
Armand 1:a236c0568cdf 18 lcd.DisplayStringAt(0, LINE(5), (uint8_t *)"TOUCHSCREEN INIT FAIL", CENTER_MODE);
Armand 1:a236c0568cdf 19 while(1);
Armand 1:a236c0568cdf 20 }
Armand 1:a236c0568cdf 21 else
Armand 1:a236c0568cdf 22 {
Armand 1:a236c0568cdf 23 OK = 1;
Armand 1:a236c0568cdf 24
Armand 1:a236c0568cdf 25 }
Armand 1:a236c0568cdf 26
Armand 1:a236c0568cdf 27 ticker.attach(callback(this, &F7_TSKeyboard::Detect_isr),0.01);
Armand 1:a236c0568cdf 28 }
Armand 1:a236c0568cdf 29
Armand 1:a236c0568cdf 30 void F7_TSKeyboard::Detect_isr()
Armand 1:a236c0568cdf 31 {
Armand 1:a236c0568cdf 32 if(OK)
Armand 1:a236c0568cdf 33 {
Armand 1:a236c0568cdf 34 ts.GetState(&TS_State);
Armand 1:a236c0568cdf 35
Armand 1:a236c0568cdf 36 if (TS_State.touchDetected)
Armand 1:a236c0568cdf 37 {
Armand 1:a236c0568cdf 38
Armand 1:a236c0568cdf 39 ///////////////////////check correct touch//////////////////////////////////////////////////////////////
Armand 1:a236c0568cdf 40 if(TS_State.touchX[0]>= keypadstartX[0][0] && TS_State.touchX[0]<= keypadendX[0][0] && TS_State.touchY[0]>= keypadstartY[0][0] && TS_State.touchY[0]<= keypadendY[0][0] && keypad == 1)
Armand 1:a236c0568cdf 41 {
Armand 1:a236c0568cdf 42 correcttouch = 1;
Armand 1:a236c0568cdf 43 button = 1;
Armand 1:a236c0568cdf 44 if(button == key)
Armand 1:a236c0568cdf 45 {
Armand 1:a236c0568cdf 46 lcd.SetTextColor(LCD_COLOR_GRAY);
Armand 1:a236c0568cdf 47 lcd.FillRect(keypadstartX[0][0], keypadstartY[0][0], btnsize, btnsize);
Armand 1:a236c0568cdf 48 }
Armand 1:a236c0568cdf 49
Armand 1:a236c0568cdf 50 }
Armand 1:a236c0568cdf 51 else if(TS_State.touchX[0]>= keypadstartX[0][1] && TS_State.touchX[0]<= keypadendX[0][1] && TS_State.touchY[0]>= keypadstartY[0][1] && TS_State.touchY[0]<= keypadendY[0][1] && keypad == 1)
Armand 1:a236c0568cdf 52 {
Armand 1:a236c0568cdf 53 correcttouch = 1;
Armand 1:a236c0568cdf 54 button = 2;
Armand 1:a236c0568cdf 55 if(button == key)
Armand 1:a236c0568cdf 56 {
Armand 1:a236c0568cdf 57 lcd.SetTextColor(LCD_COLOR_GRAY);
Armand 1:a236c0568cdf 58 lcd.FillRect(keypadstartX[0][1], keypadstartY[0][1], btnsize, btnsize);
Armand 1:a236c0568cdf 59 }
Armand 1:a236c0568cdf 60 }
Armand 1:a236c0568cdf 61 else if(TS_State.touchX[0]>= keypadstartX[0][2] && TS_State.touchX[0]<= keypadendX[0][2] && TS_State.touchY[0]>= keypadstartY[0][2] && TS_State.touchY[0]<= keypadendY[0][2] && keypad == 1)
Armand 1:a236c0568cdf 62 {
Armand 1:a236c0568cdf 63 correcttouch = 1;
Armand 1:a236c0568cdf 64 button = 3;
Armand 1:a236c0568cdf 65 if(button == key)
Armand 1:a236c0568cdf 66 {
Armand 1:a236c0568cdf 67 lcd.SetTextColor(LCD_COLOR_GRAY);
Armand 1:a236c0568cdf 68 lcd.FillRect(keypadstartX[0][2], keypadstartY[0][2], btnsize, btnsize);
Armand 1:a236c0568cdf 69 }
Armand 1:a236c0568cdf 70 }
Armand 1:a236c0568cdf 71 else if(TS_State.touchX[0]>= keypadstartX[0][3] && TS_State.touchX[0]<= keypadendX[0][3] && TS_State.touchY[0]>= keypadstartY[0][3] && TS_State.touchY[0]<= keypadendY[0][3] && keypad == 1)
Armand 1:a236c0568cdf 72 {
Armand 1:a236c0568cdf 73 correcttouch = 1;
Armand 1:a236c0568cdf 74 button = 4;
Armand 1:a236c0568cdf 75 if(button == key)
Armand 1:a236c0568cdf 76 {
Armand 1:a236c0568cdf 77 lcd.SetTextColor(LCD_COLOR_GRAY);
Armand 1:a236c0568cdf 78 lcd.FillRect(keypadstartX[0][3], keypadstartY[0][3], btnsize, btnsize);
Armand 1:a236c0568cdf 79 }
Armand 1:a236c0568cdf 80 }
Armand 1:a236c0568cdf 81 else if(TS_State.touchX[0]>= keypadstartX[0][4] && TS_State.touchX[0]<= keypadendX[0][4] && TS_State.touchY[0]>= keypadstartY[0][4] && TS_State.touchY[0]<= keypadendY[0][4] && keypad == 1)
Armand 1:a236c0568cdf 82 {
Armand 1:a236c0568cdf 83 correcttouch = 1;
Armand 1:a236c0568cdf 84 button = 5;
Armand 1:a236c0568cdf 85 if(button == key)
Armand 1:a236c0568cdf 86 {
Armand 1:a236c0568cdf 87 lcd.SetTextColor(LCD_COLOR_GRAY);
Armand 1:a236c0568cdf 88 lcd.FillRect(keypadstartX[0][4], keypadstartY[0][4], btnsize, btnsize);
Armand 1:a236c0568cdf 89 }
Armand 1:a236c0568cdf 90 }
Armand 1:a236c0568cdf 91 else if(TS_State.touchX[0]>= keypadstartX[0][5] && TS_State.touchX[0]<= keypadendX[0][5] && TS_State.touchY[0]>= keypadstartY[0][5] && TS_State.touchY[0]<= keypadendY[0][5] && keypad == 1)
Armand 1:a236c0568cdf 92 {
Armand 1:a236c0568cdf 93 correcttouch = 1;
Armand 1:a236c0568cdf 94 button = 6;
Armand 1:a236c0568cdf 95 if(button == key)
Armand 1:a236c0568cdf 96 {
Armand 1:a236c0568cdf 97 lcd.SetTextColor(LCD_COLOR_GRAY);
Armand 1:a236c0568cdf 98 lcd.FillRect(keypadstartX[0][5], keypadstartY[0][5], btnsize, btnsize);
Armand 1:a236c0568cdf 99 }
Armand 1:a236c0568cdf 100 }
Armand 1:a236c0568cdf 101 else if(TS_State.touchX[0]>= keypadstartX[0][6] && TS_State.touchX[0]<= keypadendX[0][6] && TS_State.touchY[0]>= keypadstartY[0][6] && TS_State.touchY[0]<= keypadendY[0][6] && keypad == 1)
Armand 1:a236c0568cdf 102 {
Armand 1:a236c0568cdf 103 correcttouch = 1;
Armand 1:a236c0568cdf 104 button = 7;
Armand 1:a236c0568cdf 105 if(button == key)
Armand 1:a236c0568cdf 106 {
Armand 1:a236c0568cdf 107 lcd.SetTextColor(LCD_COLOR_GRAY);
Armand 1:a236c0568cdf 108 lcd.FillRect(keypadstartX[0][6], keypadstartY[0][6], btnsize, btnsize);
Armand 1:a236c0568cdf 109 }
Armand 1:a236c0568cdf 110 }
Armand 1:a236c0568cdf 111 else if(TS_State.touchX[0]>= keypadstartX[0][7] && TS_State.touchX[0]<= keypadendX[0][7] && TS_State.touchY[0]>= keypadstartY[0][7] && TS_State.touchY[0]<= keypadendY[0][7] && keypad == 1)
Armand 1:a236c0568cdf 112 {
Armand 1:a236c0568cdf 113 correcttouch = 1;
Armand 1:a236c0568cdf 114 button = 8;
Armand 1:a236c0568cdf 115 if(button == key)
Armand 1:a236c0568cdf 116 {
Armand 1:a236c0568cdf 117 lcd.SetTextColor(LCD_COLOR_GRAY);
Armand 1:a236c0568cdf 118 lcd.FillRect(keypadstartX[0][7], keypadstartY[0][7], btnsize, btnsize);
Armand 1:a236c0568cdf 119 }
Armand 1:a236c0568cdf 120 }
Armand 1:a236c0568cdf 121 else if(TS_State.touchX[0]>= keypadstartX[0][8] && TS_State.touchX[0]<= keypadendX[0][8] && TS_State.touchY[0]>= keypadstartY[0][8] && TS_State.touchY[0]<= keypadendY[0][8] && keypad == 1)
Armand 1:a236c0568cdf 122 {
Armand 1:a236c0568cdf 123 correcttouch = 1;
Armand 1:a236c0568cdf 124 button = 9;
Armand 1:a236c0568cdf 125 if(button == key)
Armand 1:a236c0568cdf 126 {
Armand 1:a236c0568cdf 127 lcd.SetTextColor(LCD_COLOR_GRAY);
Armand 1:a236c0568cdf 128 lcd.FillRect(keypadstartX[0][8], keypadstartY[0][8], btnsize, btnsize);
Armand 1:a236c0568cdf 129 }
Armand 1:a236c0568cdf 130 }
Armand 1:a236c0568cdf 131 else if(TS_State.touchX[0]>= keypadstartX[0][9] && TS_State.touchX[0]<= keypadendX[0][9] && TS_State.touchY[0]>= keypadstartY[0][9] && TS_State.touchY[0]<= keypadendY[0][9] && keypad == 1)
Armand 1:a236c0568cdf 132 {
Armand 1:a236c0568cdf 133 correcttouch = 1;
Armand 1:a236c0568cdf 134 button = 10;
Armand 1:a236c0568cdf 135 lcd.SetTextColor(LCD_COLOR_GRAY);
Armand 1:a236c0568cdf 136 lcd.FillRect(keypadstartX[0][9], keypadstartY[0][9], btnsize, btnsize);
Armand 1:a236c0568cdf 137 }
Armand 1:a236c0568cdf 138 else if(TS_State.touchX[0]>= keypadstartX[1][0] && TS_State.touchX[0]<= keypadendX[1][0] && TS_State.touchY[0]>= keypadstartY[1][0] && TS_State.touchY[0]<= keypadendY[1][0] && keypad == 1)
Armand 1:a236c0568cdf 139 {
Armand 1:a236c0568cdf 140 correcttouch = 1;
Armand 1:a236c0568cdf 141 button = 11;
Armand 1:a236c0568cdf 142 lcd.SetTextColor(LCD_COLOR_GRAY);
Armand 1:a236c0568cdf 143 lcd.FillRect(keypadstartX[1][0], keypadstartY[1][0], btnsize, btnsize);
Armand 1:a236c0568cdf 144 }
Armand 1:a236c0568cdf 145 else if(TS_State.touchX[0]>= keypadstartX[1][1] && TS_State.touchX[0]<= keypadendX[1][1] && TS_State.touchY[0]>= keypadstartY[1][1] && TS_State.touchY[0]<= keypadendY[1][1] && keypad == 1)
Armand 1:a236c0568cdf 146 {
Armand 1:a236c0568cdf 147 correcttouch = 1;
Armand 1:a236c0568cdf 148 button = 12;
Armand 1:a236c0568cdf 149 lcd.SetTextColor(LCD_COLOR_GRAY);
Armand 1:a236c0568cdf 150 lcd.FillRect(keypadstartX[1][1], keypadstartY[1][1], btnsize, btnsize);
Armand 1:a236c0568cdf 151 }
Armand 1:a236c0568cdf 152 else if(TS_State.touchX[0]>= keypadstartX[1][2] && TS_State.touchX[0]<= keypadendX[1][2] && TS_State.touchY[0]>= keypadstartY[1][2] && TS_State.touchY[0]<= keypadendY[1][2] && keypad == 1)
Armand 1:a236c0568cdf 153 {
Armand 1:a236c0568cdf 154 correcttouch = 1;
Armand 1:a236c0568cdf 155 button = 13;
Armand 1:a236c0568cdf 156 lcd.SetTextColor(LCD_COLOR_GRAY);
Armand 1:a236c0568cdf 157 lcd.FillRect(keypadstartX[1][2], keypadstartY[1][2], btnsize, btnsize);
Armand 1:a236c0568cdf 158 }
Armand 1:a236c0568cdf 159 else if(TS_State.touchX[0]>= keypadstartX[1][3] && TS_State.touchX[0]<= keypadendX[1][3] && TS_State.touchY[0]>= keypadstartY[1][3] && TS_State.touchY[0]<= keypadendY[1][3] && keypad == 1)
Armand 1:a236c0568cdf 160 {
Armand 1:a236c0568cdf 161 correcttouch = 1;
Armand 1:a236c0568cdf 162 button = 14;
Armand 1:a236c0568cdf 163 lcd.SetTextColor(LCD_COLOR_GRAY);
Armand 1:a236c0568cdf 164 lcd.FillRect(keypadstartX[1][3], keypadstartY[1][3], btnsize, btnsize);
Armand 1:a236c0568cdf 165 }
Armand 1:a236c0568cdf 166 else if(TS_State.touchX[0]>= keypadstartX[1][4] && TS_State.touchX[0]<= keypadendX[1][4] && TS_State.touchY[0]>= keypadstartY[1][4] && TS_State.touchY[0]<= keypadendY[1][4] && keypad == 1)
Armand 1:a236c0568cdf 167 {
Armand 1:a236c0568cdf 168 correcttouch = 1;
Armand 1:a236c0568cdf 169 button = 15;
Armand 1:a236c0568cdf 170 lcd.SetTextColor(LCD_COLOR_GRAY);
Armand 1:a236c0568cdf 171 lcd.FillRect(keypadstartX[1][4], keypadstartY[1][4], btnsize, btnsize);
Armand 1:a236c0568cdf 172 }
Armand 1:a236c0568cdf 173 else if(TS_State.touchX[0]>= keypadstartX[1][5] && TS_State.touchX[0]<= keypadendX[1][5] && TS_State.touchY[0]>= keypadstartY[1][5] && TS_State.touchY[0]<= keypadendY[1][5] && keypad == 1)
Armand 1:a236c0568cdf 174 {
Armand 1:a236c0568cdf 175 correcttouch = 1;
Armand 1:a236c0568cdf 176 button = 16;
Armand 1:a236c0568cdf 177 lcd.SetTextColor(LCD_COLOR_GRAY);
Armand 1:a236c0568cdf 178 lcd.FillRect(keypadstartX[1][5], keypadstartY[1][5], btnsize, btnsize);
Armand 1:a236c0568cdf 179 }
Armand 1:a236c0568cdf 180 else if(TS_State.touchX[0]>= keypadstartX[1][6] && TS_State.touchX[0]<= keypadendX[1][6] && TS_State.touchY[0]>= keypadstartY[1][6] && TS_State.touchY[0]<= keypadendY[1][6] && keypad == 1)
Armand 1:a236c0568cdf 181 {
Armand 1:a236c0568cdf 182 correcttouch = 1;
Armand 1:a236c0568cdf 183 button = 17;
Armand 1:a236c0568cdf 184 lcd.SetTextColor(LCD_COLOR_GRAY);
Armand 1:a236c0568cdf 185 lcd.FillRect(keypadstartX[1][6], keypadstartY[1][6], btnsize, btnsize);
Armand 1:a236c0568cdf 186 }
Armand 1:a236c0568cdf 187 else if(TS_State.touchX[0]>= keypadstartX[1][7] && TS_State.touchX[0]<= keypadendX[1][7] && TS_State.touchY[0]>= keypadstartY[1][7] && TS_State.touchY[0]<= keypadendY[1][7] && keypad == 1)
Armand 1:a236c0568cdf 188 {
Armand 1:a236c0568cdf 189 correcttouch = 1;
Armand 1:a236c0568cdf 190 button = 18;
Armand 1:a236c0568cdf 191 lcd.SetTextColor(LCD_COLOR_GRAY);
Armand 1:a236c0568cdf 192 lcd.FillRect(keypadstartX[1][7], keypadstartY[1][7], btnsize, btnsize);
Armand 1:a236c0568cdf 193 }
Armand 1:a236c0568cdf 194 else if(TS_State.touchX[0]>= keypadstartX[1][8] && TS_State.touchX[0]<= keypadendX[1][8] && TS_State.touchY[0]>= keypadstartY[1][8] && TS_State.touchY[0]<= keypadendY[1][8] && keypad == 1)
Armand 1:a236c0568cdf 195 {
Armand 1:a236c0568cdf 196 correcttouch = 1;
Armand 1:a236c0568cdf 197 button = 19;
Armand 1:a236c0568cdf 198 lcd.SetTextColor(LCD_COLOR_GRAY);
Armand 1:a236c0568cdf 199 lcd.FillRect(keypadstartX[1][8], keypadstartY[1][8], btnsize, btnsize);
Armand 1:a236c0568cdf 200 }
Armand 1:a236c0568cdf 201 else if(TS_State.touchX[0]>= keypadstartX[1][9] && TS_State.touchX[0]<= keypadendX[1][9] && TS_State.touchY[0]>= keypadstartY[1][9] && TS_State.touchY[0]<= keypadendY[1][9] && keypad == 1)
Armand 1:a236c0568cdf 202 {
Armand 1:a236c0568cdf 203 correcttouch = 1;
Armand 1:a236c0568cdf 204 button = 20;
Armand 1:a236c0568cdf 205 lcd.SetTextColor(LCD_COLOR_GRAY);
Armand 1:a236c0568cdf 206 lcd.FillRect(keypadstartX[1][9], keypadstartY[1][9], btnsize, btnsize);
Armand 1:a236c0568cdf 207 }
Armand 1:a236c0568cdf 208 else if(TS_State.touchX[0]>= keypadstartX[2][0] && TS_State.touchX[0]<= keypadendX[2][0] && TS_State.touchY[0]>= keypadstartY[2][0] && TS_State.touchY[0]<= keypadendY[2][0] && keypad == 1)
Armand 1:a236c0568cdf 209 {
Armand 1:a236c0568cdf 210 correcttouch = 1;
Armand 1:a236c0568cdf 211 button = 21;
Armand 1:a236c0568cdf 212 lcd.SetTextColor(LCD_COLOR_GRAY);
Armand 1:a236c0568cdf 213 lcd.FillRect(keypadstartX[2][0], keypadstartY[2][0], btnsize, btnsize);
Armand 1:a236c0568cdf 214 }
Armand 1:a236c0568cdf 215 else if(TS_State.touchX[0]>= keypadstartX[2][1] && TS_State.touchX[0]<= keypadendX[2][1] && TS_State.touchY[0]>= keypadstartY[2][1] && TS_State.touchY[0]<= keypadendY[2][1] && keypad == 1)
Armand 1:a236c0568cdf 216 {
Armand 1:a236c0568cdf 217 correcttouch = 1;
Armand 1:a236c0568cdf 218 button = 22;
Armand 1:a236c0568cdf 219 lcd.SetTextColor(LCD_COLOR_GRAY);
Armand 1:a236c0568cdf 220 lcd.FillRect(keypadstartX[2][1], keypadstartY[2][1], btnsize, btnsize);
Armand 1:a236c0568cdf 221 }
Armand 1:a236c0568cdf 222 else if(TS_State.touchX[0]>= keypadstartX[2][2] && TS_State.touchX[0]<= keypadendX[2][2] && TS_State.touchY[0]>= keypadstartY[2][2] && TS_State.touchY[0]<= keypadendY[2][2] && keypad == 1)
Armand 1:a236c0568cdf 223 {
Armand 1:a236c0568cdf 224 correcttouch = 1;
Armand 1:a236c0568cdf 225 button = 23;
Armand 1:a236c0568cdf 226 lcd.SetTextColor(LCD_COLOR_GRAY);
Armand 1:a236c0568cdf 227 lcd.FillRect(keypadstartX[2][2], keypadstartY[2][2], btnsize, btnsize);
Armand 1:a236c0568cdf 228 }
Armand 1:a236c0568cdf 229 else if(TS_State.touchX[0]>= keypadstartX[2][3] && TS_State.touchX[0]<= keypadendX[2][3] && TS_State.touchY[0]>= keypadstartY[2][3] && TS_State.touchY[0]<= keypadendY[2][3] && keypad == 1)
Armand 1:a236c0568cdf 230 {
Armand 1:a236c0568cdf 231 correcttouch = 1;
Armand 1:a236c0568cdf 232 button = 24;
Armand 1:a236c0568cdf 233 lcd.SetTextColor(LCD_COLOR_GRAY);
Armand 1:a236c0568cdf 234 lcd.FillRect(keypadstartX[2][3], keypadstartY[2][3], btnsize, btnsize);
Armand 1:a236c0568cdf 235 }
Armand 1:a236c0568cdf 236 else if(TS_State.touchX[0]>= keypadstartX[2][4] && TS_State.touchX[0]<= keypadendX[2][4] && TS_State.touchY[0]>= keypadstartY[2][4] && TS_State.touchY[0]<= keypadendY[2][4] && keypad == 1)
Armand 1:a236c0568cdf 237 {
Armand 1:a236c0568cdf 238 correcttouch = 1;
Armand 1:a236c0568cdf 239 button = 25;
Armand 1:a236c0568cdf 240 lcd.SetTextColor(LCD_COLOR_GRAY);
Armand 1:a236c0568cdf 241 lcd.FillRect(keypadstartX[2][4], keypadstartY[2][4], btnsize, btnsize);
Armand 1:a236c0568cdf 242 }
Armand 1:a236c0568cdf 243 else if(TS_State.touchX[0]>= keypadstartX[2][5] && TS_State.touchX[0]<= keypadendX[2][5] && TS_State.touchY[0]>= keypadstartY[2][5] && TS_State.touchY[0]<= keypadendY[2][5] && keypad == 1)
Armand 1:a236c0568cdf 244 {
Armand 1:a236c0568cdf 245 correcttouch = 1;
Armand 1:a236c0568cdf 246 button = 26;
Armand 1:a236c0568cdf 247 lcd.SetTextColor(LCD_COLOR_GRAY);
Armand 1:a236c0568cdf 248 lcd.FillRect(keypadstartX[2][5], keypadstartY[2][5], btnsize, btnsize);
Armand 1:a236c0568cdf 249 }
Armand 1:a236c0568cdf 250 else if(TS_State.touchX[0]>= keypadstartX[2][6] && TS_State.touchX[0]<= keypadendX[2][6] && TS_State.touchY[0]>= keypadstartY[2][6] && TS_State.touchY[0]<= keypadendY[2][6] && keypad == 1)
Armand 1:a236c0568cdf 251 {
Armand 1:a236c0568cdf 252 correcttouch = 1;
Armand 1:a236c0568cdf 253 button = 27;
Armand 1:a236c0568cdf 254 lcd.SetTextColor(LCD_COLOR_GRAY);
Armand 1:a236c0568cdf 255 lcd.FillRect(keypadstartX[2][6], keypadstartY[2][6], btnsize, btnsize);
Armand 1:a236c0568cdf 256 }
Armand 1:a236c0568cdf 257 else if(TS_State.touchX[0]>= keypadstartX[2][7] && TS_State.touchX[0]<= keypadendX[2][7] && TS_State.touchY[0]>= keypadstartY[2][7] && TS_State.touchY[0]<= keypadendY[2][7] && keypad == 1)
Armand 1:a236c0568cdf 258 {
Armand 1:a236c0568cdf 259 correcttouch = 1;
Armand 1:a236c0568cdf 260 button = 28;
Armand 1:a236c0568cdf 261 lcd.SetTextColor(LCD_COLOR_GRAY);
Armand 1:a236c0568cdf 262 lcd.FillRect(keypadstartX[2][7], keypadstartY[2][7], btnsize, btnsize);
Armand 1:a236c0568cdf 263 }
Armand 1:a236c0568cdf 264 else if(TS_State.touchX[0]>= keypadstartX[2][8] && TS_State.touchX[0]<= keypadendX[2][8] && TS_State.touchY[0]>= keypadstartY[2][8] && TS_State.touchY[0]<= keypadendY[2][8] && keypad == 1)
Armand 1:a236c0568cdf 265 {
Armand 1:a236c0568cdf 266 correcttouch = 1;
Armand 1:a236c0568cdf 267 button = 29;
Armand 1:a236c0568cdf 268 lcd.SetTextColor(LCD_COLOR_GRAY);
Armand 1:a236c0568cdf 269 lcd.FillRect(keypadstartX[2][8], keypadstartY[2][8], btnsize, btnsize);
Armand 1:a236c0568cdf 270 }
Armand 1:a236c0568cdf 271 else if(TS_State.touchX[0]>= keypadstartX[2][9] && TS_State.touchX[0]<= keypadendX[2][9] && TS_State.touchY[0]>= keypadstartY[2][9] && TS_State.touchY[0]<= keypadendY[2][9] && keypad == 1)
Armand 1:a236c0568cdf 272 {
Armand 1:a236c0568cdf 273 correcttouch = 1;
Armand 1:a236c0568cdf 274 button = 30;
Armand 1:a236c0568cdf 275 lcd.SetTextColor(LCD_COLOR_GRAY);
Armand 1:a236c0568cdf 276 lcd.FillRect(keypadstartX[2][9], keypadstartY[2][9], btnsize, btnsize);
Armand 1:a236c0568cdf 277 }
Armand 1:a236c0568cdf 278 else if(TS_State.touchX[0]>= keypadstartX[3][0] && TS_State.touchX[0]<= keypadendX[3][0] && TS_State.touchY[0]>= keypadstartY[3][0] && TS_State.touchY[0]<= keypadendY[3][0] && keypad == 1)
Armand 1:a236c0568cdf 279 {
Armand 1:a236c0568cdf 280 correcttouch = 1;
Armand 1:a236c0568cdf 281 button = 31;
Armand 1:a236c0568cdf 282 lcd.SetTextColor(LCD_COLOR_GRAY);
Armand 1:a236c0568cdf 283 lcd.FillRect(keypadstartX[3][0], keypadstartY[3][0], btnsize, btnsize);
Armand 1:a236c0568cdf 284 }
Armand 1:a236c0568cdf 285 else if(TS_State.touchX[0]>= keypadstartX[3][1] && TS_State.touchX[0]<= keypadendX[3][1] && TS_State.touchY[0]>= keypadstartY[3][1] && TS_State.touchY[0]<= keypadendY[3][1] && keypad == 1)
Armand 1:a236c0568cdf 286 {
Armand 1:a236c0568cdf 287 correcttouch = 1;
Armand 1:a236c0568cdf 288 button = 32;
Armand 1:a236c0568cdf 289 lcd.SetTextColor(LCD_COLOR_GRAY);
Armand 1:a236c0568cdf 290 lcd.FillRect(keypadstartX[3][1], keypadstartY[3][1], btnsize, btnsize);
Armand 1:a236c0568cdf 291 }
Armand 1:a236c0568cdf 292 else if(TS_State.touchX[0]>= keypadstartX[3][2] && TS_State.touchX[0]<= keypadendX[3][2] && TS_State.touchY[0]>= keypadstartY[3][2] && TS_State.touchY[0]<= keypadendY[3][2] && keypad == 1)
Armand 1:a236c0568cdf 293 {
Armand 1:a236c0568cdf 294 correcttouch = 1;
Armand 1:a236c0568cdf 295 button = 33;
Armand 1:a236c0568cdf 296 lcd.SetTextColor(LCD_COLOR_GRAY);
Armand 1:a236c0568cdf 297 lcd.FillRect(keypadstartX[3][2], keypadstartY[3][2], btnsize, btnsize);
Armand 1:a236c0568cdf 298 }
Armand 1:a236c0568cdf 299 else if(TS_State.touchX[0]>= keypadstartX[3][3] && TS_State.touchX[0]<= keypadendX[3][3] && TS_State.touchY[0]>= keypadstartY[3][3] && TS_State.touchY[0]<= keypadendY[3][3] && keypad == 1)
Armand 1:a236c0568cdf 300 {
Armand 1:a236c0568cdf 301 correcttouch = 1;
Armand 1:a236c0568cdf 302 button = 34;
Armand 1:a236c0568cdf 303 lcd.SetTextColor(LCD_COLOR_GRAY);
Armand 1:a236c0568cdf 304 lcd.FillRect(keypadstartX[3][3], keypadstartY[3][3], btnsize, btnsize);
Armand 1:a236c0568cdf 305 }
Armand 1:a236c0568cdf 306 else if(TS_State.touchX[0]>= keypadstartX[3][4] && TS_State.touchX[0]<= keypadendX[3][4] && TS_State.touchY[0]>= keypadstartY[3][4] && TS_State.touchY[0]<= keypadendY[3][4] && keypad == 1)
Armand 1:a236c0568cdf 307 {
Armand 1:a236c0568cdf 308 correcttouch = 1;
Armand 1:a236c0568cdf 309 button = 35;
Armand 1:a236c0568cdf 310 lcd.SetTextColor(LCD_COLOR_GRAY);
Armand 1:a236c0568cdf 311 lcd.FillRect(keypadstartX[3][4], keypadstartY[3][4], btnsize, btnsize);
Armand 1:a236c0568cdf 312 }
Armand 1:a236c0568cdf 313 else if(TS_State.touchX[0]>= keypadstartX[3][5] && TS_State.touchX[0]<= keypadendX[3][5] && TS_State.touchY[0]>= keypadstartY[3][5] && TS_State.touchY[0]<= keypadendY[3][5] && keypad == 1)
Armand 1:a236c0568cdf 314 {
Armand 1:a236c0568cdf 315 correcttouch = 1;
Armand 1:a236c0568cdf 316 button = 36;
Armand 1:a236c0568cdf 317 lcd.SetTextColor(LCD_COLOR_GRAY);
Armand 1:a236c0568cdf 318 lcd.FillRect(keypadstartX[3][5], keypadstartY[3][5], btnsize, btnsize);
Armand 1:a236c0568cdf 319 }
Armand 1:a236c0568cdf 320 else if(TS_State.touchX[0]>= keypadstartX[3][6] && TS_State.touchX[0]<= keypadendX[3][6] && TS_State.touchY[0]>= keypadstartY[3][6] && TS_State.touchY[0]<= keypadendY[3][6] && keypad == 1)
Armand 1:a236c0568cdf 321 {
Armand 1:a236c0568cdf 322 correcttouch = 1;
Armand 1:a236c0568cdf 323 button = 37;
Armand 1:a236c0568cdf 324 lcd.SetTextColor(LCD_COLOR_GRAY);
Armand 1:a236c0568cdf 325 lcd.FillRect(keypadstartX[3][6], keypadstartY[3][6], btnsize, btnsize);
Armand 1:a236c0568cdf 326 }
Armand 1:a236c0568cdf 327 else if(TS_State.touchX[0]>= keypadstartX[3][7] && TS_State.touchX[0]<= keypadendX[3][7] && TS_State.touchY[0]>= keypadstartY[3][7] && TS_State.touchY[0]<= keypadendY[3][7] && keypad == 1)
Armand 1:a236c0568cdf 328 {
Armand 1:a236c0568cdf 329 correcttouch = 1;
Armand 1:a236c0568cdf 330 button = 38;
Armand 1:a236c0568cdf 331 lcd.SetTextColor(LCD_COLOR_GRAY);
Armand 1:a236c0568cdf 332 lcd.FillRect(keypadstartX[3][7], keypadstartY[3][7], btnsize, btnsize);
Armand 1:a236c0568cdf 333 }
Armand 1:a236c0568cdf 334 else if(TS_State.touchX[0]>= keypadstartX[3][8] && TS_State.touchX[0]<= keypadendX[3][8] && TS_State.touchY[0]>= keypadstartY[3][8] && TS_State.touchY[0]<= keypadendY[3][8] && keypad == 1)
Armand 1:a236c0568cdf 335 {
Armand 1:a236c0568cdf 336 correcttouch = 1;
Armand 1:a236c0568cdf 337 button = 39;
Armand 1:a236c0568cdf 338 lcd.SetTextColor(LCD_COLOR_GRAY);
Armand 1:a236c0568cdf 339 lcd.FillRect(keypadstartX[3][8], keypadstartY[3][8], btnsize, btnsize);
Armand 1:a236c0568cdf 340 }
Armand 1:a236c0568cdf 341 else if(TS_State.touchX[0]>= keypadstartX[3][9] && TS_State.touchX[0]<= keypadendX[3][9] && TS_State.touchY[0]>= keypadstartY[3][9] && TS_State.touchY[0]<= keypadendY[3][9] && keypad == 1)
Armand 1:a236c0568cdf 342 {
Armand 1:a236c0568cdf 343 correcttouch = 1;
Armand 1:a236c0568cdf 344 button = 40;
Armand 1:a236c0568cdf 345 lcd.SetTextColor(LCD_COLOR_GRAY);
Armand 1:a236c0568cdf 346 lcd.FillRect(keypadstartX[3][9], keypadstartY[3][9], btnsize, btnsize);
Armand 1:a236c0568cdf 347 }
Armand 1:a236c0568cdf 348 else if(TS_State.touchX[0]>= keypadstartX[3][2] && TS_State.touchX[0]<= keypadendX[3][2] + 190 && TS_State.touchY[0]>= keypadstartY[3][2] + 38 && TS_State.touchY[0]<= keypadendY[3][2] + 38 && keypad == 1)
Armand 1:a236c0568cdf 349 {
Armand 1:a236c0568cdf 350 correcttouch = 1;
Armand 1:a236c0568cdf 351 button = 41;
Armand 1:a236c0568cdf 352 lcd.SetTextColor(LCD_COLOR_GRAY);
Armand 1:a236c0568cdf 353 lcd.FillRect(keypadstartX[3][2], keypadstartY[3][2] + 38, 225, btnsize);
Armand 1:a236c0568cdf 354 }
Armand 1:a236c0568cdf 355 else if(TS_State.touchX[0]>= keypadstartX[3][0] && TS_State.touchX[0]<= keypadendX[3][0] + 38 && TS_State.touchY[0]>= keypadstartY[3][0] + 38 && TS_State.touchY[0]<= keypadendY[3][0] + 38 && keypad == 1)
Armand 1:a236c0568cdf 356 {
Armand 1:a236c0568cdf 357 correcttouch = 1;
Armand 1:a236c0568cdf 358 button = 42;
Armand 1:a236c0568cdf 359 lcd.SetTextColor(LCD_COLOR_GRAY);
Armand 1:a236c0568cdf 360 lcd.FillRect(keypadstartX[3][0], keypadstartY[3][0] + 38, 73, btnsize);
Armand 1:a236c0568cdf 361 }
Armand 1:a236c0568cdf 362 else if(TS_State.touchX[0]>= keypadstartX[3][8] && TS_State.touchX[0]<= keypadendX[3][8] && TS_State.touchY[0]>= keypadstartY[3][8] + 38 && TS_State.touchY[0]<= keypadendY[3][8] + 38 && keypad == 1)
Armand 1:a236c0568cdf 363 {
Armand 1:a236c0568cdf 364 correcttouch = 1;
Armand 1:a236c0568cdf 365 button = 43;
Armand 1:a236c0568cdf 366 lcd.SetTextColor(LCD_COLOR_GRAY);
Armand 1:a236c0568cdf 367 lcd.FillRect(keypadstartX[3][8], keypadstartY[3][8] + 38, btnsize, btnsize);
Armand 1:a236c0568cdf 368 }
Armand 1:a236c0568cdf 369 else if(TS_State.touchX[0]>= keypadstartX[3][9] && TS_State.touchX[0]<= keypadendX[3][9] + 38 && TS_State.touchY[0]>= keypadstartY[3][9] + 38 && TS_State.touchY[0]<= keypadendY[3][9] + 38 && keypad == 1)
Armand 1:a236c0568cdf 370 {
Armand 1:a236c0568cdf 371 correcttouch = 1;
Armand 1:a236c0568cdf 372 button = 44;
Armand 1:a236c0568cdf 373 lcd.SetTextColor(LCD_COLOR_GRAY);
Armand 1:a236c0568cdf 374 lcd.FillRect(keypadstartX[3][9], keypadstartY[3][9] + 38, 73, btnsize);
Armand 1:a236c0568cdf 375 }
Armand 1:a236c0568cdf 376 else if(TS_State.touchX[0]>= keypadstartX[0][9] + 38 && TS_State.touchX[0]<= keypadendX[0][9] + 38 && TS_State.touchY[0]>= keypadstartY[0][9] && TS_State.touchY[0]<= keypadendY[0][9] + 38 && keypad == 1)
Armand 1:a236c0568cdf 377 {
Armand 1:a236c0568cdf 378 correcttouch = 1;
Armand 1:a236c0568cdf 379 button = 45;
Armand 1:a236c0568cdf 380 lcd.SetTextColor(LCD_COLOR_GRAY);
Armand 1:a236c0568cdf 381 lcd.FillRect(keypadstartX[0][9] + 38, keypadstartY[0][9], btnsize, 73);
Armand 1:a236c0568cdf 382 }
Armand 1:a236c0568cdf 383 else if(TS_State.touchX[0]>= keypadstartX[2][9] + 38 && TS_State.touchX[0]<= keypadendX[2][9] + 38 && TS_State.touchY[0]>= keypadstartY[2][9] && TS_State.touchY[0]<= keypadendY[2][9] + 38 && keypad == 1)
Armand 1:a236c0568cdf 384 {
Armand 1:a236c0568cdf 385 correcttouch = 1;
Armand 1:a236c0568cdf 386 button = 46;
Armand 1:a236c0568cdf 387 lcd.SetTextColor(LCD_COLOR_GRAY);
Armand 1:a236c0568cdf 388 lcd.FillRect(keypadstartX[2][9] + 38, keypadstartY[2][9], btnsize, 73);
Armand 1:a236c0568cdf 389 }
Armand 1:a236c0568cdf 390 else
Armand 1:a236c0568cdf 391 {
Armand 1:a236c0568cdf 392 correcttouch = 0;
Armand 1:a236c0568cdf 393 button = 0;
Armand 1:a236c0568cdf 394 }
Armand 1:a236c0568cdf 395 //////////////////////////////////////////////////////////////////////////////////////////////////////
Armand 1:a236c0568cdf 396 }
Armand 1:a236c0568cdf 397 }
Armand 1:a236c0568cdf 398 }
Armand 1:a236c0568cdf 399
Armand 1:a236c0568cdf 400 void F7_TSKeyboard::getkeys(char str[])
Armand 1:a236c0568cdf 401 {
Armand 1:a236c0568cdf 402 uint8_t text2[40];
Armand 1:a236c0568cdf 403
Armand 1:a236c0568cdf 404 Bckclr = lcd.GetBackColor();
Armand 1:a236c0568cdf 405 Txtclr = lcd.GetTextColor();
Armand 1:a236c0568cdf 406 *FontSize = *lcd.GetFont();
Armand 1:a236c0568cdf 407
Armand 1:a236c0568cdf 408 lcd.ClearStringLine(0);
Armand 1:a236c0568cdf 409 DrawKeypad();
Armand 1:a236c0568cdf 410 lcd.SetTextColor(LCD_COLOR_WHITE);
Armand 1:a236c0568cdf 411 lcd.FillRect(0, 0, 480, 20);
Armand 1:a236c0568cdf 412
Armand 1:a236c0568cdf 413 while(Enter != 1)
Armand 1:a236c0568cdf 414 {
Armand 1:a236c0568cdf 415 wait(0.0001);
Armand 1:a236c0568cdf 416
Armand 1:a236c0568cdf 417 switch(state)
Armand 1:a236c0568cdf 418 {////////check if pressed on screen///////
Armand 1:a236c0568cdf 419 case 0:
Armand 1:a236c0568cdf 420 {
Armand 1:a236c0568cdf 421 if(TS_State.touchDetected)
Armand 1:a236c0568cdf 422 {
Armand 1:a236c0568cdf 423 frstprsx = TS_State.touchX[0];
Armand 1:a236c0568cdf 424 frstprsy = TS_State.touchY[0];
Armand 1:a236c0568cdf 425 state = 10;
Armand 1:a236c0568cdf 426 }
Armand 1:a236c0568cdf 427 ////////////////////////////////////////
Armand 1:a236c0568cdf 428 }break;
Armand 1:a236c0568cdf 429 ////////check if correctly pressed//////////
Armand 1:a236c0568cdf 430 case 10:
Armand 1:a236c0568cdf 431 {
Armand 1:a236c0568cdf 432 for(b = 0; b < 10; b++)
Armand 1:a236c0568cdf 433 {
Armand 1:a236c0568cdf 434 for(a = 0; a < 4; a++)
Armand 1:a236c0568cdf 435 {
Armand 1:a236c0568cdf 436 if(frstprsx >= keypadstartX[a][b] && frstprsx <= keypadendX[a][b] && frstprsy >= keypadstartY[a][b] && frstprsy <= keypadendY[a][b] || frstprsx >= keypadstartX[3][2] && frstprsx <= keypadendX[3][2] + 190 && frstprsy >= keypadstartY[3][2] + 38 && frstprsy <= keypadendY[3][2] + 38 || frstprsx >= keypadstartX[3][0] && frstprsx <= keypadendX[3][0] + 38 && frstprsy >= keypadstartY[3][0] + 38 && frstprsy <= keypadendY[3][0] + 38 || frstprsx >= keypadstartX[3][8] && frstprsx <= keypadendX[3][8] && frstprsy >= keypadstartY[3][8] + 38 && frstprsy <= keypadendY[3][8] + 38 || frstprsx >= keypadstartX[3][9] && frstprsx <= keypadendX[3][9] + 38 && frstprsy >= keypadstartY[3][9] + 38 && frstprsy <= keypadendY[3][9] + 38 || frstprsx >= keypadstartX[0][9] + 38 && frstprsx <= keypadendX[0][9] + 38 && frstprsy >= keypadstartY[0][9] && frstprsy <= keypadendY[0][9] + 38 || frstprsx >= keypadstartX[2][9] + 38 && frstprsx <= keypadendX[2][9] + 38 && frstprsy >= keypadstartY[2][9] && frstprsy <= keypadendY[2][9] + 38)
Armand 1:a236c0568cdf 437 {
Armand 1:a236c0568cdf 438 state = 15;
Armand 1:a236c0568cdf 439 correcttouch = 1;
Armand 1:a236c0568cdf 440 key = button;
Armand 1:a236c0568cdf 441 a = 9;
Armand 1:a236c0568cdf 442 b = 9;
Armand 1:a236c0568cdf 443 }
Armand 1:a236c0568cdf 444 else
Armand 1:a236c0568cdf 445 {
Armand 1:a236c0568cdf 446 state = 30;
Armand 1:a236c0568cdf 447 }
Armand 1:a236c0568cdf 448 }
Armand 1:a236c0568cdf 449 }
Armand 1:a236c0568cdf 450
Armand 1:a236c0568cdf 451 }break;
Armand 1:a236c0568cdf 452 case 15:
Armand 1:a236c0568cdf 453 {
Armand 1:a236c0568cdf 454 if(button == key && button != 0)
Armand 1:a236c0568cdf 455 {
Armand 1:a236c0568cdf 456 if(TS_State.touchDetected == 0)
Armand 1:a236c0568cdf 457 {
Armand 1:a236c0568cdf 458 DrawKeypad();
Armand 1:a236c0568cdf 459 state = 20;
Armand 1:a236c0568cdf 460 }
Armand 1:a236c0568cdf 461 }
Armand 1:a236c0568cdf 462 else if(button != key || button == 0)
Armand 1:a236c0568cdf 463 {
Armand 1:a236c0568cdf 464 state = 30;
Armand 1:a236c0568cdf 465 }
Armand 1:a236c0568cdf 466
Armand 1:a236c0568cdf 467 }break;
Armand 1:a236c0568cdf 468 ////////////button functions//////////
Armand 1:a236c0568cdf 469 case 20:
Armand 1:a236c0568cdf 470 { ////////button 1/////////////
Armand 1:a236c0568cdf 471 if(button == 1)
Armand 1:a236c0568cdf 472 {
Armand 1:a236c0568cdf 473 if(Func == 1 && Caps == 0)
Armand 1:a236c0568cdf 474 {
Armand 1:a236c0568cdf 475 keypressed = '@';
Armand 1:a236c0568cdf 476 }
Armand 1:a236c0568cdf 477 else
Armand 1:a236c0568cdf 478 {
Armand 1:a236c0568cdf 479 keypressed = '1';
Armand 1:a236c0568cdf 480 }
Armand 1:a236c0568cdf 481 a = 0;
Armand 1:a236c0568cdf 482 b = 0;
Armand 1:a236c0568cdf 483 correcttouch = 0;
Armand 1:a236c0568cdf 484 state = 0;
Armand 1:a236c0568cdf 485 }
Armand 1:a236c0568cdf 486 else if(button == 2)
Armand 1:a236c0568cdf 487 {
Armand 1:a236c0568cdf 488 if(Func == 1 && Caps == 0)
Armand 1:a236c0568cdf 489 {
Armand 1:a236c0568cdf 490 keypressed = '#';
Armand 1:a236c0568cdf 491 }
Armand 1:a236c0568cdf 492 else
Armand 1:a236c0568cdf 493 {
Armand 1:a236c0568cdf 494 keypressed = '2';
Armand 1:a236c0568cdf 495 }
Armand 1:a236c0568cdf 496 a = 0;
Armand 1:a236c0568cdf 497 b = 0;
Armand 1:a236c0568cdf 498 correcttouch = 0;
Armand 1:a236c0568cdf 499 state = 0;
Armand 1:a236c0568cdf 500 }
Armand 1:a236c0568cdf 501 else if(button == 3)
Armand 1:a236c0568cdf 502 {
Armand 1:a236c0568cdf 503 if(Func == 1 && Caps == 0)
Armand 1:a236c0568cdf 504 {
Armand 1:a236c0568cdf 505 keypressed = '$';
Armand 1:a236c0568cdf 506 }
Armand 1:a236c0568cdf 507 else
Armand 1:a236c0568cdf 508 {
Armand 1:a236c0568cdf 509 keypressed = '3';
Armand 1:a236c0568cdf 510 }
Armand 1:a236c0568cdf 511 a = 0;
Armand 1:a236c0568cdf 512 b = 0;
Armand 1:a236c0568cdf 513 correcttouch = 0;
Armand 1:a236c0568cdf 514 state = 0;
Armand 1:a236c0568cdf 515 }
Armand 1:a236c0568cdf 516 else if(button == 4)
Armand 1:a236c0568cdf 517 {
Armand 1:a236c0568cdf 518 if(Func == 1 && Caps == 0)
Armand 1:a236c0568cdf 519 {
Armand 1:a236c0568cdf 520 keypressed = '%';
Armand 1:a236c0568cdf 521 }
Armand 1:a236c0568cdf 522 else
Armand 1:a236c0568cdf 523 {
Armand 1:a236c0568cdf 524 keypressed = '4';
Armand 1:a236c0568cdf 525 }
Armand 1:a236c0568cdf 526 a = 0;
Armand 1:a236c0568cdf 527 b = 0;
Armand 1:a236c0568cdf 528 correcttouch = 0;
Armand 1:a236c0568cdf 529 state = 0;
Armand 1:a236c0568cdf 530 }
Armand 1:a236c0568cdf 531 else if(button == 5)
Armand 1:a236c0568cdf 532 {
Armand 1:a236c0568cdf 533 if(Func == 1 && Caps == 0)
Armand 1:a236c0568cdf 534 {
Armand 1:a236c0568cdf 535 keypressed = 38;
Armand 1:a236c0568cdf 536 }
Armand 1:a236c0568cdf 537 else
Armand 1:a236c0568cdf 538 {
Armand 1:a236c0568cdf 539 keypressed = '5';
Armand 1:a236c0568cdf 540 }
Armand 1:a236c0568cdf 541 a = 0;
Armand 1:a236c0568cdf 542 b = 0;
Armand 1:a236c0568cdf 543 correcttouch = 0;
Armand 1:a236c0568cdf 544 state = 0;
Armand 1:a236c0568cdf 545 }
Armand 1:a236c0568cdf 546 else if(button == 6)
Armand 1:a236c0568cdf 547 {
Armand 1:a236c0568cdf 548 if(Func == 1 && Caps == 0)
Armand 1:a236c0568cdf 549 {
Armand 1:a236c0568cdf 550 keypressed = '*';
Armand 1:a236c0568cdf 551 }
Armand 1:a236c0568cdf 552 else
Armand 1:a236c0568cdf 553 {
Armand 1:a236c0568cdf 554 keypressed = '6';
Armand 1:a236c0568cdf 555 }
Armand 1:a236c0568cdf 556 a = 0;
Armand 1:a236c0568cdf 557 b = 0;
Armand 1:a236c0568cdf 558 correcttouch = 0;
Armand 1:a236c0568cdf 559 state = 0;
Armand 1:a236c0568cdf 560 }
Armand 1:a236c0568cdf 561 else if(button == 7)
Armand 1:a236c0568cdf 562 {
Armand 1:a236c0568cdf 563 if(Func == 1 && Caps == 0)
Armand 1:a236c0568cdf 564 {
Armand 1:a236c0568cdf 565 keypressed = '(';
Armand 1:a236c0568cdf 566 }
Armand 1:a236c0568cdf 567 else
Armand 1:a236c0568cdf 568 {
Armand 1:a236c0568cdf 569 keypressed = '7';
Armand 1:a236c0568cdf 570 }
Armand 1:a236c0568cdf 571 a = 0;
Armand 1:a236c0568cdf 572 b = 0;
Armand 1:a236c0568cdf 573 correcttouch = 0;
Armand 1:a236c0568cdf 574 state = 0;
Armand 1:a236c0568cdf 575 }
Armand 1:a236c0568cdf 576 else if(button == 8)
Armand 1:a236c0568cdf 577 {
Armand 1:a236c0568cdf 578 if(Func == 1 && Caps == 0)
Armand 1:a236c0568cdf 579 {
Armand 1:a236c0568cdf 580 keypressed = ')';
Armand 1:a236c0568cdf 581 }
Armand 1:a236c0568cdf 582 else
Armand 1:a236c0568cdf 583 {
Armand 1:a236c0568cdf 584 keypressed = '8';
Armand 1:a236c0568cdf 585 }
Armand 1:a236c0568cdf 586 a = 0;
Armand 1:a236c0568cdf 587 b = 0;
Armand 1:a236c0568cdf 588 correcttouch = 0;
Armand 1:a236c0568cdf 589 state = 0;
Armand 1:a236c0568cdf 590 }
Armand 1:a236c0568cdf 591 else if(button == 9)
Armand 1:a236c0568cdf 592 {
Armand 1:a236c0568cdf 593 if(Func == 1 && Caps == 0)
Armand 1:a236c0568cdf 594 {
Armand 1:a236c0568cdf 595 keypressed = '-';
Armand 1:a236c0568cdf 596 }
Armand 1:a236c0568cdf 597 else
Armand 1:a236c0568cdf 598 {
Armand 1:a236c0568cdf 599 keypressed = '9';
Armand 1:a236c0568cdf 600 }
Armand 1:a236c0568cdf 601 a = 0;
Armand 1:a236c0568cdf 602 b = 0;
Armand 1:a236c0568cdf 603 correcttouch = 0;
Armand 1:a236c0568cdf 604 state = 0;
Armand 1:a236c0568cdf 605 }
Armand 1:a236c0568cdf 606 else if(button == 10)
Armand 1:a236c0568cdf 607 {
Armand 1:a236c0568cdf 608 if(Func == 1 && Caps == 0)
Armand 1:a236c0568cdf 609 {
Armand 1:a236c0568cdf 610 keypressed = '+';
Armand 1:a236c0568cdf 611 }
Armand 1:a236c0568cdf 612 else
Armand 1:a236c0568cdf 613 {
Armand 1:a236c0568cdf 614 keypressed = '0';
Armand 1:a236c0568cdf 615 }
Armand 1:a236c0568cdf 616 a = 0;
Armand 1:a236c0568cdf 617 b = 0;
Armand 1:a236c0568cdf 618 correcttouch = 0;
Armand 1:a236c0568cdf 619 state = 0;
Armand 1:a236c0568cdf 620 }
Armand 1:a236c0568cdf 621 else if(button == 11)
Armand 1:a236c0568cdf 622 {
Armand 1:a236c0568cdf 623 if(Func == 1 && Caps == 0)
Armand 1:a236c0568cdf 624 {
Armand 1:a236c0568cdf 625 keypressed = '=';
Armand 1:a236c0568cdf 626 }
Armand 1:a236c0568cdf 627 else if(Caps == 1 && Func == 0)
Armand 1:a236c0568cdf 628 {
Armand 1:a236c0568cdf 629 keypressed = 'Q';
Armand 1:a236c0568cdf 630 }
Armand 1:a236c0568cdf 631 else
Armand 1:a236c0568cdf 632 {
Armand 1:a236c0568cdf 633 keypressed = 'q';
Armand 1:a236c0568cdf 634 }
Armand 1:a236c0568cdf 635 a = 0;
Armand 1:a236c0568cdf 636 b = 0;
Armand 1:a236c0568cdf 637 correcttouch = 0;
Armand 1:a236c0568cdf 638 state = 0;
Armand 1:a236c0568cdf 639 }
Armand 1:a236c0568cdf 640 else if(button == 12)
Armand 1:a236c0568cdf 641 {
Armand 1:a236c0568cdf 642 if(Func == 1 && Caps == 0)
Armand 1:a236c0568cdf 643 {
Armand 1:a236c0568cdf 644 keypressed = '_';
Armand 1:a236c0568cdf 645 }
Armand 1:a236c0568cdf 646 else if(Caps == 1 && Func == 0)
Armand 1:a236c0568cdf 647 {
Armand 1:a236c0568cdf 648 keypressed = 'W';
Armand 1:a236c0568cdf 649 }
Armand 1:a236c0568cdf 650 else
Armand 1:a236c0568cdf 651 {
Armand 1:a236c0568cdf 652 keypressed = 'w';
Armand 1:a236c0568cdf 653 }
Armand 1:a236c0568cdf 654 a = 0;
Armand 1:a236c0568cdf 655 b = 0;
Armand 1:a236c0568cdf 656 correcttouch = 0;
Armand 1:a236c0568cdf 657 state = 0;
Armand 1:a236c0568cdf 658 }
Armand 1:a236c0568cdf 659 else if(button == 13)
Armand 1:a236c0568cdf 660 {
Armand 1:a236c0568cdf 661 if(Func == 1 && Caps == 0)
Armand 1:a236c0568cdf 662 {
Armand 1:a236c0568cdf 663 keypressed = '^';
Armand 1:a236c0568cdf 664 }
Armand 1:a236c0568cdf 665 else if(Caps == 1 && Func == 0)
Armand 1:a236c0568cdf 666 {
Armand 1:a236c0568cdf 667 keypressed = 'E';
Armand 1:a236c0568cdf 668 }
Armand 1:a236c0568cdf 669 else
Armand 1:a236c0568cdf 670 {
Armand 1:a236c0568cdf 671 keypressed = 'e';
Armand 1:a236c0568cdf 672 }
Armand 1:a236c0568cdf 673 a = 0;
Armand 1:a236c0568cdf 674 b = 0;
Armand 1:a236c0568cdf 675 correcttouch = 0;
Armand 1:a236c0568cdf 676 state = 0;
Armand 1:a236c0568cdf 677 }
Armand 1:a236c0568cdf 678 else if(button == 14)
Armand 1:a236c0568cdf 679 {
Armand 1:a236c0568cdf 680 if(Func == 1 && Caps == 0)
Armand 1:a236c0568cdf 681 {
Armand 1:a236c0568cdf 682 keypressed = ';';
Armand 1:a236c0568cdf 683 }
Armand 1:a236c0568cdf 684 else if(Caps == 1 && Func == 0)
Armand 1:a236c0568cdf 685 {
Armand 1:a236c0568cdf 686 keypressed = 'R';
Armand 1:a236c0568cdf 687 }
Armand 1:a236c0568cdf 688 else
Armand 1:a236c0568cdf 689 {
Armand 1:a236c0568cdf 690 keypressed = 'r';
Armand 1:a236c0568cdf 691 }
Armand 1:a236c0568cdf 692 a = 0;
Armand 1:a236c0568cdf 693 b = 0;
Armand 1:a236c0568cdf 694 correcttouch = 0;
Armand 1:a236c0568cdf 695 state = 0;
Armand 1:a236c0568cdf 696 }
Armand 1:a236c0568cdf 697 else if(button == 15)
Armand 1:a236c0568cdf 698 {
Armand 1:a236c0568cdf 699 if(Func == 1 && Caps == 0)
Armand 1:a236c0568cdf 700 {
Armand 1:a236c0568cdf 701 keypressed = '"';
Armand 1:a236c0568cdf 702 }
Armand 1:a236c0568cdf 703 else if(Caps == 1 && Func == 0)
Armand 1:a236c0568cdf 704 {
Armand 1:a236c0568cdf 705 keypressed = 'T';
Armand 1:a236c0568cdf 706 }
Armand 1:a236c0568cdf 707 else
Armand 1:a236c0568cdf 708 {
Armand 1:a236c0568cdf 709 keypressed = 't';
Armand 1:a236c0568cdf 710 }
Armand 1:a236c0568cdf 711 a = 0;
Armand 1:a236c0568cdf 712 b = 0;
Armand 1:a236c0568cdf 713 correcttouch = 0;
Armand 1:a236c0568cdf 714 state = 0;
Armand 1:a236c0568cdf 715 }
Armand 1:a236c0568cdf 716 else if(button == 16)
Armand 1:a236c0568cdf 717 {
Armand 1:a236c0568cdf 718 if(Func == 1 && Caps == 0)
Armand 1:a236c0568cdf 719 {
Armand 1:a236c0568cdf 720 keypressed = '\'';
Armand 1:a236c0568cdf 721 }
Armand 1:a236c0568cdf 722 else if(Caps == 1 && Func == 0)
Armand 1:a236c0568cdf 723 {
Armand 1:a236c0568cdf 724 keypressed = 'Y';
Armand 1:a236c0568cdf 725 }
Armand 1:a236c0568cdf 726 else
Armand 1:a236c0568cdf 727 {
Armand 1:a236c0568cdf 728 keypressed = 'y';
Armand 1:a236c0568cdf 729 }
Armand 1:a236c0568cdf 730 a = 0;
Armand 1:a236c0568cdf 731 b = 0;
Armand 1:a236c0568cdf 732 correcttouch = 0;
Armand 1:a236c0568cdf 733 state = 0;
Armand 1:a236c0568cdf 734 }
Armand 1:a236c0568cdf 735 else if(button == 17)
Armand 1:a236c0568cdf 736 {
Armand 1:a236c0568cdf 737 if(Func == 1 && Caps == 0)
Armand 1:a236c0568cdf 738 {
Armand 1:a236c0568cdf 739 keypressed = '<';
Armand 1:a236c0568cdf 740 }
Armand 1:a236c0568cdf 741 else if(Caps == 1 && Func == 0)
Armand 1:a236c0568cdf 742 {
Armand 1:a236c0568cdf 743 keypressed = 'U';
Armand 1:a236c0568cdf 744 }
Armand 1:a236c0568cdf 745 else
Armand 1:a236c0568cdf 746 {
Armand 1:a236c0568cdf 747 keypressed = 'u';
Armand 1:a236c0568cdf 748 }
Armand 1:a236c0568cdf 749 a = 0;
Armand 1:a236c0568cdf 750 b = 0;
Armand 1:a236c0568cdf 751 correcttouch = 0;
Armand 1:a236c0568cdf 752 state = 0;
Armand 1:a236c0568cdf 753 }
Armand 1:a236c0568cdf 754 else if(button == 18)
Armand 1:a236c0568cdf 755 {
Armand 1:a236c0568cdf 756 if(Func == 1 && Caps == 0)
Armand 1:a236c0568cdf 757 {
Armand 1:a236c0568cdf 758 keypressed = '>';
Armand 1:a236c0568cdf 759 }
Armand 1:a236c0568cdf 760 else if(Caps == 1 && Func == 0)
Armand 1:a236c0568cdf 761 {
Armand 1:a236c0568cdf 762 keypressed = 'I';
Armand 1:a236c0568cdf 763 }
Armand 1:a236c0568cdf 764 else
Armand 1:a236c0568cdf 765 {
Armand 1:a236c0568cdf 766 keypressed = 'i';
Armand 1:a236c0568cdf 767 }
Armand 1:a236c0568cdf 768 a = 0;
Armand 1:a236c0568cdf 769 b = 0;
Armand 1:a236c0568cdf 770 correcttouch = 0;
Armand 1:a236c0568cdf 771 state = 0;
Armand 1:a236c0568cdf 772 }
Armand 1:a236c0568cdf 773 else if(button == 19)
Armand 1:a236c0568cdf 774 {
Armand 1:a236c0568cdf 775 if(Func == 1 && Caps == 0)
Armand 1:a236c0568cdf 776 {
Armand 1:a236c0568cdf 777 keypressed = '/';
Armand 1:a236c0568cdf 778 }
Armand 1:a236c0568cdf 779 else if(Caps == 1 && Func == 0)
Armand 1:a236c0568cdf 780 {
Armand 1:a236c0568cdf 781 keypressed = 'O';
Armand 1:a236c0568cdf 782 }
Armand 1:a236c0568cdf 783 else
Armand 1:a236c0568cdf 784 {
Armand 1:a236c0568cdf 785 keypressed = 'o';
Armand 1:a236c0568cdf 786 }
Armand 1:a236c0568cdf 787 a = 0;
Armand 1:a236c0568cdf 788 b = 0;
Armand 1:a236c0568cdf 789 correcttouch = 0;
Armand 1:a236c0568cdf 790 state = 0;
Armand 1:a236c0568cdf 791 }
Armand 1:a236c0568cdf 792 else if(button == 20)
Armand 1:a236c0568cdf 793 {
Armand 1:a236c0568cdf 794 if(Func == 1 && Caps == 0)
Armand 1:a236c0568cdf 795 {
Armand 1:a236c0568cdf 796 keypressed = '\\';
Armand 1:a236c0568cdf 797 }
Armand 1:a236c0568cdf 798 else if(Caps == 1 && Func == 0)
Armand 1:a236c0568cdf 799 {
Armand 1:a236c0568cdf 800 keypressed = 'P';
Armand 1:a236c0568cdf 801 }
Armand 1:a236c0568cdf 802 else
Armand 1:a236c0568cdf 803 {
Armand 1:a236c0568cdf 804 keypressed = 'p';
Armand 1:a236c0568cdf 805 }
Armand 1:a236c0568cdf 806 a = 0;
Armand 1:a236c0568cdf 807 b = 0;
Armand 1:a236c0568cdf 808 correcttouch = 0;
Armand 1:a236c0568cdf 809 state = 0;
Armand 1:a236c0568cdf 810 }
Armand 1:a236c0568cdf 811 else if(button == 21)
Armand 1:a236c0568cdf 812 {
Armand 1:a236c0568cdf 813 if(Func == 1 && Caps == 0)
Armand 1:a236c0568cdf 814 {
Armand 1:a236c0568cdf 815 keypressed = ' ';
Armand 1:a236c0568cdf 816 }
Armand 1:a236c0568cdf 817 else
Armand 1:a236c0568cdf 818 {
Armand 1:a236c0568cdf 819 keypressed = ':';
Armand 1:a236c0568cdf 820 }
Armand 1:a236c0568cdf 821 a = 0;
Armand 1:a236c0568cdf 822 b = 0;
Armand 1:a236c0568cdf 823 correcttouch = 0;
Armand 1:a236c0568cdf 824 state = 0;
Armand 1:a236c0568cdf 825 }
Armand 1:a236c0568cdf 826 else if(button == 22)
Armand 1:a236c0568cdf 827 {
Armand 1:a236c0568cdf 828 if(Func == 1 && Caps == 0)
Armand 1:a236c0568cdf 829 {
Armand 1:a236c0568cdf 830 keypressed = ' ';
Armand 1:a236c0568cdf 831 }
Armand 1:a236c0568cdf 832 else if(Caps == 1 && Func == 0)
Armand 1:a236c0568cdf 833 {
Armand 1:a236c0568cdf 834 keypressed = 'A';
Armand 1:a236c0568cdf 835 }
Armand 1:a236c0568cdf 836 else
Armand 1:a236c0568cdf 837 {
Armand 1:a236c0568cdf 838 keypressed = 'a';
Armand 1:a236c0568cdf 839 }
Armand 1:a236c0568cdf 840 a = 0;
Armand 1:a236c0568cdf 841 b = 0;
Armand 1:a236c0568cdf 842 correcttouch = 0;
Armand 1:a236c0568cdf 843 state = 0;
Armand 1:a236c0568cdf 844 }
Armand 1:a236c0568cdf 845 else if(button == 23)
Armand 1:a236c0568cdf 846 {
Armand 1:a236c0568cdf 847 if(Func == 1 && Caps == 0)
Armand 1:a236c0568cdf 848 {
Armand 1:a236c0568cdf 849 keypressed = '`';
Armand 1:a236c0568cdf 850 }
Armand 1:a236c0568cdf 851 else if(Caps == 1 && Func == 0)
Armand 1:a236c0568cdf 852 {
Armand 1:a236c0568cdf 853 keypressed = 'S';
Armand 1:a236c0568cdf 854 }
Armand 1:a236c0568cdf 855 else
Armand 1:a236c0568cdf 856 {
Armand 1:a236c0568cdf 857 keypressed = 's';
Armand 1:a236c0568cdf 858 }
Armand 1:a236c0568cdf 859 a = 0;
Armand 1:a236c0568cdf 860 b = 0;
Armand 1:a236c0568cdf 861 correcttouch = 0;
Armand 1:a236c0568cdf 862 state = 0;
Armand 1:a236c0568cdf 863 }
Armand 1:a236c0568cdf 864 else if(button == 24)
Armand 1:a236c0568cdf 865 {
Armand 1:a236c0568cdf 866 if(Func == 1 && Caps == 0)
Armand 1:a236c0568cdf 867 {
Armand 1:a236c0568cdf 868 keypressed = '~';
Armand 1:a236c0568cdf 869 }
Armand 1:a236c0568cdf 870 else if(Caps == 1 && Func == 0)
Armand 1:a236c0568cdf 871 {
Armand 1:a236c0568cdf 872 keypressed = 'D';
Armand 1:a236c0568cdf 873 }
Armand 1:a236c0568cdf 874 else
Armand 1:a236c0568cdf 875 {
Armand 1:a236c0568cdf 876 keypressed = 'd';
Armand 1:a236c0568cdf 877 }
Armand 1:a236c0568cdf 878 a = 0;
Armand 1:a236c0568cdf 879 b = 0;
Armand 1:a236c0568cdf 880 correcttouch = 0;
Armand 1:a236c0568cdf 881 state = 0;
Armand 1:a236c0568cdf 882 }
Armand 1:a236c0568cdf 883 else if(button == 25)
Armand 1:a236c0568cdf 884 {
Armand 1:a236c0568cdf 885 if(Func == 1 && Caps == 0)
Armand 1:a236c0568cdf 886 {
Armand 1:a236c0568cdf 887 keypressed = '{';
Armand 1:a236c0568cdf 888 }
Armand 1:a236c0568cdf 889 else if(Caps == 1 && Func == 0)
Armand 1:a236c0568cdf 890 {
Armand 1:a236c0568cdf 891 keypressed = 'F';
Armand 1:a236c0568cdf 892 }
Armand 1:a236c0568cdf 893 else
Armand 1:a236c0568cdf 894 {
Armand 1:a236c0568cdf 895 keypressed = 'f';
Armand 1:a236c0568cdf 896 }
Armand 1:a236c0568cdf 897 a = 0;
Armand 1:a236c0568cdf 898 b = 0;
Armand 1:a236c0568cdf 899 correcttouch = 0;
Armand 1:a236c0568cdf 900 state = 0;
Armand 1:a236c0568cdf 901 }
Armand 1:a236c0568cdf 902 else if(button == 26)
Armand 1:a236c0568cdf 903 {
Armand 1:a236c0568cdf 904 if(Func == 1 && Caps == 0)
Armand 1:a236c0568cdf 905 {
Armand 1:a236c0568cdf 906 keypressed = '}';
Armand 1:a236c0568cdf 907 }
Armand 1:a236c0568cdf 908 else if(Caps == 1 && Func == 0)
Armand 1:a236c0568cdf 909 {
Armand 1:a236c0568cdf 910 keypressed = 'G';
Armand 1:a236c0568cdf 911 }
Armand 1:a236c0568cdf 912 else
Armand 1:a236c0568cdf 913 {
Armand 1:a236c0568cdf 914 keypressed = 'g';
Armand 1:a236c0568cdf 915 }
Armand 1:a236c0568cdf 916 a = 0;
Armand 1:a236c0568cdf 917 b = 0;
Armand 1:a236c0568cdf 918 correcttouch = 0;
Armand 1:a236c0568cdf 919 state = 0;
Armand 1:a236c0568cdf 920 }
Armand 1:a236c0568cdf 921 else if(button == 27)
Armand 1:a236c0568cdf 922 {
Armand 1:a236c0568cdf 923 if(Func == 1 && Caps == 0)
Armand 1:a236c0568cdf 924 {
Armand 1:a236c0568cdf 925 keypressed = '[';
Armand 1:a236c0568cdf 926 }
Armand 1:a236c0568cdf 927 else if(Caps == 1 && Func == 0)
Armand 1:a236c0568cdf 928 {
Armand 1:a236c0568cdf 929 keypressed = 'H';
Armand 1:a236c0568cdf 930 }
Armand 1:a236c0568cdf 931 else
Armand 1:a236c0568cdf 932 {
Armand 1:a236c0568cdf 933 keypressed = 'h';
Armand 1:a236c0568cdf 934 }
Armand 1:a236c0568cdf 935 a = 0;
Armand 1:a236c0568cdf 936 b = 0;
Armand 1:a236c0568cdf 937 correcttouch = 0;
Armand 1:a236c0568cdf 938 state = 0;
Armand 1:a236c0568cdf 939 }
Armand 1:a236c0568cdf 940 else if(button == 28)
Armand 1:a236c0568cdf 941 {
Armand 1:a236c0568cdf 942 if(Func == 1 && Caps == 0)
Armand 1:a236c0568cdf 943 {
Armand 1:a236c0568cdf 944 keypressed = ']';
Armand 1:a236c0568cdf 945 }
Armand 1:a236c0568cdf 946 else if(Caps == 1 && Func == 0)
Armand 1:a236c0568cdf 947 {
Armand 1:a236c0568cdf 948 keypressed = 'J';
Armand 1:a236c0568cdf 949 }
Armand 1:a236c0568cdf 950 else
Armand 1:a236c0568cdf 951 {
Armand 1:a236c0568cdf 952 keypressed = 'j';
Armand 1:a236c0568cdf 953 }
Armand 1:a236c0568cdf 954 a = 0;
Armand 1:a236c0568cdf 955 b = 0;
Armand 1:a236c0568cdf 956 correcttouch = 0;
Armand 1:a236c0568cdf 957 state = 0;
Armand 1:a236c0568cdf 958 }
Armand 1:a236c0568cdf 959 else if(button == 29)
Armand 1:a236c0568cdf 960 {
Armand 1:a236c0568cdf 961 if(Func == 1 && Caps == 0)
Armand 1:a236c0568cdf 962 {
Armand 1:a236c0568cdf 963 keypressed = ' ';
Armand 1:a236c0568cdf 964 }
Armand 1:a236c0568cdf 965 else if(Caps == 1 && Func == 0)
Armand 1:a236c0568cdf 966 {
Armand 1:a236c0568cdf 967 keypressed = 'K';
Armand 1:a236c0568cdf 968 }
Armand 1:a236c0568cdf 969 else
Armand 1:a236c0568cdf 970 {
Armand 1:a236c0568cdf 971 keypressed = 'k';
Armand 1:a236c0568cdf 972 }
Armand 1:a236c0568cdf 973 a = 0;
Armand 1:a236c0568cdf 974 b = 0;
Armand 1:a236c0568cdf 975 correcttouch = 0;
Armand 1:a236c0568cdf 976 state = 0;
Armand 1:a236c0568cdf 977 }
Armand 1:a236c0568cdf 978 else if(button == 30)
Armand 1:a236c0568cdf 979 {
Armand 1:a236c0568cdf 980 if(Func == 1 && Caps == 0)
Armand 1:a236c0568cdf 981 {
Armand 1:a236c0568cdf 982 keypressed = ' ';
Armand 1:a236c0568cdf 983 }
Armand 1:a236c0568cdf 984 else if(Caps == 1 && Func == 0)
Armand 1:a236c0568cdf 985 {
Armand 1:a236c0568cdf 986 keypressed = 'L';
Armand 1:a236c0568cdf 987 }
Armand 1:a236c0568cdf 988 else
Armand 1:a236c0568cdf 989 {
Armand 1:a236c0568cdf 990 keypressed = 'l';
Armand 1:a236c0568cdf 991 }
Armand 1:a236c0568cdf 992 a = 0;
Armand 1:a236c0568cdf 993 b = 0;
Armand 1:a236c0568cdf 994 correcttouch = 0;
Armand 1:a236c0568cdf 995 state = 0;
Armand 1:a236c0568cdf 996 }
Armand 1:a236c0568cdf 997 else if(button == 31)
Armand 1:a236c0568cdf 998 {
Armand 1:a236c0568cdf 999 if(Func == 1 && Caps == 0)
Armand 1:a236c0568cdf 1000 {
Armand 1:a236c0568cdf 1001 keypressed = ' ';
Armand 1:a236c0568cdf 1002 }
Armand 1:a236c0568cdf 1003 else
Armand 1:a236c0568cdf 1004 {
Armand 1:a236c0568cdf 1005 keypressed = ',';
Armand 1:a236c0568cdf 1006 }
Armand 1:a236c0568cdf 1007 a = 0;
Armand 1:a236c0568cdf 1008 b = 0;
Armand 1:a236c0568cdf 1009 correcttouch = 0;
Armand 1:a236c0568cdf 1010 state = 0;
Armand 1:a236c0568cdf 1011 }
Armand 1:a236c0568cdf 1012 else if(button == 32)
Armand 1:a236c0568cdf 1013 {
Armand 1:a236c0568cdf 1014 if(Func == 1 && Caps == 0)
Armand 1:a236c0568cdf 1015 {
Armand 1:a236c0568cdf 1016 keypressed = ' ';
Armand 1:a236c0568cdf 1017 }
Armand 1:a236c0568cdf 1018 else
Armand 1:a236c0568cdf 1019 {
Armand 1:a236c0568cdf 1020 keypressed = '!';
Armand 1:a236c0568cdf 1021 }
Armand 1:a236c0568cdf 1022 a = 0;
Armand 1:a236c0568cdf 1023 b = 0;
Armand 1:a236c0568cdf 1024 correcttouch = 0;
Armand 1:a236c0568cdf 1025 state = 0;
Armand 1:a236c0568cdf 1026 }
Armand 1:a236c0568cdf 1027 else if(button == 33)
Armand 1:a236c0568cdf 1028 {
Armand 1:a236c0568cdf 1029 if(Func == 1 && Caps == 0)
Armand 1:a236c0568cdf 1030 {
Armand 1:a236c0568cdf 1031 keypressed = ' ';
Armand 1:a236c0568cdf 1032 }
Armand 1:a236c0568cdf 1033 else if(Caps == 1 && Func == 0)
Armand 1:a236c0568cdf 1034 {
Armand 1:a236c0568cdf 1035 keypressed = 'Z';
Armand 1:a236c0568cdf 1036 }
Armand 1:a236c0568cdf 1037 else
Armand 1:a236c0568cdf 1038 {
Armand 1:a236c0568cdf 1039 keypressed = 'z';
Armand 1:a236c0568cdf 1040 }
Armand 1:a236c0568cdf 1041 a = 0;
Armand 1:a236c0568cdf 1042 b = 0;
Armand 1:a236c0568cdf 1043 correcttouch = 0;
Armand 1:a236c0568cdf 1044 state = 0;
Armand 1:a236c0568cdf 1045 }
Armand 1:a236c0568cdf 1046 else if(button == 34)
Armand 1:a236c0568cdf 1047 {
Armand 1:a236c0568cdf 1048 if(Func == 1 && Caps == 0)
Armand 1:a236c0568cdf 1049 {
Armand 1:a236c0568cdf 1050 keypressed = ' ';
Armand 1:a236c0568cdf 1051 }
Armand 1:a236c0568cdf 1052 else if(Caps == 1 && Func == 0)
Armand 1:a236c0568cdf 1053 {
Armand 1:a236c0568cdf 1054 keypressed = 'X';
Armand 1:a236c0568cdf 1055 }
Armand 1:a236c0568cdf 1056 else
Armand 1:a236c0568cdf 1057 {
Armand 1:a236c0568cdf 1058 keypressed = 'x';
Armand 1:a236c0568cdf 1059 }
Armand 1:a236c0568cdf 1060 a = 0;
Armand 1:a236c0568cdf 1061 b = 0;
Armand 1:a236c0568cdf 1062 correcttouch = 0;
Armand 1:a236c0568cdf 1063 state = 0;
Armand 1:a236c0568cdf 1064 }
Armand 1:a236c0568cdf 1065 else if(button == 35)
Armand 1:a236c0568cdf 1066 {
Armand 1:a236c0568cdf 1067 if(Func == 1 && Caps == 0)
Armand 1:a236c0568cdf 1068 {
Armand 1:a236c0568cdf 1069 keypressed = ' ';
Armand 1:a236c0568cdf 1070 }
Armand 1:a236c0568cdf 1071 else if(Caps == 1 && Func == 0)
Armand 1:a236c0568cdf 1072 {
Armand 1:a236c0568cdf 1073 keypressed = 'C';
Armand 1:a236c0568cdf 1074 }
Armand 1:a236c0568cdf 1075 else
Armand 1:a236c0568cdf 1076 {
Armand 1:a236c0568cdf 1077 keypressed = 'c';
Armand 1:a236c0568cdf 1078 }
Armand 1:a236c0568cdf 1079 a = 0;
Armand 1:a236c0568cdf 1080 b = 0;
Armand 1:a236c0568cdf 1081 correcttouch = 0;
Armand 1:a236c0568cdf 1082 state = 0;
Armand 1:a236c0568cdf 1083 }
Armand 1:a236c0568cdf 1084 else if(button == 36)
Armand 1:a236c0568cdf 1085 {
Armand 1:a236c0568cdf 1086 if(Func == 1 && Caps == 0)
Armand 1:a236c0568cdf 1087 {
Armand 1:a236c0568cdf 1088 keypressed = ' ';
Armand 1:a236c0568cdf 1089 }
Armand 1:a236c0568cdf 1090 else if(Caps == 1 && Func == 0)
Armand 1:a236c0568cdf 1091 {
Armand 1:a236c0568cdf 1092 keypressed = 'V';
Armand 1:a236c0568cdf 1093 }
Armand 1:a236c0568cdf 1094 else
Armand 1:a236c0568cdf 1095 {
Armand 1:a236c0568cdf 1096 keypressed = 'v';
Armand 1:a236c0568cdf 1097 }
Armand 1:a236c0568cdf 1098 a = 0;
Armand 1:a236c0568cdf 1099 b = 0;
Armand 1:a236c0568cdf 1100 correcttouch = 0;
Armand 1:a236c0568cdf 1101 state = 0;
Armand 1:a236c0568cdf 1102 }
Armand 1:a236c0568cdf 1103 else if(button == 37)
Armand 1:a236c0568cdf 1104 {
Armand 1:a236c0568cdf 1105 if(Func == 1 && Caps == 0)
Armand 1:a236c0568cdf 1106 {
Armand 1:a236c0568cdf 1107 keypressed = ' ';
Armand 1:a236c0568cdf 1108 }
Armand 1:a236c0568cdf 1109 else if(Caps == 1 && Func == 0)
Armand 1:a236c0568cdf 1110 {
Armand 1:a236c0568cdf 1111 keypressed = 'B';
Armand 1:a236c0568cdf 1112 }
Armand 1:a236c0568cdf 1113 else
Armand 1:a236c0568cdf 1114 {
Armand 1:a236c0568cdf 1115 keypressed = 'b';
Armand 1:a236c0568cdf 1116 }
Armand 1:a236c0568cdf 1117 a = 0;
Armand 1:a236c0568cdf 1118 b = 0;
Armand 1:a236c0568cdf 1119 correcttouch = 0;
Armand 1:a236c0568cdf 1120 state = 0;
Armand 1:a236c0568cdf 1121 }
Armand 1:a236c0568cdf 1122 else if(button == 38)
Armand 1:a236c0568cdf 1123 {
Armand 1:a236c0568cdf 1124 if(Func == 1 && Caps == 0)
Armand 1:a236c0568cdf 1125 {
Armand 1:a236c0568cdf 1126 keypressed = ' ';
Armand 1:a236c0568cdf 1127 }
Armand 1:a236c0568cdf 1128 else if(Caps == 1 && Func == 0)
Armand 1:a236c0568cdf 1129 {
Armand 1:a236c0568cdf 1130 keypressed = 'N';
Armand 1:a236c0568cdf 1131 }
Armand 1:a236c0568cdf 1132 else
Armand 1:a236c0568cdf 1133 {
Armand 1:a236c0568cdf 1134 keypressed = 'n';
Armand 1:a236c0568cdf 1135 }
Armand 1:a236c0568cdf 1136 a = 0;
Armand 1:a236c0568cdf 1137 b = 0;
Armand 1:a236c0568cdf 1138 correcttouch = 0;
Armand 1:a236c0568cdf 1139 state = 0;
Armand 1:a236c0568cdf 1140 }
Armand 1:a236c0568cdf 1141 else if(button == 39)
Armand 1:a236c0568cdf 1142 {
Armand 1:a236c0568cdf 1143 if(Func == 1 && Caps == 0)
Armand 1:a236c0568cdf 1144 {
Armand 1:a236c0568cdf 1145 keypressed = ' ';
Armand 1:a236c0568cdf 1146 }
Armand 1:a236c0568cdf 1147 else if(Caps == 1 && Func == 0)
Armand 1:a236c0568cdf 1148 {
Armand 1:a236c0568cdf 1149 keypressed = 'M';
Armand 1:a236c0568cdf 1150 }
Armand 1:a236c0568cdf 1151 else
Armand 1:a236c0568cdf 1152 {
Armand 1:a236c0568cdf 1153 keypressed = 'm';
Armand 1:a236c0568cdf 1154 }
Armand 1:a236c0568cdf 1155 a = 0;
Armand 1:a236c0568cdf 1156 b = 0;
Armand 1:a236c0568cdf 1157 correcttouch = 0;
Armand 1:a236c0568cdf 1158 state = 0;
Armand 1:a236c0568cdf 1159 }
Armand 1:a236c0568cdf 1160 else if(button == 40)
Armand 1:a236c0568cdf 1161 {
Armand 1:a236c0568cdf 1162 if(Func == 1 && Caps == 0)
Armand 1:a236c0568cdf 1163 {
Armand 1:a236c0568cdf 1164 keypressed = ' ';
Armand 1:a236c0568cdf 1165 }
Armand 1:a236c0568cdf 1166 else
Armand 1:a236c0568cdf 1167 {
Armand 1:a236c0568cdf 1168 keypressed = '?';
Armand 1:a236c0568cdf 1169 }
Armand 1:a236c0568cdf 1170 a = 0;
Armand 1:a236c0568cdf 1171 b = 0;
Armand 1:a236c0568cdf 1172 correcttouch = 0;
Armand 1:a236c0568cdf 1173 state = 0;
Armand 1:a236c0568cdf 1174 }
Armand 1:a236c0568cdf 1175 else if(button == 41)
Armand 1:a236c0568cdf 1176 {
Armand 1:a236c0568cdf 1177 keypressed = ' ';
Armand 1:a236c0568cdf 1178 m++;
Armand 1:a236c0568cdf 1179 textx += 12;
Armand 1:a236c0568cdf 1180
Armand 1:a236c0568cdf 1181 str[m] = keypressed;
Armand 1:a236c0568cdf 1182
Armand 1:a236c0568cdf 1183 m -= 1;
Armand 1:a236c0568cdf 1184 textx -= 12;
Armand 1:a236c0568cdf 1185
Armand 1:a236c0568cdf 1186 str[m] = keypressed;
Armand 1:a236c0568cdf 1187
Armand 1:a236c0568cdf 1188 m++;
Armand 1:a236c0568cdf 1189 textx += 12;
Armand 1:a236c0568cdf 1190
Armand 1:a236c0568cdf 1191 a = 0;
Armand 1:a236c0568cdf 1192 b = 0;
Armand 1:a236c0568cdf 1193 correcttouch = 0;
Armand 1:a236c0568cdf 1194 state = 0;
Armand 1:a236c0568cdf 1195 }
Armand 1:a236c0568cdf 1196 else if(button == 42)
Armand 1:a236c0568cdf 1197 {
Armand 1:a236c0568cdf 1198 if(Func != 1)
Armand 1:a236c0568cdf 1199 {
Armand 1:a236c0568cdf 1200 keypressed = ' ';
Armand 1:a236c0568cdf 1201 Caps = !Caps;
Armand 1:a236c0568cdf 1202 Func = 0;
Armand 1:a236c0568cdf 1203 DrawKeypad();
Armand 1:a236c0568cdf 1204 a = 0;
Armand 1:a236c0568cdf 1205 b = 0;
Armand 1:a236c0568cdf 1206 correcttouch = 0;
Armand 1:a236c0568cdf 1207 }
Armand 1:a236c0568cdf 1208 state = 0;
Armand 1:a236c0568cdf 1209 }
Armand 1:a236c0568cdf 1210 else if(button == 43)
Armand 1:a236c0568cdf 1211 {
Armand 1:a236c0568cdf 1212 keypressed = '.';
Armand 1:a236c0568cdf 1213 a = 0;
Armand 1:a236c0568cdf 1214 b = 0;
Armand 1:a236c0568cdf 1215 correcttouch = 0;
Armand 1:a236c0568cdf 1216 state = 0;
Armand 1:a236c0568cdf 1217 }
Armand 1:a236c0568cdf 1218 else if(button == 44)
Armand 1:a236c0568cdf 1219 {
Armand 1:a236c0568cdf 1220 keypressed = ' ';
Armand 1:a236c0568cdf 1221 Func = !Func;
Armand 1:a236c0568cdf 1222 Caps = 0;
Armand 1:a236c0568cdf 1223 DrawKeypad();
Armand 1:a236c0568cdf 1224 a = 0;
Armand 1:a236c0568cdf 1225 b = 0;
Armand 1:a236c0568cdf 1226 correcttouch = 0;
Armand 1:a236c0568cdf 1227 state = 0;
Armand 1:a236c0568cdf 1228 }
Armand 1:a236c0568cdf 1229 else if(button == 45)
Armand 1:a236c0568cdf 1230 {
Armand 1:a236c0568cdf 1231 keypressed = ' ';
Armand 1:a236c0568cdf 1232
Armand 1:a236c0568cdf 1233 if(m != 0 || textx != 0)
Armand 1:a236c0568cdf 1234 {
Armand 1:a236c0568cdf 1235 m -= 1;
Armand 1:a236c0568cdf 1236 textx -= 12;
Armand 1:a236c0568cdf 1237 }
Armand 1:a236c0568cdf 1238
Armand 1:a236c0568cdf 1239 a = 0;
Armand 1:a236c0568cdf 1240 b = 0;
Armand 1:a236c0568cdf 1241 correcttouch = 0;
Armand 1:a236c0568cdf 1242 state = 0;
Armand 1:a236c0568cdf 1243 }
Armand 1:a236c0568cdf 1244 else if(button == 46)
Armand 1:a236c0568cdf 1245 {
Armand 1:a236c0568cdf 1246 keypressed = '\0';
Armand 1:a236c0568cdf 1247 Enter = 1;
Armand 1:a236c0568cdf 1248 a = 0;
Armand 1:a236c0568cdf 1249 b = 0;
Armand 1:a236c0568cdf 1250 correcttouch = 0;
Armand 1:a236c0568cdf 1251 state = 0;
Armand 1:a236c0568cdf 1252 }
Armand 1:a236c0568cdf 1253 else
Armand 1:a236c0568cdf 1254 {
Armand 1:a236c0568cdf 1255 state = 0;
Armand 1:a236c0568cdf 1256 }
Armand 1:a236c0568cdf 1257
Armand 1:a236c0568cdf 1258 str[m] = keypressed;
Armand 1:a236c0568cdf 1259
Armand 1:a236c0568cdf 1260 lcd.SetTextColor(LCD_COLOR_BLACK);
Armand 1:a236c0568cdf 1261 lcd.SetBackColor(LCD_COLOR_WHITE);
Armand 1:a236c0568cdf 1262 lcd.SetFont(&Font20);
Armand 1:a236c0568cdf 1263 sprintf((char*)text2, "%c", str[m]);
Armand 1:a236c0568cdf 1264 lcd.DisplayStringAt(0 + textx, LINE(0), (uint8_t *)&text2, LEFT_MODE);
Armand 1:a236c0568cdf 1265
Armand 1:a236c0568cdf 1266 if(keypressed != ' ')
Armand 1:a236c0568cdf 1267 {
Armand 1:a236c0568cdf 1268 m++;
Armand 1:a236c0568cdf 1269 textx += 12;
Armand 1:a236c0568cdf 1270 }
Armand 1:a236c0568cdf 1271
Armand 1:a236c0568cdf 1272 key = 0;
Armand 1:a236c0568cdf 1273 keypressed = ' ';
Armand 1:a236c0568cdf 1274
Armand 1:a236c0568cdf 1275 }break;
Armand 1:a236c0568cdf 1276 case 30:
Armand 1:a236c0568cdf 1277 {
Armand 1:a236c0568cdf 1278 if(keypad == 1)
Armand 1:a236c0568cdf 1279 {
Armand 1:a236c0568cdf 1280 DrawKeypad();
Armand 1:a236c0568cdf 1281 keypad = 0;
Armand 1:a236c0568cdf 1282 }
Armand 1:a236c0568cdf 1283
Armand 1:a236c0568cdf 1284 if(TS_State.touchDetected == 0)
Armand 1:a236c0568cdf 1285 {
Armand 1:a236c0568cdf 1286 DrawKeypad();
Armand 1:a236c0568cdf 1287 a = 0;
Armand 1:a236c0568cdf 1288 b = 0;
Armand 1:a236c0568cdf 1289 correcttouch = 0;
Armand 1:a236c0568cdf 1290 state = 0;
Armand 1:a236c0568cdf 1291 }
Armand 1:a236c0568cdf 1292 }break;
Armand 1:a236c0568cdf 1293 }
Armand 1:a236c0568cdf 1294 }
Armand 1:a236c0568cdf 1295
Armand 1:a236c0568cdf 1296 keypad = 0;
Armand 1:a236c0568cdf 1297 Enter = 0;
Armand 1:a236c0568cdf 1298 m = 0;
Armand 1:a236c0568cdf 1299 textx = 0;
Armand 1:a236c0568cdf 1300 state = 0;
Armand 1:a236c0568cdf 1301 Caps = 0;
Armand 1:a236c0568cdf 1302 Func = 0;
Armand 1:a236c0568cdf 1303 lcd.ClearStringLine(0);
Armand 1:a236c0568cdf 1304 lcd.SetTextColor(Bckclr);
Armand 1:a236c0568cdf 1305 lcd.FillRect(0, 0, 480, 20);
Armand 1:a236c0568cdf 1306 lcd.FillRect(keypadstartX[0][0],keypadstartY[0][0], 415, 187);
Armand 1:a236c0568cdf 1307 lcd.SetTextColor(Txtclr);
Armand 1:a236c0568cdf 1308 lcd.SetBackColor(Bckclr);
Armand 1:a236c0568cdf 1309 lcd.SetFont(FontSize);
Armand 1:a236c0568cdf 1310 }
Armand 1:a236c0568cdf 1311
Armand 1:a236c0568cdf 1312 void F7_TSKeyboard::DrawKeypad()
Armand 1:a236c0568cdf 1313 {
Armand 1:a236c0568cdf 1314 int i, o, stepx = 0, stepy = 0, Drawpointx, Drawpointy;
Armand 1:a236c0568cdf 1315 uint8_t text[30];
Armand 1:a236c0568cdf 1316
Armand 1:a236c0568cdf 1317
Armand 1:a236c0568cdf 1318 char keyboard1[4][10] = {
Armand 1:a236c0568cdf 1319 {'1', '2', '3', '4', '5', '6', '7', '8', '9', '0'},
Armand 1:a236c0568cdf 1320 {'q', 'w', 'e', 'r', 't', 'y', 'u', 'i', 'o', 'p'},
Armand 1:a236c0568cdf 1321 {':', 'a', 's', 'd', 'f', 'g', 'h', 'j', 'k', 'l'},
Armand 1:a236c0568cdf 1322 {',', '!', 'z', 'x', 'c', 'v', 'b', 'n', 'm', '?'}
Armand 1:a236c0568cdf 1323 };
Armand 1:a236c0568cdf 1324
Armand 1:a236c0568cdf 1325
Armand 1:a236c0568cdf 1326 char keyboard2[4][10] = {
Armand 1:a236c0568cdf 1327 {'1', '2', '3', '4', '5', '6', '7', '8', '9', '0'},
Armand 1:a236c0568cdf 1328 {'Q', 'W', 'E', 'R', 'T', 'Y', 'U', 'I', 'O', 'P'},
Armand 1:a236c0568cdf 1329 {':', 'A', 'S', 'D', 'F', 'G', 'H', 'J', 'K', 'L'},
Armand 1:a236c0568cdf 1330 {',', '!', 'Z', 'X', 'C', 'V', 'B', 'N', 'M', '?'}
Armand 1:a236c0568cdf 1331 };
Armand 1:a236c0568cdf 1332
Armand 1:a236c0568cdf 1333 char keyboard3[4][10] = {
Armand 1:a236c0568cdf 1334 {'@', '#', '$', '%', 38, '*', '(', ')', '-', '+'},
Armand 1:a236c0568cdf 1335 {'=', '_', '^', ';', '"', '\'', '<', '>', '/', '\\'},
Armand 1:a236c0568cdf 1336 {'\0', '\0', '`', '~', '{', '}', '[', ']', '\0', '\0'},
Armand 1:a236c0568cdf 1337 {'\0', '\0', '\0', '\0', '\0', '\0', '\0', '\0', '\0', '\0'}
Armand 1:a236c0568cdf 1338 };
Armand 1:a236c0568cdf 1339
Armand 1:a236c0568cdf 1340 keypad = 1;
Armand 1:a236c0568cdf 1341
Armand 1:a236c0568cdf 1342 for(o= 0; o< 10; o++)
Armand 1:a236c0568cdf 1343 {
Armand 1:a236c0568cdf 1344 for(i= 0; i < 4; i++)
Armand 1:a236c0568cdf 1345 {
Armand 1:a236c0568cdf 1346 lcd.SetTextColor(LCD_COLOR_WHITE);
Armand 1:a236c0568cdf 1347
Armand 1:a236c0568cdf 1348 lcd.FillRect(Drawpointx = 33 + stepx, Drawpointy = 75 + stepy, btnsize, btnsize);
Armand 1:a236c0568cdf 1349 keypadstartX[i][o] = Drawpointx;
Armand 1:a236c0568cdf 1350 keypadstartY[i][o] = Drawpointy;
Armand 1:a236c0568cdf 1351 keypadendX[i][o] = Drawpointx + btnsize;
Armand 1:a236c0568cdf 1352 keypadendY[i][o] = Drawpointy + btnsize;
Armand 1:a236c0568cdf 1353 stepy += 38;
Armand 1:a236c0568cdf 1354
Armand 1:a236c0568cdf 1355 if(Caps == 0 && Func == 0)
Armand 1:a236c0568cdf 1356 {
Armand 1:a236c0568cdf 1357 lcd.SetBackColor(LCD_COLOR_WHITE);
Armand 1:a236c0568cdf 1358 lcd.SetTextColor(LCD_COLOR_BLACK);
Armand 1:a236c0568cdf 1359 lcd.SetFont(&Font16);
Armand 1:a236c0568cdf 1360 sprintf((char*)text, "%c", keyboard1[i][o]);
Armand 1:a236c0568cdf 1361 lcd.DisplayStringAt(Drawpointx+ 13, Drawpointy+ 13, (uint8_t *)&text, LEFT_MODE);
Armand 1:a236c0568cdf 1362 }
Armand 1:a236c0568cdf 1363 else if(Caps == 1 && Func == 0)
Armand 1:a236c0568cdf 1364 {
Armand 1:a236c0568cdf 1365 lcd.SetBackColor(LCD_COLOR_WHITE);
Armand 1:a236c0568cdf 1366 lcd.SetTextColor(LCD_COLOR_BLACK);
Armand 1:a236c0568cdf 1367 lcd.SetFont(&Font16);
Armand 1:a236c0568cdf 1368 sprintf((char*)text, "%c", keyboard2[i][o]);
Armand 1:a236c0568cdf 1369 lcd.DisplayStringAt(Drawpointx+ 13, Drawpointy+ 13, (uint8_t *)&text, LEFT_MODE);
Armand 1:a236c0568cdf 1370 }
Armand 1:a236c0568cdf 1371 else if(Caps == 0 && Func == 1)
Armand 1:a236c0568cdf 1372 {
Armand 1:a236c0568cdf 1373 lcd.SetBackColor(LCD_COLOR_WHITE);
Armand 1:a236c0568cdf 1374 lcd.SetTextColor(LCD_COLOR_BLACK);
Armand 1:a236c0568cdf 1375 lcd.SetFont(&Font16);
Armand 1:a236c0568cdf 1376 sprintf((char*)text, "%c", keyboard3[i][o]);
Armand 1:a236c0568cdf 1377 lcd.DisplayStringAt(Drawpointx+ 13, Drawpointy+ 13, (uint8_t *)&text, LEFT_MODE);
Armand 1:a236c0568cdf 1378 }
Armand 1:a236c0568cdf 1379
Armand 1:a236c0568cdf 1380
Armand 1:a236c0568cdf 1381 if(stepy > 114)
Armand 1:a236c0568cdf 1382 {
Armand 1:a236c0568cdf 1383 stepy = 0;
Armand 1:a236c0568cdf 1384 }
Armand 1:a236c0568cdf 1385 }
Armand 1:a236c0568cdf 1386
Armand 1:a236c0568cdf 1387 stepx += 38;
Armand 1:a236c0568cdf 1388 }
Armand 1:a236c0568cdf 1389
Armand 1:a236c0568cdf 1390 lcd.SetTextColor(LCD_COLOR_WHITE);
Armand 1:a236c0568cdf 1391 lcd.FillRect(keypadstartX[3][2], keypadstartY[3][2] + 38, 225, btnsize);
Armand 1:a236c0568cdf 1392 lcd.FillRect(keypadstartX[3][0], keypadstartY[3][0] + 38, 73, btnsize);
Armand 1:a236c0568cdf 1393 lcd.FillRect(keypadstartX[3][8], keypadstartY[3][8] + 38, btnsize, btnsize);
Armand 1:a236c0568cdf 1394 lcd.FillRect(keypadstartX[3][9], keypadstartY[3][9] + 38, 73, btnsize);
Armand 1:a236c0568cdf 1395 lcd.FillRect(keypadstartX[0][9] + 38, keypadstartY[0][9], btnsize, 73);
Armand 1:a236c0568cdf 1396 lcd.FillRect(keypadstartX[2][9] + 38, keypadstartY[2][9], btnsize, 73);
Armand 1:a236c0568cdf 1397
Armand 1:a236c0568cdf 1398 lcd.SetBackColor(LCD_COLOR_WHITE);
Armand 1:a236c0568cdf 1399 lcd.SetTextColor(LCD_COLOR_BLACK);
Armand 1:a236c0568cdf 1400 lcd.SetFont(&Font16);
Armand 1:a236c0568cdf 1401
Armand 1:a236c0568cdf 1402 sprintf((char*)text, "<");
Armand 1:a236c0568cdf 1403 lcd.DisplayStringAt(keypadstartX[0][9] + 50, keypadstartY[0][3] + 35, (uint8_t *)&text, LEFT_MODE);
Armand 1:a236c0568cdf 1404 lcd.SetFont(&Font12);
Armand 1:a236c0568cdf 1405 sprintf((char*)text, "E");
Armand 1:a236c0568cdf 1406 lcd.DisplayStringAt(keypadstartX[2][9] + 50, keypadstartY[2][9] + 15, (uint8_t *)&text, LEFT_MODE);
Armand 1:a236c0568cdf 1407 sprintf((char*)text, "N");
Armand 1:a236c0568cdf 1408 lcd.DisplayStringAt(keypadstartX[2][9] + 50, keypadstartY[2][9] + 25, (uint8_t *)&text, LEFT_MODE);
Armand 1:a236c0568cdf 1409 sprintf((char*)text, "T");
Armand 1:a236c0568cdf 1410 lcd.DisplayStringAt(keypadstartX[2][9] + 50, keypadstartY[2][9] + 35, (uint8_t *)&text, LEFT_MODE);
Armand 1:a236c0568cdf 1411 sprintf((char*)text, "E");
Armand 1:a236c0568cdf 1412 lcd.DisplayStringAt(keypadstartX[2][9] + 50, keypadstartY[2][9] + 45, (uint8_t *)&text, LEFT_MODE);
Armand 1:a236c0568cdf 1413 sprintf((char*)text, "R");
Armand 1:a236c0568cdf 1414 lcd.DisplayStringAt(keypadstartX[2][9] + 50, keypadstartY[2][9] + 55, (uint8_t *)&text, LEFT_MODE);
Armand 1:a236c0568cdf 1415 sprintf((char*)text, "CAPS");
Armand 1:a236c0568cdf 1416 lcd.DisplayStringAt(keypadstartX[3][0] + 20, keypadstartY[3][0] + 50, (uint8_t *)&text, LEFT_MODE);
Armand 1:a236c0568cdf 1417 sprintf((char*)text, ".");
Armand 1:a236c0568cdf 1418 lcd.DisplayStringAt(keypadstartX[3][8] + 16, keypadstartY[3][8] + 50, (uint8_t *)&text, LEFT_MODE);
Armand 1:a236c0568cdf 1419 sprintf((char*)text, "FUNC");
Armand 1:a236c0568cdf 1420 lcd.DisplayStringAt(keypadstartX[3][9] + 20, keypadstartY[3][9] + 50, (uint8_t *)&text, LEFT_MODE);
Armand 1:a236c0568cdf 1421
Armand 1:a236c0568cdf 1422 lcd.SetTextColor(Txtclr);
Armand 1:a236c0568cdf 1423 lcd.SetBackColor(Bckclr);
Armand 1:a236c0568cdf 1424 lcd.SetFont(FontSize);
Armand 1:a236c0568cdf 1425 }