aboutsummaryrefslogtreecommitdiff

FT245 documentation

Static mode external functions

The following functions need to be implemented in your source code to be used by the driver.

void FT245_DATA0_to_input(void)

Changes the mode of the signal DATA0 to input.

void FT245_DATA1_to_input(void)

Changes the mode of the signal DATA1 to input.

void FT245_DATA2_to_input(void)

Changes the mode of the signal DATA2 to input.

void FT245_DATA3_to_input(void)

Changes the mode of the signal DATA3 to input.

void FT245_DATA4_to_input(void)

Changes the mode of the signal DATA4 to input.

void FT245_DATA5_to_input(void)

Changes the mode of the signal DATA5 to input.

void FT245_DATA6_to_input(void)

Changes the mode of the signal DATA6 to input.

void FT245_DATA7_to_input(void)

Changes the mode of the signal DATA7 to input.

void FT245_DATA8_to_input(void)

Changes the mode of the signal DATA8 to input.

void FT245_DATA9_to_input(void)

Changes the mode of the signal DATA9 to input.

void FT245_DATA10_to_input(void)

Changes the mode of the signal DATA10 to input.

void FT245_DATA11_to_input(void)

Changes the mode of the signal DATA11 to input.

void FT245_DATA12_to_input(void)

Changes the mode of the signal DATA12 to input.

void FT245_DATA13_to_input(void)

Changes the mode of the signal DATA13 to input.

void FT245_DATA14_to_input(void)

Changes the mode of the signal DATA14 to input.

void FT245_DATA15_to_input(void)

Changes the mode of the signal DATA15 to input.

void FT245_DATA16_to_input(void)

Changes the mode of the signal DATA16 to input.

void FT245_DATA17_to_input(void)

Changes the mode of the signal DATA17 to input.

void FT245_DATA18_to_input(void)

Changes the mode of the signal DATA18 to input.

void FT245_DATA19_to_input(void)

Changes the mode of the signal DATA19 to input.

void FT245_DATA20_to_input(void)

Changes the mode of the signal DATA20 to input.

void FT245_DATA21_to_input(void)

Changes the mode of the signal DATA21 to input.

void FT245_DATA22_to_input(void)

Changes the mode of the signal DATA22 to input.

void FT245_DATA23_to_input(void)

Changes the mode of the signal DATA23 to input.

void FT245_DATA24_to_input(void)

Changes the mode of the signal DATA24 to input.

void FT245_DATA25_to_input(void)

Changes the mode of the signal DATA25 to input.

void FT245_DATA26_to_input(void)

Changes the mode of the signal DATA26 to input.

void FT245_DATA27_to_input(void)

Changes the mode of the signal DATA27 to input.

void FT245_DATA28_to_input(void)

Changes the mode of the signal DATA28 to input.

void FT245_DATA29_to_input(void)

Changes the mode of the signal DATA29 to input.

void FT245_DATA30_to_input(void)

Changes the mode of the signal DATA30 to input.

void FT245_DATA31_to_input(void)

Changes the mode of the signal DATA31 to input.

void FT245_BE0_to_input(void)

Changes the mode of the signal BE0 to input.

void FT245_BE1_to_input(void)

Changes the mode of the signal BE1 to input.

void FT245_BE2_to_input(void)

Changes the mode of the signal BE2 to input.

void FT245_BE3_to_input(void)

Changes the mode of the signal BE3 to input.

void FT245_DATA0_to_output(void)

Changes the mode of the signal DATA0 to output.

void FT245_DATA1_to_output(void)

Changes the mode of the signal DATA1 to output.

void FT245_DATA2_to_output(void)

Changes the mode of the signal DATA2 to output.

void FT245_DATA3_to_output(void)

Changes the mode of the signal DATA3 to output.

void FT245_DATA4_to_output(void)

Changes the mode of the signal DATA4 to output.

void FT245_DATA5_to_output(void)

Changes the mode of the signal DATA5 to output.

void FT245_DATA6_to_output(void)

Changes the mode of the signal DATA6 to output.

void FT245_DATA7_to_output(void)

Changes the mode of the signal DATA7 to output.

void FT245_DATA8_to_output(void)

Changes the mode of the signal DATA8 to output.

void FT245_DATA9_to_output(void)

Changes the mode of the signal DATA9 to output.

