Arduino Giao Tiếp Với Button (phần 3):Một Nút Nhấn điều Khiển 2 Led ...

T-2 GROUP
Arduino giao tiếp với Button (phần 3):Một nút nhấn điều khiển 2 led đơn theo từng chế độ Arduino giao tiếp với Button (phần 3):Một nút nhấn điều khiển 2 led đơn theo từng chế độ thitech Thứ Tư, 23 tháng 5, 2018 Arduino , button , cơ bản , led đơn Edit

Nội dung

  • Sau đây là ví dụ về điều khiển 2 led đơn bằng 1 nút nhấn.
  • Ở chế độ này thì gồm có 4 thao tác khác nhau. Ban đầu ở chế độ 1 chưa nhấn gì thì cả 2 led tắt, ở chế độ 2 khi nhấn nút led 1 sáng/led 2 tắt, ở chế độ 3 khi nhấn nút led 1 tắt/led 2 sáng, và ở chế độ cuối khi nhấn nút thì cả 2 led đều sáng rồi cứ tiếp tục 4 thao tác lặp đi lặp lại.

Về phần cứng

  1. Board mạch Arduino
  2. Nút nhấn (1 cái)
  3. Điện trở 10k ohm (1 cái) và 220 ohm(2 cái)
  4. Led đơn(2 cái)

Sơ đồ lặp mạch

Lập trình

int switch = 5; // nút nhấn được kết nối với pin 5 int led1 = 8; int led2 = 9; int val; // đọc trạng thái pin int val2; // đọc trạng thái bị trì hoãn int buttonState; // giữ trạng thái nút int mode = 0; // led sẽ sáng ở chế độ nào void setup () { pinMode(switch, INPUT); // đặt nút nhấn làm ngỏ vào pinMode(led1, OUTPUT); pinMode(led2, OUTPUT); buttonState = digitalRead(switch); // đọc trạng thái ban đầu } void loop () { val = digitalRead(switch); // đọc giá trị đầu vào và lưu trữ nó trong val delay(10); // 10 mili giây là thời gian chờ val2 = digitalRead(switch); // đọc lại đầu vào để kiểm tra xem có bị trả lại không if (val == val2) // make sure we got 2 consistant readings! { if (val != buttonState) // trạng thái nút đã thay đổi! { if (val == LOW)// kiểm tra xem nút có được nhấn hay không { if (Mode == 0) { Mode = 1; } else { if (Mode == 1) { Mode = 2; } else { if (Mode == 2) { Mode = 3; } else { if (Mode == 3) { Mode = 0; } } } } } } buttonState = val; // lưu trạng thái mới trong biến của chúng tôi } //Thiết lập các chế độ if (Mode == 0) { digitalWrite(led1, LOW); digitalWrite(led2, LOW); } if (Mode == 1) { digitalWrite(led1, HIGH); digitalWrite(led2, LOW); } if (Mode == 2) { digitalWrite(led1, LOW); digitalWrite(led2, HIGH); } if (Mode == 3) { digitalWrite(led1, HIGH); digitalWrite(led2, HIGH); } }

Mô phỏng

Gồm có 4 chế độ xác lập trong lập trình:
  • Ở chế độ ban đầu thì cả 2 led đều ở mức thấp nên cả 2 đều tắt.
Chế độ 1
  • Ở chế độ 2, khi nhấn nút led 1 sáng, led 2 tắt.
Chế độ 2
  • Ở chế độ 3, khi nhấn nút led 1 tắt, led 2 sáng.
Chế độ 3
  • Ở chế độ cuối, khi nhấn nút thì cả 2 led đều ở mức cao nên cả 2 đều sáng.

Chúc các bạn thành công ở bài này!

Share This:

  • Facebook
  • Twitter
  • Google Plus
  • Pinterest
  • Linkedin
  • 6 nhận xét

    1. tháilúc 01:58 10 tháng 4, 2019

      bạn hướng dẩn minh bài dồng hồ bấm giây dùng 74hc51 đi

      Trả lờiXóaTrả lời
        Trả lời
    2. Unknownlúc 11:15 1 tháng 6, 2019

      Ad xem hộ copy về báo lỗi thiếu điều kiện trước '{' là sao ak

      Trả lờiXóaTrả lời
        Trả lời
    3. Unknownlúc 11:18 1 tháng 6, 2019

      Voi setup();{

      Trả lờiXóaTrả lời
        Trả lời
    4. Unknownlúc 19:42 4 tháng 7, 2019

      code sai có nhập đc đâu ad ??

      Trả lờiXóaTrả lời
        Trả lời
    5. Unknownlúc 00:37 20 tháng 10, 2021

      Code đúng rồi chỉ bị lỗi trùng từ khoá swicht với bị sai tên biến mode khi khai còn khi dùng lại thành Mode viết hoa.sửa lại là đc

      Trả lờiXóaTrả lời
        Trả lời
    6. Unknownlúc 03:55 23 tháng 12, 2021

      code này nên sửa lại như thế nào mới đúng ạ?

      Trả lờiXóaTrả lời
        Trả lời
    Thêm nhận xétTải thêm... ‹‹ Bài đăng Mới hơn Bài đăng Cũ hơn ›› Đăng ký: Đăng Nhận xét ( Atom )

    Most Popular

    • Arduino giao tiếp với Button (phần 3):Một nút nhấn điều khiển 2 led đơn theo từng chế độ Arduino giao tiếp với Button (phần 3):Một nút nhấn điều khiển 2 led đơn theo từng chế độ Nội dung Sau đây là ví dụ về điều khiển 2 led đơn bằng 1 nút nhấn. Ở chế độ này thì gồm có 4 thao tác khác nhau. ...
    • Arduino - Giao tiếp với Button (Phần 1): Bật tắt led bằng 2 nút nhấn Arduino - Giao tiếp với Button (Phần 1): Bật tắt led bằng 2 nút nhấn Nội dung    Xác định trạng thái của nút nhấn từ đó chúng ta có thể dùng các button để điều khiển bật tắt đèn led Từ...
    • Arduino - Điều khiển led đơn qua giao tiếp serial giữa Arduino và PC . Arduino - Điều khiển led đơn qua giao tiếp serial giữa Arduino và PC . Thư viện Serial được dùng trong việc giao tiếp giữa các board mạch với nhau (hoặc board mạch với máy tính hoặc với các thiết bị khác). Tất ...

    Nhãn

    led đơn (9) Arduino (8) button (6) cơ bản (6) Pic16f887 (5) U8G2 (2) Chớp tắt LED đơn (1) GLCD (1) LCD (1) Serial (1) oled (1) trái tim (1)

    Tìm kiếm theo ngày đăng

    Tìm kiếm theo ngày đăng thg 7 30 (2) thg 6 08 (2) thg 5 23 (1) thg 5 22 (6) thg 5 21 (2) thg 5 20 (1) thg 5 17 (1)

    Giới thiệu về tôi

    thitech Xem hồ sơ hoàn chỉnh của tôi

    Báo cáo vi phạm

    Từ khóa » Giữ Trạng Thái Nút Nhấn Arduino