TOP Contributors

  1. MIKROE (2784 codes)
  2. Alcides Ramos (393 codes)
  3. Shawon Shahryiar (307 codes)
  4. jm_palomino (123 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 (140561 times)
  2. FAT32 Library (73061 times)
  3. Network Ethernet Library (58070 times)
  4. USB Device Library (48249 times)
  5. Network WiFi Library (43842 times)
  6. FT800 Library (43326 times)
  7. GSM click (30367 times)
  8. mikroSDK (29002 times)
  9. PID Library (27120 times)
  10. microSD click (26742 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

2x2 Key click

Rating:

0

Author: MIKROE

Last Updated: 2019-03-08

Package Version: 1.0.0.1

mikroSDK Library: 1.0.0.0

Category: Pushbutton/Switches

Downloaded: 4218 times

Not followed.

License: MIT license  

2x2 Key click has a 4 button keypad. The click allows multiple key presses and has a debounce circuit composed of 74HC32 quad 2-input OR gate from NXP and the SN74HC14 Hex Schmitt-Trigger Inverter from Texas Instruments. 2x2 Key click is designed to use either 3.3V or 5V power supply.

No Abuse Reported

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

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

Do you want to report abuse regarding "2x2 Key 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

2x2 Key click

2x2 Key click

Front and back view of the 2x2 Key click board.

View full image

Library Description

The library covers all the necessary functions to control 2x2 Key click board. 2x2 Key click
communicates with the target board through the AN, RST, CS, PWM and INT line. This library 
offers functions for detecting the states of any and every of the four keys on this click board.

Key functions:

  • uint8_t c2x2key_t1State(); Function gets state of AN pin on 2X2_Key Click board.
  • uint8_t c2x2key_t2State();Function gets state of RST pin on 2X2_Key Click board.
  • uint8_t c2x2key_t3State(); - Function gets state of CS pin on 2X2_Key Click board.

Examples description

The application is composed of three sections:

  • System Initialization - Initializes GPIO and LOG structures, sets AN, RST, CS, PWM and INT pins as input.
  • Application Initialization -  Initialization driver enables GPIO and also starts write log.
  • Application Task - (code snippet) This example demonstrates the use of 2X2 Key Click board.
         Detects whether any of the keys is pressed. Results are being sent to the Usart Terminal,
         where you can track changes.
void applicationTask() 
{
    t1State = c2x2key_t1State();

    if ( t1State == 1 && t1StateOld == 0 )    
    {
        mikrobus_logWrite( "  Key 1 pressed  ", _LOG_LINE );
        mikrobus_logWrite( "- - - - - - - - -", _LOG_LINE );
        t1StateOld = 1;
    }
       if ( t1State == 0 && t1StateOld == 1 )
    {
        t1StateOld = 0;
    }

    t2State = c2x2key_t2State();

    if ( t2State == 1 && t2StateOld == 0 )
    {
        mikrobus_logWrite( "  Key 2 pressed  ", _LOG_LINE );
        mikrobus_logWrite( "- - - - - - - - -", _LOG_LINE );
        t2StateOld = 1;
    }

    if ( t2State == 0 && t2StateOld == 1 )
    {
        t2StateOld = 0;
    }
    t3State = c2x2key_t3State();

    if ( t3State == 1 && t3StateOld == 0 )
    {
        mikrobus_logWrite( "  Key 3 pressed  ", _LOG_LINE );
        mikrobus_logWrite( "- - - - - - - - -", _LOG_LINE );
        t3StateOld = 1;
    if ( t3State == 0 && t3StateOld == 1 )
    {
        t3StateOld = 0;
    }

    t4State = c2x2key_t4State();

    if ( t4State == 1 && t4StateOld == 0 )
    {
        mikrobus_logWrite( "  Key 4 pressed  ", _LOG_LINE );
        mikrobus_logWrite( "- - - - - - - - -", _LOG_LINE );
        t4StateOld = 1;
    }
    if ( t4State == 0 && t4StateOld == 1 )
    {
        t4StateOld = 0;
    }
}   

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

Magneto click

1

Magneto click carries an AS5048A contactless magnetic angle position sensor. The sensing circuitry relies on the Hall Effect to detect the vector of a nearby magnetic field in a 360º two-dimensional plane parallel to the surface of the chip. AS5048A delivers precise angle measurements down to 0.05º in 14-bit resolution.

[Learn More]

LED Driver 19 Click

0

LED Driver 19 Click is a compact add-on board that simplifies the control of multiple LEDs. This board features the LED1202, a 12-channel low quiescent current LED driver from STMicroelectronics. It can output 5V, and each channel can provide up to 20mA with a headroom voltage of typically 350mW.

[Learn More]

Ambient 6 click

5

Ambient 6 click can sense the intensity of the ambient light, providing the measurement data in digital format over the I2C interface. It utilizes the VEML7700, a miniature ambient light sensor (ALS) with I2C interface.

[Learn More]