void FT245_DATA10_to_output(void)

Changes the mode of the signal DATA10 to output.

void FT245_DATA11_to_output(void)

Changes the mode of the signal DATA11 to output.

void FT245_DATA12_to_output(void)

Changes the mode of the signal DATA12 to output.

void FT245_DATA13_to_output(void)

Changes the mode of the signal DATA13 to output.

void FT245_DATA14_to_output(void)

Changes the mode of the signal DATA14 to output.

void FT245_DATA15_to_output(void)

Changes the mode of the signal DATA15 to output.

void FT245_DATA16_to_output(void)

Changes the mode of the signal DATA16 to output.

void FT245_DATA17_to_output(void)

Changes the mode of the signal DATA17 to output.

void FT245_DATA18_to_output(void)

Changes the mode of the signal DATA18 to output.

void FT245_DATA19_to_output(void)

Changes the mode of the signal DATA19 to output.

void FT245_DATA20_to_output(void)

Changes the mode of the signal DATA20 to output.

void FT245_DATA21_to_output(void)

Changes the mode of the signal DATA21 to output.

void FT245_DATA22_to_output(void)

Changes the mode of the signal DATA22 to output.

void FT245_DATA23_to_output(void)

Changes the mode of the signal DATA23 to output.

void FT245_DATA24_to_output(void)

Changes the mode of the signal DATA24 to output.

void FT245_DATA25_to_output(void)

Changes the mode of the signal DATA25 to output.

void FT245_DATA26_to_output(void)

Changes the mode of the signal DATA26 to output.

void FT245_DATA27_to_output(void)

Changes the mode of the signal DATA27 to output.

void FT245_DATA28_to_output(void)

Changes the mode of the signal DATA28 to output.

void FT245_DATA29_to_output(void)

Changes the mode of the signal DATA29 to output.

void FT245_DATA30_to_output(void)

Changes the mode of the signal DATA30 to output.

void FT245_DATA31_to_output(void)

Changes the mode of the signal DATA31 to output.

void FT245_BE0_to_output(void)

Changes the mode of the signal BE0 to output.

void FT245_BE1_to_output(void)

Changes the mode of the signal BE1 to output.

void FT245_BE2_to_output(void)

Changes the mode of the signal BE2 to output.

void FT245_BE3_to_output(void)

Changes the mode of the signal BE3 to output.

void FT245_CLK_set(void)

Sets the CLK signal to high.

void FT245_RXF_N_set(void)

Sets the RXF_N signal to high.

void FT245_TXE_N_set(void)

Sets the TXE_N signal to high.

void FT245_DATA0_set(void)

Sets the DATA0 signal to high.

void FT245_DATA1_set(void)

Sets the DATA1 signal to high.

void FT245_DATA2_set(void)

Sets the DATA2 signal to high.

void FT245_DATA3_set(void)

Sets the DATA3 signal to high.

void FT245_DATA4_set(void)

Sets the DATA4 signal to high.

void FT245_DATA5_set(void)

Sets the DATA5 signal to high.

void FT245_DATA6_set(void)

Sets the DATA6 signal to high.

void FT245_DATA7_set(void)

Sets the DATA7 signal to high.

void FT245_DATA8_set(void)

Sets the DATA8 signal to high.

void FT245_DATA9_set(void)

Sets the DATA9 signal to high.

void FT245_DATA10_set(void)

Sets the DATA10 signal to high.

void FT245_DATA11_set(void)

Sets the DATA11 signal to high.

void FT245_DATA12_set(void)

Sets the DATA12 signal to high.

void FT245_DATA13_set(void)

Sets the DATA13 signal to high.

void FT245_DATA14_set(void)

Sets the DATA14 signal to high.

void FT245_DATA15_set(void)

Sets the DATA15 signal to high.

void FT245_DATA16_set(void)

Sets the DATA16 signal to high.

void FT245_DATA17_set(void)

Sets the DATA17 signal to high.

void FT245_DATA18_set(void)

Sets the DATA18 signal to high.

void FT245_DATA19_set(void)

Sets the DATA19 signal to high.

void FT245_DATA20_set(void)

Sets the DATA20 signal to high.

void FT245_DATA21_set(void)

Sets the DATA21 signal to high.

void FT245_DATA22_set(void)

