Ken Segler
/
ezLCD4_mbed
Not Complete
Fork of Nucleo_rtos by
main.cpp@77:cd59ac40b3be, 2016-06-23 (annotated)
- Committer:
- codeman
- Date:
- Thu Jun 23 22:57:30 2016 +0000
- Revision:
- 77:cd59ac40b3be
- Parent:
- 73:d3b295249699
Not Complete;
Who changed what in which revision?
User | Revision | Line number | New contents of line |
---|---|---|---|
codeman | 77:cd59ac40b3be | 1 | |
bcostm | 73:d3b295249699 | 2 | #include "mbed.h" |
codeman | 77:cd59ac40b3be | 3 | #include "ezLCD405.h" |
bcostm | 73:d3b295249699 | 4 | |
codeman | 77:cd59ac40b3be | 5 | //DigitalOut led(LED1); |
bcostm | 73:d3b295249699 | 6 | |
bcostm | 73:d3b295249699 | 7 | InterruptIn button(USER_BUTTON); |
codeman | 77:cd59ac40b3be | 8 | Serial pc(SERIAL_TX, SERIAL_RX); |
codeman | 77:cd59ac40b3be | 9 | uint8_t counter; |
bcostm | 73:d3b295249699 | 10 | uint32_t button_pressed; |
codeman | 77:cd59ac40b3be | 11 | volatile uint32_t tick; |
codeman | 77:cd59ac40b3be | 12 | //Thread *thread2; |
codeman | 77:cd59ac40b3be | 13 | uint8_t buttonPressed; |
codeman | 77:cd59ac40b3be | 14 | uint8_t buttState[10]; |
codeman | 77:cd59ac40b3be | 15 | |
codeman | 77:cd59ac40b3be | 16 | //ezLCD4 lcd(PB_6,PA_10); //tx,rx |
codeman | 77:cd59ac40b3be | 17 | |
codeman | 77:cd59ac40b3be | 18 | ezLCD4 lcd(PG_14,PG_9); //tx,rx |
bcostm | 73:d3b295249699 | 19 | |
codeman | 77:cd59ac40b3be | 20 | //ezLCD4 lcd2(PA_11, PA_12); |
codeman | 77:cd59ac40b3be | 21 | const char *textBoxData[3][13]; |
codeman | 77:cd59ac40b3be | 22 | |
codeman | 77:cd59ac40b3be | 23 | |
codeman | 77:cd59ac40b3be | 24 | char temp[10]; |
codeman | 77:cd59ac40b3be | 25 | uint16_t count, ocount; |
codeman | 77:cd59ac40b3be | 26 | uint16_t ox, oy; |
codeman | 77:cd59ac40b3be | 27 | uint32_t countdown; |
codeman | 77:cd59ac40b3be | 28 | void drawScreen( void ); |
bcostm | 73:d3b295249699 | 29 | void button_press(void) |
bcostm | 73:d3b295249699 | 30 | { |
codeman | 77:cd59ac40b3be | 31 | pc.printf("Button Press\n"); |
codeman | 77:cd59ac40b3be | 32 | lcd.showSettings(); |
codeman | 77:cd59ac40b3be | 33 | // lcd.printString(12,14,3, 0x0001, "mbed RTOS ezLCD405 Demo"); |
codeman | 77:cd59ac40b3be | 34 | // lcd.printString(10,12,3,WHITE,"mbed RTOS ezLCD405 Demo"); |
codeman | 77:cd59ac40b3be | 35 | |
codeman | 77:cd59ac40b3be | 36 | //lcd.boxHFill(319,234); |
codeman | 77:cd59ac40b3be | 37 | // thread2->signal_set(0x1); |
bcostm | 73:d3b295249699 | 38 | } |
bcostm | 73:d3b295249699 | 39 | |
bcostm | 73:d3b295249699 | 40 | void led_thread(void const *argument) |
bcostm | 73:d3b295249699 | 41 | { |
bcostm | 73:d3b295249699 | 42 | while (true) { |
codeman | 77:cd59ac40b3be | 43 | // led = !led; |
codeman | 77:cd59ac40b3be | 44 | // Thread::wait(100); |
bcostm | 73:d3b295249699 | 45 | } |
bcostm | 73:d3b295249699 | 46 | } |
bcostm | 73:d3b295249699 | 47 | |
bcostm | 73:d3b295249699 | 48 | void button_thread(void const *argument) |
bcostm | 73:d3b295249699 | 49 | { |
bcostm | 73:d3b295249699 | 50 | while (true) { |
codeman | 77:cd59ac40b3be | 51 | // Thread::signal_wait(100); |
bcostm | 73:d3b295249699 | 52 | button_pressed++; |
bcostm | 73:d3b295249699 | 53 | } |
bcostm | 73:d3b295249699 | 54 | } |
bcostm | 73:d3b295249699 | 55 | |
codeman | 77:cd59ac40b3be | 56 | |
codeman | 77:cd59ac40b3be | 57 | void drawFrame(uint16_t sx , uint16_t sy, uint16_t ex , uint16_t ey , uint16_t topColor, uint16_t bottomColor, uint8_t radius) |
codeman | 77:cd59ac40b3be | 58 | { |
codeman | 77:cd59ac40b3be | 59 | lcd.setXY(sx, sy); |
codeman | 77:cd59ac40b3be | 60 | lcd.setColor(topColor); |
codeman | 77:cd59ac40b3be | 61 | lcd.setXY(sx+radius, sy+radius); |
codeman | 77:cd59ac40b3be | 62 | lcd.arc(radius,270,0); |
codeman | 77:cd59ac40b3be | 63 | lcd.setXY(sx+radius, sy); |
codeman | 77:cd59ac40b3be | 64 | lcd.lineTo(ex-radius,sy); //top |
codeman | 77:cd59ac40b3be | 65 | lcd.setXY(sx, sy+radius); |
codeman | 77:cd59ac40b3be | 66 | lcd.lineTo(sx,ey-radius); //left |
codeman | 77:cd59ac40b3be | 67 | lcd.setXY(sx+radius, ey-radius); |
codeman | 77:cd59ac40b3be | 68 | lcd.arc(radius,180,270); |
codeman | 77:cd59ac40b3be | 69 | |
codeman | 77:cd59ac40b3be | 70 | lcd.setXY(sx+radius, ey); |
codeman | 77:cd59ac40b3be | 71 | lcd.setColor(bottomColor); |
codeman | 77:cd59ac40b3be | 72 | lcd.lineTo(ex-radius,ey); //bottom |
codeman | 77:cd59ac40b3be | 73 | lcd.setXY(ex-radius, ey-radius); |
codeman | 77:cd59ac40b3be | 74 | lcd.arc(radius,90,180); |
codeman | 77:cd59ac40b3be | 75 | lcd.setXY(ex, ey-radius); |
codeman | 77:cd59ac40b3be | 76 | lcd.lineTo(ex,sy+radius); //right |
codeman | 77:cd59ac40b3be | 77 | lcd.setXY(ex-radius, sy+radius); |
codeman | 77:cd59ac40b3be | 78 | lcd.arc(radius,0,90); |
codeman | 77:cd59ac40b3be | 79 | } |
codeman | 77:cd59ac40b3be | 80 | void drawScreen( void ) |
codeman | 77:cd59ac40b3be | 81 | { |
codeman | 77:cd59ac40b3be | 82 | |
codeman | 77:cd59ac40b3be | 83 | lcd.setLayer(1); |
codeman | 77:cd59ac40b3be | 84 | lcd.setTouchProtocol( TOUCH_EZ_BUTTON ); |
codeman | 77:cd59ac40b3be | 85 | |
codeman | 77:cd59ac40b3be | 86 | lcd.createTextBox( 250 , 75, 500, 350, BLACK, GRAY, WHITE, 1, 6, " TextBox Test"); |
codeman | 77:cd59ac40b3be | 87 | lcd.setFont(4); |
codeman | 77:cd59ac40b3be | 88 | lcd.printString(75,5,2, YELLOW, "mbed ezLCD-405", FONT_NORTH, OUTLINE, WHITE ); |
codeman | 77:cd59ac40b3be | 89 | |
codeman | 77:cd59ac40b3be | 90 | |
codeman | 77:cd59ac40b3be | 91 | count =0 ; |
codeman | 77:cd59ac40b3be | 92 | ocount=0; |
codeman | 77:cd59ac40b3be | 93 | lcd.status=0; |
codeman | 77:cd59ac40b3be | 94 | |
codeman | 77:cd59ac40b3be | 95 | lcd.createButton( 0, 1, 0 , 1, 1, 10, 60, 200, 50, 0); |
codeman | 77:cd59ac40b3be | 96 | lcd.createButton( 1, 1, 2 , 3, 1, 10, 120, 200, 50, 0); |
codeman | 77:cd59ac40b3be | 97 | lcd.createButton( 2, 1, 4 , 5, 1, 10, 180, 200, 50, 0); |
codeman | 77:cd59ac40b3be | 98 | lcd.createButton( 3, 1, 6 , 7, 1, 10, 240, 200, 50, 0); |
codeman | 77:cd59ac40b3be | 99 | |
codeman | 77:cd59ac40b3be | 100 | |
codeman | 77:cd59ac40b3be | 101 | // lcd.createButton( 4, 1, 9 , 10, 1, 10, 300, 200, 50, 0); |
codeman | 77:cd59ac40b3be | 102 | } |
codeman | 77:cd59ac40b3be | 103 | |
codeman | 77:cd59ac40b3be | 104 | void specScreen( void ) |
codeman | 77:cd59ac40b3be | 105 | { |
codeman | 77:cd59ac40b3be | 106 | lcd.buttonsDeleteAll(); |
codeman | 77:cd59ac40b3be | 107 | lcd.cls(BLACK); |
codeman | 77:cd59ac40b3be | 108 | |
codeman | 77:cd59ac40b3be | 109 | lcd.createButton( 10, 1, 10 , 11, 10, 10, 420, 200, 50, 0); |
codeman | 77:cd59ac40b3be | 110 | lcd.printString(0,40,6,WHITE,"STM32F429 Cortex-4 Processor", FONT_NORTH, false, 0 ); |
codeman | 77:cd59ac40b3be | 111 | lcd.printString(0,70,6,WHITE,"5.6\" 640x480 16-bit Color TFT Display", FONT_NORTH, false, 0 ); |
codeman | 77:cd59ac40b3be | 112 | lcd.printString(0,100,6,WHITE,"Resistive or Capacitive Touch", FONT_NORTH, false, 0 ); |
codeman | 77:cd59ac40b3be | 113 | lcd.printString(0,130,6,WHITE,"SD Card Socket QuadBit SDIO", FONT_NORTH, false, 0 ); |
codeman | 77:cd59ac40b3be | 114 | lcd.printString(0,160,6,WHITE,"Battery Backed RTC", FONT_NORTH, false, 0 ); |
codeman | 77:cd59ac40b3be | 115 | lcd.printString(0,190,6,WHITE,"Expansion Header With I2C/SPI/UART", FONT_NORTH, false, 0 ); |
codeman | 77:cd59ac40b3be | 116 | |
codeman | 77:cd59ac40b3be | 117 | wait(.5); |
codeman | 77:cd59ac40b3be | 118 | |
codeman | 77:cd59ac40b3be | 119 | while(lcd.pollTouch(1, 0x00)!=0x8a); |
codeman | 77:cd59ac40b3be | 120 | lcd.buttonsDeleteAll(); |
codeman | 77:cd59ac40b3be | 121 | lcd.cls(BLACK); |
codeman | 77:cd59ac40b3be | 122 | buttState[2]=1; |
codeman | 77:cd59ac40b3be | 123 | drawScreen(); |
codeman | 77:cd59ac40b3be | 124 | } |
codeman | 77:cd59ac40b3be | 125 | void fontDemo( void ) |
codeman | 77:cd59ac40b3be | 126 | { |
codeman | 77:cd59ac40b3be | 127 | lcd.buttonsDeleteAll(); |
codeman | 77:cd59ac40b3be | 128 | lcd.cls(BLACK); |
codeman | 77:cd59ac40b3be | 129 | |
codeman | 77:cd59ac40b3be | 130 | lcd.createButton( 10, 1, 10 , 11, 10, 10, 420, 200, 50, 0); |
codeman | 77:cd59ac40b3be | 131 | |
codeman | 77:cd59ac40b3be | 132 | |
codeman | 77:cd59ac40b3be | 133 | lcd.printString(10,12,6,RED,"ezLCD-405 Font Demo", FONT_NORTH, OUTLINE, WHITE ); |
codeman | 77:cd59ac40b3be | 134 | |
codeman | 77:cd59ac40b3be | 135 | lcd.printString(10,60,1,BLUE,"ezLCD-405 ", FONT_NORTH, SHADOW, WHITE ); |
codeman | 77:cd59ac40b3be | 136 | lcd.printString(10,100,2,BLUE,"ezLCD-405 ", FONT_NORTH, false, 0 ); |
codeman | 77:cd59ac40b3be | 137 | lcd.printString(10,150,3,BLUE,"ezLCD-405 ", FONT_NORTH, false, 0 ); |
codeman | 77:cd59ac40b3be | 138 | lcd.printString(10,200,4,BLUE,"ezLCD-405 ", FONT_NORTH, false, 0 ); |
codeman | 77:cd59ac40b3be | 139 | lcd.printString(10,250,5,BLUE,"ezLCD-405 ", FONT_NORTH, false, 0 ); |
codeman | 77:cd59ac40b3be | 140 | lcd.printString(10,300,6,BLUE,"ezLCD-405 ", FONT_NORTH, false, 0 ); |
codeman | 77:cd59ac40b3be | 141 | lcd.printString(10,350,7,BLUE,"ezLCD-405 ", FONT_NORTH, false, 0 ); |
codeman | 77:cd59ac40b3be | 142 | lcd.printString(10,400,8,BLUE,"ezLCD-405 ", FONT_NORTH, false, 0 ); |
codeman | 77:cd59ac40b3be | 143 | |
codeman | 77:cd59ac40b3be | 144 | // Thread::wait(5000); |
codeman | 77:cd59ac40b3be | 145 | wait(1); |
codeman | 77:cd59ac40b3be | 146 | while(lcd.pollTouch(1, 0x00)!=0x8a); |
codeman | 77:cd59ac40b3be | 147 | lcd.buttonsDeleteAll(); |
codeman | 77:cd59ac40b3be | 148 | lcd.cls(BLACK); |
codeman | 77:cd59ac40b3be | 149 | buttState[1]=1; |
codeman | 77:cd59ac40b3be | 150 | drawScreen(); |
codeman | 77:cd59ac40b3be | 151 | } |
codeman | 77:cd59ac40b3be | 152 | void imageDemo( void ) |
codeman | 77:cd59ac40b3be | 153 | { |
codeman | 77:cd59ac40b3be | 154 | lcd.buttonsDeleteAll(); |
codeman | 77:cd59ac40b3be | 155 | lcd.cls(BLACK); |
codeman | 77:cd59ac40b3be | 156 | |
codeman | 77:cd59ac40b3be | 157 | lcd.printString(13,15,2, 0x0001, "ezLCD-405 Image Demo", FONT_NORTH, false, 0 ); |
codeman | 77:cd59ac40b3be | 158 | lcd.printString(10,12,2,WHITE,"ezLCD-405 Image Demo", FONT_NORTH, false, 0); |
codeman | 77:cd59ac40b3be | 159 | lcd.setXY(10,240); |
codeman | 77:cd59ac40b3be | 160 | lcd.putSfIcon(5); |
codeman | 77:cd59ac40b3be | 161 | // Thread::wait(2000); |
codeman | 77:cd59ac40b3be | 162 | // lcd.cls(BLACK); |
codeman | 77:cd59ac40b3be | 163 | lcd.setXY(10,240); |
codeman | 77:cd59ac40b3be | 164 | lcd.putSfIcon(6); |
codeman | 77:cd59ac40b3be | 165 | // Thread::wait(2000); |
codeman | 77:cd59ac40b3be | 166 | // lcd.cls(BLACK); |
codeman | 77:cd59ac40b3be | 167 | lcd.setXY(10,240); |
codeman | 77:cd59ac40b3be | 168 | lcd.putSfIcon(7); |
codeman | 77:cd59ac40b3be | 169 | // Thread::wait(2000); |
codeman | 77:cd59ac40b3be | 170 | lcd.cls(BLACK); |
codeman | 77:cd59ac40b3be | 171 | |
codeman | 77:cd59ac40b3be | 172 | drawScreen(); |
codeman | 77:cd59ac40b3be | 173 | } |
codeman | 77:cd59ac40b3be | 174 | |
bcostm | 73:d3b295249699 | 175 | int main() |
bcostm | 73:d3b295249699 | 176 | { |
codeman | 77:cd59ac40b3be | 177 | textBoxData[0][0] = "The ezLCD-405" ; |
codeman | 77:cd59ac40b3be | 178 | textBoxData[1][0] = " " ; |
codeman | 77:cd59ac40b3be | 179 | textBoxData[2][0] = "0123456789012" ; |
codeman | 77:cd59ac40b3be | 180 | |
codeman | 77:cd59ac40b3be | 181 | button.mode(PullUp); |
codeman | 77:cd59ac40b3be | 182 | button.fall(&button_press); |
codeman | 77:cd59ac40b3be | 183 | pc.baud(115200); |
codeman | 77:cd59ac40b3be | 184 | lcd.ezLCD405Init(SPI_IF); |
codeman | 77:cd59ac40b3be | 185 | pc.printf("Start of Main\n"); |
codeman | 77:cd59ac40b3be | 186 | pc.printf("CPU SystemCoreClock is %d Hz\r\n", SystemCoreClock); |
codeman | 77:cd59ac40b3be | 187 | lcd.setLayerVisible(0,1); |
codeman | 77:cd59ac40b3be | 188 | lcd.setLayerVisible(1,1); |
codeman | 77:cd59ac40b3be | 189 | lcd.setLayer(1); |
codeman | 77:cd59ac40b3be | 190 | lcd.setColorKey(0x0000); |
codeman | 77:cd59ac40b3be | 191 | while(lcd.ping(100) !=1); |
codeman | 77:cd59ac40b3be | 192 | lcd.lightOFF(); |
codeman | 77:cd59ac40b3be | 193 | |
codeman | 77:cd59ac40b3be | 194 | lcd.exmode(); |
codeman | 77:cd59ac40b3be | 195 | lcd.cls(BLACK); |
codeman | 77:cd59ac40b3be | 196 | lcd.setLayer(0); |
codeman | 77:cd59ac40b3be | 197 | lcd.setXY(0,0); |
codeman | 77:cd59ac40b3be | 198 | lcd.SDPutIcon("ezlcd405.bmp"); |
codeman | 77:cd59ac40b3be | 199 | lcd.textDirection( FONT_NORTH ); |
codeman | 77:cd59ac40b3be | 200 | lcd.lightON(); |
codeman | 77:cd59ac40b3be | 201 | // thread2 = new Thread(button_thread); |
codeman | 77:cd59ac40b3be | 202 | buttState[0]=1; |
codeman | 77:cd59ac40b3be | 203 | buttState[1]=1; |
codeman | 77:cd59ac40b3be | 204 | buttState[2]=1; |
codeman | 77:cd59ac40b3be | 205 | buttState[3]=1; |
codeman | 77:cd59ac40b3be | 206 | buttState[4]=1; |
codeman | 77:cd59ac40b3be | 207 | buttState[5]=1; |
codeman | 77:cd59ac40b3be | 208 | |
codeman | 77:cd59ac40b3be | 209 | drawScreen(); |
codeman | 77:cd59ac40b3be | 210 | |
codeman | 77:cd59ac40b3be | 211 | while(1) { |
codeman | 77:cd59ac40b3be | 212 | //wait(.05); |
codeman | 77:cd59ac40b3be | 213 | buttonPressed = lcd.pollTouch(1, 0x00); |
codeman | 77:cd59ac40b3be | 214 | |
codeman | 77:cd59ac40b3be | 215 | if((buttonPressed & 0x40) == 0x40) { |
codeman | 77:cd59ac40b3be | 216 | if(buttState[buttonPressed & 0x0f] == 1) { |
codeman | 77:cd59ac40b3be | 217 | lcd.buttonState(buttonPressed & 0x0f, 2); |
codeman | 77:cd59ac40b3be | 218 | buttState[buttonPressed & 0x0f] = 2; |
codeman | 77:cd59ac40b3be | 219 | } |
codeman | 77:cd59ac40b3be | 220 | } |
codeman | 77:cd59ac40b3be | 221 | |
bcostm | 73:d3b295249699 | 222 | |
codeman | 77:cd59ac40b3be | 223 | if((buttonPressed & 0x80) == 0x80) { |
codeman | 77:cd59ac40b3be | 224 | if(buttState[buttonPressed & 0x0f] == 2) { |
codeman | 77:cd59ac40b3be | 225 | lcd.buttonState(buttonPressed & 0x0f, 1); |
codeman | 77:cd59ac40b3be | 226 | buttState[buttonPressed & 0x0f] = 1; |
codeman | 77:cd59ac40b3be | 227 | } |
codeman | 77:cd59ac40b3be | 228 | } |
codeman | 77:cd59ac40b3be | 229 | if(buttState[2]==2) { |
codeman | 77:cd59ac40b3be | 230 | specScreen(); |
codeman | 77:cd59ac40b3be | 231 | } |
codeman | 77:cd59ac40b3be | 232 | if(buttState[1]==2) { |
codeman | 77:cd59ac40b3be | 233 | fontDemo(); |
codeman | 77:cd59ac40b3be | 234 | } |
codeman | 77:cd59ac40b3be | 235 | if(buttState[3]==2) { |
codeman | 77:cd59ac40b3be | 236 | lcd.showSettings(); |
codeman | 77:cd59ac40b3be | 237 | wait(5); |
codeman | 77:cd59ac40b3be | 238 | drawScreen(); |
codeman | 77:cd59ac40b3be | 239 | } |
codeman | 77:cd59ac40b3be | 240 | lcd.setFont(3); |
codeman | 77:cd59ac40b3be | 241 | lcd.setXY(20,300); |
codeman | 77:cd59ac40b3be | 242 | count++; |
codeman | 77:cd59ac40b3be | 243 | lcd.setColor(WHITE); |
codeman | 77:cd59ac40b3be | 244 | sprintf(temp, "%d", count); |
codeman | 77:cd59ac40b3be | 245 | lcd.printString(temp); |
codeman | 77:cd59ac40b3be | 246 | //wait(.05); |
codeman | 77:cd59ac40b3be | 247 | lcd.setXY(20,300); |
codeman | 77:cd59ac40b3be | 248 | lcd.setColor(BLACK); |
codeman | 77:cd59ac40b3be | 249 | lcd.boxFill(200,400); |
codeman | 77:cd59ac40b3be | 250 | wait(.02); |
codeman | 77:cd59ac40b3be | 251 | |
codeman | 77:cd59ac40b3be | 252 | // lcd.printString(temp); |
codeman | 77:cd59ac40b3be | 253 | } |
codeman | 77:cd59ac40b3be | 254 | |
codeman | 77:cd59ac40b3be | 255 | drawFrame(100 , 300, 300 , 400 , WHITE, GRAY, 5); |
codeman | 77:cd59ac40b3be | 256 | drawFrame(100 +5 , 300+5 , 300-5 , 400-5 , GRAY, WHITE, 5); |
codeman | 77:cd59ac40b3be | 257 | |
codeman | 77:cd59ac40b3be | 258 | ocount=0; |
codeman | 77:cd59ac40b3be | 259 | count=0; |
codeman | 77:cd59ac40b3be | 260 | //lcd.setBgColorH(BLUE); |
codeman | 77:cd59ac40b3be | 261 | while(1) { |
codeman | 77:cd59ac40b3be | 262 | if(lcd.status == 1) |
codeman | 77:cd59ac40b3be | 263 | drawScreen(); |
codeman | 77:cd59ac40b3be | 264 | //pc.printf("%d %d \n",lcd.x, lcd.y); |
codeman | 77:cd59ac40b3be | 265 | sprintf(temp,"%d",count); |
codeman | 77:cd59ac40b3be | 266 | if(lcd.button==0 && lcd.bState==1) { |
codeman | 77:cd59ac40b3be | 267 | fontDemo(); |
codeman | 77:cd59ac40b3be | 268 | } |
codeman | 77:cd59ac40b3be | 269 | |
codeman | 77:cd59ac40b3be | 270 | if(lcd.button==1 && lcd.bState==1) { |
codeman | 77:cd59ac40b3be | 271 | imageDemo(); |
codeman | 77:cd59ac40b3be | 272 | } |
codeman | 77:cd59ac40b3be | 273 | if(lcd.button==2 && lcd.bState==1) { |
codeman | 77:cd59ac40b3be | 274 | // lcd.buttonState(lcd.button, 2); |
codeman | 77:cd59ac40b3be | 275 | // lcd.buttonsDeleteAll(); |
codeman | 77:cd59ac40b3be | 276 | // lcd.showSettings(); |
codeman | 77:cd59ac40b3be | 277 | // Thread::wait(5000); |
codeman | 77:cd59ac40b3be | 278 | // drawScreen(); |
codeman | 77:cd59ac40b3be | 279 | } |
codeman | 77:cd59ac40b3be | 280 | if(lcd.button==3 && lcd.bState==1) { |
codeman | 77:cd59ac40b3be | 281 | // lcd.buttonState(lcd.button, 2); |
codeman | 77:cd59ac40b3be | 282 | //specScreen(); |
codeman | 77:cd59ac40b3be | 283 | } |
codeman | 77:cd59ac40b3be | 284 | if(count != ocount) { |
codeman | 77:cd59ac40b3be | 285 | lcd.setXY(0,0); |
codeman | 77:cd59ac40b3be | 286 | lcd.SDPutIcon("100_Single_Area.ezp"); |
codeman | 77:cd59ac40b3be | 287 | //lcd.printString(400, 100, 1, RED, temp); |
codeman | 77:cd59ac40b3be | 288 | // lcd.printString(400, 200, 1, RED, temp); |
codeman | 77:cd59ac40b3be | 289 | // lcd.printString(400, 300, 1, GREEN, temp); |
codeman | 77:cd59ac40b3be | 290 | // lcd.printString(400, 400, 1, GREEN, temp); |
codeman | 77:cd59ac40b3be | 291 | ocount=count; |
codeman | 77:cd59ac40b3be | 292 | } |
codeman | 77:cd59ac40b3be | 293 | countdown--; |
codeman | 77:cd59ac40b3be | 294 | if(countdown == 0) { |
codeman | 77:cd59ac40b3be | 295 | lcd.setXY(0,0); |
codeman | 77:cd59ac40b3be | 296 | lcd.SDPutIcon("100_Single_Area_return.ezp"); |
codeman | 77:cd59ac40b3be | 297 | // lcd.printString(400, 100, 1, BLACK, temp); |
codeman | 77:cd59ac40b3be | 298 | // lcd.printString(400, 200, 1, BLACK, temp); |
codeman | 77:cd59ac40b3be | 299 | // lcd.printString(400, 300, 1, BLACK, temp); |
codeman | 77:cd59ac40b3be | 300 | // lcd.printString(400, 400, 1, BLACK, temp); |
codeman | 77:cd59ac40b3be | 301 | |
codeman | 77:cd59ac40b3be | 302 | |
codeman | 77:cd59ac40b3be | 303 | |
codeman | 77:cd59ac40b3be | 304 | |
codeman | 77:cd59ac40b3be | 305 | count++; |
codeman | 77:cd59ac40b3be | 306 | } |
codeman | 77:cd59ac40b3be | 307 | |
codeman | 77:cd59ac40b3be | 308 | } |
bcostm | 73:d3b295249699 | 309 | button_pressed = 0; |
bcostm | 73:d3b295249699 | 310 | button.fall(&button_press); |
codeman | 77:cd59ac40b3be | 311 | |
codeman | 77:cd59ac40b3be | 312 | |
bcostm | 73:d3b295249699 | 313 | while (true) { |
codeman | 77:cd59ac40b3be | 314 | // Thread::wait(6000); |
codeman | 77:cd59ac40b3be | 315 | //lcd.printString("hello"); |
codeman | 77:cd59ac40b3be | 316 | lcd.direct(PRINT_STRING); |
codeman | 77:cd59ac40b3be | 317 | printf("During the last 6 seconds, the Button was pressed %d times\n", button_pressed); |
codeman | 77:cd59ac40b3be | 318 | lcd.direct(0x00); |
bcostm | 73:d3b295249699 | 319 | fflush(stdout); |
bcostm | 73:d3b295249699 | 320 | button_pressed = 0; |
bcostm | 73:d3b295249699 | 321 | } |
bcostm | 73:d3b295249699 | 322 | } |