Trong những thiết kế sử dụng vi điều khiển (mạch số), điện trở kéo lên / kéo xuống là thành phần đóng vai trò khá quan trọng. Mới tiếp cận vi điều khiển ai cũng sẽ phải có lần thắc mắc về tác dụng của nó.
Như hình trên, nếu nút bấm được nhấn xuống thì chân input sẽ được nối mass và vi điều khiển sẽ nhận mức 0. Nhưng nếu thả nút bấm ra thì chân input lúc này sẽ ở tình trạng "thả nổi" không xác định được giá trị. Nếu tình cờ có một nhiễu nào đó tác động làm điện áp này rơi vào vùng logic 0 rồi lại về logic 1 thì chẳng khác gì nút bấm đã được nhấn (không mong muốn!!!)

Vì vậy để xác định rõ ràng mức logic, chân input này cần một điện áp tham chiếu 5v khi không nhấn nút, khi nhấn nút thì điện áp là 0v, giải pháp là:
Bây giờ khi không nhấn nút thì điện áp input là 5v và khi nhấn nút thì...ngắn mạch!!!!
Điều này không ổn, vì thế chúng ta phải đặt một điện trở vào giữa mass, nút bấm, nguồn.
Giá trị điện trở này bằng bao nhiêu thì hợp lý?
Dòng cho phép trên mỗi chân I/O của vi điều khiển thường chỉ nằm trong khoảng 10-20mA

I = V / R
I = 5v / 10000 Ohms
I = 0.0005A (0.5mA)

Như vậy khi nhấn nút thì dòng 0.5mA này sẽ đi xuống mass và chân input sẽ được nối mass, đảm bảo an toàn cho vi điều khiển.
Giá trị điện trở này trong các mạch số thường là 4k7 hoặc 10k.
Tương tự điện trở kéo lên còn có cách mắc điện trở kéo xuống như sau:
Tóm lại, điện trở kéo lên (điện trở nối với nguồn) hay điện trở kéo xuống (điện trở nối mass) có tác dụng loại bỏ hiện tượng trôi nổi điện áp ở ngõ vào. Giá trị điện trở ở đây nhằm tránh hiện tượng ngắn mạch và đảm bảo an toàn cho vi điều khiển.

Nguồn: seattlerobotics.org