Sets the DATA22 signal to high.

void FT245_DATA23_set(void)

Sets the DATA23 signal to high.

void FT245_DATA24_set(void)

Sets the DATA24 signal to high.

void FT245_DATA25_set(void)

Sets the DATA25 signal to high.

void FT245_DATA26_set(void)

Sets the DATA26 signal to high.

void FT245_DATA27_set(void)

Sets the DATA27 signal to high.

void FT245_DATA28_set(void)

Sets the DATA28 signal to high.

void FT245_DATA29_set(void)

Sets the DATA29 signal to high.

void FT245_DATA30_set(void)

Sets the DATA30 signal to high.

void FT245_DATA31_set(void)

Sets the DATA31 signal to high.

void FT245_BE0_set(void)

Sets the BE0 signal to high.

void FT245_BE1_set(void)

Sets the BE1 signal to high.

void FT245_BE2_set(void)

Sets the BE2 signal to high.

void FT245_BE3_set(void)

Sets the BE3 signal to high.

void FT245_CLK_reset(void)

Sets the CLK signal to low.

void FT245_RXF_N_reset(void)

Sets the RXF_N signal to low.

void FT245_TXE_N_reset(void)

Sets the TXE_N signal to low.

void FT245_DATA0_reset(void)

Sets the DATA0 signal to low.

void FT245_DATA1_reset(void)

Sets the DATA1 signal to low.

void FT245_DATA2_reset(void)

Sets the DATA2 signal to low.

void FT245_DATA3_reset(void)

Sets the DATA3 signal to low.

void FT245_DATA4_reset(void)

Sets the DATA4 signal to low.

void FT245_DATA5_reset(void)

Sets the DATA5 signal to low.

void FT245_DATA6_reset(void)

Sets the DATA6 signal to low.

void FT245_DATA7_reset(void)

Sets the DATA7 signal to low.

void FT245_DATA8_reset(void)

Sets the DATA8 signal to low.

void FT245_DATA9_reset(void)

Sets the DATA9 signal to low.

void FT245_DATA10_reset(void)

Sets the DATA10 signal to low.

void FT245_DATA11_reset(void)

Sets the DATA11 signal to low.

void FT245_DATA12_reset(void)

Sets the DATA12 signal to low.

void FT245_DATA13_reset(void)

Sets the DATA13 signal to low.

void FT245_DATA14_reset(void)

Sets the DATA14 signal to low.

void FT245_DATA15_reset(void)

Sets the DATA15 signal to low.

void FT245_DATA16_reset(void)

Sets the DATA16 signal to low.

void FT245_DATA17_reset(void)

Sets the DATA17 signal to low.

void FT245_DATA18_reset(void)

Sets the DATA18 signal to low.

void FT245_DATA19_reset(void)

Sets the DATA19 signal to low.

void FT245_DATA20_reset(void)

Sets the DATA20 signal to low.

void FT245_DATA21_reset(void)

Sets the DATA21 signal to low.

void FT245_DATA22_reset(void)

Sets the DATA22 signal to low.

void FT245_DATA23_reset(void)

Sets the DATA23 signal to low.

void FT245_DATA24_reset(void)

Sets the DATA24 signal to low.

void FT245_DATA25_reset(void)

Sets the DATA25 signal to low.

void FT245_DATA26_reset(void)

Sets the DATA26 signal to low.

void FT245_DATA27_reset(void)

Sets the DATA27 signal to low.

void FT245_DATA28_reset(void)

Sets the DATA28 signal to low.

void FT245_DATA29_reset(void)

Sets the DATA29 signal to low.

void FT245_DATA30_reset(void)

Sets the DATA30 signal to low.

void FT245_DATA31_reset(void)

Sets the DATA31 signal to low.

void FT245_BE0_reset(void)

Sets the BE0 signal to low.

void FT245_BE1_reset(void)

Sets the BE1 signal to low.

void FT245_BE2_reset(void)

Sets the BE2 signal to low.

void FT245_BE3_reset(void)

Sets the BE3 signal to low.

void FT245_CLK_toggle(void)

Toggles the CLK signal.

bool FT245_TXE_N_read(void)

Reads the TXE_N signal.

Returns:

  • false: Signal is low.
  • true: Signal is high.

bool FT245_RXF_N_read(void)

