I2C controller for TFT / IPS display by piotr_go

piotr_go 6576 0
This content has been translated flag-pl » flag-en View the original version 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
    About Author
    DIY electronics designer
    piotr_go wrote 2562 posts with rating 2840, helped 88 times. Been with us since 2003 year.