1. Module Pin Definitions
1.1 20-Pin Module (QSPI / SPI)
| Pin | Signal | Direction | Function |
|---|---|---|---|
| 1 | GND | - | Ground |
| 2 | VCC | Power | 3.3V power supply |
| 3 | GND | - | Ground |
| 4 | CS# | MCU → Screen | Chip select, active low |
| 5 | GND | - | Ground |
| 6 | DB1 | Bidirectional | SPI: MISO / QSPI: DATA1 |
| 7 | RD# | MCU → Screen | SPI: MOSI / QSPI: DATA0 |
| 8 | WR# | MCU → Screen | SPI/QSPI serial clock (SCLK) |
| 9 | DB3 | Bidirectional | QSPI: DATA3 |
| 10 | DB2 | Bidirectional | QSPI: DATA2 |
| 11 | RESET# | MCU → Screen | Reset, active low |
| 12 | WAIT# | Screen → MCU | Busy status indicator; low level means commands can be sent |
| 13 | NC | - | No connection |
| 14 | D/C# | MCU → Screen | Command/data select (0 = command, 1 = data) |
| 15 | TP-INT | TP → MCU | Touch interrupt |
| 16 | TP-SDA | Bidirectional | Touch I2C data line |
| 17 | TP-SCL | MCU → TP | Touch I2C clock line |
| 18 | TP-RST | MCU → TP | Touch reset |
| 19 | TP-VCC | Power | Touch 3.3V power supply |
| 20 | GND | - | Ground |
1.2 30-Pin Module (QSPI / SPI)
| Pin | Signal | Direction | Function |
|---|---|---|---|
| 1 | GND | - | Ground |
| 2 | GND | - | Ground |
| 3 | VCC | Power | 3.3V power supply |
| 4 | VCC | Power | 3.3V power supply |
| 5 | GND | - | Ground |
| 6 | CS# | MCU → Screen | Chip select, active low |
| 7 | GND | - | Ground |
| 8 | DB1 | Bidirectional | SPI: MISO / QSPI: DATA1 |
| 9 | RD# | MCU → Screen | SPI: MOSI / QSPI: DATA0 |
| 10 | GND | - | Ground |
| 11 | WR# | MCU → Screen | SPI/QSPI serial clock (SCLK) |
| 12 | GND | - | Ground |
| 13 | DB3 | Bidirectional | QSPI: DATA3 |
| 14 | DB2 | Bidirectional | QSPI: DATA2 |
| 15 | GND | - | Ground |
| 16 | RESET# | MCU → Screen | Reset, active low |
| 17 | DBGTX | MCU → Screen | Debug UART TX |
| 18 | DBGRX | Screen → MCU | Debug UART RX |
| 19 | WAIT# | Screen → MCU | Busy status indicator; low level means commands can be sent |
| 20 | IM0 | MCU → Screen | Interface mode select |
| 21 | IM1 | MCU → Screen | Interface mode select |
| 22 | NC | - | No connection |
| 23 | RS | MCU → Screen | Command/data select (D/C#) |
| 24 | GND | - | Ground |
| 25 | TP-INT | TP → MCU | Touch interrupt |
| 26 | TP-SDA | Bidirectional | Touch I2C data line |
| 27 | TP-SCL | MCU → TP | Touch I2C clock line |
| 28 | TP-RST | MCU → TP | Touch reset |
| 29 | TP-VCC | Power | Touch 3.3V power supply |
| 30 | GND | - | Ground |
1.3 40-Pin Module (QSPI / 8080)
| Pin | Signal | Direction | Function |
|---|---|---|---|
| 1 | GND | - | Ground |
| 2 | GND | - | Ground |
| 3 | VCC | Power | 3.3V power supply |
| 4 | VCC | Power | 3.3V power supply |
| 5 | DB0 | Bidirectional | 8080: Data0 |
| 6 | DB1 | Bidirectional | SPI: MISO / 8080: Data1 |
| 7 | DB2 | Bidirectional | 8080: Data2 |
| 8 | DB3 | Bidirectional | 8080: Data3 |
| 9 | DB4 | Bidirectional | 8080: Data4 |
| 10 | DB5 | Bidirectional | 8080: Data5 |
| 11 | DB6 | Bidirectional | 8080: Data6 |
| 12 | DB7 | Bidirectional | 8080: Data7 |
| 13 | WR# | MCU → Screen | Write strobe, latched on rising edge |
| 14 | RD# | MCU → Screen | SPI: MOSI / QSPI: DATA0 / 8080: read strobe (active low) |
| 15 | CS# | MCU → Screen | Chip select, active low |
| 16 | D/C# | MCU → Screen | Command/data select (0 = command, 1 = data) |
| 17 | RESET# | MCU → Screen | Reset, active low |
| 18 | DBGTX | MCU → Screen | Debug UART TX |
| 19 | DBGRX | Screen → MCU | Debug UART RX |
| 20 | WAIT# | Screen → MCU | Busy status indicator; low level means commands can be sent |
| 21 | IM0 | MCU → Screen | Interface mode select |
| 22 | IM1 | MCU → Screen | Interface mode select |
| 23 | QSPI-INT/8080-INT | Screen → MCU | Interrupt request |
| 24 | DB8 | Bidirectional | 8080: Data8 |
| 25 | DB9/SDO1 | Bidirectional | 8080: Data9 / QSPI: DATA1 |
| 26 | DB10/SDO2 | Bidirectional | 8080: Data10 / QSPI: DATA2 |
| 27 | DB11/SDO3 | Bidirectional | 8080: Data11 / QSPI: DATA3 |
| 28 | DB12 | Bidirectional | 8080: Data12 |
| 29 | DB13 | Bidirectional | 8080: Data13 |
| 30 | DB14 | Bidirectional | 8080: Data14 |
| 31 | DB15 | Bidirectional | 8080: Data15 |
| 32 | GND | - | Ground |
| 33 | GND | - | Ground |
| 34 | TP-RST | MCU → TP | Touch reset |
| 35 | TP-INT | TP → MCU | Touch interrupt |
| 36 | TP-SCL | MCU → TP | Touch I2C clock line |
| 37 | TP-SDA | Bidirectional | Touch I2C data line |
| 38 | TP-VCC | Power | Touch 3.3V power supply |
| 39 | GND | - | Ground |
| 40 | GND | - | Ground |
2. Hardware Connection
SPI Mode (5 wires)
| Signal | Direction | Function |
|---|---|---|
| CS | MCU → Screen | Chip select, active low |
| SCLK | MCU → Screen | Serial clock |
| MOSI | MCU → Screen | Master output (commands/data) |
| D/C | MCU → Screen | Command/data select (0 = command, 1 = data) |
| REST | MCU → Screen | Reset, active low |
QSPI Mode (6 wires)
| Signal | Direction | Function |
|---|---|---|
| CS | MCU → Screen | Chip select, active low |
| SCLK | MCU → Screen | Serial clock |
| IO0~IO3 | MCU → Screen | Bidirectional data lines; four-line parallel transfer during the data phase |
8080 Mode
| Signal | Direction | Function |
|---|---|---|
| CS | MCU → Screen | Chip select, active low |
| WR | MCU → Screen | Write strobe, data latched on rising edge |
| RD | MCU → Screen | Read strobe, active low |
| D/C | MCU → Screen | Command/data select (0 = command, 1 = data) |
| D0~D7 / D0~D15 | Bidirectional | 8-bit or 16-bit parallel data bus |
Connection Requirements:
- Host IO levels must match the module (TR230S IO level is 3.3V); add level shifting if levels differ;
- Keep signal traces as short and length-matched as possible. In QSPI/8080 high-speed modes, a 22Ω series matching resistor on the data lines is recommended to suppress reflections and ringing;
- For control lines such as CS, SCLK, and WR, add 4.7~10kΩ pull-ups near the MCU side to prevent false triggering at power-on;
- Place decoupling capacitors close to the power supply pins;
- Power polarity must be correct — never reverse the connector pin order, or the module may be damaged;
3. Power Supply Requirements and Power Consumption
- Supply voltage: 5V DC
- Typical power consumption: The TR230S chip's typical power consumption is < 200mW; total module power consumption depends on backlight brightness, typically between 0.5W and 5W.
- Power supply recommendations:
- Small modules (≤ 4.0"): a 5V / 500mA power supply is sufficient;
- Large modules (≥ 5.0"): a 5V / 1A or higher power supply is recommended, as current demand is higher at full backlight brightness;
- If powering from an MCU development board, verify that its 5V output current capability is sufficient; otherwise use a separate power supply.
4. Setting the Working Mode
| IM1 | IM0 | mode | Corresponding Log |
|---|---|---|---|
| 0 | 0 | SPI | Bus mode: SPI 4-Wire, |
| 0 | 1 | QSPI | Bus mode: SPI 4-SDA, |
| 1 | 0 | 8080-8B | Bus mode: 8080 X8, |
| 1 | 1 | 8080-16B | Bus mode: 8080 X16, |
- Determine the mode by checking the IM0 & IM1 pin levels
- Determine the mode from the system boot log
5. Introduction to Drive Methods
This module is compatible with multiple communication interfaces, including SPI, QSPI, and 8080. After power-on, complete the initialization as follows:
- ① Pin configuration: Complete the wiring according to the hardware pin definitions, and first configure the logic levels and timing of the CS (chip select) pin and the D/C (command/data select) pin;
- ② Backlight enable: Write
0x64to register0x20to enable the backlight and configure its parameters; - ③ Display area setting: Configure register
0x2Ato set the horizontal active display area and register0x2Bto define the vertical active display area; - ④ Frame refresh: After the window parameters are configured, batch-send image display data through register
0x2Cto refresh the screen.
Functional definitions and detailed configuration guidelines for all registers can be found in the corresponding chip datasheet. datasheet
View Basic Tutorials