Reads the RXF_N signal.

Returns:

  • false: Signal is low.
  • true: Signal is high.

bool FT245_WR_N_read(void)

Reads the WR_N signal.

Returns:

  • false: Signal is low.
  • true: Signal is high.

bool FT245_SIWU_N_read(void)

Reads the SIWU_N signal.

Returns:

  • false: Signal is low.
  • true: Signal is high.

bool FT245_RD_N_read(void)

Reads the RD_N signal.

Returns:

  • false: Signal is low.
  • true: Signal is high.

bool FT245_OE_N_read(void)

Reads the OE_N signal.

Returns:

  • false: Signal is low.
  • true: Signal is high.

bool FT245_RST_N_read(void)

Reads the RST_N signal.

Returns:

  • false: Signal is low.
  • true: Signal is high.

bool FT245_DATA0_read(void)

Reads the DATA0 signal.

Returns:

  • false: Signal is low.
  • true: Signal is high.

bool FT245_DATA1_read(void)

Reads the DATA1 signal.

Returns:

  • false: Signal is low.
  • true: Signal is high.

bool FT245_DATA2_read(void)

Reads the DATA2 signal.

Returns:

  • false: Signal is low.
  • true: Signal is high.

bool FT245_DATA3_read(void)

Reads the DATA3 signal.

Returns:

  • false: Signal is low.
  • true: Signal is high.

bool FT245_DATA4_read(void)

Reads the DATA4 signal.

Returns:

  • false: Signal is low.
  • true: Signal is high.

bool FT245_DATA5_read(void)

Reads the DATA5 signal.

Returns:

  • false: Signal is low.
  • true: Signal is high.

bool FT245_DATA6_read(void)

Reads the DATA6 signal.

Returns:

  • false: Signal is low.
  • true: Signal is high.

bool FT245_DATA7_read(void)

Reads the DATA7 signal.

Returns:

  • false: Signal is low.
  • true: Signal is high.

bool FT245_DATA8_read(void)

Reads the DATA8 signal.

Returns:

  • false: Signal is low.
  • true: Signal is high.

bool FT245_DATA9_read(void)

Reads the DATA9 signal.

Returns:

  • false: Signal is low.
  • true: Signal is high.

bool FT245_DATA10_read(void)

Reads the DATA10 signal.

Returns:

  • false: Signal is low.
  • true: Signal is high.

bool FT245_DATA11_read(void)

Reads the DATA11 signal.

Returns:

  • false: Signal is low.
  • true: Signal is high.

bool FT245_DATA12_read(void)

Reads the DATA12 signal.

Returns:

  • false: Signal is low.
  • true: Signal is high.

bool FT245_DATA13_read(void)

Reads the DATA13 signal.

Returns:

  • false: Signal is low.
  • true: Signal is high.

bool FT245_DATA14_read(void)

Reads the DATA14 signal.

Returns:

  • false: Signal is low.
  • true: Signal is high.

bool FT245_DATA15_read(void)

Reads the DATA15 signal.

Returns:

  • false: Signal is low.
  • true: Signal is high.

bool FT245_DATA16_read(void)

Reads the DATA16 signal.

Returns:

  • false: Signal is low.
  • true: Signal is high.

bool FT245_DATA17_read(void)

Reads the DATA17 signal.

Returns:

  • false: Signal is low.
  • true: Signal is high.

bool FT245_DATA18_read(void)

Reads the DATA18 signal.

Returns:

  • false: Signal is low.
  • true: Signal is high.

bool FT245_DATA19_read(void)

Reads the DATA19 signal.

Returns:

  • false: Signal is low.
  • true: Signal is high.

bool FT245_DATA20_read(void)

Reads the DATA20 signal.

Returns:

  • false: Signal is low.
  • true: Signal is high.

bool FT245_DATA21_read(void)

Reads the DATA21 signal.

Returns:

  • false: Signal is low.
  • true: Signal is high.

bool FT245_DATA22_read(void)

Reads the DATA22 signal.

Returns:

  • false: Signal is low.
  • true: Signal is high.

bool FT245_DATA23_read(void)

Reads the DATA23 signal.

Returns:

  • false: Signal is low.
  • true: Signal is high.

bool FT245_DATA24_read(void)

Reads the DATA24 signal.

