The Button 12x12 is a tactile push-button switch with a 12mm x 12mm footprint. It is widely used in electronic devices to provide user input, such as triggering actions, navigating menus, or controlling devices. This compact and durable switch is ideal for applications requiring a momentary contact mechanism, where the circuit is completed only while the button is pressed.
The Button 12x12 is designed for ease of use and compatibility with a wide range of circuits. Below are its key specifications:
Parameter | Value |
---|---|
Dimensions | 12mm x 12mm |
Actuation Type | Momentary |
Operating Voltage | 3.3V to 12V |
Maximum Current | 50mA |
Contact Resistance | ≤ 100mΩ |
Insulation Resistance | ≥ 100MΩ at 500V DC |
Operating Force | 160 ± 50gf |
Travel Distance | 0.25mm ± 0.1mm |
Operating Temperature | -25°C to +70°C |
Lifespan | 100,000 cycles (typical) |
The Button 12x12 has four pins, arranged in a square configuration. The pins are internally connected in pairs, as shown in the table below:
Pin Number | Description |
---|---|
Pin 1 | Connected to Pin 2 (internally) |
Pin 2 | Connected to Pin 1 (internally) |
Pin 3 | Connected to Pin 4 (internally) |
Pin 4 | Connected to Pin 3 (internally) |
Note: Pins 1 and 2 form one side of the switch, while Pins 3 and 4 form the other side. When the button is pressed, the two sides are electrically connected.
Below is an example of how to connect and use the Button 12x12 with an Arduino UNO:
// Button 12x12 Example Code for Arduino UNO
// This code reads the button state and turns on an LED when the button is pressed.
const int buttonPin = 2; // Pin connected to the button
const int ledPin = 13; // Pin connected to the onboard LED
void setup() {
pinMode(buttonPin, INPUT_PULLUP); // Set button pin as input with internal pull-up
pinMode(ledPin, OUTPUT); // Set LED pin as output
}
void loop() {
int buttonState = digitalRead(buttonPin); // Read the button state
if (buttonState == LOW) { // Button is pressed (LOW due to pull-up resistor)
digitalWrite(ledPin, HIGH); // Turn on the LED
} else {
digitalWrite(ledPin, LOW); // Turn off the LED
}
}
Button Not Responding:
Button Bounces (Multiple Triggers):
Button Stuck or Hard to Press:
Incorrect Pin Behavior:
Q: Can I use the Button 12x12 with a 5V circuit?
A: Yes, the Button 12x12 is compatible with 5V circuits, as its operating voltage range is 3.3V to 12V.
Q: Do I need an external pull-up resistor if using an Arduino?
A: No, you can use the Arduino's internal pull-up resistor by configuring the pin as INPUT_PULLUP
.
Q: How do I debounce the button in software?
A: You can use a delay or a state-change detection algorithm in your code to filter out bouncing signals.
Q: Can the Button 12x12 handle AC signals?
A: No, the Button 12x12 is designed for low-voltage DC applications only. Avoid using it with AC signals.
By following this documentation, you can effectively integrate the Button 12x12 into your projects and troubleshoot any issues that arise.