Contains the BSP driver for the DISCO_F413ZH board.

Dependents:   DISCO_F413ZH-LCD-demo DISCO_F413ZH-touch-screen-demo DISCO_F413ZH-SD-demo DISCO_F413ZH-PSRAM-demo ... more

Embed: (wiki syntax)

« Back to documentation index

ft6x06 Private Functions

ft6x06 Private Functions
[FT6X06]

Functions

void ft6x06_Init (uint16_t DeviceAddr)
 Initialize the ft6x06 communication bus from MCU to FT6206 : ie I2C channel initialization (if required).
void ft6x06_Reset (uint16_t DeviceAddr)
 Software Reset the ft6x06.
uint16_t ft6x06_ReadID (uint16_t DeviceAddr)
 Read the ft6x06 device ID, pre initialize I2C in case of need to be able to read the FT6206 device ID, and verify this is a FT6206.
void ft6x06_TS_Start (uint16_t DeviceAddr)
 Configures the touch Screen IC device to start detecting touches It goes through an internal calibration process (Hw calibration sequence of the touch screen).
uint8_t ft6x06_TS_DetectTouch (uint16_t DeviceAddr)
 Return if there is touches detected or not.
void ft6x06_TS_GetXY (uint16_t DeviceAddr, uint16_t *X, uint16_t *Y)
 Get the touch screen X and Y positions values Manage multi touch thanks to touch Index global variable 'ft6x06_handle.currActiveTouchIdx'.
void ft6x06_TS_EnableIT (uint16_t DeviceAddr)
 Configure the FT6206 device to generate IT on given INT pin connected to MCU as EXTI.
void ft6x06_TS_DisableIT (uint16_t DeviceAddr)
 Configure the FT6206 device to stop generating IT on the given INT pin connected to MCU as EXTI.
uint8_t ft6x06_TS_ITStatus (uint16_t DeviceAddr)
 Get IT status from FT6206 interrupt status registers Should be called Following an EXTI coming to the MCU to know the detailed reason of the interrupt.
void ft6x06_TS_ClearIT (uint16_t DeviceAddr)
 Clear IT status in FT6206 interrupt status clear registers Should be called Following an EXTI coming to the MCU.
void ft6x06_TS_GetGestureID (uint16_t DeviceAddr, uint32_t *pGestureId)
 Get the last touch gesture identification (zoom, move up/down...).
void ft6x06_TS_GetTouchInfo (uint16_t DeviceAddr, uint32_t touchIdx, uint32_t *pWeight, uint32_t *pArea, uint32_t *pEvent)
 Get the touch detailed informations on touch number 'touchIdx' (0..1) This touch detailed information contains :

  • weight that was applied to this touch
  • sub-area of the touch in the touch panel
  • event of linked to the touch (press down, lift up, ...)

static uint8_t ft6x06_GetInstance (uint16_t DeviceAddr)
 Check if the device instance of the selected address is already registered and return its index.

Function Documentation

static uint8_t ft6x06_GetInstance ( uint16_t  DeviceAddr ) [static]

Check if the device instance of the selected address is already registered and return its index.

Parameters:
DeviceAddr,:Device address on communication Bus.
Return values:
Indexof the device instance if registered, 0xFF if not.

Definition at line 482 of file ft6x06.c.

void ft6x06_Init ( uint16_t  DeviceAddr )

Initialize the ft6x06 communication bus from MCU to FT6206 : ie I2C channel initialization (if required).

ft6x06 Control functions

Parameters:
DeviceAddr,:Device address on communication Bus (I2C slave address of FT6206).
Return values:
None

Definition at line 132 of file ft6x06.c.

uint16_t ft6x06_ReadID ( uint16_t  DeviceAddr )

Read the ft6x06 device ID, pre initialize I2C in case of need to be able to read the FT6206 device ID, and verify this is a FT6206.

Read the ft6x06 device ID, pre intitalize I2C in case of need to be able to read the FT6206 device ID, and verify this is a FT6206.

Parameters:
DeviceAddr,:I2C FT6x06 Slave address.
Return values:
TheDevice ID (two bytes).

Definition at line 175 of file ft6x06.c.

void ft6x06_Reset ( uint16_t  DeviceAddr )

Software Reset the ft6x06.

