Menu
CoddyTech

Đếm số lần nhấn nút

Thuộc phần Đầu vào trong hành trình Arduino của Coddy. Bài học 5 trên 22.

Cạnh từ bài học trước có thể kích hoạt bất cứ việc gì cần xảy ra mỗi lần nhấn. Ở đây, nó tăng bộ đếm lên một với ++ trong bài Đếm tăng:

int presses = 0;

void loop() {
  int reading = digitalRead(2);
  if (reading == LOW && lastReading == HIGH) {
    presses++;
    Serial.println(presses);
  }
  lastReading = reading;
}

presses nằm phía trên setup(), giống như lastReading, nên nó giữ nguyên giá trị giữa các lần chạy loop().

Lệnh in ra nằm bên trong if, nên chỉ có số xuất hiện khi số đếm thay đổi: 1, 2, 3. Nếu nằm ngoài if, nó sẽ in ra cùng một số đếm hàng nghìn lần mỗi giây.

challenge icon

Thử thách

Dễ

Nút bấm nằm ở chân 2 (INPUT_PULLUP). Hãy đếm số lần nhấn:

  • lưu số lần nhấn trong presses, được khai báo phía trên setup()
  • khi nút được nhấn xuống, tăng số đếm thêm một và in số đếm ra

Nhấn Chạy, nhấn nút vài lần và theo dõi màn hình Serial, sau đó nhấn Kiểm tra.

Tự làm thử

const int buttonPin = 2;

int lastReading = HIGH;

void setup() {
  pinMode(buttonPin, INPUT_PULLUP);
  Serial.begin(9600);
}

void loop() {
  int reading = digitalRead(buttonPin);
  // Khi nút được nhấn, đếm số lần nhấn và in ra số lần đó
  lastReading = reading;
}
quiz iconTự kiểm tra

Bài học này có một bài trắc nghiệm ngắn. Bắt đầu bài học để trả lời và theo dõi tiến độ.

Tất cả bài học trong Đầu vào

Tự luyện tập: Playground Arduino