Debounce cho nút nhấn bằng tụ điện

Nội dung chính cần nắm

Xin chào, bài đăng của mình sẽ nói về kỹ thuật DEBOUNCE cho nút bấm. Đây là kỹ thuật rất đơn giản và hiệu quả.

DEBOUNCE LÀ GÌ

  • Button ( nút bấm) là 1 linh kiện cơ khí, sử dụng kim loại có tính đàn hồi cao để làm tiếp điểm, do đó khi các tiếp điểm tiếp xúc với nhau, sẽ xảy ra hiện tượng các tiếp điểm dao động trước khi ổn định. Tên khoa học của hiện tượng này là "SWITCH BOUNCE" laugh. SWITCH BOUNCE sẽ làm button bị on-off liên tục thêm vài lần mặc dù người sử dụng chỉ nhấn-thả nút có 1 lần và vấn đề này sẽ gây sai lệch giá trị logic (0 và 1) trong project.
  • "DEBOUNCE" chính là tên gọi của cách giải quyết hiện tượng "SWITCH BOUNCE". Có 2 cách để Debounce:
    1. Cách thứ 1 (Debouncing in Software): là lập trình để xác nhận sự kiện nhấn nút mà admin đã viết rất chi tiết. Các bạn xem tại link sau: http://arduino.vn/bai-viet/154-bai-9-nhan-giu-button-de-hoan-vi-trang-thai-cua-led-debounce
    2. Cách thứ 2 (Debouncing in Hardware): là thay đổi về phần cứng để debounce mà mình sẽ đề cập sau đây.

PHẦN CỨNG

LẮP MẠCH

 

GIẢI THÍCH

  • Chân digital để đọc giá trị nút nhấn ở trên là pin 8.
  • Trong mạch trên mình sử dụng điện trở kéo xuống (pull-down resistor), gọi là điện trở kéo xuống vì nó kéo điện áp tại chân digital về LOW ( 0 ) khi không nhấn nút. 
  • Khác biệt duy nhất là mình mắc thêm 1 tụ 100nF song song với cái điện trở 10k. Khi nút được nhấn, điện áp tại chân digital sẽ được kéo lên HIGH ( 1 ), khi nút bấm được thả, chân digital sẽ được kéo về LOW thông qua điện trở 10k, và tụ điện 100nF sẽ tạo ra 1 delay nhỏ, giúp loại bỏ hầu hết các sai sót được tạo ra do hiện tượng "SWITCH BOUNCE."

KẾT LUẬN

Khi đã lắp thêm tụ điện, bạn có thể lập trình đọc nút bấm 1 cách bình thường mà không lo ngại sai sót do "SWITCH BOUNCE" nữa.

Chúc các bạn vui vẻ.

lên
19 thành viên đã đánh giá bài viết này hữu ích.
Chuyên mục: 
Các dự án được truyền cảm hứng

Bộ điều khiển PID - ứng dụng phần 2 - xe dò line dùng thuật toán PID

Tiép nối bài viết về xe dò line cảm ơn Đỗ Hữu Toàn đã viết hộ mình phần 4. hôm nay mình sẽ làm cho chiếc xe dò line đi mượt và có hồn hơn 

lên
34 thành viên đã đánh giá bài viết này hữu ích.
Các bài viết cùng tác giả

Truyền tín hiệu với module radio frequence 433Mhz

Xin chào các bạn, bài viết hôm nay của mình sẽ giới thiệu về cách truyền dữ liệu không dây bằng modules RF (radio frequence) 433Mhz.

lên
25 thành viên đã đánh giá bài viết này hữu ích.

Điều khiển tốc độ Motor DC

Chào các bạn, bài viết này sẽ hướng dẫn các bạn cách ứng dụng Transistor Diode để điều khiển động cơ DC, rơ le.

lên
34 thành viên đã đánh giá bài viết này hữu ích.