TOP Contributors

  1. MIKROE (2782 codes)
  2. Alcides Ramos (377 codes)
  3. Shawon Shahryiar (307 codes)
  4. jm_palomino (118 codes)
  5. Bugz Bensce (97 codes)
  6. S P (73 codes)
  7. dany (71 codes)
  8. MikroBUS.NET Team (35 codes)
  9. NART SCHINACKOW (34 codes)
  10. Armstrong Subero (27 codes)

Most Downloaded

  1. Timer Calculator (139596 times)
  2. FAT32 Library (72044 times)
  3. Network Ethernet Library (57270 times)
  4. USB Device Library (47636 times)
  5. Network WiFi Library (43232 times)
  6. FT800 Library (42570 times)
  7. GSM click (29933 times)
  8. mikroSDK (28314 times)
  9. PID Library (26939 times)
  10. microSD click (26312 times)
Libstock prefers package manager

Package Manager

We strongly encourage users to use Package manager for sharing their code on Libstock website, because it boosts your efficiency and leaves the end user with no room for error. [more info]

< Back
mikroSDK Library

TouchKey 2 click

Rating:

1

Author: MIKROE

Last Updated: 2019-05-17

Package Version: 1.0.0.2

mikroSDK Library: 1.0.0.0

Category: Capacitive

Downloaded: 4653 times

Not followed.

License: MIT license  

TouchKey 2 click has four capacitive pads powered by ATtiny817 which has an integrated touch QTouch® controller. The click is designed to run on a 3.3V power supply. The four LEDs onboard the click indicate the Key (Pad) is pressed. TouchKey 2 click communicates with the target microcontroller over UART and SPI interface.

No Abuse Reported

Do you want to subscribe in order to receive notifications regarding "TouchKey 2 click" changes.

Do you want to unsubscribe in order to stop receiving notifications regarding "TouchKey 2 click" changes.

Do you want to report abuse regarding "TouchKey 2 click".

  • mikroSDK Library 2.0.0.0
  • Comments (0)
DOWNLOAD LINK RELATED COMPILER CONTAINS
mikroBasic PRO for ARM
  • lib
  • src
  • exa
  • hlp
  • hex
  • sch
  • pcb
  • doc
mikroBasic PRO for AVR
  • lib
  • src
  • exa
  • hlp
  • hex
  • sch
  • pcb
  • doc
mikroBasic PRO for dsPIC30/33 & PIC24
  • lib
  • src
  • exa
  • hlp
  • hex
  • sch
  • pcb
  • doc
mikroBasic PRO for FT90x
  • lib
  • src
  • exa
  • hlp
  • hex
  • sch
  • pcb
  • doc
mikroBasic PRO for PIC
  • lib
  • src
  • exa
  • hlp
  • hex
  • sch
  • pcb
  • doc
mikroBasic PRO for PIC32
  • lib
  • src
  • exa
  • hlp
  • hex
  • sch
  • pcb
  • doc
mikroC PRO for ARM
  • lib
  • src
  • exa
  • hlp
  • hex
  • sch
  • pcb
  • doc
mikroC PRO for AVR
  • lib
  • src
  • exa
  • hlp
  • hex
  • sch
  • pcb
  • doc
mikroC PRO for dsPIC30/33 & PIC24
  • lib
  • src
  • exa
  • hlp
  • hex
  • sch
  • pcb
  • doc
mikroC PRO for FT90x
  • lib
  • src
  • exa
  • hlp
  • hex
  • sch
  • pcb
  • doc
mikroC PRO for PIC
  • lib
  • src
  • exa
  • hlp
  • hex
  • sch
  • pcb
  • doc
mikroC PRO for PIC32
  • lib
  • src
  • exa
  • hlp
  • hex
  • sch
  • pcb
  • doc
mikroPascal PRO for ARM
  • lib
  • src
  • exa
  • hlp
  • hex
  • sch
  • pcb
  • doc
mikroPascal PRO for AVR
  • lib
  • src
  • exa
  • hlp
  • hex
  • sch
  • pcb
  • doc
mikroPascal PRO for dsPIC30/33 & PIC24
  • lib
  • src
  • exa
  • hlp
  • hex
  • sch
  • pcb
  • doc
mikroPascal PRO for FT90x
  • lib
  • src
  • exa
  • hlp
  • hex
  • sch
  • pcb
  • doc
mikroPascal PRO for PIC
  • lib
  • src
  • exa
  • hlp
  • hex
  • sch
  • pcb
  • doc
