Adna Durakovic Sumejja Porca

Dependencies:   N5110 mbed

Committer:
tim008
Date:
Mon Apr 28 17:44:53 2014 +0000
Revision:
0:17d69bb0ccdb
LV07_Z01_Grupa04;

Who changed what in which revision?

UserRevisionLine numberNew contents of line
tim008 0:17d69bb0ccdb 1 #include "mbed.h"
tim008 0:17d69bb0ccdb 2 #include "N5110.h"
tim008 0:17d69bb0ccdb 3
tim008 0:17d69bb0ccdb 4 //Analogni ulazi sa dzojstika
tim008 0:17d69bb0ccdb 5 AnalogIn VRx(dp11);
tim008 0:17d69bb0ccdb 6 AnalogIn VRy(dp10);
tim008 0:17d69bb0ccdb 7 //Taster sa dzojstika
tim008 0:17d69bb0ccdb 8 DigitalIn SW(dp9);
tim008 0:17d69bb0ccdb 9
tim008 0:17d69bb0ccdb 10 //Deklaracija LCD objekta
tim008 0:17d69bb0ccdb 11 //N5110 lcd(VCC,SCE,RST,D/C,MOSI,SCLK,LED)
tim008 0:17d69bb0ccdb 12 N5110 lcd(dp4,dp24,dp23,dp25,dp2,dp6,dp18);
tim008 0:17d69bb0ccdb 13
tim008 0:17d69bb0ccdb 14
tim008 0:17d69bb0ccdb 15 //Digitalni izlaz za deaktivaciju LED buffera
tim008 0:17d69bb0ccdb 16 DigitalOut enable(dp14);
tim008 0:17d69bb0ccdb 17
tim008 0:17d69bb0ccdb 18 //koordinate crosshair kursora / na sredini ekrana
tim008 0:17d69bb0ccdb 19 int x1(40), y1(23), x2(41), y2(22), x3(42), y3(23), x4(41), y4(24);
tim008 0:17d69bb0ccdb 20
tim008 0:17d69bb0ccdb 21 //koordinate virtuelnog kursora koji nam govori jesmo li u pravougaoniku
tim008 0:17d69bb0ccdb 22 int vx1(-1), vy1(-1), vx2(-1), vy2(-1), vx3(-1), vy3(-1), vx4(-1), vy4(-1);
tim008 0:17d69bb0ccdb 23
tim008 0:17d69bb0ccdb 24 //koordinate tacaka dijagonala
tim008 0:17d69bb0ccdb 25 int xd1(-1), yd1(-1), xd2(-1), yd2(-1);
tim008 0:17d69bb0ccdb 26
tim008 0:17d69bb0ccdb 27 //taster za dodavanje tacke/ brisanje svih tacaka
tim008 0:17d69bb0ccdb 28 InterruptIn taster1(dp1);
tim008 0:17d69bb0ccdb 29
tim008 0:17d69bb0ccdb 30 // timer koji mjeri vrijeme izmedju dva tastera
tim008 0:17d69bb0ccdb 31 Timer timer;
tim008 0:17d69bb0ccdb 32
tim008 0:17d69bb0ccdb 33 //funkcija za pravljenje pravougaonika kad vec imamo tacke dijagonale
tim008 0:17d69bb0ccdb 34 void makeRectangle()
tim008 0:17d69bb0ccdb 35 {
tim008 0:17d69bb0ccdb 36 taster1.disable_irq();
tim008 0:17d69bb0ccdb 37 int Ax, Ay, Bx, By, Cx, Cy, Dx, Dy;
tim008 0:17d69bb0ccdb 38 if( xd1 < xd2 && yd1 > yd2 )
tim008 0:17d69bb0ccdb 39 {
tim008 0:17d69bb0ccdb 40 Bx = xd2;
tim008 0:17d69bb0ccdb 41 By = yd2;
tim008 0:17d69bb0ccdb 42 Dx = xd1;
tim008 0:17d69bb0ccdb 43 Dy = yd1;
tim008 0:17d69bb0ccdb 44
tim008 0:17d69bb0ccdb 45 Ax = Dx;
tim008 0:17d69bb0ccdb 46 Ay = By;
tim008 0:17d69bb0ccdb 47 Cx = Bx;
tim008 0:17d69bb0ccdb 48 Cy = Dy;
tim008 0:17d69bb0ccdb 49 }
tim008 0:17d69bb0ccdb 50 else if( xd2 < xd1 && yd2 > yd1 )
tim008 0:17d69bb0ccdb 51 {
tim008 0:17d69bb0ccdb 52 Bx = xd1;
tim008 0:17d69bb0ccdb 53 By = yd1;
tim008 0:17d69bb0ccdb 54 Dx = xd2;
tim008 0:17d69bb0ccdb 55 Dy = yd2;
tim008 0:17d69bb0ccdb 56
tim008 0:17d69bb0ccdb 57 Ax = Dx;
tim008 0:17d69bb0ccdb 58 Ay = By;
tim008 0:17d69bb0ccdb 59 Cx = Bx;
tim008 0:17d69bb0ccdb 60 Cy = Dy;
tim008 0:17d69bb0ccdb 61 }
tim008 0:17d69bb0ccdb 62 else if ( xd1 < xd2 && yd1 < yd2 )
tim008 0:17d69bb0ccdb 63 {
tim008 0:17d69bb0ccdb 64 Ax = xd1;
tim008 0:17d69bb0ccdb 65 Ay = yd1;
tim008 0:17d69bb0ccdb 66 Cx = xd2;
tim008 0:17d69bb0ccdb 67 Cy = yd2;
tim008 0:17d69bb0ccdb 68
tim008 0:17d69bb0ccdb 69 Bx = Cx;
tim008 0:17d69bb0ccdb 70 By = Ay;
tim008 0:17d69bb0ccdb 71 Dx = Ax;
tim008 0:17d69bb0ccdb 72 Dy = Cy;
tim008 0:17d69bb0ccdb 73 }
tim008 0:17d69bb0ccdb 74 else if ( xd2 < xd1 && yd2 < yd1 )
tim008 0:17d69bb0ccdb 75 {
tim008 0:17d69bb0ccdb 76 Ax = xd2;
tim008 0:17d69bb0ccdb 77 Ay = yd2;
tim008 0:17d69bb0ccdb 78 Cx = xd1;
tim008 0:17d69bb0ccdb 79 Cy = yd1;
tim008 0:17d69bb0ccdb 80
tim008 0:17d69bb0ccdb 81
tim008 0:17d69bb0ccdb 82 Bx = Cx;
tim008 0:17d69bb0ccdb 83 By = Ay;
tim008 0:17d69bb0ccdb 84 Dx = Ax;
tim008 0:17d69bb0ccdb 85 Dy = Cy;
tim008 0:17d69bb0ccdb 86 }
tim008 0:17d69bb0ccdb 87
tim008 0:17d69bb0ccdb 88 int i, j;
tim008 0:17d69bb0ccdb 89 // crtamo pravougaonik
tim008 0:17d69bb0ccdb 90 for( i = Ay; i <= Dy; i++)
tim008 0:17d69bb0ccdb 91 for( j = Ax; j <= Cx; j++)
tim008 0:17d69bb0ccdb 92 {
tim008 0:17d69bb0ccdb 93 lcd.setPixel(j,i);
tim008 0:17d69bb0ccdb 94 }
tim008 0:17d69bb0ccdb 95 lcd.refresh();
tim008 0:17d69bb0ccdb 96 lcd.setXYAddress(0,0);
tim008 0:17d69bb0ccdb 97 taster1.enable_irq();
tim008 0:17d69bb0ccdb 98 }
tim008 0:17d69bb0ccdb 99
tim008 0:17d69bb0ccdb 100 // funkcija za dodavanje tacke dijagonale/ pravljenje pravougaonika
tim008 0:17d69bb0ccdb 101
tim008 0:17d69bb0ccdb 102 void setPoint()
tim008 0:17d69bb0ccdb 103 {
tim008 0:17d69bb0ccdb 104 if( timer.read_ms() < 200) return;
tim008 0:17d69bb0ccdb 105 if(timer.read_ms() <= 1000)
tim008 0:17d69bb0ccdb 106 {
tim008 0:17d69bb0ccdb 107 lcd.clear();
tim008 0:17d69bb0ccdb 108 xd1 = -1;
tim008 0:17d69bb0ccdb 109 yd1 = -1;
tim008 0:17d69bb0ccdb 110 xd2 = -1;
tim008 0:17d69bb0ccdb 111 yd2 = -1;
tim008 0:17d69bb0ccdb 112 x1 = 40;
tim008 0:17d69bb0ccdb 113 y1 = 23;
tim008 0:17d69bb0ccdb 114 x2 = 41;
tim008 0:17d69bb0ccdb 115 y2 = 22;
tim008 0:17d69bb0ccdb 116 x3 = 42;
tim008 0:17d69bb0ccdb 117 y3 = 23;
tim008 0:17d69bb0ccdb 118 x4 = 41;
tim008 0:17d69bb0ccdb 119 y4 = 24;
tim008 0:17d69bb0ccdb 120 vx1 = -1;
tim008 0:17d69bb0ccdb 121 vy1 = -1;
tim008 0:17d69bb0ccdb 122 vx2 = -1;
tim008 0:17d69bb0ccdb 123 vy2 = -1;
tim008 0:17d69bb0ccdb 124 vx3 = -1;
tim008 0:17d69bb0ccdb 125 vy3 = -1;
tim008 0:17d69bb0ccdb 126 vx4 = -1;
tim008 0:17d69bb0ccdb 127 vy4 = -1;
tim008 0:17d69bb0ccdb 128 lcd.setPixel(x1,y1);
tim008 0:17d69bb0ccdb 129 lcd.setPixel(x2,y2);
tim008 0:17d69bb0ccdb 130 lcd.setPixel(x3,y3);
tim008 0:17d69bb0ccdb 131 lcd.setPixel(x4,y4);
tim008 0:17d69bb0ccdb 132 lcd.refresh();
tim008 0:17d69bb0ccdb 133 lcd.setXYAddress(0,0);
tim008 0:17d69bb0ccdb 134 timer.reset();
tim008 0:17d69bb0ccdb 135 return;
tim008 0:17d69bb0ccdb 136 }
tim008 0:17d69bb0ccdb 137 if( xd1 < 0 )
tim008 0:17d69bb0ccdb 138 {
tim008 0:17d69bb0ccdb 139 xd1 = x2;
tim008 0:17d69bb0ccdb 140 yd1 = y1;
tim008 0:17d69bb0ccdb 141 lcd.setPixel(xd1, yd1);
tim008 0:17d69bb0ccdb 142 lcd.refresh();
tim008 0:17d69bb0ccdb 143 lcd.setXYAddress(0,0);
tim008 0:17d69bb0ccdb 144 }
tim008 0:17d69bb0ccdb 145 else
tim008 0:17d69bb0ccdb 146 {
tim008 0:17d69bb0ccdb 147 if( x2 != xd1 && y1 != yd1)
tim008 0:17d69bb0ccdb 148 {
tim008 0:17d69bb0ccdb 149 xd2 = x2;
tim008 0:17d69bb0ccdb 150 yd2 = y1;
tim008 0:17d69bb0ccdb 151 makeRectangle();
tim008 0:17d69bb0ccdb 152 xd1 = -1;
tim008 0:17d69bb0ccdb 153 yd1 = -1;
tim008 0:17d69bb0ccdb 154 xd2 = -1;
tim008 0:17d69bb0ccdb 155 yd2 = -1;
tim008 0:17d69bb0ccdb 156 }
tim008 0:17d69bb0ccdb 157 }
tim008 0:17d69bb0ccdb 158 timer.reset();
tim008 0:17d69bb0ccdb 159 }
tim008 0:17d69bb0ccdb 160
tim008 0:17d69bb0ccdb 161 int main()
tim008 0:17d69bb0ccdb 162 {
tim008 0:17d69bb0ccdb 163
tim008 0:17d69bb0ccdb 164 timer.start();
tim008 0:17d69bb0ccdb 165
tim008 0:17d69bb0ccdb 166 taster1.rise(&setPoint);
tim008 0:17d69bb0ccdb 167
tim008 0:17d69bb0ccdb 168 enable=1;
tim008 0:17d69bb0ccdb 169
tim008 0:17d69bb0ccdb 170 // inicijalizacija displaya
tim008 0:17d69bb0ccdb 171 lcd.init();
tim008 0:17d69bb0ccdb 172 lcd.setXYAddress(0,0);
tim008 0:17d69bb0ccdb 173
tim008 0:17d69bb0ccdb 174 lcd.normalMode();
tim008 0:17d69bb0ccdb 175
tim008 0:17d69bb0ccdb 176 lcd.setPixel(x1,y1);
tim008 0:17d69bb0ccdb 177 lcd.setPixel(x2,y2);
tim008 0:17d69bb0ccdb 178 lcd.setPixel(x3,y3);
tim008 0:17d69bb0ccdb 179 lcd.setPixel(x4,y4);
tim008 0:17d69bb0ccdb 180 lcd.refresh();
tim008 0:17d69bb0ccdb 181 lcd.setXYAddress(0,0);
tim008 0:17d69bb0ccdb 182
tim008 0:17d69bb0ccdb 183 while(1) {
tim008 0:17d69bb0ccdb 184 if (VRx < 1.0/3.0 && x1 > 0 )
tim008 0:17d69bb0ccdb 185 {
tim008 0:17d69bb0ccdb 186 if( vx1 == -1)
tim008 0:17d69bb0ccdb 187 lcd.clearPixel(x1,y1);
tim008 0:17d69bb0ccdb 188 if( vx2 == -1)
tim008 0:17d69bb0ccdb 189 lcd.clearPixel(x2,y2);
tim008 0:17d69bb0ccdb 190 if( vx3 == -1)
tim008 0:17d69bb0ccdb 191 lcd.clearPixel(x3,y3);
tim008 0:17d69bb0ccdb 192 if( vx4 == -1)
tim008 0:17d69bb0ccdb 193 lcd.clearPixel(x4,y4);
tim008 0:17d69bb0ccdb 194 lcd.refresh();
tim008 0:17d69bb0ccdb 195 lcd.setXYAddress(0,0);
tim008 0:17d69bb0ccdb 196
tim008 0:17d69bb0ccdb 197 x1--;
tim008 0:17d69bb0ccdb 198 x2--;
tim008 0:17d69bb0ccdb 199 x3--;
tim008 0:17d69bb0ccdb 200 x4--;
tim008 0:17d69bb0ccdb 201
tim008 0:17d69bb0ccdb 202 if( lcd.getPixel(x1, y1))
tim008 0:17d69bb0ccdb 203 {
tim008 0:17d69bb0ccdb 204 vx1 = x1;
tim008 0:17d69bb0ccdb 205 vy1 = y1;
tim008 0:17d69bb0ccdb 206 }
tim008 0:17d69bb0ccdb 207 else
tim008 0:17d69bb0ccdb 208 {
tim008 0:17d69bb0ccdb 209 vx1 = -1;
tim008 0:17d69bb0ccdb 210 vy1 = -1;
tim008 0:17d69bb0ccdb 211 }
tim008 0:17d69bb0ccdb 212 if( lcd.getPixel(x2, y2))
tim008 0:17d69bb0ccdb 213 {
tim008 0:17d69bb0ccdb 214 vx2 = x2;
tim008 0:17d69bb0ccdb 215 vy2 = y2;
tim008 0:17d69bb0ccdb 216 }
tim008 0:17d69bb0ccdb 217 else
tim008 0:17d69bb0ccdb 218 {
tim008 0:17d69bb0ccdb 219 vx2 = -1;
tim008 0:17d69bb0ccdb 220 vy2 = -1;
tim008 0:17d69bb0ccdb 221 }
tim008 0:17d69bb0ccdb 222
tim008 0:17d69bb0ccdb 223 if( lcd.getPixel(x3, y3))
tim008 0:17d69bb0ccdb 224 {
tim008 0:17d69bb0ccdb 225 vx3 = x3;
tim008 0:17d69bb0ccdb 226 vy3 = y3;
tim008 0:17d69bb0ccdb 227 }
tim008 0:17d69bb0ccdb 228 else
tim008 0:17d69bb0ccdb 229 {
tim008 0:17d69bb0ccdb 230 vx3 = -1;
tim008 0:17d69bb0ccdb 231 vy3 = -1;
tim008 0:17d69bb0ccdb 232 }
tim008 0:17d69bb0ccdb 233
tim008 0:17d69bb0ccdb 234 if( lcd.getPixel(x4, y4))
tim008 0:17d69bb0ccdb 235 {
tim008 0:17d69bb0ccdb 236 vx4 = x4;
tim008 0:17d69bb0ccdb 237 vy4 = y4;
tim008 0:17d69bb0ccdb 238 }
tim008 0:17d69bb0ccdb 239 else
tim008 0:17d69bb0ccdb 240 {
tim008 0:17d69bb0ccdb 241 vx4 = -1;
tim008 0:17d69bb0ccdb 242 vy4 = -1;
tim008 0:17d69bb0ccdb 243 }
tim008 0:17d69bb0ccdb 244 }
tim008 0:17d69bb0ccdb 245 else if (VRx > 2.0/3.0 && x3 < 47)
tim008 0:17d69bb0ccdb 246 {
tim008 0:17d69bb0ccdb 247 if( vx1 == -1)
tim008 0:17d69bb0ccdb 248 lcd.clearPixel(x1,y1);
tim008 0:17d69bb0ccdb 249 if( vx2 == -1)
tim008 0:17d69bb0ccdb 250 lcd.clearPixel(x2,y2);
tim008 0:17d69bb0ccdb 251 if( vx3 == -1)
tim008 0:17d69bb0ccdb 252 lcd.clearPixel(x3,y3);
tim008 0:17d69bb0ccdb 253 if( vx4 == -1)
tim008 0:17d69bb0ccdb 254 lcd.clearPixel(x4,y4);
tim008 0:17d69bb0ccdb 255 lcd.refresh();
tim008 0:17d69bb0ccdb 256 lcd.setXYAddress(0,0);
tim008 0:17d69bb0ccdb 257 x1++;
tim008 0:17d69bb0ccdb 258 x2++;
tim008 0:17d69bb0ccdb 259 x3++;
tim008 0:17d69bb0ccdb 260 x4++;
tim008 0:17d69bb0ccdb 261
tim008 0:17d69bb0ccdb 262 if( lcd.getPixel(x1, y1))
tim008 0:17d69bb0ccdb 263 {
tim008 0:17d69bb0ccdb 264 vx1 = x1;
tim008 0:17d69bb0ccdb 265 vy1 = y1;
tim008 0:17d69bb0ccdb 266 }
tim008 0:17d69bb0ccdb 267 else
tim008 0:17d69bb0ccdb 268 {
tim008 0:17d69bb0ccdb 269 vx1 = -1;
tim008 0:17d69bb0ccdb 270 vy1 = -1;
tim008 0:17d69bb0ccdb 271 }
tim008 0:17d69bb0ccdb 272 if( lcd.getPixel(x2, y2))
tim008 0:17d69bb0ccdb 273 {
tim008 0:17d69bb0ccdb 274 vx2 = x2;
tim008 0:17d69bb0ccdb 275 vy2 = y2;
tim008 0:17d69bb0ccdb 276 }
tim008 0:17d69bb0ccdb 277 else
tim008 0:17d69bb0ccdb 278 {
tim008 0:17d69bb0ccdb 279 vx2 = -1;
tim008 0:17d69bb0ccdb 280 vy2 = -1;
tim008 0:17d69bb0ccdb 281 }
tim008 0:17d69bb0ccdb 282
tim008 0:17d69bb0ccdb 283 if( lcd.getPixel(x3, y3))
tim008 0:17d69bb0ccdb 284 {
tim008 0:17d69bb0ccdb 285 vx3 = x3;
tim008 0:17d69bb0ccdb 286 vy3 = y3;
tim008 0:17d69bb0ccdb 287 }
tim008 0:17d69bb0ccdb 288 else
tim008 0:17d69bb0ccdb 289 {
tim008 0:17d69bb0ccdb 290 vx3 = -1;
tim008 0:17d69bb0ccdb 291 vy3 = -1;
tim008 0:17d69bb0ccdb 292 }
tim008 0:17d69bb0ccdb 293
tim008 0:17d69bb0ccdb 294 if( lcd.getPixel(x4, y4))
tim008 0:17d69bb0ccdb 295 {
tim008 0:17d69bb0ccdb 296 vx4 = x4;
tim008 0:17d69bb0ccdb 297 vy4 = y4;
tim008 0:17d69bb0ccdb 298 }
tim008 0:17d69bb0ccdb 299 else
tim008 0:17d69bb0ccdb 300 {
tim008 0:17d69bb0ccdb 301 vx4 = -1;
tim008 0:17d69bb0ccdb 302 vy4 = -1;
tim008 0:17d69bb0ccdb 303 }
tim008 0:17d69bb0ccdb 304 }
tim008 0:17d69bb0ccdb 305
tim008 0:17d69bb0ccdb 306 if ( VRy < 1.0/3.0 && y2 > 0)
tim008 0:17d69bb0ccdb 307 {
tim008 0:17d69bb0ccdb 308 if( vx1 == -1)
tim008 0:17d69bb0ccdb 309 lcd.clearPixel(x1,y1);
tim008 0:17d69bb0ccdb 310 if( vx2 == -1)
tim008 0:17d69bb0ccdb 311 lcd.clearPixel(x2,y2);
tim008 0:17d69bb0ccdb 312 if( vx3 == -1)
tim008 0:17d69bb0ccdb 313 lcd.clearPixel(x3,y3);
tim008 0:17d69bb0ccdb 314 if( vx4 == -1)
tim008 0:17d69bb0ccdb 315 lcd.clearPixel(x4,y4);
tim008 0:17d69bb0ccdb 316 lcd.refresh();
tim008 0:17d69bb0ccdb 317 lcd.setXYAddress(0,0);
tim008 0:17d69bb0ccdb 318
tim008 0:17d69bb0ccdb 319 y1--;
tim008 0:17d69bb0ccdb 320 y2--;
tim008 0:17d69bb0ccdb 321 y3--;
tim008 0:17d69bb0ccdb 322 y4--;
tim008 0:17d69bb0ccdb 323
tim008 0:17d69bb0ccdb 324 if( lcd.getPixel(x1, y1))
tim008 0:17d69bb0ccdb 325 {
tim008 0:17d69bb0ccdb 326 vx1 = x1;
tim008 0:17d69bb0ccdb 327 vy1 = y1;
tim008 0:17d69bb0ccdb 328 }
tim008 0:17d69bb0ccdb 329 else
tim008 0:17d69bb0ccdb 330 {
tim008 0:17d69bb0ccdb 331 vx1 = -1;
tim008 0:17d69bb0ccdb 332 vy1 = -1;
tim008 0:17d69bb0ccdb 333 }
tim008 0:17d69bb0ccdb 334 if( lcd.getPixel(x2, y2))
tim008 0:17d69bb0ccdb 335 {
tim008 0:17d69bb0ccdb 336 vx2 = x2;
tim008 0:17d69bb0ccdb 337 vy2 = y2;
tim008 0:17d69bb0ccdb 338 }
tim008 0:17d69bb0ccdb 339 else
tim008 0:17d69bb0ccdb 340 {
tim008 0:17d69bb0ccdb 341 vx2 = -1;
tim008 0:17d69bb0ccdb 342 vy2 = -1;
tim008 0:17d69bb0ccdb 343 }
tim008 0:17d69bb0ccdb 344
tim008 0:17d69bb0ccdb 345 if( lcd.getPixel(x3, y3))
tim008 0:17d69bb0ccdb 346 {
tim008 0:17d69bb0ccdb 347 vx3 = x3;
tim008 0:17d69bb0ccdb 348 vy3 = y3;
tim008 0:17d69bb0ccdb 349 }
tim008 0:17d69bb0ccdb 350 else
tim008 0:17d69bb0ccdb 351 {
tim008 0:17d69bb0ccdb 352 vx3 = -1;
tim008 0:17d69bb0ccdb 353 vy3 = -1;
tim008 0:17d69bb0ccdb 354 }
tim008 0:17d69bb0ccdb 355
tim008 0:17d69bb0ccdb 356 if( lcd.getPixel(x4, y4))
tim008 0:17d69bb0ccdb 357 {
tim008 0:17d69bb0ccdb 358 vx4 = x4;
tim008 0:17d69bb0ccdb 359 vy4 = y4;
tim008 0:17d69bb0ccdb 360 }
tim008 0:17d69bb0ccdb 361 else
tim008 0:17d69bb0ccdb 362 {
tim008 0:17d69bb0ccdb 363 vx4 = -1;
tim008 0:17d69bb0ccdb 364 vy4 = -1;
tim008 0:17d69bb0ccdb 365 }
tim008 0:17d69bb0ccdb 366 }
tim008 0:17d69bb0ccdb 367 else if (VRy > 2.0/3.0 && y4 < 83)
tim008 0:17d69bb0ccdb 368 {
tim008 0:17d69bb0ccdb 369 if( vx1 == -1)
tim008 0:17d69bb0ccdb 370 lcd.clearPixel(x1,y1);
tim008 0:17d69bb0ccdb 371 if( vx2 == -1)
tim008 0:17d69bb0ccdb 372 lcd.clearPixel(x2,y2);
tim008 0:17d69bb0ccdb 373 if( vx3 == -1)
tim008 0:17d69bb0ccdb 374 lcd.clearPixel(x3,y3);
tim008 0:17d69bb0ccdb 375 if( vx4 == -1)
tim008 0:17d69bb0ccdb 376 lcd.clearPixel(x4,y4);
tim008 0:17d69bb0ccdb 377 lcd.refresh();
tim008 0:17d69bb0ccdb 378 lcd.setXYAddress(0,0);
tim008 0:17d69bb0ccdb 379
tim008 0:17d69bb0ccdb 380 y1++;
tim008 0:17d69bb0ccdb 381 y2++;
tim008 0:17d69bb0ccdb 382 y3++;
tim008 0:17d69bb0ccdb 383 y4++;
tim008 0:17d69bb0ccdb 384
tim008 0:17d69bb0ccdb 385 if( lcd.getPixel(x1, y1))
tim008 0:17d69bb0ccdb 386 {
tim008 0:17d69bb0ccdb 387 vx1 = x1;
tim008 0:17d69bb0ccdb 388 vy1 = y1;
tim008 0:17d69bb0ccdb 389 }
tim008 0:17d69bb0ccdb 390 else
tim008 0:17d69bb0ccdb 391 {
tim008 0:17d69bb0ccdb 392 vx1 = -1;
tim008 0:17d69bb0ccdb 393 vy1 = -1;
tim008 0:17d69bb0ccdb 394 }
tim008 0:17d69bb0ccdb 395 if( lcd.getPixel(x2, y2))
tim008 0:17d69bb0ccdb 396 {
tim008 0:17d69bb0ccdb 397 vx2 = x2;
tim008 0:17d69bb0ccdb 398 vy2 = y2;
tim008 0:17d69bb0ccdb 399 }
tim008 0:17d69bb0ccdb 400 else
tim008 0:17d69bb0ccdb 401 {
tim008 0:17d69bb0ccdb 402 vx2 = -1;
tim008 0:17d69bb0ccdb 403 vy2 = -1;
tim008 0:17d69bb0ccdb 404 }
tim008 0:17d69bb0ccdb 405
tim008 0:17d69bb0ccdb 406 if( lcd.getPixel(x3, y3))
tim008 0:17d69bb0ccdb 407 {
tim008 0:17d69bb0ccdb 408 vx3 = x3;
tim008 0:17d69bb0ccdb 409 vy3 = y3;
tim008 0:17d69bb0ccdb 410 }
tim008 0:17d69bb0ccdb 411 else
tim008 0:17d69bb0ccdb 412 {
tim008 0:17d69bb0ccdb 413 vx3 = -1;
tim008 0:17d69bb0ccdb 414 vy3 = -1;
tim008 0:17d69bb0ccdb 415 }
tim008 0:17d69bb0ccdb 416
tim008 0:17d69bb0ccdb 417 if( lcd.getPixel(x4, y4))
tim008 0:17d69bb0ccdb 418 {
tim008 0:17d69bb0ccdb 419 vx4 = x4;
tim008 0:17d69bb0ccdb 420 vy4 = y4;
tim008 0:17d69bb0ccdb 421 }
tim008 0:17d69bb0ccdb 422 else
tim008 0:17d69bb0ccdb 423 {
tim008 0:17d69bb0ccdb 424 vx4 = -1;
tim008 0:17d69bb0ccdb 425 vy4 = -1;
tim008 0:17d69bb0ccdb 426 }
tim008 0:17d69bb0ccdb 427
tim008 0:17d69bb0ccdb 428 }
tim008 0:17d69bb0ccdb 429
tim008 0:17d69bb0ccdb 430
tim008 0:17d69bb0ccdb 431 lcd.setPixel(x1,y1);
tim008 0:17d69bb0ccdb 432 lcd.setPixel(x2,y2);
tim008 0:17d69bb0ccdb 433 lcd.setPixel(x3,y3);
tim008 0:17d69bb0ccdb 434 lcd.setPixel(x4,y4);
tim008 0:17d69bb0ccdb 435 lcd.refresh();
tim008 0:17d69bb0ccdb 436 lcd.setXYAddress(0,0);
tim008 0:17d69bb0ccdb 437
tim008 0:17d69bb0ccdb 438 wait(0.01);
tim008 0:17d69bb0ccdb 439
tim008 0:17d69bb0ccdb 440 }
tim008 0:17d69bb0ccdb 441 }