Forum Rule: Always post complete source code & details to reproduce any issue!
Results 1 to 4 of 4

Thread: ST7796s TFT Send 3bit data when 16bits is expected over spi

  1. #1

    ST7796s TFT Send 3bit data when 16bits is expected over spi

    I was wondering i anyone knew if there's a way to send less bits to the display to increase spi transfer speeds.

    the ST7796s has an idle mode the supports 8 colors, but the controller seems to still expect atleast 16bit of color data from the mcu over spi. i just need 8 colors for my project so it would be nice to just use 3bit transfers to get better frame rate/performance.

    The ili9488 seem to have a special mode for 3bit spi transfers but the st7796 does not seem to have anything similar. and i cant a find a screen with the ili9488 controller that fits my project...

  2. #2
    Senior Member+ KurtE's Avatar
    Join Date
    Jan 2014
    Posts
    10,524
    Sorry as far as I can tell these only have three bit formats you can send over SPI...
    12 bit -> which appears to pack (444), so can speed up SPI a little, if someone wishes to rework everything to pack the pixel data being sent
    16 bit color which packs 565 which is what we normally use
    18 bit color which packs as 666 which actually sends 24 bits... We do this on ILI9488 as it does not support 16 bit colors.

    RA8875 I believe has 8 bit color mode, but works very differently...

  3. #3
    Thanks for your quick reply, ill guess ill have to hunt down a screen with the ili9488 controller then
    But it looks very promising, i just hope i'm interpreting this right:
    Click image for larger version. 

Name:	3bit.png 
Views:	37 
Size:	71.4 KB 
ID:	23527

  4. #4
    Senior Member+ KurtE's Avatar
    Join Date
    Jan 2014
    Posts
    10,524
    Maybe,

    But then again it will probably take you a lot of work to make it work. And you have 8 fixed colors. So will those 8 colors work for you or not.
    Plus work to build a display driver for it? And questions about as each byte you send has two pixels data, how you output single pixel...

    And then depending on your usage pattern, how much of your SPI time is spent sending pixel data versus the other bytes, like addressing the pixels.

    But if all of that works for your needs, go for it.

Posting Permissions

  • You may not post new threads
  • You may not post replies
  • You may not post attachments
  • You may not edit your posts
  •