Note:
: Not applicable to FT6206.
Parameters:
DeviceAddr,:Device address on communication Bus (I2C slave address of FT6206).
Return values:
None

Definition at line 163 of file ft6x06.c.

void ft6x06_TS_ClearIT ( uint16_t  DeviceAddr )

Clear IT status in FT6206 interrupt status clear registers Should be called Following an EXTI coming to the MCU.

Note:
: This feature is not applicable to FT6206.
Parameters:
DeviceAddr,:Device address on communication Bus (I2C slave address of FT6206).
Return values:
None

Definition at line 329 of file ft6x06.c.

uint8_t ft6x06_TS_DetectTouch ( uint16_t  DeviceAddr )

Return if there is touches detected or not.

Try to detect new touches and forget the old ones (reset internal global variables).

Parameters:
DeviceAddr,:Device address on communication Bus.
Return values:
:Number of active touches detected (can be 0, 1 or 2).

Definition at line 213 of file ft6x06.c.

void ft6x06_TS_DisableIT ( uint16_t  DeviceAddr )

Configure the FT6206 device to stop generating IT on the given INT pin connected to MCU as EXTI.

Parameters:
DeviceAddr,:Device address on communication Bus (Slave I2C address of FT6206).
Return values:
None

Definition at line 299 of file ft6x06.c.

void ft6x06_TS_EnableIT ( uint16_t  DeviceAddr )

Configure the FT6206 device to generate IT on given INT pin connected to MCU as EXTI.

Parameters:
DeviceAddr,:Device address on communication Bus (Slave I2C address of FT6206).
Return values:
None

Definition at line 284 of file ft6x06.c.

void ft6x06_TS_GetGestureID ( uint16_t  DeviceAddr,
uint32_t *  pGestureId 
)

Get the last touch gesture identification (zoom, move up/down...).

Parameters:
DeviceAddr,:Device address on communication Bus (I2C slave address of FT6x06).
pGestureId: Pointer to get last touch gesture Identification.
Return values:
None.

Definition at line 343 of file ft6x06.c.

void ft6x06_TS_GetTouchInfo ( uint16_t  DeviceAddr,
uint32_t  touchIdx,
uint32_t *  pWeight,
uint32_t *  pArea,
uint32_t *  pEvent 
)

Get the touch detailed informations on touch number 'touchIdx' (0..1) This touch detailed information contains :

  • weight that was applied to this touch
  • sub-area of the touch in the touch panel
  • event of linked to the touch (press down, lift up, ...)

Parameters:
DeviceAddr,:Device address on communication Bus (I2C slave address of FT6x06).
touchIdx: Passed index of the touch (0..1) on which we want to get the detailed information.
pWeight: Pointer to to get the weight information of 'touchIdx'.
pArea: Pointer to to get the sub-area information of 'touchIdx'.
pEvent: Pointer to to get the event information of 'touchIdx'.
Return values:
None.

Definition at line 367 of file ft6x06.c.

void ft6x06_TS_GetXY ( uint16_t  DeviceAddr,
uint16_t *  X,
uint16_t *  Y 
)

Get the touch screen X and Y positions values Manage multi touch thanks to touch Index global variable 'ft6x06_handle.currActiveTouchIdx'.

Parameters:
DeviceAddr,:Device address on communication Bus.
X,:Pointer to X position value
Y,:Pointer to Y position value
Return values:
None.

Definition at line 245 of file ft6x06.c.

uint8_t ft6x06_TS_ITStatus ( uint16_t  DeviceAddr )

Get IT status from FT6206 interrupt status registers Should be called Following an EXTI coming to the MCU to know the detailed reason of the interrupt.

Note:
: This feature is not applicable to FT6206.
Parameters:
DeviceAddr,:Device address on communication Bus (I2C slave address of FT6206).
Return values:
TSinterrupts status : always return 0 here

Definition at line 316 of file ft6x06.c.

void ft6x06_TS_Start ( uint16_t  DeviceAddr )

Configures the touch Screen IC device to start detecting touches It goes through an internal calibration process (Hw calibration sequence of the touch screen).

Configures the touch Screen IC device to start detecting touches.

Parameters:
DeviceAddr,:Device address on communication Bus (I2C slave address).
Return values:
None.

Definition at line 191 of file ft6x06.c.