pub trait Ftx232hMpsse: FtdiMpsse {
    // Provided methods
    fn enable_3phase_data_clocking(&mut self) -> Result<(), TimeoutError> { ... }
    fn disable_3phase_data_clocking(&mut self) -> Result<(), TimeoutError> { ... }
}
Expand description

This contains MPSSE commands that are only available on the the FT232H, FT2232H, and FT4232H devices.

For details about the MPSSE read the FTDI MPSSE Basics.

Provided Methods§

source

fn enable_3phase_data_clocking(&mut self) -> Result<(), TimeoutError>

Enable 3 phase data clocking.

This will give a 3 stage data shift for the purposes of supporting interfaces such as I2C which need the data to be valid on both edges of the clock.

It will appears as:

  1. Data setup for 1/2 clock period
  2. Pulse clock for 1/2 clock period
  3. Data hold for 1/2 clock period
§Example
§Example
use libftd2xx::{Ft232h, FtdiMpsse, Ftx232hMpsse};

let mut ft = Ft232h::with_serial_number("FT5AVX6B")?;
ft.initialize_mpsse_default()?;
ft.enable_3phase_data_clocking()?;
source

fn disable_3phase_data_clocking(&mut self) -> Result<(), TimeoutError>

Disable 3 phase data clocking.

This will give a 2 stage data shift which is the default state.

It will appears as:

  1. Data setup for 1/2 clock period
  2. Pulse clock for 1/2 clock period
§Example
use libftd2xx::{Ft232h, FtdiMpsse, Ftx232hMpsse};

let mut ft = Ft232h::with_serial_number("FT5AVX6B")?;
ft.initialize_mpsse_default()?;
ft.disable_3phase_data_clocking()?;

Object Safety§

This trait is not object safe.

Implementors§