mikroPascal PRO for PIC32
  • lib
  • src
  • exa
  • hlp
  • hex
  • sch
  • pcb
  • doc

mikroSDK Library Blog

TouchKey 2 click

TouchKey 2 click

Front and back view of the TouchKey 2 click board.

View full image

Library Description

Defines and initializes driver's UART bus. Declares and defines driver's functions for sending and receiving data bytes, also for checking if data byte ready for reading. It also offers set, clear reset pin and target reset functions.

Key functions:

  • uint8_t touchkey2_readByte() - Read received byte.
  • uint8_t touchkey2_byteReady() - Checks is there a new byte received.
  • void touchkey2_targetReset() - Function is used to reset the device.

Examples description

The application is composed of the three sections :

  • System Initialization - Initializes UART and LOG structures and sets CS as output.
  • Application Initialization - Initalizes UART driver and makes an initial log.
  • Application Task - (code snippet) Checks if new data byte have received in rx buffer (ready for reading), and if ready than reads one byte from rx buffer, that show if and what key is pressed.
void applicationTask( )
{
    char tmp;
    uint8_t rdyFlag;

    rdyFlag = touchkey2_byteReady();

    if (1 == rdyFlag)
    {
    tmp = touchkey2_readByte();
        if( tmp == 0x00 )
        {
            mikrobus_logWrite( "   Key released   ", _LOG_LINE );
            mikrobus_logWrite( "-------------------", _LOG_LINE );
        }
        else if( tmp == 0x01 )
        {
            mikrobus_logWrite( "   Key A pressed", _LOG_LINE );
            mikrobus_logWrite( "-------------------", _LOG_LINE );
        }
        else if( tmp == 0x02 )
        {
            mikrobus_logWrite( "   Key B pressed", _LOG_LINE );
            mikrobus_logWrite( "-------------------", _LOG_LINE );
        }
        else if( tmp == 0x04 )
        {
            mikrobus_logWrite( "   Key C pressed", _LOG_LINE );
            mikrobus_logWrite( "-------------------", _LOG_LINE );
        }
        else if( tmp == 0x08 )
        {
            mikrobus_logWrite( "   Key D pressed", _LOG_LINE );
            mikrobus_logWrite( "-------------------", _LOG_LINE );
        }
        else
        {
            mikrobus_logWrite( "   Error!!!   ", _LOG_LINE );
            touchkey2_targetReset();
}

Other mikroE Libraries used in the example:

  • UART

Additional notes and informations

Depending on the development board you are using, you may need USB UART clickUSB UART 2 click or RS232 click to connect to your PC, for development systems with no UART to USB interface available on the board. The terminal available in all MikroElektronika compilers, or any other terminal application of your choice, can be used to read the message.

ALSO FROM THIS AUTHOR

GSM/GNSS 2 Click

0

GSM/GNSS 2 Click combines GPS/GLONASS location tracking with GSM module capability for mobile communication. The Click carries SIM868 quad-band GSM/GPRS module.

[Learn More]

LED Driver 12 Click

0

LED Driver 12 Click is a compact add-on board that simplifies the control of multiple LEDs. This board features the PCA9532, a 16-bit I2C-configurable I/O expander optimized for dimming LEDs in 256 discrete Red/Green/Blue (RGB) steps from NXP Semiconductors. The PCA9532 offers high efficiency, supporting up to 16 LED channels and delivering a maximum of up to 25mA of LED current per channel. It contains an internal oscillator with two user-programmable blink rates and duty cycles coupled to the output PWM. Any bits not used for controlling the LEDs can be used for GPIO expansion, which provides a simple solution when additional I/O is needed for some sensors, push-buttons, or alarm monitoring. This Click board™ is suitable for color mixing and backlight application for amusement products, LED status signalization, home automation projects, and many more.

[Learn More]

Proximity 19 Click

0

Proximity 19 Click is a compact add-on board designed for precise proximity sensing in various applications. This board features the RPR-0720, a digital optical proximity sensor from ROHM Semiconductor. The RPR-0720 integrates an infrared VCSEL (IrVCSEL) and an IC with an I2C interface, featuring a detection range adjustable from 1 to 15mm and an ambient light canceling function. The board uses a 2-wire I2C interface for communication, supporting up to 400kHz frequency clock, allowing control over sensor functions such as operating mode, interrupt system, and offset/threshold adjustments.

[Learn More]