Returns:

  • false: Signal is low.
  • true: Signal is high.

bool FT245_DATA25_read(void)

Reads the DATA25 signal.

Returns:

  • false: Signal is low.
  • true: Signal is high.

bool FT245_DATA26_read(void)

Reads the DATA26 signal.

Returns:

  • false: Signal is low.
  • true: Signal is high.

bool FT245_DATA27_read(void)

Reads the DATA27 signal.

Returns:

  • false: Signal is low.
  • true: Signal is high.

bool FT245_DATA28_read(void)

Reads the DATA28 signal.

Returns:

  • false: Signal is low.
  • true: Signal is high.

bool FT245_DATA29_read(void)

Reads the DATA29 signal.

Returns:

  • false: Signal is low.
  • true: Signal is high.

bool FT245_DATA30_read(void)

Reads the DATA30 signal.

Returns:

  • false: Signal is low.
  • true: Signal is high.

bool FT245_DATA31_read(void)

Reads the DATA31 signal.

Returns:

  • false: Signal is low.
  • true: Signal is high.

bool FT245_BE0_read(void)

Reads the BE0 signal.

Returns:

  • false: Signal is low.
  • true: Signal is high.

bool FT245_BE1_read(void)

Reads the BE1 signal.

Returns:

  • false: Signal is low.
  • true: Signal is high.

bool FT245_BE2_read(void)

Reads the BE2 signal.

Returns:

  • false: Signal is low.
  • true: Signal is high.

bool FT245_BE3_read(void)

Reads the BE3 signal.

Returns:

  • false: Signal is low.
  • true: Signal is high.

Dynamic mode external functions

