Module i8080

Source
Available on crate feature unstable only.
Expand description

§LCD - I8080/MOTO6800 Mode.

§Overview

The LCD_CAM peripheral I8080 driver provides support for the I8080 format/timing. The driver mandates DMA (Direct Memory Access) for efficient data transfer.

§Examples

§MIPI-DSI Display

The following example shows how to send a command to a MIPI-DSI display over the I8080 protocol.



let lcd_cam = LcdCam::new(peripherals.LCD_CAM);

let config = Config::default().with_frequency(Rate::from_mhz(20));

let mut i8080 = I8080::new(lcd_cam.lcd, peripherals.DMA_CH0, config)?
    .with_dc(peripherals.GPIO0)
    .with_wrx(peripherals.GPIO47)
    .with_data0(peripherals.GPIO9)
    .with_data1(peripherals.GPIO46)
    .with_data2(peripherals.GPIO3)
    .with_data3(peripherals.GPIO8)
    .with_data4(peripherals.GPIO18)
    .with_data5(peripherals.GPIO17)
    .with_data6(peripherals.GPIO16)
    .with_data7(peripherals.GPIO15);

dma_buf.fill(&[0x55]);
let transfer = i8080.send(0x3Au8, 0, dma_buf)?; // RGB565
transfer.wait();

Structs§

Config
Configuration settings for the I8080 interface.
I8080
Represents the I8080 LCD interface.
I8080Transfer
Represents an ongoing (or potentially finished) transfer using the I8080 LCD interface

Enums§

Command
LCD_CAM I8080 command.
ConfigError
A configuration error.