TFT_ILI9163C test A fork of https://github.com/sumotoy/TFT_ILI9163C
Dependencies: Adafruit-GFX-Library TFT_ILI9163C mbed
Fork of IL9163C_test by
main.cpp@8:4fcf5494f425, 2015-02-04 (annotated)
- Committer:
- peu605
- Date:
- Wed Feb 04 10:59:10 2015 +0000
- Revision:
- 8:4fcf5494f425
- Parent:
- 5:f6052f005aef
- Child:
- 9:99e7307d5a59
format code
Who changed what in which revision?
User | Revision | Line number | New contents of line |
---|---|---|---|
peu605 | 0:26cf1056924c | 1 | #include "mbed.h" |
peu605 | 0:26cf1056924c | 2 | |
peu605 | 0:26cf1056924c | 3 | #include <Adafruit_GFX.h> |
peu605 | 0:26cf1056924c | 4 | #include <TFT_ILI9163C.h> |
peu605 | 0:26cf1056924c | 5 | |
peu605 | 0:26cf1056924c | 6 | #define __MOSI D11 |
peu605 | 0:26cf1056924c | 7 | #define __MISO NC |
peu605 | 0:26cf1056924c | 8 | #define __SCLK D13 |
peu605 | 0:26cf1056924c | 9 | #define __CS D10 |
peu605 | 0:26cf1056924c | 10 | #define __DC D9 |
peu605 | 0:26cf1056924c | 11 | #define __RST D8 |
peu605 | 0:26cf1056924c | 12 | |
peu605 | 0:26cf1056924c | 13 | // Color definitions |
peu605 | 0:26cf1056924c | 14 | #define BLACK 0x0000 |
peu605 | 0:26cf1056924c | 15 | #define BLUE 0x001F |
peu605 | 0:26cf1056924c | 16 | #define RED 0xF800 |
peu605 | 0:26cf1056924c | 17 | #define GREEN 0x07E0 |
peu605 | 0:26cf1056924c | 18 | #define CYAN 0x07FF |
peu605 | 0:26cf1056924c | 19 | #define MAGENTA 0xF81F |
peu605 | 8:4fcf5494f425 | 20 | #define YELLOW 0xFFE0 |
peu605 | 0:26cf1056924c | 21 | #define WHITE 0xFFFF |
peu605 | 0:26cf1056924c | 22 | #define TRANSPARENT -1 |
peu605 | 0:26cf1056924c | 23 | |
peu605 | 8:4fcf5494f425 | 24 | #define SPI_BITRATE 50000000L |
peu605 | 8:4fcf5494f425 | 25 | |
peu605 | 0:26cf1056924c | 26 | TFT_ILI9163C display(__MOSI, __MISO, __SCLK, __CS, __DC, __RST); |
peu605 | 0:26cf1056924c | 27 | //TFT_ILI9163C display(__MOSI, __MISO, __SCLK, __CS, __DC); |
peu605 | 0:26cf1056924c | 28 | |
peu605 | 0:26cf1056924c | 29 | Timer t; |
peu605 | 0:26cf1056924c | 30 | |
peu605 | 0:26cf1056924c | 31 | const float p = 3.1415926; |
peu605 | 0:26cf1056924c | 32 | |
peu605 | 0:26cf1056924c | 33 | int32_t random(int32_t howbig) { |
peu605 | 8:4fcf5494f425 | 34 | if (howbig == 0) { |
peu605 | 8:4fcf5494f425 | 35 | return 0; |
peu605 | 8:4fcf5494f425 | 36 | } |
peu605 | 8:4fcf5494f425 | 37 | return rand() % howbig; |
peu605 | 0:26cf1056924c | 38 | } |
peu605 | 0:26cf1056924c | 39 | |
peu605 | 0:26cf1056924c | 40 | int32_t random(int32_t howsmall, int32_t howbig) { |
peu605 | 8:4fcf5494f425 | 41 | if (howsmall >= howbig) { |
peu605 | 8:4fcf5494f425 | 42 | return howsmall; |
peu605 | 8:4fcf5494f425 | 43 | } |
peu605 | 8:4fcf5494f425 | 44 | int32_t diff = howbig - howsmall +1; |
peu605 | 8:4fcf5494f425 | 45 | return random(diff) + howsmall; |
peu605 | 0:26cf1056924c | 46 | } |
peu605 | 0:26cf1056924c | 47 | |
peu605 | 0:26cf1056924c | 48 | void testlines(uint16_t color) { |
peu605 | 8:4fcf5494f425 | 49 | display.clearScreen(); |
peu605 | 8:4fcf5494f425 | 50 | for (int16_t x=0; x < display.width()-1; x+=6) { |
peu605 | 8:4fcf5494f425 | 51 | display.drawLine(0, 0, x, display.height()-1, color); |
peu605 | 8:4fcf5494f425 | 52 | } |
peu605 | 8:4fcf5494f425 | 53 | for (int16_t y=0; y < display.height()-1; y+=6) { |
peu605 | 8:4fcf5494f425 | 54 | display.drawLine(0, 0, display.width()-1, y, color); |
peu605 | 8:4fcf5494f425 | 55 | } |
peu605 | 8:4fcf5494f425 | 56 | display.clearScreen(); |
peu605 | 8:4fcf5494f425 | 57 | for (int16_t x=0; x < display.width()-1; x+=6) { |
peu605 | 8:4fcf5494f425 | 58 | display.drawLine(display.width()-1, 0, x, display.height()-1, color); |
peu605 | 8:4fcf5494f425 | 59 | } |
peu605 | 8:4fcf5494f425 | 60 | for (int16_t y=0; y < display.height()-1; y+=6) { |
peu605 | 8:4fcf5494f425 | 61 | display.drawLine(display.width()-1, 0, 0, y, color); |
peu605 | 8:4fcf5494f425 | 62 | } |
peu605 | 0:26cf1056924c | 63 | |
peu605 | 8:4fcf5494f425 | 64 | display.clearScreen(); |
peu605 | 8:4fcf5494f425 | 65 | for (int16_t x=0; x < display.width()-1; x+=6) { |
peu605 | 8:4fcf5494f425 | 66 | display.drawLine(0, display.height()-1, x, 0, color); |
peu605 | 8:4fcf5494f425 | 67 | } |
peu605 | 8:4fcf5494f425 | 68 | for (int16_t y=0; y < display.height()-1; y+=6) { |
peu605 | 8:4fcf5494f425 | 69 | display.drawLine(0, display.height()-1, display.width()-1, y, color); |
peu605 | 8:4fcf5494f425 | 70 | } |
peu605 | 8:4fcf5494f425 | 71 | display.clearScreen(); |
peu605 | 8:4fcf5494f425 | 72 | for (int16_t x=0; x < display.width()-1; x+=6) { |
peu605 | 8:4fcf5494f425 | 73 | display.drawLine(display.width()-1, display.height()-1, x, 0, color); |
peu605 | 8:4fcf5494f425 | 74 | } |
peu605 | 8:4fcf5494f425 | 75 | for (int16_t y=0; y < display.height()-1; y+=6) { |
peu605 | 8:4fcf5494f425 | 76 | display.drawLine(display.width()-1, display.height()-1, 0, y, color); |
peu605 | 8:4fcf5494f425 | 77 | } |
peu605 | 8:4fcf5494f425 | 78 | wait_ms(500); |
peu605 | 0:26cf1056924c | 79 | } |
peu605 | 0:26cf1056924c | 80 | |
peu605 | 0:26cf1056924c | 81 | |
peu605 | 0:26cf1056924c | 82 | void testdrawtext(char *text, uint16_t color) { |
peu605 | 8:4fcf5494f425 | 83 | display.setTextSize(1); |
peu605 | 8:4fcf5494f425 | 84 | display.setTextColor(WHITE); |
peu605 | 8:4fcf5494f425 | 85 | display.setCursor(0,0); |
peu605 | 0:26cf1056924c | 86 | |
peu605 | 8:4fcf5494f425 | 87 | for (uint8_t i=0; i < 168; i++) { |
peu605 | 8:4fcf5494f425 | 88 | if (i == '\n') continue; |
peu605 | 8:4fcf5494f425 | 89 | display.writeChar(i); |
peu605 | 8:4fcf5494f425 | 90 | if ((i > 0) && (i % 21 == 0)) |
peu605 | 8:4fcf5494f425 | 91 | display.printf("\n"); |
peu605 | 8:4fcf5494f425 | 92 | } |
peu605 | 0:26cf1056924c | 93 | } |
peu605 | 0:26cf1056924c | 94 | |
peu605 | 0:26cf1056924c | 95 | void testfastlines(uint16_t color1, uint16_t color2) { |
peu605 | 8:4fcf5494f425 | 96 | display.clearScreen(); |
peu605 | 8:4fcf5494f425 | 97 | for (int16_t y=0; y < display.height()-1; y+=5) { |
peu605 | 8:4fcf5494f425 | 98 | display.drawFastHLine(0, y, display.width()-1, color1); |
peu605 | 8:4fcf5494f425 | 99 | } |
peu605 | 8:4fcf5494f425 | 100 | for (int16_t x=0; x < display.width()-1; x+=5) { |
peu605 | 8:4fcf5494f425 | 101 | display.drawFastVLine(x, 0, display.height()-1, color2); |
peu605 | 8:4fcf5494f425 | 102 | } |
peu605 | 0:26cf1056924c | 103 | } |
peu605 | 0:26cf1056924c | 104 | |
peu605 | 0:26cf1056924c | 105 | void testdrawrects(uint16_t color) { |
peu605 | 8:4fcf5494f425 | 106 | display.clearScreen(); |
peu605 | 8:4fcf5494f425 | 107 | for (int16_t x=0; x < display.height()-1; x+=6) { |
peu605 | 8:4fcf5494f425 | 108 | display.drawRect((display.width()-1)/2 -x/2, (display.height()-1)/2 -x/2 , x, x, color); |
peu605 | 8:4fcf5494f425 | 109 | } |
peu605 | 0:26cf1056924c | 110 | } |
peu605 | 0:26cf1056924c | 111 | |
peu605 | 0:26cf1056924c | 112 | void testfillrects(uint16_t color1, uint16_t color2) { |
peu605 | 8:4fcf5494f425 | 113 | display.clearScreen(); |
peu605 | 8:4fcf5494f425 | 114 | for (int16_t x=display.height()-1; x > 6; x-=6) { |
peu605 | 8:4fcf5494f425 | 115 | display.fillRect((display.width()-1)/2 -x/2, (display.height()-1)/2 -x/2 , x, x, color1); |
peu605 | 8:4fcf5494f425 | 116 | display.drawRect((display.width()-1)/2 -x/2, (display.height()-1)/2 -x/2 , x, x, color2); |
peu605 | 8:4fcf5494f425 | 117 | } |
peu605 | 0:26cf1056924c | 118 | } |
peu605 | 0:26cf1056924c | 119 | |
peu605 | 0:26cf1056924c | 120 | void testfillcircles(uint8_t radius, uint16_t color) { |
peu605 | 8:4fcf5494f425 | 121 | for (uint8_t x=radius; x < display.width()-1; x+=radius*2) { |
peu605 | 8:4fcf5494f425 | 122 | for (uint8_t y=radius; y < display.height()-1; y+=radius*2) { |
peu605 | 8:4fcf5494f425 | 123 | display.fillCircle(x, y, radius, color); |
peu605 | 8:4fcf5494f425 | 124 | } |
peu605 | 0:26cf1056924c | 125 | } |
peu605 | 0:26cf1056924c | 126 | } |
peu605 | 0:26cf1056924c | 127 | |
peu605 | 0:26cf1056924c | 128 | void testdrawcircles(uint8_t radius, uint16_t color) { |
peu605 | 8:4fcf5494f425 | 129 | for (int16_t x=0; x < (display.width()-1)+radius; x+=radius*2) { |
peu605 | 8:4fcf5494f425 | 130 | for (int16_t y=0; y < (display.height())-1+radius; y+=radius*2) { |
peu605 | 8:4fcf5494f425 | 131 | display.drawCircle(x, y, radius, color); |
peu605 | 8:4fcf5494f425 | 132 | } |
peu605 | 0:26cf1056924c | 133 | } |
peu605 | 0:26cf1056924c | 134 | } |
peu605 | 0:26cf1056924c | 135 | |
peu605 | 0:26cf1056924c | 136 | void testtriangles() { |
peu605 | 8:4fcf5494f425 | 137 | display.clearScreen(); |
peu605 | 8:4fcf5494f425 | 138 | int color = 0xF800; |
peu605 | 8:4fcf5494f425 | 139 | int t; |
peu605 | 8:4fcf5494f425 | 140 | int w = display.width()/2; |
peu605 | 8:4fcf5494f425 | 141 | int x = display.height(); |
peu605 | 8:4fcf5494f425 | 142 | int y = 0; |
peu605 | 8:4fcf5494f425 | 143 | int z = display.width(); |
peu605 | 8:4fcf5494f425 | 144 | for(t = 0 ; t <= 15; t+=1) { |
peu605 | 8:4fcf5494f425 | 145 | display.drawTriangle(w, y, y, x, z, x, color); |
peu605 | 8:4fcf5494f425 | 146 | x-=4; |
peu605 | 8:4fcf5494f425 | 147 | y+=4; |
peu605 | 8:4fcf5494f425 | 148 | z-=4; |
peu605 | 8:4fcf5494f425 | 149 | color+=100; |
peu605 | 8:4fcf5494f425 | 150 | } |
peu605 | 0:26cf1056924c | 151 | } |
peu605 | 0:26cf1056924c | 152 | |
peu605 | 0:26cf1056924c | 153 | void testroundrects() { |
peu605 | 8:4fcf5494f425 | 154 | display.clearScreen(); |
peu605 | 8:4fcf5494f425 | 155 | int color = 100; |
peu605 | 8:4fcf5494f425 | 156 | int i; |
peu605 | 8:4fcf5494f425 | 157 | int t; |
peu605 | 8:4fcf5494f425 | 158 | for(t = 0 ; t <= 4; t+=1) { |
peu605 | 8:4fcf5494f425 | 159 | int x = 0; |
peu605 | 8:4fcf5494f425 | 160 | int y = 0; |
peu605 | 8:4fcf5494f425 | 161 | int w = display.width(); |
peu605 | 8:4fcf5494f425 | 162 | int h = display.height(); |
peu605 | 8:4fcf5494f425 | 163 | for(i = 0 ; i <= 24; i+=1) { |
peu605 | 8:4fcf5494f425 | 164 | display.drawRoundRect(x, y, w, h, 5, color); |
peu605 | 8:4fcf5494f425 | 165 | x+=2; |
peu605 | 8:4fcf5494f425 | 166 | y+=3; |
peu605 | 8:4fcf5494f425 | 167 | w-=4; |
peu605 | 8:4fcf5494f425 | 168 | h-=6; |
peu605 | 8:4fcf5494f425 | 169 | color+=1100; |
peu605 | 8:4fcf5494f425 | 170 | } |
peu605 | 8:4fcf5494f425 | 171 | color+=100; |
peu605 | 0:26cf1056924c | 172 | } |
peu605 | 0:26cf1056924c | 173 | } |
peu605 | 0:26cf1056924c | 174 | |
peu605 | 0:26cf1056924c | 175 | void tftPrintTest() { |
peu605 | 8:4fcf5494f425 | 176 | display.clearScreen(); |
peu605 | 8:4fcf5494f425 | 177 | display.setCursor(0, 5); |
peu605 | 8:4fcf5494f425 | 178 | display.setTextColor(RED); |
peu605 | 8:4fcf5494f425 | 179 | display.setTextSize(1); |
peu605 | 8:4fcf5494f425 | 180 | display.printf("Hello World!\n"); |
peu605 | 8:4fcf5494f425 | 181 | display.setTextColor(YELLOW, GREEN); |
peu605 | 8:4fcf5494f425 | 182 | display.setTextSize(2); |
peu605 | 8:4fcf5494f425 | 183 | display.printf("Hello Wo"); |
peu605 | 8:4fcf5494f425 | 184 | display.setTextColor(BLUE); |
peu605 | 8:4fcf5494f425 | 185 | display.setTextSize(3); |
peu605 | 8:4fcf5494f425 | 186 | display.printf("%.2f", 12.57); |
peu605 | 8:4fcf5494f425 | 187 | wait_ms(1500); |
peu605 | 8:4fcf5494f425 | 188 | display.setCursor(0, 5); |
peu605 | 8:4fcf5494f425 | 189 | display.clearScreen(); |
peu605 | 8:4fcf5494f425 | 190 | display.setTextColor(WHITE); |
peu605 | 8:4fcf5494f425 | 191 | display.setTextSize(0); |
peu605 | 8:4fcf5494f425 | 192 | display.printf("Hello World!\n"); |
peu605 | 8:4fcf5494f425 | 193 | display.setTextSize(1); |
peu605 | 8:4fcf5494f425 | 194 | display.setTextColor(GREEN); |
peu605 | 8:4fcf5494f425 | 195 | display.printf("%5f", p); |
peu605 | 8:4fcf5494f425 | 196 | display.printf(" Want pi?\n"); |
peu605 | 8:4fcf5494f425 | 197 | display.printf("%x", 8675309); |
peu605 | 8:4fcf5494f425 | 198 | display.printf(" Print HEX\n"); |
peu605 | 8:4fcf5494f425 | 199 | display.setTextColor(WHITE); |
peu605 | 8:4fcf5494f425 | 200 | display.printf("Sketch has been\n"); |
peu605 | 8:4fcf5494f425 | 201 | display.printf("running for: \n"); |
peu605 | 8:4fcf5494f425 | 202 | display.setTextColor(MAGENTA); |
peu605 | 8:4fcf5494f425 | 203 | display.printf("%d", t.read_ms() / 1000); |
peu605 | 8:4fcf5494f425 | 204 | display.setTextColor(WHITE); |
peu605 | 8:4fcf5494f425 | 205 | display.printf(" sec."); |
peu605 | 0:26cf1056924c | 206 | } |
peu605 | 0:26cf1056924c | 207 | |
peu605 | 0:26cf1056924c | 208 | |
peu605 | 8:4fcf5494f425 | 209 | void randomRect(bool fill) { |
peu605 | 8:4fcf5494f425 | 210 | display.clearScreen(); |
peu605 | 8:4fcf5494f425 | 211 | uint8_t k,c; |
peu605 | 8:4fcf5494f425 | 212 | for (k = 0; k < 16; k++) { |
peu605 | 8:4fcf5494f425 | 213 | for (c = 0; c < 32; c++) { |
peu605 | 8:4fcf5494f425 | 214 | uint8_t cx, cy, x, y, w, h; |
peu605 | 8:4fcf5494f425 | 215 | // center |
peu605 | 8:4fcf5494f425 | 216 | cx = random(0,display.width()); |
peu605 | 8:4fcf5494f425 | 217 | cy = random(0,display.height()); |
peu605 | 8:4fcf5494f425 | 218 | // size |
peu605 | 8:4fcf5494f425 | 219 | w = random(0,30 + 6); |
peu605 | 8:4fcf5494f425 | 220 | h = random(0,20 + 4); |
peu605 | 8:4fcf5494f425 | 221 | // upper-left |
peu605 | 8:4fcf5494f425 | 222 | x = cx - w / 2; |
peu605 | 8:4fcf5494f425 | 223 | y = cy - h / 2; |
peu605 | 0:26cf1056924c | 224 | // if (x < 0) x = 0; |
peu605 | 0:26cf1056924c | 225 | // if (y < 0) y = 0; |
peu605 | 8:4fcf5494f425 | 226 | // adjust size |
peu605 | 8:4fcf5494f425 | 227 | if (x + w > display.width()) w = display.width() - x; |
peu605 | 8:4fcf5494f425 | 228 | if (y + h > display.height()) h = display.height() - y; |
peu605 | 8:4fcf5494f425 | 229 | if (fill) { |
peu605 | 8:4fcf5494f425 | 230 | display.fillRect(x, y, w, h,random(0x0010,0xFFFF)); |
peu605 | 8:4fcf5494f425 | 231 | } else { |
peu605 | 8:4fcf5494f425 | 232 | display.drawRect(x, y, w, h,random(0x0010,0xFFFF)); |
peu605 | 8:4fcf5494f425 | 233 | } |
peu605 | 0:26cf1056924c | 234 | |
peu605 | 8:4fcf5494f425 | 235 | } |
peu605 | 8:4fcf5494f425 | 236 | display.clearScreen(); |
peu605 | 0:26cf1056924c | 237 | } |
peu605 | 0:26cf1056924c | 238 | } |
peu605 | 0:26cf1056924c | 239 | |
peu605 | 8:4fcf5494f425 | 240 | void randomCircles(bool fill) { |
peu605 | 8:4fcf5494f425 | 241 | display.clearScreen(); |
peu605 | 8:4fcf5494f425 | 242 | uint8_t k,c; |
peu605 | 8:4fcf5494f425 | 243 | for (k = 0; k < display.height(); k++) { |
peu605 | 8:4fcf5494f425 | 244 | for (c = 0; c < display.height()/2; c++) { |
peu605 | 8:4fcf5494f425 | 245 | // coordinates |
peu605 | 8:4fcf5494f425 | 246 | uint8_t x = random(0,120 + 3), y = random(0,90 + 2), r = random(0,40 + 1); |
peu605 | 8:4fcf5494f425 | 247 | if (x - r < 0) r = x; |
peu605 | 8:4fcf5494f425 | 248 | if (x + r > (display.width()-1)) r = (display.width() - 1) - x; |
peu605 | 8:4fcf5494f425 | 249 | if (y - r < 0) r = y; |
peu605 | 8:4fcf5494f425 | 250 | if (y + r > (display.height()-1)) r = (display.height() - 1) - y; |
peu605 | 8:4fcf5494f425 | 251 | if (fill) { |
peu605 | 8:4fcf5494f425 | 252 | display.fillCircle(x, y, r,random(0x0010,0xFFFF)); |
peu605 | 8:4fcf5494f425 | 253 | } else { |
peu605 | 8:4fcf5494f425 | 254 | display.drawCircle(x, y, r,random(0x0010,0xFFFF)); |
peu605 | 8:4fcf5494f425 | 255 | } |
peu605 | 8:4fcf5494f425 | 256 | } |
peu605 | 8:4fcf5494f425 | 257 | if (!fill)display.clearScreen(); |
peu605 | 0:26cf1056924c | 258 | } |
peu605 | 0:26cf1056924c | 259 | } |
peu605 | 0:26cf1056924c | 260 | |
peu605 | 0:26cf1056924c | 261 | |
peu605 | 8:4fcf5494f425 | 262 | void randomLines() { |
peu605 | 8:4fcf5494f425 | 263 | display.clearScreen(); |
peu605 | 8:4fcf5494f425 | 264 | uint8_t k,c; |
peu605 | 8:4fcf5494f425 | 265 | for (k = 0; k < display.height(); k++) { |
peu605 | 8:4fcf5494f425 | 266 | for (c = 0; c < display.height()/2; c++) { |
peu605 | 8:4fcf5494f425 | 267 | uint8_t x1 = random(0,display.width()), y1 = random(0,display.height()), x2 = random(0,display.width()), y2 = random(0,display.height()); |
peu605 | 8:4fcf5494f425 | 268 | display.drawLine(x1, y1, x2, y2,random(0x0010,0xFFFF)); |
peu605 | 8:4fcf5494f425 | 269 | } |
peu605 | 8:4fcf5494f425 | 270 | display.clearScreen(); |
peu605 | 0:26cf1056924c | 271 | } |
peu605 | 0:26cf1056924c | 272 | } |
peu605 | 0:26cf1056924c | 273 | |
peu605 | 0:26cf1056924c | 274 | |
peu605 | 8:4fcf5494f425 | 275 | void randomPoints() { |
peu605 | 8:4fcf5494f425 | 276 | display.clearScreen(); |
peu605 | 8:4fcf5494f425 | 277 | for (uint8_t k = 0; k < 128; k++) { |
peu605 | 8:4fcf5494f425 | 278 | for (uint16_t c = 0; c < 1000; c++) { |
peu605 | 8:4fcf5494f425 | 279 | uint8_t x = random(0,display.width()), y = random(0,display.height()); |
peu605 | 8:4fcf5494f425 | 280 | display.drawPixel(x, y, random(0x0010,0xFFFF)); |
peu605 | 8:4fcf5494f425 | 281 | } |
peu605 | 8:4fcf5494f425 | 282 | display.clearScreen(); |
peu605 | 0:26cf1056924c | 283 | } |
peu605 | 0:26cf1056924c | 284 | } |
peu605 | 0:26cf1056924c | 285 | |
peu605 | 0:26cf1056924c | 286 | void loop() { |
peu605 | 8:4fcf5494f425 | 287 | |
peu605 | 8:4fcf5494f425 | 288 | testlines(random(0x0010,0xFFFF)); |
peu605 | 8:4fcf5494f425 | 289 | randomLines(); |
peu605 | 8:4fcf5494f425 | 290 | //randomCircles(1); |
peu605 | 8:4fcf5494f425 | 291 | randomCircles(0); |
peu605 | 8:4fcf5494f425 | 292 | randomRect(1); |
peu605 | 8:4fcf5494f425 | 293 | randomRect(1); |
peu605 | 8:4fcf5494f425 | 294 | randomRect(1); |
peu605 | 8:4fcf5494f425 | 295 | randomRect(1); |
peu605 | 8:4fcf5494f425 | 296 | randomRect(1); |
peu605 | 8:4fcf5494f425 | 297 | randomRect(0); |
peu605 | 8:4fcf5494f425 | 298 | randomRect(0); |
peu605 | 8:4fcf5494f425 | 299 | randomRect(0); |
peu605 | 8:4fcf5494f425 | 300 | randomRect(0); |
peu605 | 8:4fcf5494f425 | 301 | randomRect(0); |
peu605 | 8:4fcf5494f425 | 302 | randomRect(0); |
peu605 | 8:4fcf5494f425 | 303 | randomPoints(); |
peu605 | 0:26cf1056924c | 304 | } |
peu605 | 0:26cf1056924c | 305 | |
peu605 | 0:26cf1056924c | 306 | void setup(void) { |
peu605 | 8:4fcf5494f425 | 307 | |
peu605 | 8:4fcf5494f425 | 308 | t.start(); |
peu605 | 8:4fcf5494f425 | 309 | |
peu605 | 8:4fcf5494f425 | 310 | display.begin(); |
peu605 | 8:4fcf5494f425 | 311 | display.setBitrate(SPI_BITRATE); |
peu605 | 8:4fcf5494f425 | 312 | display.setRotation(2); |
peu605 | 0:26cf1056924c | 313 | |
peu605 | 0:26cf1056924c | 314 | // lcdTestPattern(); |
peu605 | 0:26cf1056924c | 315 | // delay(1000); |
peu605 | 0:26cf1056924c | 316 | |
peu605 | 8:4fcf5494f425 | 317 | display.clearScreen(); |
peu605 | 8:4fcf5494f425 | 318 | display.setCursor(0,0); |
peu605 | 8:4fcf5494f425 | 319 | display.printf("Lorem ipsum dolor sit amet, consectetur adipiscing elit. Curabitur adipiscing ante sed nibh tincidunt feugiat. Maecenas enim massa"); |
peu605 | 8:4fcf5494f425 | 320 | wait_ms(1000); |
peu605 | 0:26cf1056924c | 321 | |
peu605 | 8:4fcf5494f425 | 322 | tftPrintTest(); |
peu605 | 8:4fcf5494f425 | 323 | wait_ms(2000); |
peu605 | 0:26cf1056924c | 324 | |
peu605 | 8:4fcf5494f425 | 325 | //a single pixel |
peu605 | 8:4fcf5494f425 | 326 | display.drawPixel(display.width()/2, display.height()/2, GREEN); |
peu605 | 8:4fcf5494f425 | 327 | wait_ms(500); |
peu605 | 0:26cf1056924c | 328 | |
peu605 | 8:4fcf5494f425 | 329 | // line draw test |
peu605 | 8:4fcf5494f425 | 330 | testlines(YELLOW); |
peu605 | 8:4fcf5494f425 | 331 | wait_ms(500); |
peu605 | 0:26cf1056924c | 332 | |
peu605 | 8:4fcf5494f425 | 333 | // optimized lines |
peu605 | 8:4fcf5494f425 | 334 | testfastlines(RED, BLUE); |
peu605 | 8:4fcf5494f425 | 335 | wait_ms(500); |
peu605 | 0:26cf1056924c | 336 | |
peu605 | 8:4fcf5494f425 | 337 | testdrawrects(GREEN); |
peu605 | 8:4fcf5494f425 | 338 | wait_ms(1000); |
peu605 | 0:26cf1056924c | 339 | |
peu605 | 8:4fcf5494f425 | 340 | testfillrects(BLUE, YELLOW); |
peu605 | 8:4fcf5494f425 | 341 | wait_ms(1000); |
peu605 | 0:26cf1056924c | 342 | |
peu605 | 8:4fcf5494f425 | 343 | randomRect(0); |
peu605 | 8:4fcf5494f425 | 344 | wait_ms(100); |
peu605 | 8:4fcf5494f425 | 345 | randomCircles(0); |
peu605 | 8:4fcf5494f425 | 346 | wait_ms(100); |
peu605 | 8:4fcf5494f425 | 347 | randomLines(); |
peu605 | 8:4fcf5494f425 | 348 | wait_ms(100); |
peu605 | 8:4fcf5494f425 | 349 | randomPoints(); |
peu605 | 8:4fcf5494f425 | 350 | wait_ms(500); |
peu605 | 0:26cf1056924c | 351 | |
peu605 | 8:4fcf5494f425 | 352 | display.clearScreen(); |
peu605 | 8:4fcf5494f425 | 353 | testfillcircles(10, BLUE); |
peu605 | 8:4fcf5494f425 | 354 | testdrawcircles(10, WHITE); |
peu605 | 8:4fcf5494f425 | 355 | wait_ms(1000); |
peu605 | 0:26cf1056924c | 356 | |
peu605 | 8:4fcf5494f425 | 357 | testroundrects(); |
peu605 | 8:4fcf5494f425 | 358 | wait_ms(500); |
peu605 | 0:26cf1056924c | 359 | |
peu605 | 8:4fcf5494f425 | 360 | testtriangles(); |
peu605 | 8:4fcf5494f425 | 361 | wait_ms(500); |
peu605 | 0:26cf1056924c | 362 | } |
peu605 | 0:26cf1056924c | 363 | |
peu605 | 0:26cf1056924c | 364 | int main() { |
peu605 | 0:26cf1056924c | 365 | |
peu605 | 0:26cf1056924c | 366 | setup(); |
peu605 | 8:4fcf5494f425 | 367 | |
peu605 | 0:26cf1056924c | 368 | while (true) { |
peu605 | 0:26cf1056924c | 369 | loop(); |
peu605 | 0:26cf1056924c | 370 | } |
peu605 | 0:26cf1056924c | 371 | } |