The following functions need to be implemented in your source code and assigned to the respective function pointers in ft245_t struct.

  • void (*DATA0_to_input)(void);
  • void (*DATA1_to_input)(void);
  • void (*DATA2_to_input)(void);
  • void (*DATA3_to_input)(void);
  • void (*DATA4_to_input)(void);
  • void (*DATA5_to_input)(void);
  • void (*DATA6_to_input)(void);
  • void (*DATA7_to_input)(void);
  • void (*DATA8_to_input)(void);
  • void (*DATA9_to_input)(void);
  • void (*DATA10_to_input)(void);
  • void (*DATA11_to_input)(void);
  • void (*DATA12_to_input)(void);
  • void (*DATA13_to_input)(void);
  • void (*DATA14_to_input)(void);
  • void (*DATA15_to_input)(void);
  • void (*DATA16_to_input)(void);
  • void (*DATA17_to_input)(void);
  • void (*DATA18_to_input)(void);
  • void (*DATA19_to_input)(void);
  • void (*DATA20_to_input)(void);
  • void (*DATA21_to_input)(void);
  • void (*DATA22_to_input)(void);
  • void (*DATA23_to_input)(void);
  • void (*DATA24_to_input)(void);
  • void (*DATA25_to_input)(void);
  • void (*DATA26_to_input)(void);
  • void (*DATA27_to_input)(void);
  • void (*DATA28_to_input)(void);
  • void (*DATA29_to_input)(void);
  • void (*DATA30_to_input)(void);
  • void (*DATA31_to_input)(void);
  • void (*BE0_to_input)(void);
  • void (*BE1_to_input)(void);
  • void (*BE2_to_input)(void);
  • void (*BE3_to_input)(void);
  • void (*DATA0_to_output)(void);
  • void (*DATA1_to_output)(void);
  • void (*DATA2_to_output)(void);
  • void (*DATA3_to_output)(void);
  • void (*DATA4_to_output)(void);
  • void (*DATA5_to_output)(void);
  • void (*DATA6_to_output)(void);
  • void (*DATA7_to_output)(void);
  • void (*DATA8_to_output)(void);
  • void (*DATA9_to_output)(void);
  • void (*DATA10_to_output)(void);
  • void (*DATA11_to_output)(void);
  • void (*DATA12_to_output)(void);
  • void (*DATA13_to_output)(void);
  • void (*DATA14_to_output)(void);
  • void (*DATA15_to_output)(void);
  • void (*DATA16_to_output)(void);
  • void (*DATA17_to_output)(void);
  • void (*DATA18_to_output)(void);
  • void (*DATA19_to_output)(void);
  • void (*DATA20_to_output)(void);
  • void (*DATA21_to_output)(void);
  • void (*DATA22_to_output)(void);
  • void (*DATA23_to_output)(void);
  • void (*DATA24_to_output)(void);
  • void (*DATA25_to_output)(void);
  • void (*DATA26_to_output)(void);
  • void (*DATA27_to_output)(void);
  • void (*DATA28_to_output)(void);
  • void (*DATA29_to_output)(void);
  • void (*DATA30_to_output)(void);
  • void (*DATA31_to_output)(void);
  • void (*BE0_to_output)(void);
  • void (*BE1_to_output)(void);
  • void (*BE2_to_output)(void);
  • void (*BE3_to_output)(void);
  • void (*CLK_set)(void);
  • void (*RXF_N_set)(void);
  • void (*TXE_N_set)(void);
  • void (*DATA0_set)(void);
  • void (*DATA1_set)(void);
  • void (*DATA2_set)(void);
  • void (*DATA3_set)(void);
  • void (*DATA4_set)(void);
  • void (*DATA5_set)(void);
  • void (*DATA6_set)(void);
  • void (*DATA7_set)(void);
  • void (*DATA8_set)(void);
  • void (*DATA9_set)(void);
  • void (*DATA10_set)(void);
  • void (*DATA11_set)(void);
  • void (*DATA12_set)(void);
  • void (*DATA13_set)(void);
  • void (*DATA14_set)(void);
  • void (*DATA15_set)(void);
  • void (*DATA16_set)(void);
  • void (*DATA17_set)(void);
  • void (*DATA18_set)(void);
  • void (*DATA19_set)(void);
  • void (*DATA20_set)(void);
  • void (*DATA21_set)(void);
  • void (*DATA22_set)(void);
  • void (*DATA23_set)(void);
  • void (*DATA24_set)(void);
  • void (*DATA25_set)(void);
  • void (*DATA26_set)(void);
  • void (*DATA27_set)(void);
  • void (*DATA28_set)(void);
  • void (*DATA29_set)(void);
  • void (*DATA30_set)(void);
  • void (*DATA31_set)(void);
  • void (*BE0_set)(void);
  • void (*BE1_set)(void);
  • void (*BE2_set)(void);
  • void (*BE3_set)(void);
  • void (*CLK_reset)(void);
  • void (*RXF_N_reset)(void);
  • void (*TXE_N_reset)(void);
  • void (*DATA0_reset)(void);
  • void (*DATA1_reset)(void);
  • void (*DATA2_reset)(void);
  • void (*DATA3_reset)(void);
  • void (*DATA4_reset)(void);
  • void (*DATA5_reset)(void);
  • void (*DATA6_reset)(void);
  • void (*DATA7_reset)(void);
  • void (*DATA8_reset)(void);
  • void (*DATA9_reset)(void);
  • void (*DATA10_reset)(void);
  • void (*DATA11_reset)(void);
  • void (*DATA12_reset)(void);
  • void (*DATA13_reset)(void);
  • void (*DATA14_reset)(void);
  • void (*DATA15_reset)(void);
  • void (*DATA16_reset)(void);
  • void (*DATA17_reset)(void);
  • void (*DATA18_reset)(void);
  • void (*DATA19_reset)(void);
  • void (*DATA20_reset)(void);
  • void (*DATA21_reset)(void);
  • void (*DATA22_reset)(void);
  • void (*DATA23_reset)(void);
  • void (*DATA24_reset)(void);
  • void (*DATA25_reset)(void);
  • void (*DATA26_reset)(void);
  • void (*DATA27_reset)(void);
  • void (*DATA28_reset)(void);
  • void (*DATA29_reset)(void);
  • void (*DATA30_reset)(void);
  • void (*DATA31_reset)(void);
  • void (*BE0_reset)(void);
  • void (*BE1_reset)(void);
  • void (*BE2_reset)(void);
  • void (*BE3_reset)(void);
  • void (*CLK_toggle)(void);
  • bool (*TXE_N_read)(void);
  • bool (*RXF_N_read)(void);
  • bool (*WR_N_read)(void);
  • bool (*SIWU_N_read)(void);
  • bool (*RD_N_read)(void);
  • bool (*OE_N_read)(void);
  • bool (*RST_N_read)(void);
  • bool (*DATA0_read)(void);
  • bool (*DATA1_read)(void);
  • bool (*DATA2_read)(void);
  • bool (*DATA3_read)(void);
  • bool (*DATA4_read)(void);
  • bool (*DATA5_read)(void);
  • bool (*DATA6_read)(void);
  • bool (*DATA7_read)(void);
  • bool (*DATA8_read)(void);
  • bool (*DATA9_read)(void);
  • bool (*DATA10_read)(void);
  • bool (*DATA11_read)(void);
  • bool (*DATA12_read)(void);
  • bool (*DATA13_read)(void);
  • bool (*DATA14_read)(void);
  • bool (*DATA15_read)(void);
  • bool (*DATA16_read)(void);
  • bool (*DATA17_read)(void);
  • bool (*DATA18_read)(void);
  • bool (*DATA19_read)(void);
  • bool (*DATA20_read)(void);
  • bool (*DATA21_read)(void);
  • bool (*DATA22_read)(void);
  • bool (*DATA23_read)(void);
  • bool (*DATA24_read)(void);
  • bool (*DATA25_read)(void);
  • bool (*DATA26_read)(void);
  • bool (*DATA27_read)(void);
  • bool (*DATA28_read)(void);
  • bool (*DATA29_read)(void);
  • bool (*DATA30_read)(void);
  • bool (*DATA31_read)(void);
  • bool (*BE0_read)(void);
  • bool (*BE1_read)(void);
  • bool (*BE2_read)(void);
  • bool (*BE3_read)(void);

