Skip to content

What is the pinout of a 2.8 inch capacitive TFT display module?

Par admin · ·Brief Chine

If you are working with a 2.8 inch capacitive TFT display module, the pinout is not always standardized, but the most common configuration for modules using the ILI9341 driver (which is the dominant controller for 240x320 resolution displays) involves 18 to 24 pins. The pinout typically includes power (VCC, GND), backlight control (LED-A, LED-K), a reset pin (RST), and a set of data and control lines for SPI or parallel interface. For a standard 18-pin variant, you will find: VCC (3.3V or 5V), GND, CS (chip select), RESET, DC (data/command), MOSI (master out slave in), SCK (serial clock), LED (backlight anode), and MISO (master in slave out) for SPI mode. Many modules also include a capacitive touch controller, often the FT6236 or similar, which adds an extra I2C interface with pins like T_IRQ (touch interrupt), T_OUT (or SDA for touch), and T_CLK (or SCL for touch). The exact pin order can vary between manufacturers, so always check the datasheet for your specific module, but the 2.8 inch capacitive tft display module from DisplayModule, for example, uses a 14-pin header with a specific layout for SPI and I2C touch.

Let’s break down the pinout in detail, focusing on the most common interfaces: SPI (Serial Peripheral Interface) and parallel (8080 8-bit). The ILI9341 supports both, but most hobbyist and embedded projects use 4-wire SPI to save GPIO pins. For a typical 18-pin module, the pin mapping is as follows:

Table: Common 18-pin Pinout for 2.8-inch ILI9341 TFT (SPI Mode)

Pin NumberLabelFunctionNotes
1VCCPower Supply (3.3V or 5V)Check module specs; some tolerate 5V logic
2GNDGroundCommon ground
3CSChip SelectActive low; select the display
4RESETResetActive low; reset the display controller
5DCData/CommandHigh = data, Low = command
6MOSIMaster Out Slave InData line from MCU to display
7SCKSerial ClockSPI clock
8LEDBacklight AnodeConnect to 3.3V or 5V via resistor
9MISOMaster In Slave OutOptional; for reading display data
10T_IRQTouch InterruptActive low; touch event indicator
11T_OUTTouch Data (I2C SDA)I2C data line for touch controller
12T_CLKTouch Clock (I2C SCL)I2C clock line for touch controller
13NCNot ConnectedOr optional parallel interface pins
14NCNot ConnectedOr optional parallel interface pins
15NCNot ConnectedOr optional parallel interface pins
16NCNot ConnectedOr optional parallel interface pins
17NCNot ConnectedOr optional parallel interface pins
18NCNot ConnectedOr optional parallel interface pins

This pinout is typical for modules like the one from DisplayModule, which uses a 14-pin header (pins 1-14) and leaves the rest unpopulated. The capacitive touch controller, usually a FT6236 or GT911, communicates via I2C at addresses like 0x38 or 0x5D. The T_IRQ pin is crucial for detecting touches without polling; it goes low when a touch is detected. The backlight pin (LED) often requires a current-limiting resistor, typically 100-200 ohms, to avoid burning out the LEDs. The forward voltage of the backlight LEDs is around 3.2V, and the current draw is about 20-40mA for the entire backlight array.

Parallel Interface Pinout (8080 8-bit)

Some 2.8-inch modules also support 8-bit parallel interface, which uses more pins but offers faster refresh rates. The pinout for a 24-pin module in parallel mode includes:

Table: 24-pin Parallel Pinout (8080 8-bit)

Pin NumberLabelFunctionNotes
1VCCPower Supply3.3V or 5V
2GNDGround
3CSChip SelectActive low
4RESETResetActive low
5DCData/Command
6WRWrite EnableActive low; strobe to write data
7RDRead EnableActive low; strobe to read data
8-15D0-D7Data Bus (8-bit)Parallel data lines
16LEDBacklight Anode
17LED-KBacklight CathodeGround
18T_IRQTouch Interrupt
19T_SDATouch I2C Data
20T_SCLTouch I2C Clock
21-24NCNot Connected

