15% OFF on everything in the shop - the offer lasts until June 27, 12:00 CET. Discount applies at checkout
Product successfully added to your shopping cart
Quantity
Total
There are 0 items in your cart. There is 1 item in your cart.
Total products
Total shipping  To be determined
Total
Continue shopping Proceed to checkout

2x2 Key click

MIKROE-2152

24 g

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. The buttons can be independently read.

More details

$9.00

Quantity Unit Price
5 $8.55
20 $8.10

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. The buttons can be independently read.

Debounce circuit

In electronics, two metal components tend to bounce or create multiple signals when they are in contact with each other — like when you push a button — before they get to a stable state. You want a single contact to be recorded, but the microcontroller records this as if you pressed the button many times.

So debouncing is, as the name states, the removal of bounces or spikes of low and high voltages. Graphically speaking, you want a clean line, not spikes. A debounce circuit makes sure that there are no voltage changes on the output. Thanks to it, one button press is recorded as such.

Interrupt service routine

All four Schmitt-trigger outputs are connected to input pins of the logic OR gate 74HC32, whose output is directly connected to the INT pin on mikroBUS. This pin is used to signalize an interrupt to the MCU any time a button is pressed.

In this way, the MCU software can be implemented as a simple polling routine, without any delays programmed in the code (like it would be necessary if there wasn’t a hardware debouncing circuit present).

Thanks to the INT pin you can easily program a common interrupt service routine, in order to detect when a button is pressed (the state of the button changes from low to high logic level).

Key features

  • 74HC32 quad 2-input OR gate
    • High noise immunity
    • Low power dissipation
  • SN74HC14 Hex Schmitt-Trigger Inverter
    • Outputs Can Drive Up to 10 LSTTL Loads
    • Low Power Consumption, 20-μA Max ICC
  • 4 black PCB buttons onboard
  • Interface: PWM, INT, AN, RST, CS pins
  • Runs on either 3.3V or 5V power supply

Downloads

Type Keypad
Applications Human machine interface applications
On-board modules 74HC32 quad 2-input OR gate from NXP and the SN74HC14 Hex Schmitt-Trigger Inverter from Texas Instruments
Key Features 74HC32 quad 2-input OR gate, SN74HC14 Hex Schmitt-Trigger Inverte
Key Benefits 4 black PCB buttons onboard
Interface PWM
Power Supply 3.3V or 5V
Compatibility mikroBUS
Click board size M (42.9 x 25.4 mm)

Additional information

  • J2 is the interrupt enable pin (by default it is in the enable status).
  • J1 is the power selection pin.

Pinout diagram

This table shows how the pinout on 2x2 Key click corresponds to the pinout on the mikroBUS™ socket (the latter shown in the two middle columns).

Notes Pin Mikrobus logo.png
mikroBUStm
Pin Notes
When button T1 is pressed the pin is active T1-OUT 1 AN PWM 16 T4-OUT When button T4 is pressed the pin is active
When button T2 is pressed the pin is active T2-OUT 2 RST INT 15 TINT Interrupt pin that notifies the MCU that a button is pressed
When button T3 is pressed the pin is active T3-OUT 3 CS TX 14 NC Not connected
Not connected NC 4 SCK RX 13 NC Not connected
Not connected NC 5 MISO SCL 12 NC Not connected
Not connected NC 6 MOSI SDA 11 NC Not connected
Power supply +3.3V 7 3.3V 5V 10 +5V Power supply
Ground GND 8 GND GND 9 GND Ground

Programming

The demo initialises the TFT display and sets pins to operate in input direction. The main fucntion of the demo uses the polling method to check if inputs are on an active level. The TFT display shows the button state according to detect level.

 1 void main()
 2 {
 3     system_init();
 4 
 5     Draw_Taster(X1, Y1, RELEASED, "T1");
 6     Draw_Taster(X2, Y1, RELEASED, "T2");
 7     Draw_Taster(X1, Y2, RELEASED, "T3");
 8     Draw_Taster(X2, Y2, RELEASED, "T4");
 9 
10     while(1)
11     {
12         if(Taster_Pressed(TAST1, &t1_state))
13             Draw_Taster(X1, Y1, PRESSED, "T1");
14 
15         if(Taster_Released(TAST1, &t1_state))
16             Draw_Taster(X1, Y1, RELEASED, "T1");
17             
18         if(Taster_Pressed(TAST2, &t2_state))
19             Draw_Taster(X2, Y1, PRESSED, "T2");
20 
21         if(Taster_Released(TAST2, &t2_state))
22             Draw_Taster(X2, Y1, RELEASED, "T2");
23             
24         if(Taster_Pressed(TAST3, &t3_state))
25             Draw_Taster(X1, Y2, PRESSED, "T3");
26 
27         if(Taster_Released(TAST3, &t3_state))
28             Draw_Taster(X1, Y2, RELEASED, "T3");
29             
30         if(Taster_Pressed(TAST4, &t4_state))
31             Draw_Taster(X2, Y2, PRESSED, "T4");
32 
33         if(Taster_Released(TAST4, &t4_state))
34             Draw_Taster(X2, Y2, RELEASED, "T4");
35             
36         t1_state = TAST1;
37         t2_state = TAST2;
38         t3_state = TAST3;
39         t4_state = TAST4;
40             
41         Delay_ms(POLLING_PERIOD);
42     }
43 }

You Might Also Need

Products in the same category

Send a message

2x2 Key click

2x2 Key click

What can we do for you?