Это видео недоступно.
Сожалеем об этом.
Arduino Tutorial: 1.8" TFT Color Display ST7735 128x160
HTML-код
- Опубликовано: 18 янв 2018
- On this tutorial I explain what you need to do to make the 1.8" 128x160 TFT color display with the ST7735 driver work with arduino.
- Buy 1.8" TFT ST7735: amzn.to/2OgXjIs
- Buy Arduino nano: amzn.to/3iru0op
Recommended Tools:
- Electronic Parts Tester (ESR LCR-T4): amzn.to/2QvQJlP
- Breadboard (good quality): amzn.to/2QsyY3C
- Storage Case for Jumper Wire: www.walmart.co...
- Multimeter (Fluke 17B+): amzn.to/2L3PNQk
- Rigol DS1054Z Digital Oscilloscope: amzn.to/2C5ZwD7
Note: As an Amazon Associate I earn from qualifying purchases.
Example sketch using UCGLIB library: drive.google.c...
UCGLIB library: github.com/oli...
Example sketch using Adafruit library: drive.google.c...
Adafruit library: github.com/ada...
GFX library: github.com/ada...
Website: www.interlinkk...
Patreon: / interlinkknight
I just got my TFT Color Display and have been testing it out with example libraries on arduino ide, including Ababfuit. This video really helped clear up the functionality of the module and now I feel excited about the potential projects I can create with this!
That's awesome. I am really glad I could help :)
Thanks for producing such an excellent and informative video explaining TFT displays, this is surely the best I saw. People like you make a difference in this World! Blessings!
Glad it was helpful!
Many thanks for specifying the voltage divider circuit for KMR model which understands only 3v logic.
Excellent tutorial! I've used some time ago other libraries like own TFT LCD library and I like the UCGlib the most! I recommend this one because it's easier to program
I wish I'd seen this video before buying the display that requires resistors. What a pain with all that extra soldering. Great info. Might have said something about the use of I2C labels on SPI pins.
Very good tutorial and the code is very detailed. Good job boy.
Thanks 😊
In the Datasheet of UNO R3 SPI pins are: MOSI #12, SCK #14.
Not sure where you found that. I just checked and in the arduino website shows:
UNO R3, UNO R3 SMD, UNO WiFi Rev2, UNO Mini Ltd
Pins: 10(CS), 11(COPI), 12(CIPO), 13(SCK)
Either way, they are mostly configurable.
BTW, there is no pin 14 on Arduino UNO R3
Great video, thanks for the help. I got my AZ-Delivery ST7735 running.
I got a slightly different model and my A0 pin was called RS which didn't take too long to figure out.
Also I had to install another Adafruit library to get it to work.
I still have some white stripes on my display, need to figure out how to get rid of them
White lines in a display is usually a hardware problem. Get a replacement from where you bought it
My plan is to build a GPS disciplined clock using a nano with a TFT display, uBlox M8n GPS and a RTC for when the GPS can't get a lock.
Wow. Sounds nice. If you get a video, please post it here.
@@interlinkknight I am waiting for the GPS and RTC to arrive. I did get the display to work last evening thanks to your video.
Fantastic video and explanation!
This type of stuff is interesting to me!
Hi, can you tell me on Aliexpress a 5 volt TFT monitor compatible with the Arduino nano ?
Thanks for your video. This was a good introduction.
Very well done upload.
I'm currently developing a simple dual display current/voltmeter setup for a power supply. I have a few 7735's in bare form and thought I'd spin a board to make use of them. I've used Oliver's U8G2 library on another project, but havn't tried the color version yet. It's probably quick enough for 2 displays and an uno's ADC.
Thanks for the upload.
-Jake
I've never used multiple displays so I don't know
@@interlinkknight
Me neither, but I think the whole chip select pin thing makes it pretty straight forward. They both go connect to the μC hardware SPI bus with chip select controlling which one to write to using two different GPIO. At least that's my breadboard goal for today :-)
It should work, but I'm guessing is going to lower the refresh rate by half.
@@interlinkknight
Do all of your ST7735 based displays have bad side viewing color and image definition when placed in a landscape orientation? Both types I have are really bad. I won't use these because it's so bad. If I'm more than 20 degrees to the left or right I can't see any color and can barely make out the screen contents. I just built a breakout for a ST7565 monochrome graphics display to try with the current project instead. The 7735 in portrait mode with 2 displays looks silly :-)
You are right. Sadly the tft color displays that I've seen for arduino are not good with angles.
Thanks, best tutorial by display
Hi thanks for this video. I’m going to use the Adafruit 1.54″ TFT LCD Display with MicroSD - ST7789 with an Arduino UNO. My goal is to load several images on the flow and make a low fps animation. Is the refresh rate good or I’ll see the scanline when changing the image? It should be noted that all images are really little different. Thanks in advance!
The refresh rate is going to be very low, I think. Maybe 2 to 5 FPS, if you are refreshing the entire screen. I would use a nextion (enhanced) display for that kind of animation.
Animation will depend on what ur driving these with. On a ESP8266 I'm running a similar display @128*128 16BPP and get over 50fps that includes displaying text, 3 32x32 aliens and clearing the screen every frame. With full screen animation, no need to clear... just overwrite new frame when time. If you have a look at my channel I have a demo of video with sound on an Arduino Due. I use my own library as most the 3rd party ones are slow. Getting one of these displays so I can add the driver to the drivers I support.
thank you thank you love from kerala
Looks like an answer to my frustration with the KMR version. I tried connecting everything to the Nano 3v3 rather than using 5v and resistors but it didn't appear to work. Any idea why ?
I don't know. I can only suggest trying my sketch making sure you connect all the pins correctly like I show on the video. Also, I remember some people saying that they got a defective unit where the voltage regulator was damage. Check if the voltage regulator (the 3-pin black IC on the back) is giving enough voltage. If not, you can by-pass the regulator. You are using 3.3V already so you don't need it anyway.
Thanks. Problem fixed by using 200 ohm resistor from SDA connection to Nano and from SDA connection to ground as shown at
www.ebay.fr/itm/1-8-inch-ST7735R-128x160-SPI-Colour-TFT-Display-Module-with-SD-Slot-for-Arduino-/282813109817
Hi! Thank you for your very detailed tutorial. I have been searching for something similar for a week now, ordered a display and couldnt get it workling nor find any information about it. Thanks to you, it works, but it is extremely dim. I can barely see anything. I am using the 1.77" TFT, in your video the upper left one, with an arduino nano. I have a lot of other things hooked up, but no potentiometer. How could I get the Brightness way up? Thanks a lot again!
I actually fixed it by putting the backlight pin (LEDA) in to 5V instead of 3.3. Much, much better.
Good to know. Yeah, some backlights work with 3.3v and others with 5v.
how are A0, SDA and SCK pre-selected? I've set them to GPIO 2, 3 and 4 but I can't get a simple text to display and change the background. Only a static white background is showing. Im using Raspberry pi pico
Pins are selected in the top of the sketch and usually we use hardware pins so they can't be charged.
This is made for Arduino uno and nano. You need to find a Library for raspberry pi pico
i have a 1.8 tft from aliexpress (the one with the red pcb) and it doesnt seem to be able to work with the adafruit library. the ucglib one works perfectly put the adafruit just wont work. any idea why?
Do you get an error with the adafruit?
I have letters inverted vertically on such a display (not the display screen itself). I have tried many libraries, but there is no result. Advise me where to dig?????
Maybe it's defective or it's different? Try buying the same display I have
Nice tutorial 👍
Btw, is there any tutorial how to create dual display with different data to be displayed using just one arduino?
Not from me. Sorry
Very good video, althrough i have a variant of the red screen which has 4 more pins bcs its also an resistive touchscreen. any idea how to connect them?
I don't know
Yay, i used black boxes so, I felt like a dumb for this method :D
Thank you for the great explanation. Do you know if there´s a way to graph a variable with unknown amplitude (so a dynamic y range)? I´ve been trying to code an algorithm for that but to no avail. All the solutions I´ve found online use other displays that have more complex libraries that do it automatically (and my C is too bad to understand the libraries)
I never done that with this kind of display but I'm sure it's possible. I would use the nextion display because it's much simpler to do. I have tutorials about that display. No library needed
@@interlinkknight I´ll check them out, thank you
Informative. Thanx
Excelente video, los aportes fueron geniales
my display has a "White glare" over it. When i reset the arduino ist gone but then comes back
Sounds like your display can't tolerate 5V logic. Add a logic level converter so the display receives 3.3V instead of 5V
How do I get this to work with vesc?
How is the off-axis visibility on these? I bought a competing low-cost LCD (the kind with a blue PCB and two rows of 8 and 6 pins at one end), and it's terrible: if you do anything other than black and white, the colors start shifting and the contrast goes to hell if you tilt it more than about 20 degrees from "straight on". It's just barely usable if you treat it like an OLED or other monochrome display.
To be honest, it's not that great but it's not that bad in my opinion.
Please give me the color code with resistor :)
buen tutorial ,me ayudo.Gracias
do you have the ability to adjust the brightness ? Looks like you are running two off the same arduino ?
You can adjust the brightness with a transistor and using a pwm pin in Arduino to dim the backlight. And we can run multiple displays in parallel, but they all have to be exactly the same display and they are going to show exactly the same graphics and text
I am confused why so many of these things are labeled "SPI", yet they use the I2C naming convention of SDA/SCK. Clearly, you hooked it up them up as SPI devices, with SDA going to the UNO's MOSI. Why are they labeled like this?
The labels for SPI are a mess. There's no universal name for any pin
I am looking for a GPS Speedometer with Odometer that stores the accumulated miles to Eprrom of Arduino. I am sure a lot of others would like help with this. I have this screen setup and NEO-6M GPS Module. I have got it to work but need some help with the Odometer.
Not much I can do. I'm busy with my projects and videos.
@@interlinkknight Any links to point in the right direction please?
For making an odometer? To be honest I don't know. I never even used a GPS module. I wish I could help. Sorry.
hi, my KMR-1.8 work with ucglib(with poor resolution), but not with adafruit lib, do you have some idea about the fault?
No idea
Hi guys) How to clear all screen in uglib library. Maybe, there are a datasheet for library? Thanks
ucg.clearScreen();
All information is in here: github.com/olikraus/ucglib/wiki/reference
Also my pins layout is VCC, GND,NC, NC, NC, CLK, SDA,RS,RST,CS. Is this the same TFT Module?
No idea. The pin layout doesn't mean it's the same panel
have you make gauge rpm counter using this diplay with arduino nano? detail explanation. thanks
No, but you can easily join both sketches that I provided
Do you have a link to the schematic? It looks like you may have posted this before, but I can't see anything. Can you please repost or put a link to it. Thanks so much!
You mean how to connect the pins? That it's on the video.
hey , I wanna ask a qustion about arduino. Lately I was trying to display picture on the TFT touch screen ,and what I want to achieve is when time goes by the picture will blur and you have to touch the screen the way just like you wipe the dust off you picture frame in order to make the picture as sharp as before.... How am I gonna code this ,and which direction should I go for.... A million thxs ahead !
I can't think a way to do that with arduino
@@interlinkknight thanks for your reply anyway !
Excellent!!!
I am trying the GFX and ST7735 Libreries for my 1.8 inch TFT display from Adafruit, I am connecting 5 volt directly to I/O pins, I don't see anything on the display except a white LED light. Any suggestions please ?
I don't know. Try to follow the video exactly as I show and use my example sketch. It should work.
@@interlinkknight thank you for ur reply...I am using exactly same connections and sketch as shown in ur video, but my display is slightly different, it is from Adafruit, has SD card slot, PCB is Blue (not red as yours) and has 10 pins. Someone is recommending 1 K resisters in series with I/O pins.
Adafruit page say is 5V compatible so it shouldn't need a resistor but you can try it.
Thank you vey much ! My TFT runs now with Arduino Mega. But the Shapes with rounded corners are a little bit buggy. Are you familiar with this Problem and maybe know the solution for that?
what do you mean with buggy?
@@interlinkknight the round edges are displaced. Can i send you an pictute of it in any way?
Yeah, i would like to see. Send by email
@@interlinkknight You got one :)
I'm new to arduino, is it possible to use an arduino as a pass through hdmi and at what refresh rate does it run at (I need it as high as possible)
Arduino is not powerful enough for that kind of stuff. Maybe with the Raspberry Pi.
The refresh rate depends on the amount of things that need refreshing on the screen. In the video I show the fastest refresh possible when updating those numbers
I have tried this tutorial with UCGLIB library, the red pcb display and arduino leonardo but nothing happens. Only the display backlit lights up. What I am doing wrong?
Maybe you have a 3.3v version. Try to put resistors to drop the pins to 3.3v or use a logic level converter.
@@interlinkknight
I used a resistor and I managed to run the Adafruit library test.
trying to recopy your sketch, the tft display doesn't print like in your video, can you help me? thanks
First try my example without any modifications
@@interlinkknight I followed your video by copying string by string. The sketch doesn't work, is it possible that some steps are skipped in the video? I have problems displaying the value of the variables inside the rectangles. can you post the full sketch please?
The sketch is already in the description
how to clear the display with adafruit ???
In my example is that command, line 119
It's fillScreen.
Be warned: the ST7735 doesn't have an "erase display" command, so fillScreen works by writing 2 bytes of color data via SPI for every (bleep)ing pixel on the screen. It's slow enough that the flickering is visible with an ESP8266. I have a weather display app that updates the screen once per second, but chooses the contents depending on which second it's in. Right now it does temperature and time in seconds 0 and 1, and temperature with wind in seconds 2 and 3. When I switched from OLED to LCD, I had to skip the updates for seconds 1 and 3 because the flicker was so annoying (the OLED writes the new contents to an internal buffer then updates the display memory imperceptibly fast).
what is the lifespan of this display? pls... can it work for over 5years?
Idk
Hey InterlinkKnight, thanks for the video! I actually got it working.
But I have a 1.44" SPI 128x128 ST7735 display, and your sketches don't fit.
Any ideas how to adjust?
Thanks :)
Just move the location of everything. You have to manually change the coordinates. There's details in the comments inside the sketch.
@@interlinkknight thanks for the reply, that makes sense. I optimistically thought there might be a scaling feature lol. Sounds like a lot of hard work :)
Sadly there isn't a easy way. But it's not that hard either. Anyway, I think part of the fun it's playing with the overall layout, color, sizes, etc.
InterlinkKnight thank you!
excellent video thanks
What is the refresh rate using each library?
depends on what you print. You can see in the video that updating the numbers is fairly quick
hii! i m using the library provided in description. but getting error when compiling . it is showing that no file found for Adafruit_I2CDevice.h
and Adafruit_SPIDevice and showing tft declaration is not defined. after manually debugging that problem it is showing that tft.initR(INITR_BLACKTAB); is not defined,
can you please provide me the zip files of your working code and library files
thank you
Here's the library that i have: drive.google.com/file/d/1rIMNt8wxhdr7H89410CmeYwZoPOaYcCC/view?usp=sharing
The sketch is exactly the same I posted already
@@interlinkknight thank you
is the amazon link the screen that does not need resistors for 3.5v? which works on 5v only the best? thanks
Yes. It's the good one
Ok thank you. I didn't want resistors because I never get them right and I'll blow the screen. So I'll get the one in the link if it's 5v only and doesn't need resistors. Thank you
@@Vass881234 lucky you saw this video in time. Too late for me but the project is assembled now.
so UGC library is slower right?
Yes, but you have to use a pixelated font on the adafruit library to be faster so you decide what's more important.
Choose beauty or speed)
HOW TO CONFIGURE THE PINS - SCK AND SDA FOR MEGA 2560 ?
Because as per a comment in the file - // The rest of the pins are pre-selected as the default hardware SPI for Arduino Uno (SCK=13 and SDA=11)
this is preconfigured to be used for arduino uno
As far I know by default on the mega is SCK=52 and SDA=51
@@interlinkknight Ever after every perfect connection I am getting a bright blank screen. However, whenever I press the RESET button on my Mega2560 board, it displays the proper
output, but only for a second and again the same blank bright screen returns.
You think that maybe your display only supports 3.3v?
InterlinkKnight I am not quite sure about that. I saw many connection diagrams, they all directly connected the display to arduino boards, so did I. Also I tried connecting the pins with a 1k resistor as found at some place. But that also didn’t work.
InterlinkKnight what if that only supports 3.3 V ?
what does NC and CS mean on the pin diagram 1:48
NC = Not Connected
CS = Chip Select, which is part of the SPI protocol
@@interlinkknight thank you
Thank you
GOOD!
Does this same code also work for Xmega?
I don't know, but i guess it should. Maybe different pins
Good afternoon! I really liked your project, you just well done, it turned out very beautiful! I subscribed to you. I'm new to arduino, but I wanted to design a project: soldering thermofan, but I do not understand everything, so excuse me. If there are questions on the display, could help? I shall be grateful to you for the answer. With best regards, Ramil. (Russia)
If you have problems, let me know and I'll try to help. But I ask you to first try my example file and read the comments on the sketch. It should have all the information that you need.
Good afternoon! I already tried your program (sketch), I liked it very much, thank you.
Great. Enjoy.
Круто =D спасибо
Top excelent
cool 😊
where is the SCHEMATIC ??
1:45
Охуенно просто!!! It's very beautiful tutorial
I do not know English, so I can only guess, so I'm sorry. I myself am from Russia. Of course it would be nice that it would be with subtitles (with translation into Russian).