In parallel mode, the ILI9341 can achieve a maximum pixel clock of about 15 MHz, which translates to a theoretical frame rate of 60 fps for 240x320 resolution. However, SPI mode is more common because it uses only 4-5 pins, and the ILI9341’s SPI clock can go up to 40 MHz, which is fast enough for most applications. The capacitive touch controller typically operates at 100 kHz to 400 kHz I2C speed, which is sufficient for detecting multiple touch points (up to 5 touches for FT6236).

Power Supply and Voltage Levels

The display module’s logic voltage is typically 3.3V, but many modules have a built-in voltage regulator that allows 5V input on the VCC pin. However, the logic pins (CS, DC, MOSI, SCK, etc.) are usually 3.3V tolerant. If you are using a 5V microcontroller like an Arduino Uno, you need level shifters on the SPI lines to avoid damaging the ILI9341. The backlight pin (LED) is separate from the logic supply; it can be driven by a PWM pin on the microcontroller to control brightness. The backlight current draw is typically 20-30mA at 3.3V, but if you connect it directly to 5V, use a 100-ohm resistor to limit current to about 20mA. The total power consumption of the module with backlight on is around 50-80mA at 3.3V, which is about 165-264 mW.

Touch Controller Pinout Details

The capacitive touch controller is usually a separate IC on the same flex cable. The most common controllers are the FT6236 (FocalTech) and the GT911 (Goodix). The FT6236 uses I2C address 0x38 (7-bit) or 0x70 (8-bit). The pinout for the touch interface is:

  • T_IRQ: Interrupt output, active low. This pin goes low when a touch is detected. It is open-drain, so you need a pull-up resistor (typically 4.7k to 10k ohms) to 3.3V.
  • T_SDA: I2C data line. Requires a pull-up resistor (4.7k ohms) to 3.3V.
  • T_SCL: I2C clock line. Requires a pull-up resistor (4.7k ohms) to 3.3V.

The GT911 uses I2C address 0x5D or 0x14, depending on the configuration pin. Some modules also have a reset pin for the touch controller (T_RST), which is not always broken out. The touch controller’s operating voltage is 2.8V to 3.3V, so do not connect it to 5V directly.

Physical Pinout and Connector Types

Most 2.8-inch capacitive TFT modules use a 0.5mm pitch FPC (flexible printed circuit) connector with 14, 18, or 24 pins. The pin numbering is usually printed on the back of the module or on the FPC itself. For example, the DisplayModule DM-TFT28-116 uses a 14-pin FPC with a 0.5mm pitch, and the pinout is as follows (from pin 1 to 14): VCC, GND, CS, RESET, DC, MOSI, SCK, LED, MISO, T_IRQ, T_SDA, T_SCL, NC, NC. The NC pins are not connected, but some modules use them for optional features like a touch reset or an extra backlight control. Always measure the voltage on the VCC pin before connecting to ensure it matches your power supply.

Interface Selection and Configuration

The ILI9341 can be configured for SPI or parallel interface via the IM (interface mode) pins. On most modules, these pins are hardwired on the PCB, so you cannot change the interface without modifying the board. For SPI mode, the IM pins are set to 0b101 (for 4-wire SPI) or 0b110 (for 3-wire SPI). The 4-wire SPI uses CS, DC, MOSI, and SCK, while 3-wire SPI uses CS, MOSI, and SCK, with DC being sent as a 9th bit in the data stream. The 4-wire SPI is more common and easier to implement. The parallel interface uses IM pins set to 0b000 (for 8-bit 8080) or 0b001 (for 16-bit 8080). The 8-bit parallel interface uses 8 data lines (D0-D7) plus control lines (CS, DC, WR, RD).

Data Transfer Rates and Performance

