Lập trình Arduino không cần viết code - Phần 5: Điều khiển led với nút nhấn kiểu 1

Đây là phần 5 của chuỗi bài viết "Lập trình Arduino không cần viết code"

- Xem lại phần 4 tại đây

Xin chào các bạn! Hôm nay chúng ta sẽ cùng tìm hiểu về cách điều khiển led bằng một cái nút nhấn (Loại đàn hồi nha).

Mục tiêu: Hướng dẫn các bạn sử dụng nút nhấn(Button) bằng kiểu pin INPUT_PULLUP để điều khiển.

INPUT_PULLUP là gì?

Đây là một kiểu pin dùng trong hàm pinMode, dùng để đọc điện áp tại pin. Khi một pin được khai báo là kiểu này thì: nếu như pin này không được nối thì sẽ mang điện áp cao và khi nó được nối với một điện thế nào đó thì pin này sẽ mang điện thế đó (Nối với cực âm thì sẽ mang điện thế âm, nối cực dương thì mang điện thế dương).

Thực hành

Chuẩn bị

Lắp như sơ đồ sau, mình quên mắc điện trở cho led rùi, sorry,để đảm bảo an toàn bạn nên mắc nối tiếp điện trở từ 1K -> 10K ôm với nút nhấn.

Lập trình bằng mBlock

Nhớ chọn chế độ Arduino Mode nha. Sau đó lập trình theo sơ đồ sau (Không hiểu thì xem lại phần 3,4 nha)

Vì mBlock không có sẵn chế độ INPUT_PULLUP nên cần chỉnh code bằng tay một tí. Chọn Edit with Arduino IDE.

Trong hàm setup, tại dòng pinMode(7,INPUT), thay chữ INPUT thành INPUT_PULLUP.

Xong, up code (Up bằng arduino IDE nha, chứ không phải bằng mBlock).

Lập trình bằng Arduino IDE

Phần cứng thì như trên, phần code thì như dưới :))

void setup(){
    pinMode(8,INPUT_PULLUP);
    pinMode(7,OUTPUT);
}

void loop(){
    
    if(digitalRead(8)==0){
        digitalWrite(7,1);
    }else{
        digitalWrite(7,0);
    }
}

Xong, cho lên dĩa luôn.

Kết luận

Như vậy là chúng ta vừa tìm hiểu xong cách điều khiển led bằng nút nhấn với kiểu pin INPUT_PULLUP. Tuy nhiên nó có 1 điểm yếu đó là phải giữ thì mới sáng led. Ở những phần sau, mình sẽ hướng dẫn cách chỉ cần nhấn thả 1 lần là sáng và nhấn thả 1 lần nữa để tắt. Chúc các bạn thành công. Xin cảm ơn

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

Select any filter and click on Apply to see results

Các bài viết cùng tác giả

Chạy hàm song song với delay

Xin chào các bạn! Trong cuộc sống, đôi khi chúng ta đang làm một việc gì đó và sẽ có lúc chúng ta phải đợi một khoảng thời gian rồi mới làm tiếp công việc ấy, và khi ấy ta sẽ tận dụng khoảng thời gian ấy để làm một việc khác. Vậy trong arduino ta có thể làm tương tự không, trong khi ta cho chương trình delay thì ta lại cho nó thực hiện một việc gì đó. Đáp án là được, bài viết này sẽ chia sẻ thủ thuật khá hay này.

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

Giới thiệu board Romeo BLE

Xin chào mọi người! Sau đây mình xin giới thiệu với các bạn một board cực kì bá đạo cho các dự án xe robot. Đó là board Romeo BLE. Nó bá đạo về mọi mặt từ phần cấu hình đến phần lập trình và tất nhiên là cả giá @@.

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