I have a nice 10" LCD with RA8876 from buydisplay that works great. I've used their arduino library but it's limited. I have seen that the RA8876 can do some smooth animation from the link below. I cannot find any example source to see how this is done. Can anyone give me some pointers on how to accomplish the things in the video?
Think about it. You can create this animation with most TFT controllers. (with one caveat)
-
Top Left. Redraw one small green triangle. Draw next small white triangle.
-
Top Right. Update any bar graph e.g. redraw any freshly exposed background / new bar. update numeric value
-
Bottom Left. Redraw one small green triangle. Draw next small highlighted triangle.
-
Bottom Right. RA8875 / RA8876 can scroll an arbitrary rectangular area in both horizontal and vertical direction. Draw the new data to the newly exposed area.
(4) The caveat is: ILI9486 style controllers can only scroll whole rows in vertical direction. (horizontal in LANDSCAPE)
(3) you can read the GRAM memory and write the triangle back as shade or highlight.
But since it is a monochrome image you can hold the data directly in Flash without reading GRAM.
Note that I am thinking theoretically. RA8875 / RA8876 libraries may or may not support the operations.
i.e. you might need to use some intelligence.
David.
Well it says "drawing and copying pattern function"... That's what I am curious about.
If you check the activity history of the channel you will see that the person who uploaded the video is using a program developed in Delphi or some high-level software, he did it more than 5 years ago. It is not an arduino environment.
He did indeed say "copy and paste", but he is referring to his "special program".
TFTs that work in the arduino environment can only feature very basic primitives. If you have some advanced programming skills in C language, you will be able to get graphics close to the demo you refer to by manipulating individual pixels, the limitation will be first the memory of the MCU and then the processing speed.
Transparencies, updates of each pixel in real time, image overlays, color gradient, are functions that are not available in TFTs that have a single controller or an approximation is achieved with many, many lines of code, which you will hardly be able to implement in your own program.
Other more advanced TFTs have two controllers, the primary one that we all know: ILI9341, ST7735, etc., and the one that communicates with the MCU, generally known as a graphics chip. Examples are several: Diablo16, Picaso, FT81X and BT81X.
MCU: teensy 4.1@150 Mhz
TFT: NHD 3.5" FT813
Arduino IDE: 1.8.13
Library: GDTeensy4X
Test video
The TFT SmartGPU's have a graphics chip implemented in a STM32F103VET6 (cool!)
The Raio controllers handle text and graphics in hardware. Much faster than the SSD1963+MCU combination.
However there are some operations that require individual pixels. Much slower on Raio SPI/I2C interface. Obviously Raio Parallel is going to be comparable.
Having written those comments in #1, I suppose that I should dig out a RA8875 and see whether it is possible with a public library like Adafruit_RA8875.
No, I have not got a RA8876. Nor do I want to buy one.
Although the video looks impressive, the incremental screen drawing is fairly simple.
Compare the triangular highlight on a stationary globe with a rotating globe animation.
David.
Just to update... Got the RA8876 working very smooth with an arduino. For example I can glide a square object across the screen silky smooth with no flicker. It is all about the RA8876 block transfer engine.
Hello freakdaddy,
I recently purchased a display from:
I'm interested in what type of micro board you used. I'm trying to use the Mega 2560 and have encountered problems with the library download from the same sight. I cannot compile the code. Errors appear to be associated with SPI.
The display was tested on the Due however the web site advertises it is compatible with the Mega 2560.
Have you experienced any issues like this?
Regards,
Brian