/* * display_st7735_1.44_TFT.ino * * Test screen update speed with large solid fonts on * a 128x128 TFT screen that uses the ST7735 chip. * * Consumes 26% of program storage space and * 5% of dynamic memory on a Pro Mini. * * Mithat Konar */ #include // Arduino LCD library #include /* * Pin assignments: * RST: 8 * CE/CS/SCE: 10 * DC/"D/C"/A0: 9 * DIN/DN/MOSI/DATA: 11 (Arduino HW standard) * CLK/SCLK/SCK: 13 (Arduino HW standard) * VCC: 3.3V * LIGHT/LED: ground through 1 ohm resistor (yields about 20mA) * GND: ground */ const unsigned int CLOCK_PIN = 13, DATA_PIN = 11, CS_PIN = 10, DC_PIN = 9, RESET_PIN = 8; const unsigned int LEFT_MARGIN = 32; // number of pixels you need to shift for 128x128 screen TFT TFTscreen = TFT(CS_PIN, DC_PIN, RESET_PIN); char dispStr[4]; // null terminated char array used to pass to TFT.text() unsigned int counter = 80; void setup() { TFTscreen.begin(); TFTscreen.background(0, 0, 0); // clear the screen TFTscreen.stroke(255, 255, 255); // set font color TFTscreen.setTextSize(1); // set font size TFTscreen.text("TFT library", LEFT_MARGIN, 0); TFTscreen.setTextSize(7); } void loop() { // draw over what you wrote last time TFTscreen.stroke(0, 0, 0); // background color String(counter).toCharArray(dispStr, 4); TFTscreen.text(dispStr, LEFT_MARGIN, 40); // update and draw something new counter++; TFTscreen.stroke(255, 255, 255); // font color String(counter).toCharArray(dispStr, 4); TFTscreen.text(dispStr, LEFT_MARGIN, 40); // inherent frame rate of this loop is about 15 fps w/o added delay (8 MHz processor). delay(500); }