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 .
Part | Datasheet |
---|---|
![]() |
MIKROE-2152 (pdf) |
PDF Datasheet Preview |
---|
2x2 Key click 2x2 Key click 2x2 Key click 2x2 Key click IC/Module SN74HC14 datasheet [1] 74HC32 datasheet [2] Interface AN, RST, CS, PWM, INT Power supply 3.3V or 5V Product page 2x2 Key click [3] Schematic 2x2 Key click schematic [4] 2x2 Key click has a 4 PCB button keypad. It carries the SN74HC14 Hex Schmitt-Trigger Inverter from Texas Instruments and 74HC32 quad 2-input OR gate from NXP. The click allows multiple key presses and is designed to use either 3.3V or 5V power supply. The silkscreen markings on the click let you know which button is which. The buttons that can be independently read. Features and usage notes The 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. 2x2 Key click 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-uA Max ICC • 4 black PCB buttons onboard • Interface PWM, INT, AN, RST, CS pins • Runs on either 3.3V or 5V power supply 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 When button T1 is pressed the pin is active When button T2 is pressed the pin is active When button T3 is pressed the pin is active Power supply Ground Notes T1-OUT 1 AN mikroBUStm X PWM 16 T4-OUT When button T4 is pressed the pin is active T2-OUT 2 RST T3-OUT 3 CS INT 15 TINT TX 14 NC Interrupt pin that notifies the MCU that a button is pressed NC +3.3V GND 4 SCK 5 MISO 6 MOSI 7 +3.3V 8 GND RX 13 NC SCL 12 NC SDA 11 NC +5V 10 +5V GND 9 GND Power supply Ground 2x2 Key click 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. void main system_init ; Draw_Taster X1, Y1, RELEASED, "T1" Draw_Taster X2, Y1, RELEASED, "T2" Draw_Taster X1, Y2, RELEASED, "T3" Draw_Taster X2, Y2, RELEASED, "T4" ; while 1 if Taster_Pressed TAST1, &t1_state Draw_Taster X1, Y1, PRESSED, "T1" ; if Taster_Released TAST1, &t1_state Draw_Taster X1, Y1, RELEASED, "T1" ; |
Notice: we do not provide any warranties that information, datasheets, application notes, circuit diagrams, or software stored on this website are up-to-date or error free. The archived MIKROE-2152 Datasheet file may be downloaded here without warranties.