In SPI mode, the ILI9341 can handle a clock frequency up to 40 MHz. At 40 MHz, transferring a full 240x320 frame (76,800 pixels) with 16-bit color (2 bytes per pixel) takes about 153,600 bytes. At 40 MHz, the SPI transfer time is about 3.84 ms per frame, but you also need to account for command overhead and refresh rate. The actual frame rate is typically 30-60 fps, depending on the microcontroller’s SPI implementation. For parallel 8-bit mode, the maximum write cycle time is about 66 ns, which gives a theoretical pixel write rate of 15 MHz, or about 10 ms per frame, resulting in 100 fps. However, the microcontroller’s GPIO speed is usually the bottleneck, so real-world performance is often lower.

Common Mistakes and Troubleshooting

One common mistake is connecting the backlight pin (LED) directly to 5V without a resistor, which can burn out the LEDs. Another is using 5V logic on the SPI lines without level shifters, which can damage the ILI9341. The touch controller’s I2C lines also need pull-up resistors; if they are missing, the touch will not work. If the display shows white or garbled content, check the RESET pin: it must be pulled high after power-up, and a low pulse of at least 10 microseconds is required to initialize the controller. Also, the CS pin must be pulled low to select the display; otherwise, it will ignore all commands. The DC pin is often confused with the RS (register select) pin; they are the same function. If the backlight is on but the display is blank, the issue is usually with the initialization sequence in the software. The ILI9341 requires a specific sequence of commands to set up the display, including sleep out, display on, and gamma correction. Most libraries (like Adafruit_ILI9341 or TFT_eSPI) handle this automatically, but you need to ensure the pin mappings match your hardware.

Capacitive Touch Calibration and Data Format

The capacitive touch controller returns raw touch coordinates as 12-bit values (0-4095) for the X and Y axes. These need to be mapped to the display’s 240x320 resolution. The FT6236, for example, returns up to 5 touch points, each with a status byte (touch event type), X coordinate (2 bytes), Y coordinate (2 bytes), and touch ID. The I2C read sequence involves reading the status register (0x02) to get the number of touch points, then reading the touch data registers (0x03 to 0x0C for the first touch point). The data format is big-endian, so the high byte of X is at register 0x03, and the low byte is at 0x04. The touch coordinates are relative to the touch panel’s orientation, which may not match the display’s orientation. You may need to rotate or flip the coordinates in software. The touch controller also has a gesture detection feature (like swipe or zoom), but this is rarely used in simple applications.

Pinout Variations Across Manufacturers

Not all 2.8-inch capacitive TFT modules use the same pinout. For example, the Waveshare 2.8-inch module uses a 24-pin header with a different layout, where the touch interface is on pins 15-18. The Adafruit 2.8-inch TFT FeatherWing uses a 12-pin header with a different pin order. The DisplayModule DM-TFT28-116 uses a 14-pin header with the pinout described above. Always check the datasheet for your specific module. If you are designing a custom PCB, it is safer to use a module with a standard pinout, like the one from DisplayModule, and verify the pinout against the schematic. Some modules also have a separate pin for the touch controller’s reset (T_RST), which is not always present. If your module does not have a T_RST pin, you can use the main display’s RESET pin to reset both the display and the touch controller, but this is not recommended because the touch controller may have different reset timing requirements.

Electrical Characteristics and Timing

The ILI9341 has a typical operating voltage of 2.8V to 3.3V, but it can tolerate up to 3.6V on the logic pins. The input high voltage (VIH) is 0.7 x VCC, so for 3.3V VCC, VIH is 2.31V. The input low voltage (VIL) is 0.3 x VCC, or 0.99V. The output high voltage (VOH) is 0.8 x VCC, and output low (VOL

S'abonner à la veille — 7 jours offerts

Le Brief Chine, les rapports sectoriels et l'accès complet aux 18 400+ fiches entreprises. Sans engagement.

S'abonner — 7 jours offerts