arduino 2.8 tft lcd touch shield library factory

This is a versatile and Arduino/Seeeduino/Arduino Mega compatible resistive touch screen shield which can be used as display device, or sketch pad for user input/interface.
Compared with the previous version (2.8" TFT Touch Shield V1.0) we improved the screen driver with a professional chip (ILI9341) to provide the pin-saving SPI communication protocol without sacrificing the data transmission speed.
Circles isn"t the only thing our library can help you draw, we also have a lines, number, rectangle, and many more examples. Check those out as well to become a pro with the shield.
Function Description: The drawCircle function draws an empty circle with the center at the coordinates poX, and poY. The circle will be of radius r and the border color will be color. The color parameter is a 16-bit Red-Geen-Blue (RGB) integer, in the example code above the words YELLOW, CYAN, RED, and BLUE are defined as integers in the TFTv2.h file.
The TFT Touch Shield"s backlight is on by default since its control circuit is directly powered by the 5V pin. If, however, you wish to control the backlight"s on/off state using the Arduino Digital I/O pin 7, a simple modification will have to be made:
Now controlling the backlight"s state is as easy as controlling an LED, upload the following code to the Arduino board to see how to toggle the backlight every 500ms (1/2 second):
I still remember when I post my first Instructable post years ago, it"s a project about Arduino, I made a phone with Arduino. It"s called ArduinoPhone, even today I can get some comments from it, and I am glad to help others to make their own phone with Arduino.
Combining Arduino and other shield modules, we make a mobile phone named Arduino Phone. Meanwhile, we printed a shell for it with the 3D printer. Although it"s not such fine as you think, even a little bit clunky, it"s still very cool. That is the point this is a cell phone made by ourselves.
While, we can"t install Arduino Phone Apps limited by Arduino. So, if you want to play Angry Birds, then you need to do some big modifications on Arduino Phone. :)

TFT Touch Shield V2.0 is a resistive touch screen, compatible with Arduino/Seeeduino/Arduino Mega/SAMD21 platforms. It can be used as display device or sketch pad. Compared with the previous version, 2.8""TFT Touch Shield V1.0, we upgraded the screen driver to a more professional chip, ILI9341 driver, providing different pin-saving SPI communication without sacrificing the data transmitting speed. Due to the communication method change, programs developed for the original version are needed for modification before being transplanted to the new version. With a SD card module integrated on this shield, this shield reserves capability for other expansions of your project.
Click to download the Touch Screen Driver,then please click on below button to download the library and install it, if you don"t know how to install an Arduino library, please refer to the tutorial (HOW TO INSTALL AN ARDUINO LIBRARY).
We recommend using Seeed_Arduino_LCD with internal flash chips larger than 128k. If you have a smaller flash device, I recommend using the TFT_Touch_Shield_V2.
Step1. Download and Install Seeed_Arduino_LCD. if you don"t know how to install an Arduino library, please refer to the tutorial (HOW TO INSTALL AN ARDUINO LIBRARY).

Spice up your Arduino project with a beautiful large touchscreen display shield with built in microSD card connection. This TFT display is big (2.8" diagonal) bright (4 white-LED backlight) and colorful (18-bit 262,000 different shades)! 240x320 pixels with individual pixel control. It has way more resolution than a black and white 128x64 display. As a bonus, this display has a resistive touchscreen attached to it already, so you can detect finger presses anywhere on the screen.
The shield is fully assembled, tested and ready to go. No wiring, no soldering! Simply plug it in and load up our library - you"ll have it running in under 10 minutes! Works best with any classic Arduino (UNO/Duemilanove/Diecimila). This shield does work with the Mega Arduinos but its going to be half the speed of the Uno-type boards because of the way the Mega rearranges all the pins (there is no way to get around this!) This shield is not Leonardo-compatible
This display shield has a controller built into it with RAM buffering, so that almost no work is done by the microcontroller. The shield does require a lot of pins: 12 lines total for the display, 13 total if you use the microSD card
If you are not using an Arduino-shaped microcontroller, check out our 2.8" TFT breakout board which can be easily wired up to any processor the breakout board version does not have microSD holder.

I"ll show you how to get started with a very popular variant of the TFT touch screen, including how to make a "button" (spoiler alert: it"s not a button just an area of screen that looks like one, that you can then receive touches from).

The four sample codes: DisplayString, DrawGraphic, ShowBMP, and TouchPanel are used to display strings, graphics, pictures in BMP format, and touch pen functions.
Before experimenting with the TouchPanel, the touchscreen must be calibrated according to the displayed prompts. Open the corresponding project, burn the program, and you will be prompted when running:
The demos are developed based on the HAL library. Download the program, find the STM32 program file directory, and open the STM32 with four project folders: DisplayString, DrawGraphic, ShowImage, and Touchscreen.
The four sample codes: DisplayString, DrawGraphic, ShowBMP, and TouchPanel are used to display strings, graphics, pictures in BMP format, and touch pen functions.
Before experimenting with the TouchPanel, the touchscreen must be calibrated according to the displayed prompts. Open the corresponding project, burn the program, and you will be prompted when running:

This TFT Touch Shield is Arduino/Crowduino/Arduino Mega compatible, it integrated a 2.8” TFT Display and a resistive touch panel, to make this shield suitable for handheld devices.
This TFT Touch Shield has 240x320 pixels with individual pixel control, it uses the ILI9341 driver and SPI interface to communicate with controllers such as Arduino, saving you much Arduino pins for other usages in your projects. Besides, A SD card socket is also added to help you develop applications that data storage is needed such as digital picture album.
2.Install the library to the Arduino IDE library to ...\Arduino\libraries, but please note that if you downloaded the library in .zip file, you should delete the "-master" in the library name when you unzip it, as the "-" can not be recognized in the Arduino Library.

I recently posted this problem in the Programming Questions section, but it was suggested to me that my problem may be more relevant here. I am currently working with an Arduino Uno and 2.8" TFT Display with a Touch Shield purchased from Adafruit link here:
Spice up your Arduino project with a beautiful large touchscreen display shield with built in microSD card connection. This TFT display is big (2.8" diagonal) bright (4 white-LED ...
We know that the screen functions perfectly because we used the examples from the
This TFT display is big (2.8" diagonal) bright (4 white-LED backlight) and colorful (18-bit 262,000 different shades)! 240x320 pixels with individual pixel control. It has way more resolution than a black and white 128x64 display. As a bonus, this...
and they work perfectly. Therefore, we thought that all we needed to do was to add the Adafruit_ILI9341.h and Adafruit_STMPE610.h lines missing from the code we got from ProjectHub to our code since these are the libraries that seem to correspond with our shield. However, once we add the Adafruit_ILI9341.h library we get a host of errors we cannot reconcile. Is it possible that our thought process is just wrong or is there a way to get this library to work in our code? We have already been scouring the web troubleshooting. We already made sure the line for shields was no longer commented out in the TFTLCD Library and we are at about our wits end. The error messages are shown below. Any advice is much appreciated!
/Users/bunmifariyike/Documents/Arduino/libraries/Adafruit_ILI9341-master/Adafruit_ILI9341.cpp: In constructor "Adafruit_ILI9341::Adafruit_ILI9341(int8_t, int8_t, int8_t, int8_t, int8_t, int8_t)":
/Users/bunmifariyike/Documents/Arduino/libraries/Adafruit_ILI9341-master/Adafruit_ILI9341.cpp:175:97: error: no matching function for call to "Adafruit_GFX::Adafruit_GFX(int, int)"
/Users/bunmifariyike/Documents/Arduino/libraries/Adafruit_ILI9341-master/Adafruit_ILI9341.cpp: In constructor "Adafruit_ILI9341::Adafruit_ILI9341(int8_t, int8_t, int8_t)":
/Users/bunmifariyike/Documents/Arduino/libraries/Adafruit_ILI9341-master/Adafruit_ILI9341.cpp:202:120: error: no matching function for call to "Adafruit_GFX::Adafruit_GFX(int, int)"

Well, no luck finding a way to create a library function so far, but I have discovered that I can swap the pin assignments when I initialize the touch screen in a sketch so that the screen orientation matches the display orientation. As an example, the stock demo from SEEED for their paint.ino has the line set to :
for the Mega 2560. This actually comes from the TFTv2 library which sets the pin assignment according to which Arduino you"re using (by the way, in this case 57 refers to A3 and 54 to A0). This sets the orientation to portrait, which works for their paint sketch, but not something in landscape like the UTFT UTouch_ButtonTest sketch, which is in landscape. However, if you swap the pin assignment to TouchScreen(54, 57, A2, A1), the axis and vectors will be the same as the demo. You also need to map the values to the pixels using something like the following lines:
The full example for converting the UTouch_ButtonTest sketch to use the Seeedstudio touch library instead is attached. (I was going to post in-line, but it cause the post to exceed 9000)
I should mention that I changed the name of the Seeed touch library from SeeedTouchScreen to STouch to reduce the typing, if you don"t want to mess with that just use the library names from Seeed.
The sketch works, but unfortunately I can"t seem to figure out how to change Karlsen"s UTouch Buttons library to use the same functions. If anyone has advice about doing this (I realize you need to know both Seeed"s library and Karlsen"s UTouch library to sort it out) I would greatly appreciate it. Meanwhile, I have some C gurus at work I"m going to tag to look at my changes so far to see if we can figure it out. If anyone here is interested in helping, let me know and I"ll post what I have at that point.

Spice up your Arduino project with a beautiful large touchscreen display shield with built in microSD card connection. This TFT display is big (5" diagonal) bright (12 white-LED backlight) and colorfu 480x272 pixels with individual pixel control. As a bonus, this display has a optional resistive touch panel attached on screen by default.
The shield is fully assembled, tested and ready to go. No wiring, no soldering! Simply plug it in and load up our library - you"ll have it running in under 10 minutes! Works best with any classic Arduino (UNO/Due/Mega 2560).
This display shield has a controller built into it with RAM buffering, so that almost no work is done by the microcontroller. You can connect more sensors, buttons and LEDs.
Of course, we wouldn"t just leave you with a datasheet and a "good luck!" - we"ve written a full open source graphics library at the bottom of this page that can draw pixels, lines, rectangles, circles and text. We also have a touch screen library that detects x,y and z (pressure) and example code to demonstrate all of it. The code is written for Arduino but can be easily ported to your favorite microcontroller!
For 5 inch screen,the high current is needed.But the current of arduino uno or arduino mega board is low, an external 5V power supply is needed. Refer to the image shows the external power supply position on shield ER-AS-RA8875.
If you"ve had a lot of Arduino DUEs go through your hands (or if you are just unlucky), chances are you’ve come across at least one that does not start-up properly.The symptom is simple: you power up the Arduino but it doesn’t appear to “boot”. Your code simply doesn"t start running.You might have noticed that resetting the board (by pressing the reset button) causes the board to start-up normally.The fix is simple,here is the solution.

Looking for a bigger screen to interface with the Arduino Uno? Bigger than the 2.4″ TFT LCD screen, this shield is able to display a little more information than the 2.4″ screen. In this tutorial, we’ll be looking at how we would interface the 2.8″ TFT LCD Touchscreen Shield with an Arduino Uno.
As this is an Arduino Shield, just attach the shield to the Arduino Board. (Uno, Mega, etc.) But in this tutorial, we’ll be connecting the shield to an Arduino Uno.
We’ll be using Adafruit’s GFX and TFTLCD library to interface the LCD shield with Arduino Uno. Download the library, extract the rspective folders and place it in your Arduino libraries directory.
Before using the TFT LCD Shield, we should first calibrate the touch screen. As there weren’t any calibration sketch provided in the librarie’s example, I wrote a simple calibration sketch to calibrate the touch screen. With this sketch, adapted from Adafruit’s tftpaint example sketch, it will display the offset that will remap the values of the raw values of the TFT resistors to the coordinates of the screen.
The values displayed at the end of the calibration will be used to determine the TS_MINX,TS_MINY, TS_MAXX & TS_MAXY variables. These variables are actually the resistance value of the TFT screen, which will be “converted” into coordinates relative to the screen:p.x = map(p.x, TS_MINX, TS_MAXX, 0, tft.width());
Upload the following code below to obtain the offset values. Remember to note down the respective values (TS_MINX,TS_MINY, TS_MAXX & TS_MAXY), as it is needed for the next section of the tutorial.// Paint example specifically for the TFTLCD breakout board.
After the calibration is done and the (maximum & minimum) X/Y resistance values recorded, we’ll proceed on to running the tftpaint demo. Open up tftpaint sketch from Adafruit’s TFTLCD examples.
When you draw something on the touch screen with the original sketch, the X coordinates will be inverted. To fix it, we’ll have to flip the mapping function from :// scale from 0->1023 to tft.width
After the changes has been made, save the sketch and upload to the Arduino. And Viola! You should be able to draw on the screen without too much offset.
Open up your serial monitor & see whther the library is able to detect the driver. If the Serial Monitor returns something like this:Unknown LCD driver chip: 0x00
You can try hard-coding the driver of the LCD Shield specific to the shield you have. You can figure it through these following methods:Turn to the back of the shield & look for the chip ID
After you have figured out the driver ID, we’ll hard code the driver ID. Modify this line of code (at line 92) from this:uint16_t identifier = tft.readID();

In this Arduino touch screen tutorial we will learn how to use TFT LCD Touch Screen with Arduino. You can watch the following video or read the written tutorial below.
For this tutorial I composed three examples. The first example is distance measurement using ultrasonic sensor. The output from the sensor, or the distance is printed on the screen and using the touch screen we can select the units, either centimeters or inches.
The third example is a game. Actually it’s a replica of the popular Flappy Bird game for smartphones. We can play the game using the push button or even using the touch screen itself.
As an example I am using a 3.2” TFT Touch Screen in a combination with a TFT LCD Arduino Mega Shield. We need a shield because the TFT Touch screen works at 3.3V and the Arduino Mega outputs are 5 V. For the first example I have the HC-SR04 ultrasonic sensor, then for the second example an RGB LED with three resistors and a push button for the game example. Also I had to make a custom made pin header like this, by soldering pin headers and bend on of them so I could insert them in between the Arduino Board and the TFT Shield.
Here’s the circuit schematic. We will use the GND pin, the digital pins from 8 to 13, as well as the pin number 14. As the 5V pins are already used by the TFT Screen I will use the pin number 13 as VCC, by setting it right away high in the setup section of code.
I will use the UTFT and URTouch libraries made by Henning Karlsen. Here I would like to say thanks to him for the incredible work he has done. The libraries enable really easy use of the TFT Screens, and they work with many different TFT screens sizes, shields and controllers. You can download these libraries from his website, RinkyDinkElectronics.com and also find a lot of demo examples and detailed documentation of how to use them.
After we include the libraries we need to create UTFT and URTouch objects. The parameters of these objects depends on the model of the TFT Screen and Shield and these details can be also found in the documentation of the libraries.
Next we need to define the fonts that are coming with the libraries and also define some variables needed for the program. In the setup section we need to initiate the screen and the touch, define the pin modes for the connected sensor, the led and the button, and initially call the drawHomeSreen() custom function, which will draw the home screen of the program.
So now I will explain how we can make the home screen of the program. With the setBackColor() function we need to set the background color of the text, black one in our case. Then we need to set the color to white, set the big font and using the print() function, we will print the string “Arduino TFT Tutorial” at the center of the screen and 10 pixels down the Y – Axis of the screen. Next we will set the color to red and draw the red line below the text. After that we need to set the color back to white, and print the two other strings, “by HowToMechatronics.com” using the small font and “Select Example” using the big font.
Ok next is the RGB LED Control example. If we press the second button, the drawLedControl() custom function will be called only once for drawing the graphic of that example and the setLedColor() custom function will be repeatedly called. In this function we use the touch screen to set the values of the 3 sliders from 0 to 255. With the if statements we confine the area of each slider and get the X value of the slider. So the values of the X coordinate of each slider are from 38 to 310 pixels and we need to map these values into values from 0 to 255 which will be used as a PWM signal for lighting up the LED. If you need more details how the RGB LED works you can check my particular tutorialfor that. The rest of the code in this custom function is for drawing the sliders. Back in the loop section we only have the back button which also turns off the LED when pressed.
In order the code to work and compile you will have to include an addition “.c” file in the same directory with the Arduino sketch. This file is for the third game example and it’s a bitmap of the bird. For more details how this part of the code work you can check my particular tutorial. Here you can download that file:
Ms.Josey
Ms.Josey