STM32F407 + ILI9341 16-bit FSMC
The 3.2" TFT modules that plug straight onto an F407ZG board via FSMC.
At a glance
| Maker | Generic |
| MCU | STM32F4 (F401 / F407 / F411) Cortex-M4F @ 84-180 MHz, 96-192 KB SRAM |
| Display | Ilitek ILI9341, 240 x 320 px, 16-bit parallel (i80 / 8080), 16-bit colour |
| Touch | XPTek XPT2046 (resistive, SPI) |
| Backlight | PB0, dimmable (PWM) |
| PSRAM | No |
| Graphics library | LovyanGFX |
Display pins
ILI9341 on 16-bit parallel (i80 / 8080): PAR16 clock 20 MHz, BGR colour order, inversion off.
| Signal | Pin |
|---|---|
| WR | PD5 |
| RD | PD4 |
| DC / RS | PD11 |
| CS | PD7 |
| RESET | PE1 |
| D0 - D15 | PD14, PD15, PD0, PD1, PE7, PE8, PE9, PE10, PE11, PE12, PE13, PE14, PE15, PD8, PD9, PD10 |
| Backlight | PB0 |
Touch pins
XPT2046: 2000 kHz, its own SPI bus.
| Signal | Pin |
|---|---|
| SCK | PB13 |
| MOSI | PB15 |
| MISO | PB14 |
| CS | PB12 |
| IRQ / PENIRQ | PC5 |
Check your revision. These are the standard FSMC bank-1 pins. A16 (PD11) is wired to the RS/DC line.
Designing for it in LCD Wizard
- Choose STM32F407 + ILI9341 16-bit FSMC on the Hardware tab (or use the button above) and every pin on this page is filled in. The export writes the sketch,
lcd_pins.h, the LovyanGFX configuration,lv_conf.handplatformio.ini- a project that builds for this board as it comes. - The XPT2046 is resistive and reads through its library; set its raw range on the Touch tab.
- The backlight is dimmable: give a slider or a button a Set backlight action.
- Screens are designed for 240 x 320 px in either orientation, with LVGL 9 or LVGL 8.
The parts
ILI9341. The most common hobby TFT. 2.2"-2.8" modules, usually with an XPT2046 resistive panel.
XPT2046. The classic 4-wire resistive controller. Needs calibration. Can share the display SPI bus with its own CS.
STM32F4 (F401 / F407 / F411). Use the STM32duino core. FSMC gives a fast parallel bus on F407 and up.
LovyanGFX. Widest panel and bus coverage, DMA on ESP32. Configured with a C++ config class.
Designs for this board
Nobody has published a design for this board yet. Publish yours from the designer and it appears here and in the gallery.
Similar boards
Next
- Quick start - from an empty screen to firmware on the board
- Boards and displays - presets, controllers, pins and touch in the designer
- Flashing and configuration - PlatformIO, the Arduino IDE and first-boot checks
- Troubleshooting - a white screen, mirrored image or touch that misses