Search our partners

Find the latest content on electronic components. Datasheets.com

I2C controller for TFT / IPS display by piotr_go

piotr_go 3114 0
This content has been translated » The original version can be found here
  • I2C controller for TFT / IPS display by piotr_go

    The presented controller is used to convert the system with an OLED display to a color LCD display.
    The controller was built on the HK32F030MF4P6 microcontroller (they were cheap, I still have some left :) )
    Source code in the attachment, so possible conversion to STM32F030 or other modifications should not be a problem.
    1-bit color from a 16-color palette (if you want, you can change it to a full 12b palette).
    The maximum transmission speed of I2C 1MHz. To achieve such high speed, I wrote some of the code in assembly language.
    Display used: 160x80, IPS, ST7735. After minor modifications to the code, you can use a larger one (e.g. 320x240).
    If someone has such a fantasy, he can also connect several systems on one I2C bus, you only need to program a different address for each.

    Address 0x78:
    As in OLED, RASET [0x00 / 0x10], CASET [0xB0], RAMWR [0x40].
    Address 0x7C:
    Color [4bit background, 4bit pixel]

    I2C controller for TFT / IPS display by piotr_go

    I2C controller for TFT / IPS display by piotr_go
    Do not be influenced by the description of the microcontroller leads.
    By laziness, I used the STM8S library.

    Demonstration of operation:
    IPS 160x80
    OLED and controller connected in parallel at the same address.
    Mini pcb with HK32F030MJ4M6 microcontroller generates a test image.


    TFT 160x128


    Cool! Ranking DIY
    Can you write similar article? Send message to me and you will get SD card 64GB.
    About Author
    DIY electronics designer
    piotr_go wrote 2280 posts with rating 2460, helped 84 times. Been with us since 2003 year.