RGB LEDs Control
Dependencies: mbed QEI PololuLedStrip
RgbControl.cpp
00001 #include "mbed.h" 00002 #include "QEI.h" 00003 #include "PololuLedStrip.h" 00004 00005 00006 PololuLedStrip led7(PB_0); 00007 PololuLedStrip led6(PA_12); 00008 PololuLedStrip led5(PB_6); 00009 PololuLedStrip led4(PB_1); 00010 PololuLedStrip led3(PA_8); 00011 PololuLedStrip led2(PA_11); 00012 PololuLedStrip led1(PA_3); 00013 PololuLedStrip led0(PA_4); 00014 00015 #define LED_COUNT 16 00016 00017 rgb_color colors0[LED_COUNT]; 00018 rgb_color colors1[LED_COUNT]; 00019 rgb_color colors2[LED_COUNT]; 00020 rgb_color colors3[LED_COUNT]; 00021 rgb_color colors4[LED_COUNT]; 00022 rgb_color colors5[LED_COUNT]; 00023 rgb_color colors6[LED_COUNT]; 00024 rgb_color colors7[LED_COUNT]; 00025 00026 Ticker led; 00027 00028 extern QEI re; 00029 extern int R; 00030 extern int G; 00031 extern int B; 00032 extern Serial bt; 00033 extern int dayLed; 00034 00035 void LedOn1() 00036 { 00037 00038 int pulse = re.getPulses(); 00039 int d = pulse/200; 00040 00041 if(48>=d) 00042 { 00043 00044 uint8_t r[8]; 00045 uint8_t g[8]; 00046 uint8_t b[8]; 00047 00048 for (int i=0 ; i<8 ; i++) 00049 { 00050 int n = (i+1); 00051 int moveL_r = ((R/6)*(d-1*n*6))+R; 00052 int moveL_g = ((G/6)*(d-1*n*6))+G; 00053 int moveL_b = ((B/6)*(d-1*n*6))+B; 00054 00055 moveL_r = (0 >= moveL_r) ? 0: moveL_r; 00056 moveL_g = (0 >= moveL_g) ? 0: moveL_g; 00057 moveL_b = (0 >= moveL_b) ? 0: moveL_b; 00058 00059 moveL_r = (R <= moveL_r) ? R: moveL_r; 00060 moveL_g = (G <= moveL_g) ? G: moveL_g; 00061 moveL_b = (B <= moveL_b) ? B: moveL_b; 00062 00063 00064 r[i] = moveL_r; 00065 g[i] = moveL_g; 00066 b[i] = moveL_b; 00067 00068 } 00069 00070 00071 00072 for(int i=0; i<16; i++) 00073 { 00074 colors0[i] = (rgb_color){ r[0], g[0], b[0] }; 00075 colors1[i] = (rgb_color){ r[1], g[1], b[1] }; 00076 colors2[i] = (rgb_color){ r[2], g[2], b[2] }; 00077 colors3[i] = (rgb_color){ r[3], g[3], b[3] }; 00078 colors4[i] = (rgb_color){ r[4], g[4], b[4] }; 00079 colors5[i] = (rgb_color){ r[5], g[5], b[5] }; 00080 colors6[i] = (rgb_color){ r[6], g[6], b[6] }; 00081 colors7[i] = (rgb_color){ r[7], g[7], b[7] }; 00082 } 00083 00084 00085 led0.write(colors0, LED_COUNT); 00086 led1.write(colors1, LED_COUNT); 00087 led2.write(colors2, LED_COUNT); 00088 led3.write(colors3, LED_COUNT); 00089 led4.write(colors4, LED_COUNT); 00090 led5.write(colors5, LED_COUNT); 00091 led6.write(colors6, LED_COUNT); 00092 led7.write(colors7, LED_COUNT); 00093 00094 } 00095 00096 else if(52<=d) 00097 { 00098 uint8_t r[8]; 00099 uint8_t g[8]; 00100 uint8_t b[8]; 00101 00102 for (int i=0 ; i<8 ; i++) 00103 { 00104 int moveR_r = -1*(R/6)*(d-1*(52+(i+1)*6))+R; 00105 int moveR_g = -1*(G/6)*(d-1*(52+(i+1)*6))+G; 00106 int moveR_b = -1*(B/6)*(d-1*(52+(i+1)*6))+B; 00107 00108 00109 moveR_r = (0 >= moveR_r) ? 0: moveR_r; 00110 moveR_g = (0 >= moveR_g) ? 0: moveR_g; 00111 moveR_b = (0 >= moveR_b) ? 0: moveR_b; 00112 00113 moveR_r = (R <= moveR_r) ? R: moveR_r; 00114 moveR_g = (G <= moveR_g) ? G: moveR_g; 00115 moveR_b = (B <= moveR_b) ? B: moveR_b; 00116 00117 00118 r[i] = moveR_r; 00119 g[i] = moveR_g; 00120 b[i] = moveR_b; 00121 } 00122 00123 00124 00125 for(int i=0; i<16; i++) 00126 { 00127 colors0[i] = (rgb_color){ r[0], g[0], b[0] }; 00128 colors1[i] = (rgb_color){ r[1], g[1], b[1] }; 00129 colors2[i] = (rgb_color){ r[2], g[2], b[2] }; 00130 colors3[i] = (rgb_color){ r[3], g[3], b[3] }; 00131 colors4[i] = (rgb_color){ r[4], g[4], b[4] }; 00132 colors5[i] = (rgb_color){ r[5], g[5], b[5] }; 00133 colors6[i] = (rgb_color){ r[6], g[6], b[6] }; 00134 colors7[i] = (rgb_color){ r[7], g[7], b[7] }; 00135 } 00136 00137 00138 led0.write(colors0, LED_COUNT); 00139 led1.write(colors1, LED_COUNT); 00140 led2.write(colors2, LED_COUNT); 00141 led3.write(colors3, LED_COUNT); 00142 led4.write(colors4, LED_COUNT); 00143 led5.write(colors5, LED_COUNT); 00144 led6.write(colors6, LED_COUNT); 00145 led7.write(colors7, LED_COUNT); 00146 00147 } 00148 00149 else 00150 { 00151 00152 for(int i=0; i<16; i++) 00153 { 00154 colors0[i] = (rgb_color){ R, G, B }; 00155 colors1[i] = (rgb_color){ R, G, B }; 00156 colors2[i] = (rgb_color){ R, G, B }; 00157 colors3[i] = (rgb_color){ R, G, B }; 00158 colors4[i] = (rgb_color){ R, G, B }; 00159 colors5[i] = (rgb_color){ R, G, B }; 00160 colors6[i] = (rgb_color){ R, G, B }; 00161 colors7[i] = (rgb_color){ R, G, B }; 00162 } 00163 00164 00165 led0.write(colors0, LED_COUNT); 00166 led1.write(colors1, LED_COUNT); 00167 led2.write(colors2, LED_COUNT); 00168 led3.write(colors3, LED_COUNT); 00169 led4.write(colors4, LED_COUNT); 00170 led5.write(colors5, LED_COUNT); 00171 led6.write(colors6, LED_COUNT); 00172 led7.write(colors7, LED_COUNT); 00173 } 00174 00175 } 00176 00177 00178 void LedOn2() 00179 { 00180 00181 int pulse = re.getPulses(); 00182 int p = pulse/200; 00183 uint8_t k[8]; 00184 int n = 8; 00185 int d = 6; 00186 double bi= 0.02f; 00187 00188 uint8_t r[8]; 00189 uint8_t g[8]; 00190 uint8_t b[8]; 00191 00192 for (int i=0 ; i<8 ; i++) 00193 { 00194 k[i] = ((n-i)*d)/log((1/bi)+1); 00195 } 00196 00197 00198 if(48>=p) 00199 { 00200 00201 00202 for (int i=0 ; i<8 ; i++) 00203 { 00204 00205 int moveL_r = R*bi*(10^((p-1*i*d)/k[i])-1); 00206 int moveL_g = G*bi*(10^((p-1*i*d)/k[i])-1); 00207 int moveL_b = B*bi*(10^((p-1*i*d)/k[i])-1);; 00208 00209 moveL_r = (0 >= moveL_r) ? 0: moveL_r; 00210 moveL_g = (0 >= moveL_g) ? 0: moveL_g; 00211 moveL_b = (0 >= moveL_b) ? 0: moveL_b; 00212 00213 moveL_r = (R <= moveL_r) ? R: moveL_r; 00214 moveL_g = (G <= moveL_g) ? G: moveL_g; 00215 moveL_b = (B <= moveL_b) ? B: moveL_b; 00216 00217 r[i] = moveL_r; 00218 g[i] = moveL_g; 00219 b[i] = moveL_b; 00220 00221 } 00222 00223 00224 for(int i=0; i<16; i++) 00225 { 00226 colors0[i] = (rgb_color){ r[0], g[0], b[0] }; 00227 colors1[i] = (rgb_color){ r[1], g[1], b[1] }; 00228 colors2[i] = (rgb_color){ r[2], g[2], b[2] }; 00229 colors3[i] = (rgb_color){ r[3], g[3], b[3] }; 00230 colors4[i] = (rgb_color){ r[4], g[4], b[4] }; 00231 colors5[i] = (rgb_color){ r[5], g[5], b[5] }; 00232 colors6[i] = (rgb_color){ r[6], g[6], b[6] }; 00233 colors7[i] = (rgb_color){ r[7], g[7], b[7] }; 00234 } 00235 00236 00237 led0.write(colors0, LED_COUNT); 00238 led1.write(colors1, LED_COUNT); 00239 led2.write(colors2, LED_COUNT); 00240 led3.write(colors3, LED_COUNT); 00241 led4.write(colors4, LED_COUNT); 00242 led5.write(colors5, LED_COUNT); 00243 led6.write(colors6, LED_COUNT); 00244 led7.write(colors7, LED_COUNT); 00245 00246 00247 00248 } 00249 00250 else if(49<=p) 00251 { 00252 00253 00254 for (int i=0 ; i<8 ; i++) 00255 { 00256 00257 int moveR_r = R*bi*(10^((-1*p+(n+1+i)*d)/k[n-1-i])-1); 00258 int moveR_g = G*bi*(10^((-1*p+(n+1+i)*d)/k[n-1-i])-1); 00259 int moveR_b = B*bi*(10^((-1*p+(n+1+i)*d)/k[n-1-i])-1); 00260 00261 moveR_r = (0 >= moveR_r) ? 0: moveR_r; 00262 moveR_g = (0 >= moveR_g) ? 0: moveR_g; 00263 moveR_b = (0 >= moveR_b) ? 0: moveR_b; 00264 00265 moveR_r = (R <= moveR_r) ? R: moveR_r; 00266 moveR_g = (G <= moveR_g) ? G: moveR_g; 00267 moveR_b = (B <= moveR_b) ? B: moveR_b; 00268 00269 r[i] = moveR_r; 00270 g[i] = moveR_g; 00271 b[i] = moveR_b; 00272 00273 } 00274 00275 00276 00277 for(int i=0; i<16; i++) 00278 { 00279 colors0[i] = (rgb_color){ r[0], g[0], b[0] }; 00280 colors1[i] = (rgb_color){ r[1], g[1], b[1] }; 00281 colors2[i] = (rgb_color){ r[2], g[2], b[2] }; 00282 colors3[i] = (rgb_color){ r[3], g[3], b[3] }; 00283 colors4[i] = (rgb_color){ r[4], g[4], b[4] }; 00284 colors5[i] = (rgb_color){ r[5], g[5], b[5] }; 00285 colors6[i] = (rgb_color){ r[6], g[6], b[6] }; 00286 colors7[i] = (rgb_color){ r[7], g[7], b[7] }; 00287 } 00288 00289 00290 led0.write(colors0, LED_COUNT); 00291 led1.write(colors1, LED_COUNT); 00292 led2.write(colors2, LED_COUNT); 00293 led3.write(colors3, LED_COUNT); 00294 led4.write(colors4, LED_COUNT); 00295 led5.write(colors5, LED_COUNT); 00296 led6.write(colors6, LED_COUNT); 00297 led7.write(colors7, LED_COUNT); 00298 00299 } 00300 00301 // else 00302 // { 00303 // 00304 // for(int i=0; i<16; i++) 00305 // { 00306 // colors0[i] = (rgb_color){ R, G, B }; 00307 // colors1[i] = (rgb_color){ R, G, B }; 00308 // colors2[i] = (rgb_color){ R, G, B }; 00309 // colors3[i] = (rgb_color){ R, G, B }; 00310 // colors4[i] = (rgb_color){ R, G, B }; 00311 // colors5[i] = (rgb_color){ R, G, B }; 00312 // colors6[i] = (rgb_color){ R, G, B }; 00313 // colors7[i] = (rgb_color){ R, G, B }; 00314 // } 00315 // 00316 // 00317 // led0.write(colors0, LED_COUNT); 00318 // led1.write(colors1, LED_COUNT); 00319 // led2.write(colors2, LED_COUNT); 00320 // led3.write(colors3, LED_COUNT); 00321 // led4.write(colors4, LED_COUNT); 00322 // led5.write(colors5, LED_COUNT); 00323 // led6.write(colors6, LED_COUNT); 00324 // led7.write(colors7, LED_COUNT); 00325 // } 00326 00327 } 00328 00329 void LedOn3() 00330 { 00331 00332 int pulse = re.getPulses(); 00333 int d = pulse/200; 00334 00335 00336 if(48>=d) 00337 { 00338 00339 uint8_t r[8]; 00340 uint8_t g[8]; 00341 uint8_t b[8]; 00342 00343 00344 for (int i=0 ; i<8 ; i++) 00345 { 00346 int moveL_r = ((R/(48-6*(i)))+1)*(d-48)+R; 00347 int moveL_g = ((G/(48-6*(i)))+1)*(d-48)+G; 00348 int moveL_b = ((B/(48-6*(i)))+1)*(d-48)+B; 00349 00350 r[i] = (0 >= moveL_r) ? 0: moveL_r; 00351 g[i] = (0 >= moveL_g) ? 0: moveL_g; 00352 b[i] = (0 >= moveL_b) ? 0: moveL_b; 00353 } 00354 00355 00356 00357 for(int i=0; i<16; i++) 00358 { 00359 colors0[i] = (rgb_color){ r[0], g[0], b[0] }; 00360 colors1[i] = (rgb_color){ r[1], g[1], b[1] }; 00361 colors2[i] = (rgb_color){ r[2], g[2], b[2] }; 00362 colors3[i] = (rgb_color){ r[3], g[3], b[3] }; 00363 colors4[i] = (rgb_color){ r[4], g[4], b[4] }; 00364 colors5[i] = (rgb_color){ r[5], g[5], b[5] }; 00365 colors6[i] = (rgb_color){ r[6], g[6], b[6] }; 00366 colors7[i] = (rgb_color){ r[7], g[7], b[7] }; 00367 } 00368 00369 00370 led0.write(colors0, LED_COUNT); 00371 led1.write(colors1, LED_COUNT); 00372 led2.write(colors2, LED_COUNT); 00373 led3.write(colors3, LED_COUNT); 00374 led4.write(colors4, LED_COUNT); 00375 led5.write(colors5, LED_COUNT); 00376 led6.write(colors6, LED_COUNT); 00377 led7.write(colors7, LED_COUNT); 00378 00379 } 00380 00381 else if(52<=d) 00382 { 00383 uint8_t r[8]; 00384 uint8_t g[8]; 00385 uint8_t b[8]; 00386 00387 for (int i=0 ; i<8 ; i++) 00388 { 00389 int moveR_r = ((-1*R/(6+6*(i)))-1)*(d-52)+R; 00390 int moveR_g = ((-1*G/(6+6*(i)))-1)*(d-52)+G; 00391 int moveR_b = ((-1*B/(6+6*(i)))-1)*(d-52)+B; 00392 00393 r[i] = (0 >= moveR_r) ? 0:moveR_r ; 00394 g[i] = (0 >= moveR_g) ? 0:moveR_g ; 00395 b[i] = (0 >= moveR_b) ? 0:moveR_b ; 00396 } 00397 00398 00399 00400 for(int i=0; i<16; i++) 00401 { 00402 colors0[i] = (rgb_color){ r[0], g[0], b[0] }; 00403 colors1[i] = (rgb_color){ r[1], g[1], b[1] }; 00404 colors2[i] = (rgb_color){ r[2], g[2], b[2] }; 00405 colors3[i] = (rgb_color){ r[3], g[3], b[3] }; 00406 colors4[i] = (rgb_color){ r[4], g[4], b[4] }; 00407 colors5[i] = (rgb_color){ r[5], g[5], b[5] }; 00408 colors6[i] = (rgb_color){ r[6], g[6], b[6] }; 00409 colors7[i] = (rgb_color){ r[7], g[7], b[7] }; 00410 } 00411 00412 00413 led0.write(colors0, LED_COUNT); 00414 led1.write(colors1, LED_COUNT); 00415 led2.write(colors2, LED_COUNT); 00416 led3.write(colors3, LED_COUNT); 00417 led4.write(colors4, LED_COUNT); 00418 led5.write(colors5, LED_COUNT); 00419 led6.write(colors6, LED_COUNT); 00420 led7.write(colors7, LED_COUNT); 00421 00422 } 00423 00424 else 00425 { 00426 00427 for(int i=0; i<16; i++) 00428 { 00429 colors0[i] = (rgb_color){ R, G, B }; 00430 colors1[i] = (rgb_color){ R, G, B }; 00431 colors2[i] = (rgb_color){ R, G, B }; 00432 colors3[i] = (rgb_color){ R, G, B }; 00433 colors4[i] = (rgb_color){ R, G, B }; 00434 colors5[i] = (rgb_color){ R, G, B }; 00435 colors6[i] = (rgb_color){ R, G, B }; 00436 colors7[i] = (rgb_color){ R, G, B }; 00437 } 00438 00439 00440 led0.write(colors0, LED_COUNT); 00441 led1.write(colors1, LED_COUNT); 00442 led2.write(colors2, LED_COUNT); 00443 led3.write(colors3, LED_COUNT); 00444 led4.write(colors4, LED_COUNT); 00445 led5.write(colors5, LED_COUNT); 00446 led6.write(colors6, LED_COUNT); 00447 led7.write(colors7, LED_COUNT); 00448 } 00449 00450 } 00451 00452 void MoonPhase() 00453 { 00454 00455 int d = dayLed;; 00456 00457 if(48>=d) 00458 { 00459 00460 uint8_t r[8]; 00461 uint8_t g[8]; 00462 uint8_t b[8]; 00463 00464 for (int i=0 ; i<8 ; i++) 00465 { 00466 int n = (i+1); 00467 int moveL_r = ((R/6)*(d-1*n*6))+R; 00468 int moveL_g = ((G/6)*(d-1*n*6))+G; 00469 int moveL_b = ((B/6)*(d-1*n*6))+B; 00470 00471 moveL_r = (0 >= moveL_r) ? 0: moveL_r; 00472 moveL_g = (0 >= moveL_g) ? 0: moveL_g; 00473 moveL_b = (0 >= moveL_b) ? 0: moveL_b; 00474 00475 moveL_r = (R <= moveL_r) ? R: moveL_r; 00476 moveL_g = (G <= moveL_g) ? G: moveL_g; 00477 moveL_b = (B <= moveL_b) ? B: moveL_b; 00478 00479 00480 r[i] = moveL_r; 00481 g[i] = moveL_g; 00482 b[i] = moveL_b; 00483 00484 } 00485 00486 00487 00488 for(int i=0; i<16; i++) 00489 { 00490 colors0[i] = (rgb_color){ r[0], g[0], b[0] }; 00491 colors1[i] = (rgb_color){ r[1], g[1], b[1] }; 00492 colors2[i] = (rgb_color){ r[2], g[2], b[2] }; 00493 colors3[i] = (rgb_color){ r[3], g[3], b[3] }; 00494 colors4[i] = (rgb_color){ r[4], g[4], b[4] }; 00495 colors5[i] = (rgb_color){ r[5], g[5], b[5] }; 00496 colors6[i] = (rgb_color){ r[6], g[6], b[6] }; 00497 colors7[i] = (rgb_color){ r[7], g[7], b[7] }; 00498 } 00499 00500 00501 led0.write(colors0, LED_COUNT); 00502 led1.write(colors1, LED_COUNT); 00503 led2.write(colors2, LED_COUNT); 00504 led3.write(colors3, LED_COUNT); 00505 led4.write(colors4, LED_COUNT); 00506 led5.write(colors5, LED_COUNT); 00507 led6.write(colors6, LED_COUNT); 00508 led7.write(colors7, LED_COUNT); 00509 00510 } 00511 00512 else if(52<=d) 00513 { 00514 uint8_t r[8]; 00515 uint8_t g[8]; 00516 uint8_t b[8]; 00517 00518 for (int i=0 ; i<8 ; i++) 00519 { 00520 int moveR_r = -1*(R/6)*(d-1*(52+(i+1)*6))+R; 00521 int moveR_g = -1*(G/6)*(d-1*(52+(i+1)*6))+G; 00522 int moveR_b = -1*(B/6)*(d-1*(52+(i+1)*6))+B; 00523 00524 00525 moveR_r = (0 >= moveR_r) ? 0: moveR_r; 00526 moveR_g = (0 >= moveR_g) ? 0: moveR_g; 00527 moveR_b = (0 >= moveR_b) ? 0: moveR_b; 00528 00529 moveR_r = (R <= moveR_r) ? R: moveR_r; 00530 moveR_g = (G <= moveR_g) ? G: moveR_g; 00531 moveR_b = (B <= moveR_b) ? B: moveR_b; 00532 00533 00534 r[i] = moveR_r; 00535 g[i] = moveR_g; 00536 b[i] = moveR_b; 00537 } 00538 00539 00540 00541 for(int i=0; i<16; i++) 00542 { 00543 colors0[i] = (rgb_color){ r[0], g[0], b[0] }; 00544 colors1[i] = (rgb_color){ r[1], g[1], b[1] }; 00545 colors2[i] = (rgb_color){ r[2], g[2], b[2] }; 00546 colors3[i] = (rgb_color){ r[3], g[3], b[3] }; 00547 colors4[i] = (rgb_color){ r[4], g[4], b[4] }; 00548 colors5[i] = (rgb_color){ r[5], g[5], b[5] }; 00549 colors6[i] = (rgb_color){ r[6], g[6], b[6] }; 00550 colors7[i] = (rgb_color){ r[7], g[7], b[7] }; 00551 } 00552 00553 00554 led0.write(colors0, LED_COUNT); 00555 led1.write(colors1, LED_COUNT); 00556 led2.write(colors2, LED_COUNT); 00557 led3.write(colors3, LED_COUNT); 00558 led4.write(colors4, LED_COUNT); 00559 led5.write(colors5, LED_COUNT); 00560 led6.write(colors6, LED_COUNT); 00561 led7.write(colors7, LED_COUNT); 00562 00563 } 00564 00565 else 00566 { 00567 00568 for(int i=0; i<16; i++) 00569 { 00570 colors0[i] = (rgb_color){ R, G, B }; 00571 colors1[i] = (rgb_color){ R, G, B }; 00572 colors2[i] = (rgb_color){ R, G, B }; 00573 colors3[i] = (rgb_color){ R, G, B }; 00574 colors4[i] = (rgb_color){ R, G, B }; 00575 colors5[i] = (rgb_color){ R, G, B }; 00576 colors6[i] = (rgb_color){ R, G, B }; 00577 colors7[i] = (rgb_color){ R, G, B }; 00578 } 00579 00580 00581 led0.write(colors0, LED_COUNT); 00582 led1.write(colors1, LED_COUNT); 00583 led2.write(colors2, LED_COUNT); 00584 led3.write(colors3, LED_COUNT); 00585 led4.write(colors4, LED_COUNT); 00586 led5.write(colors5, LED_COUNT); 00587 led6.write(colors6, LED_COUNT); 00588 led7.write(colors7, LED_COUNT); 00589 } 00590 00591 } 00592 00593 00594 void ModeSelect(int mode) 00595 { 00596 00597 switch(mode) 00598 { 00599 00600 case 0 : 00601 00602 led.detach(); 00603 00604 00605 break; 00606 00607 case 1 : 00608 led.detach(); 00609 00610 R = 119; 00611 G = 66; 00612 B = 255; 00613 00614 led.attach(&LedOn1, 0.05); 00615 00616 break; 00617 00618 case 2 : 00619 00620 led.detach(); 00621 00622 R = 119; 00623 G = 66; 00624 B = 255; 00625 00626 led.attach(&LedOn2, 0.05); 00627 break; 00628 00629 case 3 : 00630 00631 led.detach(); 00632 00633 R = 119; 00634 G = 66; 00635 B = 255; 00636 00637 led.attach(&LedOn3, 0.05); 00638 00639 break; 00640 00641 case 4 : 00642 00643 led.detach(); 00644 00645 R = 119; 00646 G = 66; 00647 B = 255; 00648 00649 led.attach(&MoonPhase, 0.05); 00650 00651 break; 00652 00653 } 00654 00655 } 00656
Generated on Wed Jul 13 2022 16:50:59 by
1.7.2