Sơ đồ kết nối

Sơ đồ đấu nối nút nhấn (push button)

Nút nhấn 4 chân: cách chống trôi tín hiệu (floating), dùng INPUT_PULLUP, xử lý dội phím.

Sơ đồ đấu nối nút nhấn (push button)

Cấu tạo

  • Nút nhấn tactile 4 chân: thực chất chỉ có 2 cặp chân nối chung nhau theo từng cặp chéo — cần đo/thử để xác định đúng cặp chân thông với nhau khi nhấn

Vấn đề chân trôi (floating input)

  • Nếu chỉ nối 1 chân vào digital pin mà không có điện trở kéo, khi không nhấn chân sẽ ở trạng thái không xác định (nhiễu điện từ môi trường) → đọc giá trị ngẫu nhiên

Cách đấu dùng điện trở kéo lên nội (khuyến nghị — không cần điện trở rời)

  • 1 chân nút → digital pin, khai báo pinMode(pin, INPUT_PULLUP)
  • Chân còn lại → GND
  • Khi không nhấn: đọc HIGH (được kéo lên nội bộ); khi nhấn: mạch nối xuống GND, đọc LOW — lưu ý logic bị đảo ngược (active-LOW)

Cách đấu dùng điện trở kéo xuống rời (nếu không dùng INPUT_PULLUP)

  • 1 chân nút → 5V, 1 chân nút → digital pin, kèm điện trở ~10kΩ từ digital pin xuống GND
  • Khi không nhấn: đọc LOW; khi nhấn: đọc HIGH (logic thuận, active-HIGH)

Dội phím (debounce)

  • Tiếp điểm cơ khí rung nhiều lần rất nhanh khi nhấn/nhả — nếu đọc liên tục có thể ghi nhận nhầm nhiều lần nhấn
  • Cách xử lý đơn giản: thêm delay ngắn (~20–50ms) sau khi phát hiện đổi trạng thái, hoặc dùng thư viện debounce (Bounce2)