The functions descriptions are the same as for static mode. You can even assign your implemented static mode functions to the dynamic mode function pointers.

Control functions

The following functions are used to initialize the FT245 driver and control it.

void FT245_init(ft245_t *ft245)

Initializes the ft245_t instance.
Initializes the RX/TX buffers and sets all I/O signals to input.

Parameters:

  • ft245: ft245_t instance.

void FT245_periodic(ft245_t *ft245)

Runs the internal communication logic and iterates the state machine. Automatically toggles the CLK signal and responds to input signals. Needs to be called periodically via timer interrupt or in a loop for this driver to work properly.

Parameters:

  • ft245: ft245_t instance.

Runtime functions

The following functions are used to send/receive data in runtime after initialization.

bool FT245_write_buffered(ft245_t *ft245, uint8_t *data, size_t size)

Writes a given amount of data, specified with size, to the output buffer. It will be sent automatically on one of the following FT245_periodic(...) calls.

Parameters:

  • ft245: ft245_t instance.
  • data: Pointer to the data buffer to be sent.
  • size: Amount of data elements to send.

Returns:

  • true: Data successfully transferred to output buffer.
  • false: Data could not be transferred to output buffer.

size_t FT245_read_buffered(ft245_t *ft245, uint8_t *data, size_t size)

Reads up to the given amount of data from the input buffer, specified with size, to the pointer data.

Parameters:

  • ft245: ft245_t instance.
  • data: Pointer to the data buffer to be read.
  • size: Amount of data elements to read.

Returns:

  • Number of bytes actually read.

bool FT245_write_word_buffered(ft245_t *ft245, uint32_t word)

Writes a full 32-bit word word to the output buffer. It will be sent automatically on one of the following FT245_periodic(...) calls.

Parameters:

  • ft245: ft245_t instance.
  • word: 32-bit data word to be sent.

Returns:

  • true: Data word successfully transferred to output buffer.
  • false: Data word could not be transferred to output buffer.

bool FT245_read_word_buffered(ft245_t *ft245, uint32_t *word)

Reads one data word from the input buffer, if available, to the location pointed to by word.

Parameters:

  • ft245: ft245_t instance.
  • word: Pointer to the location the word gets transferred to.

Returns:

  • true: Data successfully transferred to word.
  • false: Data could not be transferred to word, i.e. no full word available at input buffer.

size_t FT245_available_read(ft245_t *ft245)

Returns the number of bytes available in the input buffer.

Parameters:

  • ft245: ft245_t instance.

Returns:

  • Number of bytes available in the input buffer.

size_t FT245_available_write(ft245_t *ft245)

Returns the available space (in bytes) of the output buffer.

Parameters:

  • ft245: ft245_t instance.

Returns:

  • Available space (in bytes) of the output buffer.