Carte à clic TouchPad 5
Carte à clic TouchPad 5
Key Features
- Proximité, toucher et encliquetage sur chaque canal, prise en charge multi-touch jusqu'à 5 doigts, gestes à un ou plusieurs doigts, hautes performances avec haute sensibilité, interface I2C, et plus encore
- Basé sur le IQS550 - contrôleur de pavé tactile/écran tactile capacitif projeté et de proximité d'Azoteq
- Peut être utilisé pour les interfaces homme-machine, les claviers capacitifs, les interfaces basées sur les gestes, les pavés tactiles de télécommande, etc.
- mikroBUS : interface I2C
Le TouchPad 5 Click Board™ est une carte complémentaire compacte qui intègre facilement la technologie tactile capacitive projetée dans les applications des utilisateurs. Cette carte est équipée de l'IQS550, un contrôleur de pavé tactile/écran tactile de proximité et tactile capacitif projeté d'Azoteq. Sa détection de proximité à faible consommation permet un fonctionnement à faible consommation offrant une solution de détection d'écran tactile complète avec une dimension de pavé tactile de 29 x 23 mm, la meilleure sensibilité et la meilleure consommation d'énergie de sa catégorie. Il se caractérise par une reconnaissance intégrée du moteur de gestes pour les gestes simples (toucher et enclencher sur chaque canal, gestes à un ou plusieurs doigts) et une détection et un filtrage du bruit intégrés. Ce Click board™ convient aux interfaces homme-machine, aux claviers capacitifs, aux interfaces basées sur les gestes, aux pavés tactiles de télécommande, etc.
La TouchPad 5 Click Board™ est prise en charge par une bibliothèque compatible mikroSDK, qui comprend des fonctions qui simplifient le développement logiciel. Cette Click board™ est un produit entièrement testé, prêt à être utilisé sur un système équipé du socket mikroBUS™.
How Does The Touchpad 5 Click Board™ Work?
The Touchpad 5 Click Board™ as its foundation uses the IQS550, a projected capacitive touch and proximity trackpad/touchscreen controller from Azoteq. The IQS550 offers high sensitivity proximity wake-up and contact detection (touch) through many I2C-controllable sensor lines. Its advanced on-chip signal processing capabilities provide stable high performance with high sensitivity. Also, multiple filters are implemented to detect and suppress noise, track slow varying environmental conditions, and avoid the effects of possible drift. The IQS550 controller is very flexible, providing numerous outputs such as proximity, touch, snap, touch strength, area, and actual finger position, all in one solution.
On the Click Board's™ front side, a clearly defined field represents a touchpad area. This area is a matrix of conductive electrodes on the PCB, electrically isolated from each other, arranged as rows and columns of X and Y in a dimension of 29x23mm. An electrode consists of multiple diamond-shaped elements connected to the next with a conductive neck.
The controller uses the principle of projected capacitance charge transfer on the trackpad. When a conductive object such as a human finger approaches the sense pad, it will decrease the detected capacitance. Thresholds are applied to the sensor data to identify proximity and touch deviation areas. The contours of the touch areas are then translated to Cartesian position coordinates that are continuously monitored to recognize gestures. A user has access to all of the data layers – the raw sensor data, the sensor proximity/touch status data, the XY coordinates, and the gesture outputs.
The Touchpad 5 Click Board™ communicates with MCU using the standard I2C 2-Wire interface with a maximum clock frequency of 400kHz, fully adjustable through software registers. An additional ready signal, routed on the INT pin of the mikroBUS™ socket, is added, which indicates when the communication window is available with new data for optimal response. Thus, it is optimal for the response rate to use the INT pin as a communication trigger. Alongside this pin, this Click board™ has a Reset feature routed to the RST pin on the mikroBUS™ socket, which with a low logic level, puts the module into a Reset state, and with a high level, operates the module normally.
The Touchpad 5 Click Board™ can be operated only with a 3.3V logic voltage level. The board must perform appropriate logic voltage level conversion before using MCUs with different logic levels. However, the Click board™ comes equipped with a library containing functions and an example code that can be used, as a reference, for further development.
SPECIFICATIONS
Type | Capacitive |
Applications | Can be used for human-machine interfaces, capacitive keyboards, gesture-based interfaces, remote control trackpads, and more |
On-board modules | IQS550 - projected capacitive touch and proximity trackpad/touchscreen controller from Azoteq |
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 |
Interface | I2C |
Compatibility | mikroBUS |
Click board size | L (57.15 x 25.4 mm) |
Input Voltage | 3.3V |
PINOUT DIAGRAM
This table shows how the pinout of the Touchpad 5 Click Board™ corresponds to the pinout on the mikroBUS™ socket (the latter shown in the two middle columns).
Notes | Pin | Pin | Notes | ||||
---|---|---|---|---|---|---|---|
NC | 1 | AN | PWM | 16 | NC | ||
Reset | RST | 2 | RST | INT | 15 | INT | Interrupt |
NC | 3 | CS | RX | 14 | NC | ||
NC | 4 | SCK | TX | 13 | NC | ||
NC | 5 | MISO | SCL | 12 | SCL | I2C Clock | |
NC | 6 | MOSI | SDA | 11 | SDA | I2C Data | |
Power Supply | 3.3V | 7 | 3.3V | 5V | 10 | NC | |
Ground | GND | 8 | GND | GND | 9 | GND | Ground |
ONBOARD SETTINGS AND INDICATORS
Label | Name | Default | Description |
---|---|---|---|
LD1 | PWR | - | Power LED Indicator |
TOUCHPAD 5 CLICK ELECTRICAL SPECIFICATIONS
Description | Min | Typ | Max | Unit |
---|---|---|---|---|
Supply Voltage | - | 3.3 | - | V |
Operating Temperature Range | -40 | +25 | +85 | °C |
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.
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.
Carte à clic TouchPad 5
Frequently Asked Questions
Have a Question?
Be the first to ask a question about this.