Jump to content

7" 800x480 TFT with SSD1963 controller


himsha

Recommended Posts

Hi guys,

I am working with SSD1963 7" 800x480 TFT. Refresh that I am able to get is ~8FPS using FSMC. How ever it is seem that maximum FPS that can be achieve is ~30 FPS. Is any here able to achieve this FPS?

And 2nd how µGFX embedded GUI is helpful in designing TFT source code?

Link to comment
Share on other sites

Hello himsha and welcome to the community!

I am working with SSD1963 7" 800x480 TFT. Refresh that I am able to get is ~8FPS using FSMC. How ever it is seem that maximum FPS that can be achieve is ~30 FPS. Is any here able to achieve this FPS?

We need a lot more information to help you with this one.

  • uGFX version (or repository state)
  • Underlying operating system used (the GOS port you use)
  • The microcontroller that you are using
  • The clock setup of your microcontroller

And the most important thing: Please attach your board file (gdisp_lld_board.h).

And 2nd how µGFX embedded GUI is helpful in designing TFT source code?

I don't understand your question, I'm sorry. Could you try to rephrase it?

~ Tectu

Link to comment
Share on other sites

  • 3 months later...

I guess that he want to know somting about the tuning issues of an SSD1963 driven TFT Display, that's linked to an STM32Fxxx MPU by the external system bus Interface called FSMC (Flexible Static Memory Controller). The 8 Frames per Second are not the fast possible value. How this can be raised was the question.

Well, my experiences with the 5" Type of this kinda TFT/SSD1963 with 800x480 Pixel Resolution works nice with about 28 FPS in combination with emWIN-5.24.2, an STM32F4-Discovery board. The main Problem is, that the Controller SSD1963 maps just one Register into the mpu address range instead direct access to the displays data memory.

I never taste the functionality to move the Memory to Register copy by using the STM's DMA. This should gives the Display Output more performance, but Needs more Attention and custom driver design for every different MPU and Display variants. It's near impossible to done a common usage of code for different MPU and Display variants.

Link to comment
Share on other sites

How this can be raised was the question.

Usually there is nothing to do but optimizing the FSMC timings in the board file to archive a reasonable performance.

Well, my experiences with the 5" Type of this kinda TFT/SSD1963 with 800x480 Pixel Resolution works nice with about 28 FPS in combination with emWIN-5.24.2, an STM32F4-Discovery board.

This is pretty much the same with uGFX. Benchmarks show that around 32 FPS are doable with this setup.

~ Tectu

Link to comment
Share on other sites

Tectu:

Yepp, i had used this Display in combination with Keil RTX and emWIN 5.24h and a STM32F4Discovery board. I had finaly used a PCB as an Adapter board to get the wires short and the length of the equal as possible. All this makes i possible the FSMC-Timing as fast as possible. The Limits of the SSD1963 seems to be quite close.

I had noticed, that the design of the TFT-Displays Controller board; especially the routing layout, seems to be available in different qualities. I payed less the $60.- for a 5" Touchpanel with 800x480 Pixel Resolution with Controllers for TFT (SSD1963), a resistiv touch controller and an on-board SD-CARD Slot and finaly the voltage Generation and a backlight regulator that can be switched between PWM, continiously on and just ON/OFF by a port-pin. The Panel Looks great, but the Setup of the SSD1963 Register was difficult at start time. The Touchpanel seems to be in poor Quality. I use a Stylus and get a couple of different positions that's not quite near at the touch point. It looks like a starfield instead a point. I sample actually 16 times and sort them to find out the real touched Position. It's just a cheap touch panel. If i will use them laster - well, i am unsure.

I will taste the Gfx Lib at the Weekend. I did'nt found a function that place and move a polygone by just an angle. This is very helpful if you wanna move the pointers of a watch or analoge messuring device.

Link to comment
Share on other sites

I can only confirm that there are huge quality differences in the TFT modules available. However, at the end you get what you pay for :)

It is also correct that µGFX does currently not support any image or shape rotation. However, this should indeed be added at some point in the nearer future.

Feel free to share your implementation with us and the community in case of you're going to implement it yourself.

~ Tectu

Link to comment
Share on other sites

The 3d extensions for ugfx using the tinygl library can certainly do what you are asking. Unfortunately it is ram heavy as it requires a depth buffer.

The rotation could otherwise be implemented using fixed point matrix operations. Scaling could be implemented in the same step. Floating point operations should be avoided as most small micros don't have floating point units so the operations are emulated (very slow).

If you would like to assist in such an implementation we would love your contribution. Other than that this sort of functionality will probably only be implemented when our development queue shortens a bit unless the demand for these operations is high.

Link to comment
Share on other sites

  • 3 years later...

I had seen that some vector rotations are implemented now - just a few years later. Sometimes it's just need time, not more. :-)
In this time, i had never tested µGFX on an STM32F7 plateform, but i had seen some nice presetation videos on youtube. 
 

Link to comment
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
×
×
  • Create New...