LGFX_ILI9488

ILI9488 display hardware configuration

#include <LGFX_ILI9488.h>

Public Member Functions

 LGFX_ILI9488 (void)
 
void setMyRotation (uint8_t rot=0)
 
void init ()
 

Detailed Description

ILI9488 Display Hardware Controller

Comprehensive hardware abstraction for ILI9488-based TFT displays with optimized SPI configuration, power management, and color correction for CloudMouse hardware.

Design Principles:

  • Hardware-specific optimization for CloudMouse PCB layouts
  • Maximum SPI throughput while maintaining signal integrity
  • PCB version compatibility for manufacturing flexibility
  • Custom color correction for accurate BGR panel support
  • Power management integration for energy efficiency

Performance Characteristics:

  • SPI write speed: 40MHz (320MB/s theoretical, ~61MB/s sustained)
  • SPI read speed: 16MHz (conservative for reliability)
  • Full screen update: ~16ms (480×320×2 bytes @ 61MB/s)
  • Backlight PWM: 5KHz frequency for flicker-free operation
  • DMA transfers: Channel 1 allocation for minimal CPU overhead

Constructor & Destructor Documentation

◆ LGFX_ILI9488()

LGFX_ILI9488::LGFX_ILI9488 ( void  )
inline

Constructor - configures all hardware components and interfaces Sets up SPI bus, panel configuration, and backlight control with optimized parameters

Member Function Documentation

◆ init()

void LGFX_ILI9488::init ( )
inline

Initialize display hardware with power management and configuration Performs complete hardware setup including power control, display initialization, and brightness configuration optimized for CloudMouse hardware

Initialization Sequence:

  1. Configure power management based on PCB version
  2. Initialize LovyanGFX display controller
  3. Set custom rotation and color correction
  4. Clear display to black background
  5. Set default brightness level

PCB Version Handling:

  • Version 4: Power enable active LOW (inverted logic)
  • Version 5: Power enable active HIGH (normal logic)
  • Automatic detection prevents hardware damage

◆ setMyRotation()

void LGFX_ILI9488::setMyRotation ( uint8_t  rot = 0)
inline

Custom rotation and color order configuration Implements optimized orientation control with BGR color correction for CloudMouse panels

Parameters
rotRotation value (0-3, default: 0 for landscape)

Rotation Mappings:

  • 0: Landscape (480x320, normal orientation)
  • 1: Portrait (320x480, 90° clockwise)
  • 2: Landscape inverted (480x320, 180°)
  • 3: Portrait inverted (320x480, 270° clockwise)

Color Correction:

  • Enables BGR-to-RGB conversion for accurate color reproduction
  • Sets landscape orientation optimized for CloudMouse UI layout