Atmel QTouch Library User Guide
Atmel QTouch Library User Guide Atmel QTouch Library User Guide
Table 13 QTouch Library for UC3L Configuration parameters ..................................... 1356.3.12 Example projects for QTouch Library for UC3L .................................................................... 1356.3.12.1 Example Project usage ................................................................................... 135Figure 46 GNU Example project usage with AVR32 Studio ......................................... 136Figure 47 IAR Example project usage with IAR Embedded Workbench for AVR32 .... 1366.3.12.2 QMatrix Example Project ................................................................................ 1366.3.12.3 QTouch Group A Example Project ................................................................. 1366.3.12.4 Autonomous QTouch Example Project .......................................................... 1376.3.13 Code and Data Memory requirements for UC3L .................................................................. 1376.3.13.1 QMatrix method memory requirement ............................................................ 137Table 14 Typical Code and Data memory for Standalone QMatrix operation ............. 1386.3.13.2 QTouch Group A/B method memory requirement .......................................... 138Table 15 Typical Code and Data memory for Standalone QTouch Group A/B operation...................................................................................................................................... 1386.3.13.3 Autonomous QTouch memory requirement ................................................... 138Table 16 Minimum Code and Data for Standalone Autonomous QTouch sensor ........ 1396.3.14 Public header files of QTouch Library for UC3L ................................................................... 1396.3.15 Type Definitions and enumerations used in the library ......................................................... 1396.3.15.1 Typedefs ......................................................................................................... 1396.3.15.1.1 touch_acq_status_t ...................................................................................... 1396.3.15.1.2 touch_qt_grp_t ............................................................................................. 1406.3.15.2 Enumerations .................................................................................................. 1406.3.15.2.1 touch_ret_t ................................................................................................... 1406.3.15.2.2 touch_lib_state_t .......................................................................................... 1416.3.15.2.3 touch_acq_mode_t ...................................................................................... 1416.3.15.2.4 sensor_type_t .............................................................................................. 1426.3.15.2.5 aks_group_t ................................................................................................. 1426.3.15.2.6 hysteresis_t .................................................................................................. 1426.3.15.2.7 recal_threshold_t ......................................................................................... 1436.3.15.2.8 resolution_t .................................................................................................. 1436.3.15.2.9 at_status_change_t ..................................................................................... 1436.3.15.2.10 x_pin_options_t .......................................................................................... 1446.3.15.2.11 y_pin_options_t .......................................................................................... 1446.3.15.2.12 qt_pin_options_t ......................................................................................... 1446.3.15.2.13 general_pin_options_t ................................................................................ 1446.3.16 Data structures ..................................................................................................................... 1456.3.16.1 sensor_t .......................................................................................................... 1456.3.16.2 touch_global_param_t .................................................................................... 1456.3.16.3 touch_filter_data_t .......................................................................................... 1456.3.16.4 touch_measure_data_t ................................................................................... 1466.3.16.5 touch_qm_param_t ......................................................................................... 1466.3.16.6 touch_at_param_t ........................................................................................... 1466.3.16.7 touch_qt_param_t ........................................................................................... 1476.3.16.8 touch_at_status .............................................................................................. 1486.3.16.9 touch_qm_dma_t ............................................................................................ 1486.3.16.10 touch_qm_pin_t .............................................................................................. 1486.3.16.11 touch_at_pin_t ................................................................................................ 1496.3.16.12 touch_qt_pin_t ................................................................................................ 1496.3.16.13 touch_qm_reg_t .............................................................................................. 1496.3.16.14 touch_at_reg_t ................................................................................................ 1506.3.16.15 touch_qt_reg_t ................................................................................................ 1516.3.16.16 touch_qm_config_t ......................................................................................... 1516.3.16.17 touch_at_config_t ........................................................................................... 1526.3.16.18 touch_qt_config_t ........................................................................................... 1526.3.16.19 touch_general_config_t .................................................................................. 1536.3.16.20 touch_config_t ................................................................................................ 15368207K-AT42-09/11
6.3.16.21 touch_info_t .................................................................................................... 1546.3.17 Public Functions of QTouch Library for UC3L ...................................................................... 1546.3.17.1 QMatrix API .................................................................................................... 1546.3.17.1.1 touch_qm_sensors_init ................................................................................ 1546.3.17.1.2 touch_qm_sensor_config ............................................................................. 1556.3.17.1.3 touch_qm_sensor_update_config................................................................ 1556.3.17.1.4 touch_qm_sensor_get_config ...................................................................... 1566.3.17.1.5 touch_qm_channel_udpate_burstlen .......................................................... 1566.3.17.1.6 touch_qm_update_global_param ................................................................ 1576.3.17.1.7 touch_qm_get_global_param ...................................................................... 1576.3.17.1.8 touch_qm_sensors_calibrate ....................................................................... 1576.3.17.1.9 touch_qm_sensors_start_acquisition .......................................................... 1576.3.17.1.10 touch_qm_get_libinfo ................................................................................. 1586.3.17.1.11 touch_qm_sensor_get_delta ...................................................................... 1596.3.17.2 QTouch Group A and QTouch Group B API .................................................. 1596.3.17.2.1 touch_qt_sensors_init .................................................................................. 1596.3.17.2.2 touch_qt_sensor_config ............................................................................... 1596.3.17.2.3 touch_qt_sensor_update_config.................................................................. 1606.3.17.2.4 touch_qt_sensor_get_config ........................................................................ 1616.3.17.2.5 touch_qt_update_global_param .................................................................. 1616.3.17.2.6 touch_qt_get_global_param ........................................................................ 1616.3.17.2.7 touch_qt_sensors_calibrate ......................................................................... 1626.3.17.2.8 touch_qt_sensors_start_acquisition ............................................................ 1626.3.17.2.9 touch_qt _sensor_ disable ........................................................................... 1636.3.17.2.10 touch_qt _sensor_ reenable....................................................................... 1636.3.17.2.11 touch_qt_get_libinfo ................................................................................... 1646.3.17.2.12 touch_qt_sensor_get_delta ........................................................................ 1646.3.18 Autonomous touch API......................................................................................................... 1646.3.18.1.1 touch_at_sensor_init .................................................................................... 1646.3.18.1.2 touch_at_sensor_enable ............................................................................. 1656.3.18.1.3 touch_at_sensor_disable ............................................................................. 1656.3.18.1.4 touch_at_sensor_update_config.................................................................. 1656.3.18.1.5 touch_at_sensor_get_config ........................................................................ 1666.3.18.1.6 touch_at_get_libinfo ..................................................................................... 1666.3.18.2 Common API .................................................................................................. 1666.3.18.2.1 touch_event_dispatcher ............................................................................... 1666.3.18.2.2 touch_deinit .................................................................................................. 1666.3.19 Integrating QTouch libraries for AT32UC3L in your application ........................................... 1676.3.20 MISRA Compliance Report of QTouch Library for UC3L ..................................................... 1676.3.216.3.22What is covered ................................................................................................................... 167Target Environment .............................................................................................................. 1676.3.23 Deviations from MISRA C Standards ................................................................................... 1676.3.24 Known Issues with QTouch Library for UC3L ....................................................................... 1686.4 QTouch Library for ATtiny20 device.............................................................................. 1696.4.1 Salient Features of QTouch Library for ATtiny20 ................................................................. 1696.4.1.1 QTouch method sensor ...................................................................................... 1696.4.2 Compiler tool chain support for ATtiny20 ............................................................................. 169Table 17 Compiler tool chains support for ATtiny20 QTouch Library ........................... 1696.4.3 Overview of QTouch Library for ATtiny20 ............................................................................ 169Figure 48 Schematic overview of QTouch on Tiny20 ................................................... 1706.4.4 API Flow diagram for ATtiny20 ............................................................................................. 170Figure 49 Linker configuration options for Tiny20 ......................................................... 170Figure 50 QTouch method for Tiny20 API Flow diagram ............................................. 1716.4.5 QTouch Library configuration parameters for ATtiny20 ........................................................ 172Table 18 QTouch Library for ATtiny20 Configuration parameters ................................ 1737
- Page 1: Atmel QTouch LibraryUser GuideSuppo
- Page 4: 5.6.11.6.1 Debug Support in the sam
- Page 12 and 13: • ARM: refers to a device in the
- Page 14 and 15: Libraries for AVR microcontrollers
- Page 16 and 17: QMatrix charge transfer is labeled
- Page 18 and 19: Maximum ON DurationIf an object uni
- Page 20 and 21: Setting Variable name Data Type Uni
- Page 22 and 23: Guard ChannelGuard channel in Qtouc
- Page 24 and 25: 7 AKS groups are supported by the l
- Page 26 and 27: Data structuresThis section lists t
- Page 28 and 29: The signal gain for each sensor is
- Page 30 and 31: • This function can be called any
- Page 32 and 33: unit16_t qt_measure_sensors( uint16
- Page 34 and 35: Channel NumberingChannel numbering
- Page 36 and 37: qt_reset_sensing()qt_enable_xxx()qt
- Page 38 and 39: Port AAll SNSK pinsterminatedon thi
- Page 40 and 41: Example:Pins A0 ,A3 and A5 of PORT
- Page 42 and 43: Channel 47 N/A N/A N/A N/A N/A X7Y5
- Page 44 and 45: channel 0channel 1channel 2channel
- Page 46 and 47: Disabling and Enabling of Pull-up f
- Page 48 and 49: ‣ Recommended threshold should be
- Page 50 and 51: QMatrix acquisitionmethod libraries
- Page 52 and 53: definition is not required.QT_NUM_C
- Page 54 and 55: SNS1 and SNSK1 pins usethe same por
Table 13 <strong>QTouch</strong> <strong>Library</strong> for UC3L Configuration parameters ..................................... 1356.3.12 Example projects for <strong>QTouch</strong> <strong>Library</strong> for UC3L .................................................................... 1356.3.12.1 Example Project usage ................................................................................... 135Figure 46 GNU Example project usage with AVR32 Studio ......................................... 136Figure 47 IAR Example project usage with IAR Embedded Workbench for AVR32 .... 1366.3.12.2 QMatrix Example Project ................................................................................ 1366.3.12.3 <strong>QTouch</strong> Group A Example Project ................................................................. 1366.3.12.4 Autonomous <strong>QTouch</strong> Example Project .......................................................... 1376.3.13 Code and Data Memory requirements for UC3L .................................................................. 1376.3.13.1 QMatrix method memory requirement ............................................................ 137Table 14 Typical Code and Data memory for Standalone QMatrix operation ............. 1386.3.13.2 <strong>QTouch</strong> Group A/B method memory requirement .......................................... 138Table 15 Typical Code and Data memory for Standalone <strong>QTouch</strong> Group A/B operation...................................................................................................................................... 1386.3.13.3 Autonomous <strong>QTouch</strong> memory requirement ................................................... 138Table 16 Minimum Code and Data for Standalone Autonomous <strong>QTouch</strong> sensor ........ 1396.3.14 Public header files of <strong>QTouch</strong> <strong>Library</strong> for UC3L ................................................................... 1396.3.15 Type Definitions and enumerations used in the library ......................................................... 1396.3.15.1 Typedefs ......................................................................................................... 1396.3.15.1.1 touch_acq_status_t ...................................................................................... 1396.3.15.1.2 touch_qt_grp_t ............................................................................................. 1406.3.15.2 Enumerations .................................................................................................. 1406.3.15.2.1 touch_ret_t ................................................................................................... 1406.3.15.2.2 touch_lib_state_t .......................................................................................... 1416.3.15.2.3 touch_acq_mode_t ...................................................................................... 1416.3.15.2.4 sensor_type_t .............................................................................................. 1426.3.15.2.5 aks_group_t ................................................................................................. 1426.3.15.2.6 hysteresis_t .................................................................................................. 1426.3.15.2.7 recal_threshold_t ......................................................................................... 1436.3.15.2.8 resolution_t .................................................................................................. 1436.3.15.2.9 at_status_change_t ..................................................................................... 1436.3.15.2.10 x_pin_options_t .......................................................................................... 1446.3.15.2.11 y_pin_options_t .......................................................................................... 1446.3.15.2.12 qt_pin_options_t ......................................................................................... 1446.3.15.2.13 general_pin_options_t ................................................................................ 1446.3.16 Data structures ..................................................................................................................... 1456.3.16.1 sensor_t .......................................................................................................... 1456.3.16.2 touch_global_param_t .................................................................................... 1456.3.16.3 touch_filter_data_t .......................................................................................... 1456.3.16.4 touch_measure_data_t ................................................................................... 1466.3.16.5 touch_qm_param_t ......................................................................................... 1466.3.16.6 touch_at_param_t ........................................................................................... 1466.3.16.7 touch_qt_param_t ........................................................................................... 1476.3.16.8 touch_at_status .............................................................................................. 1486.3.16.9 touch_qm_dma_t ............................................................................................ 1486.3.16.10 touch_qm_pin_t .............................................................................................. 1486.3.16.11 touch_at_pin_t ................................................................................................ 1496.3.16.12 touch_qt_pin_t ................................................................................................ 1496.3.16.13 touch_qm_reg_t .............................................................................................. 1496.3.16.14 touch_at_reg_t ................................................................................................ 1506.3.16.15 touch_qt_reg_t ................................................................................................ 1516.3.16.16 touch_qm_config_t ......................................................................................... 1516.3.16.17 touch_at_config_t ........................................................................................... 1526.3.16.18 touch_qt_config_t ........................................................................................... 1526.3.16.19 touch_general_config_t .................................................................................. 1536.3.16.20 touch_config_t ................................................................................................ 15368207K-AT42-09/11