Git Product home page Git Product logo

Comments (2)

nopnop2002 avatar nopnop2002 commented on July 2, 2024 1

is parallel preferable over SPI?

It's case by case.

SPI is fast when drawing to consecutive addresses.
The results for ColorBarTest and ColorTest represent this.

However, REGISTER I/O parallel is faster when drawing to non-contiguous addresses.
This is useful when you use a lot of text.
Because text fonts draw to almost non-contiguous addresses.

Performance comparison using ILI9341(240x320)

SPI used this.

Test SPI GPIO parallel REGISTER I/O parallel I2S parallel
FillTest 1620 2700 1920 1560
ColorBarTest 80 420 160 50
ArrowTest 250 460 170 140
LineTest 2690 1040 420 1530
CircleTest 2400 980 410 1370
RoundRectTest 2400 980 400 1390
RectAngleTest 5960 2010 940 6720
TriangleTest 6550 2120 990 7630
DirectionTest 420 520 200 240
HorizontalTest 990 720 300 580
VerticalTest 990 710 300 580
FillRectTest 160 730 300 120
ColorTest 240 850 330 190
BMPTest 1600 1930 1320 960
JPEGTest 2540 2940 2650 2530
PNGTest 2830 3210 2940 2810

The biggest advantage of using a parallel TFT is that there are clearly more types of devices than SPI.

from esp-idf-parallel-tft.

marcdraco avatar marcdraco commented on July 2, 2024

Oh wow. Thank you so much! I can see what you mean - it literally is a case of picking the display that best suits the application.

Fonts really are a bind. I developed a couple of high performance variants of the Adafruit GFX routines for my last project and fonts are truly a cluster ... of pixels. That's one of the reasons I've moved from the ATMega328p from that project to the ESP32 for the current one (two actually).

Given that I'm sorely tempted to investigate customising the PCB to carry a full-sized parallel Arduino HAT. There's already a Streamdeck-like design with an TFT mounted in place but I haven't managed to get my hands on one yet to see if it will work for these projects which are aimed at schools.

from esp-idf-parallel-tft.

Related Issues (20)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.