WARNING: This product can expose you to chemicals including Nickel which is known to the State of California to cause cancer and which is known to the State of California to cause birth defects and/or other reproductive harm. For more information, go to www.P65Warnings.ca.gov Click to see Why is this here?
As of August 2018 the State of California has changed the requirements of the “Prop 65” law. We now must list on our website any possible chemicals the can cause cancer, birth defects or reproductive problem.
As an example: ABS plastic contains styrene PVC wire insulation can contain Di(2-ethylhexyl)phthalate (DEHP) electrolytic capacitors can contain Ethylene glycol Brass can contain Lead flame retardant pc boards can contain Tetrabromobisphenol A (TBBPA) Aluminum alloys can contain Chromium To put it simply we are a small company and do not have the resources to test every single part, so we list every thing as hazardous. Please recycle all electronic parts responsibly and under no circumstance eat, drink or smoke these parts and wash your hands after touching! |
Product ReviewsClick here to review this item | ||
A question for other users of this device | ||
I submitted the review that generates a sin/cos curve on this display. What I would LIKE to find, but so far with no success, is code that will read and display a .bmp file stored on the microSD card on the ILI9225 (NOT a file stored as an array in the code). You SHOULD be able to do this, as is possible with other TFTs, but I can't find any code that will do it. Help will be greatly appreciated! | ||
- David Brooks, PA | ||
sin/cos code for this TFT display | ||
This is a nice full color TFT display that is much cheaper than "newer" alternatives. Another reviewer has expressed an interest in seeing the code used to generate the display shown in the image for this TFT. Here's code that produces a similar display. The comments at the beginning of the code give some helpful URLs for using this "old" device. I have used the ability of the ILI9225 board to plug directly onto an UNO header, which then relies on software SPI. To use hardware SPI connect the display to a breadboard and wire to the hardware SPI digital pins as given in the code. Hardware SPI is much faster than software SPI, but for many applications that doesn't make much difference. /* TFT_MPJAdemo.ino Some of this code is taken verbatim from: https://www.hackster.io/Arnov_Sharma_makes/getting-started-with-ili9255-tft-lcd-378331#code For info about fonts, see the GFX_Font_Demo.ino sketch here: https://www.arduinolibraries.info/libraries/tft_22_ili9225 and here: https://learn.adafruit.com/adafruit-gfx-graphics-library/using-fonts For info about graphics primitives, here: https://learn.adafruit.com/adafruit-gfx-graphics-library/graphics-primitives */ #include "SPI.h" #include "TFT_22_ILI9225.h" //#include <../fonts/FreeSans12pt7b.h> //#include <../fonts/FreeSans24pt7b.h> #include <../fonts/FreeSans9pt7b.h> // hardware SPI // #define TFT_RST 8 // #define TFT_RS 9 // #define TFT_CS 10 // SS // #define TFT_SDI 11 // MOSI // #define TFT_CLK 13 // SCK // #define TFT_LED 3 // 0 if wired to +5V directly // software SPI (connected to UNO header) #define TFT_RST A4 #define TFT_RS A3 #define TFT_CS A5 // SS #define TFT_SDI A2 // MOSI #define TFT_CLK A1 // SCK #define TFT_LED 0 // 0 if wired to +5V directly #define TFT_BRIGHTNESS 200 // initial brightness of TFT backlight (optional) //const int width=220,height=176; // screen size for this (rotated) TFT // Use hardware SPI? (faster - on Uno: 13-SCK, 12-MISO, 11-MOSI) TFT_22_ILI9225 tft = TFT_22_ILI9225(TFT_RST, TFT_RS, TFT_CS, TFT_SDI, TFT_CLK, TFT_LED); // Variables and constants // Make x_size evenly divisible by 3, the xStep pixel interval. const int x0=20, y0=20,x_size=192,y_size=130; const int textDX=-3,textDY=17,xStep=3; int PX,PYs,PYc; float DegToRad=0.017453,sine,cosine; void setup() { tft.begin(); tft.setOrientation(1); // landscape tft.clear(); tft.setGFXFont(&FreeSans9pt7b); tft.drawGFXText(18, 12, "Trig demo (sin, cos)", COLOR_WHITE); //define graphing space tft.drawGFXText(x0+textDX,y0+y_size+textDY, "0", COLOR_WHITE); tft.drawGFXText(x0+textDX*9+x_size,y0+y_size+textDY, "360", COLOR_WHITE); tft.drawGFXText(x0+textDX*5+x_size/2,y0+y_size+textDY, "180", COLOR_WHITE); tft.drawRectangle(x0-1,y0-1,x0+193,y0+131,COLOR_WHITE); tft.drawLine(x0,y0+y_size/2,x0+x_size,y0+y_size/2,COLOR_YELLOW); tft.drawLine(x0+x_size/2,y0,x0+x_size/2,y0+y_size,COLOR_YELLOW); tft.drawGFXText(x0+textDX*7,y0+y_size+textDY/3, "-1", COLOR_WHITE); tft.drawGFXText(x0+textDX*7,y0+y_size/2+textDY/3, " 0", COLOR_WHITE); tft.drawGFXText(x0+textDX*7-2,y0+textDY/3, "+1", COLOR_WHITE); // Draw sine and cosine curves. for (int i=0; i<=360; i+=xStep) { sine=sin(i*DegToRad); cosine=cos(i*DegToRad); // Map to pixels. PX=round(x0+i/360.*x_size); PYs=round(y0+y_size/2-sine*y_size/2); PYc=round(y0+y_size/2-cosine*y_size/2); tft.drawPixel(PX,PYs,COLOR_RED); tft.drawPixel(PX,PYc,COLOR_CYAN); } } void loop() { } | ||
- David Brooks, PA | ||
Beautiful Color Graphics | ||
This board plugs right into the Arduino without the need for wires. It great for plotting geometric shapes. Here is a sketch that draws sine waves. -- // #include SPI.h #include TFT_22_ILI9225.h #include math.h #define TFT_RST A4 #define TFT_RS A3 #define TFT_CS A5 // SS #define TFT_SDI A2 // MOSI #define TFT_CLK A1 // SCK #define TFT_LED 0 // 0 if wired to +5V directly #define TFT_BRIGHTNESS 200 // Initial brightness of TFT backlight optional #define ILI9225_LCD_WIDTH 176 #define ILI9225_LCD_HEIGHT 220 TFT_22_ILI9225 tft = TFT_22_ILI9225TFT_RST, TFT_RS, TFT_CS, TFT_SDI, TFT_CLK, TFT_LED; void setup { tft.begin; tft.clear; } void loop { pixel_loopx0x07FF; // cyan pixel_loopy0x07E0; // green pixel_loopx0x0000; // black pixel_loopy0x0000; // black } void pixel_loopxlong s { for int y = 0; y <= ILI9225_LCD_HEIGHT; y = y + 1 { int x = siny * 5 * DEG_TO_RAD * ILI9225_LCD_WIDTH / 2 + ILI9225_LCD_WIDTH / 2; tft.drawPixelx, y, s; delayrandom2, 50; } } void pixel_loopylong s { for int x = 0; x <= ILI9225_LCD_WIDTH; x = x + 1 { int y = sinx * 5 * DEG_TO_RAD * ILI9225_LCD_HEIGHT / 2 + ILI9225_LCD_HEIGHT / 2; tft.drawPixelx, y, s; delayrandom2, 50; } } | ||
- Tom Freer, OH | ||
Nice, Compact and easy to use | ||
I picked this display over its larger cousin sold by MPJA because I have to fit it in a tight space. The exact dimensions of the display -not the board- is 2 X 1.5. The display sticks up from the board about 1/8 and could fit through a panel cut out. After running for some time, it is possible to feel a slight warmth, but less than body temperature. Once I hooked up the 6 control lines and two power lines to the arduino nano, everything just worked. I ran all three sample programs with no problem. You cannot just plug it in to the nano and expect it to work like the Mega2560. You can plug it into the Mega, but youll need to change the interface pins in the software to make it use the analog pins instead of the digital ones. For the Nano, connect CLK to D13, SDA to D11, RS to D9, RST to D8, and CS to D10. The display only uses the SPI MOSI pin and the MISO pin -D12- is not used. The fonts included are bitmapped, but if you use the Mega, you can use the TrueType font clones. The Nano doesnt have enough FLASH memory for those. Lastly, the Sine wave program in the photo is not included in the sample programs. Would be nice if MPJA provided that one. | ||
- Dennis, FL | ||