Hi everyone,
I'm trying to program my arduino uno to display colorful text or graphs using potentiometer, I'm using TFT 4.3" touch screen for this purpose.
Firstly I need to test the screen then to do my program.
There are simple examples to test the screen, however when I upload it only white screen is appearing (which comes from power supply, so actually it shows nothing) not as the code must show and it says there's no error!
I couldn't figure what's the problem??? ![]()
*For Setting up the hardware:
I plugged the shield on Arduino and the screen above it directly (as all says for TFT 2.8"). < so I don't know if I should do something more with the connection since mine is 4.3"!
*For the software:
I downloaded the library, copied it into \Arduino\libraries folder.
after that to test the shield so I know it works, I uploaded the paint example included in the library and everything okay but nothing appears!
*This is a video showing the result of paint example:
here is the paint example:
// Paint application - Demonstate both TFT and Touch Screen
#include <stdint.h>
#include <TouchScreen.h>
#include <TFTv2.h>
#include <SPI.h>
int ColorPaletteHigh = 30;
int color = WHITE;Â //Paint brush color
unsigned int colors[8] = {BLACK, RED, GREEN, BLUE, CYAN, YELLOW, WHITE, GRAY1};
// For better pressure precision, we need to know the resistance
// between X+ and X- Use any multimeter to read it
// The 2.8" TFT Touch shield has 300 ohms across the X plate
TouchScreen ts = TouchScreen(XP, YP, XM, YM); //init TouchScreen port pins
void setup()
{
  Tft.TFTinit(); //init TFT library
  Serial.begin(115200);
  //Draw the pallet
  for(int i = 0; i<8; i++)
  {
    Tft.fillRectangle(i*30, 0, 30, ColorPaletteHigh, colors[i]);
  }
}
void loop()
{
  // a point object holds x y and z coordinates.
  Point p = ts.getPoint();
  //map the ADC value read to into pixel co-ordinates
  p.x = map(p.x, TS_MINX, TS_MAXX, 0, 240);
  p.y = map(p.y, TS_MINY, TS_MAXY, 0, 320);
  // we have some minimum pressure we consider 'valid'
  // pressure of 0 means no pressing!
  if (p.z > __PRESURE) {
    // Detect paint brush color change
    if(p.y < ColorPaletteHigh+2)
    {
      color = colors[p.x/30];
    }
    else
    {
      Tft.fillCircle(p.x,p.y,2,color);
    }
  }
}