Attempts to merge SPI_TFT2 & SPI_TFT_ILI9341
Dependencies: SPI_TFTx2 TFT_fonts TOUCH_TFTx2 mbed
Fork of CANary by
Diff: main.cpp
- Revision:
- 42:4533b13b297d
- Parent:
- 41:8d4609ea7259
- Child:
- 43:e7f6f80590e3
diff -r 8d4609ea7259 -r 4533b13b297d main.cpp --- a/main.cpp Sun Mar 31 18:57:36 2013 +0000 +++ b/main.cpp Sun Mar 31 20:38:15 2013 +0000 @@ -63,6 +63,7 @@ volatile bool canIdle; volatile bool userIdle; bool touched=false; //flag to read touchscreen +unsigned char whichTouched = 0; char counter = 0; unsigned char dMode[2] = {mainScreen,brakeScreen}; //display mode unsigned char sMode = 0; // setup mode @@ -295,9 +296,9 @@ if (secsNoTouch<2) {// Recently touched secsNoTouch +=2; // increment to prevent double touch if (lastTouch.x>320){ - i=1; + whichTouched=1; } else { - i=0; + whichTouched=0; } if (sMode==0) sMode = 1; //sprintf(sTemp,"button %d %d,%d %d\n",i,buttonX(lastTouch.x,3),buttonY(lastTouch.y,3),lastTouch.x); @@ -309,13 +310,13 @@ switch (buttonX(lastTouch.x,3)*10+buttonY(lastTouch.y,3)) { case 00: case 30: - if (dMode[i]==monitorScreen||dMode[i]==changedScreen) { + if (dMode[whichTouched]==monitorScreen||dMode[whichTouched]==changedScreen) { indexOffset=indexOffset>4?indexOffset-4:1; - } else if (dMode[i]==config1Screen) { + } else if (dMode[whichTouched]==config1Screen) { wait_ms(500); tt.background(Black); tt.calibrate(); - } else if (dMode[i]==playbackScreen) { // slower + } else if (dMode[whichTouched]==playbackScreen) { // slower playbackInt *=2; if(playbackEn){ playback.detach(); @@ -325,14 +326,14 @@ break; case 10: case 40: - if (dMode[i]==changedScreen) { + if (dMode[whichTouched]==changedScreen) { for(j=0;j<100;j++) msgChanged[j]=0; // clear changed data - lastDMode[i]=99;//force refresh - } else if (dMode[i]==cpScreen) { + lastDMode[whichTouched]=99;//force refresh + } else if (dMode[whichTouched]==cpScreen) { pollCP=true; - } else if (dMode[i]==config1Screen) { + } else if (dMode[whichTouched]==config1Screen) { mbed_reset(); - } else if (dMode[i]==playbackScreen) { // pause/unpause + } else if (dMode[whichTouched]==playbackScreen) { // pause/unpause playbackEn=!playbackEn; if(playbackEn){ playback.attach(&playbackISR,playbackInt); @@ -343,14 +344,14 @@ break; case 20: case 50: - if (dMode[i]==monitorScreen||dMode[i]==changedScreen) { + if (dMode[whichTouched]==monitorScreen||dMode[whichTouched]==changedScreen) { indexOffset=indexOffset<77?indexOffset+4:80; - } else if (dMode[i]==config1Screen) { + } else if (dMode[whichTouched]==config1Screen) { sprintf(sTemp,"Saving config file.\n"); logMsg(sTemp); saveConfig(); spkr.beep(2000,0.25); - } else if (dMode[i]==playbackScreen) { // faster + } else if (dMode[whichTouched]==playbackScreen) { // faster if(playbackInt>.002){ playbackInt/=2; if(playbackEn){ @@ -362,24 +363,24 @@ break; case 01: case 31: - if (dMode[i]==config1Screen) { + if (dMode[whichTouched]==config1Screen) { logEn = !logEn; if (!logEn) repeatPoll=false; // disable auto polling, too - } else if (dMode[i]==dateScreen){ + } else if (dMode[whichTouched]==dateScreen){ dtMode=(dtMode<6)?dtMode+1:0; - lastDMode[i]=99; + lastDMode[whichTouched]=99; } break; case 11: case 41: - if (dMode[i]==config1Screen){ + if (dMode[whichTouched]==config1Screen){ repeatPoll = !repeatPoll&&logEn; if (repeatPoll) { autoPoll.attach(&autoPollISR,pollInt); } else { autoPoll.detach(); } - } else if (dMode[i]==playbackScreen) { + } else if (dMode[whichTouched]==playbackScreen) { // Start/stop playback if(!playbackOpen){ if(!logOpen){ @@ -406,24 +407,24 @@ playbackOpen=false; can1.attach(&recieve1);// Restore CAN data recieve can2.attach(&recieve2); - lastDMode[i]=99; + lastDMode[whichTouched]=99; } playbackEn=false; - } else if (dMode[i]==dateScreen){ + } else if (dMode[whichTouched]==dateScreen){ upDate(dtMode,true); - lastDMode[i]=99; + lastDMode[whichTouched]=99; } break; case 21: case 51: - if (dMode[i]==dateScreen){ + if (dMode[whichTouched]==dateScreen){ upDate(dtMode,false); - lastDMode[i]=99; + lastDMode[whichTouched]=99; } break; case 02: case 32: - dMode[i]=dMode[i]>0?dMode[i]-1:maxScreens; + dMode[whichTouched]=dMode[whichTouched]>0?dMode[whichTouched]-1:maxScreens; break; case 12: case 42: @@ -431,7 +432,7 @@ break; case 22: case 52: - dMode[i]=dMode[i]<maxScreens?dMode[i]+1:0; + dMode[whichTouched]=dMode[whichTouched]<maxScreens?dMode[whichTouched]+1:0; break; default: break;