TouchPad 5 Click Board
TouchPad 5 Click Board
Key Features:
- Proximity, touch and snap on each channel, multi-touch support up to 5 fingers, single and multi-finger gestures, high performance with high sensitivity, I2C interface, and more
- Based on the IQS550 - projected capacitive touch and proximity trackpad/touchscreen controller from Azoteq
- Can be used for human-machine interfaces, capacitive keyboards, gesture-based interfaces, remote control trackpads, and more
- mikroBUS: I2C Interface
The TouchPad 5 Click Board™ is a compact add-on board that easily integrates projected capacitive touch into users' applications. This board features the IQS550, a projected capacitive touch and proximity trackpad/touchscreen controller from Azoteq. Its low power proximity detection allows a low power operation offering a complete touchscreen sensing solution with a 29x23mm trackpad dimension, best-in-class sensitivity, and power consumption. It is characterized by embedded gesture engine recognition for simple gestures (touch and snap on each channel, single- and multi-finger gestures) and built-in noise detection and filtering. This Click board™ is suitable for human-machine interfaces, capacitive keyboards, gesture-based interfaces, remote control trackpads, and more.
The TouchPad 5 Click Board™ is supported by a mikroSDK compliant library, which includes functions that simplify software development. This Click board™ comes as a fully tested product, ready to be used on a system equipped with the mikroBUS™ socket.
Software Support
We provide a library for the Touchpad 5 Click Board™ as well as a demo application (example), developed using MikroElektronika compilers. The demo can run on all the main MikroElektronika development boards.
The package can be downloaded/installed directly from NECTO Studio The package Manager (recommended), downloaded from our LibStock™ or found on MikroE Github account.
Library Description
This library contains API for the Touchpad 5 Click Board™ driver.
Key functions
-
touchpad5_get_touch
This function get touch XY data. -
touchpad5_get_status
This function get status proximity, touch or snap data. -
touchpad5_wait_ready
This function waits for the communication window to be available.
Example Description
This example demonstrates the use of the Touchpad 5 Click Board™ by utilizing the touchpad XY and snap functionalities.
void application_task ( void )
{
// Busy wait for communication window availability
touchpad5_wait_ready( &touchpad5 );
// Get touchpad XY data
touchpad5_get_touch( &touchpad5, &touch_data );
// Detecting the snap (click) criteria
if ( touchpad5_detect_snap( &touchpad5, snap_buffer, SNAP_BUFFER_SIZE, &snap_reference) && touch_data.touch_strength > 0 )
{
log_printf( &logger, "----------------------------------------------------------------rn" );
log_printf( &logger, "rn* Snap (click) event occured with strength: %u *rn",
( uint16_t ) touch_data.touch_strength );
log_printf( &logger, "----------------------------------------------------------------rn" );
Delay_ms( 100 );
}
// Detecting the touch criteria
else if ( touch_data.x_pos > 0 && touch_data.y_pos > 0 && touch_data.touch_strength > TOUCH_STRENGTH_THRESHOLD )
{
log_printf( &logger, "----------------------------------------------------------------rn" );
log_printf( &logger, " rnTouch with Tag ID %u detectedrn", ( uint16_t ) touch_data.id_tag );
log_printf( &logger, "Coordinate X = %u rn", touch_data.x_pos );
log_printf( &logger, "Coordinate Y = %u rn", touch_data.y_pos );
log_printf( &logger, "Touch strength = %u rn", ( uint16_t ) touch_data.touch_strength );
log_printf( &logger, "----------------------------------------------------------------rnrn" );
Delay_ms( 100 );
}
// Monitoring to determine whether the reset occurred on the device after the last ack reset
if ( touch_data.xy_info & TOUCHPAD5_SHOW_RESET )
{
log_printf( &logger, "----------------------------------------------------------------rn" );
log_error( &logger, "rn Unexpected reset occured. rn" );
log_printf( &logger, "----------------------------------------------------------------rnrn" );
}
Delay_ms( 50 );
}
The full application code, and ready to use projects can be installed directly from NECTO Studio The package Manager (recommended), downloaded from our LibStock™ or found on MikroE Github account.
Other MikroE Libraries used in the example:
- MikroSDK.Board
- MikroSDK.Log
- Click.TouchPad5
Additional Notes and Information
Depending on the development board you are using, you may need a USB UART Click Board™, USB UART 2 Click or RS232 Click to connect to your PC, for development systems with no UART to USB interface available on the board. UART terminal is available in all MikroElektronika compilers.
MIKROSDK
The Touchpad 5 Click Board™ is supported with mikroSDK - MikroElektronika Software Development Kit. To ensure proper operation of mikroSDK compliant Click board™ demo applications, mikroSDK should be downloaded from the LibStock and installed for the compiler you are using.
TouchPad 5 Click Board
Frequently Asked Questions
Have a Question?
Be the first to ask a question about this.