/ / Cách nối dây và lập trình nhiều nút đẩy với Arduino

Cách nối dây và lập trình nhiều nút đẩy với Arduino

Các nút nhấn rất phổ biến trong không gian DIY Arduino, với vô số dự án trên web dựa vào các công tắc nhỏ này để kích hoạt mã của chúng. Nhưng chính xác thì làm cách nào để bạn có thể kết nối và lập trình nhiều hơn một nút nhấn để hoạt động với Arduino của mình? Hãy cùng tìm hiểu.

Chúng tôi đang làm gì?

Đây là một dự án đơn giản được thiết kế để giúp bạn bắt đầu với các bản dựng Arduino phức tạp hơn trong tương lai. Chúng tôi sẽ không giao cho các nút của mình một công việc, nhưng điều này có nghĩa là bạn có thể chọn những gì bạn muốn chúng làm cho mình bằng cách sử dụng một trong các hướng dẫn DIY Arduino tiện dụng khác của chúng tôi.

Bạn cần gì?


arduino những gì bạn cần

Bạn chỉ cần một số ít các bộ phận để hoàn thành dự án này, nhiều bộ phận trong số đó bạn đã có trong bộ sưu tập các bộ phận tự làm của mình.

  • 4 x công tắc nút nhấn
  • Điện trở 4 x 10kΩ
  • 1 x Bất kỳ loại bảng Arduino nào (chúng tôi đang sử dụng Leonardo)
  • Dây bọc PVC / silicone

Kết nối nhiều nút đẩy với Arduino


sơ đồ nhiều nút nhấn của arduino

Hệ thống dây cho dự án này rất đơn giản, nhưng bạn phải cẩn thận để tránh dây bị rối khi bạn thực hiện mỗi kết nối, vì mỗi nút yêu cầu hai dây khác nhau.

Bắt đầu đơn giản, thật hợp lý khi nối một nút nhấn với chân dương của nó được kết nối với chân 5V trên Arduino của chúng tôi và chân nối đất của nút được kết nối với cả GND và Chân số 2 trên bảng Arduino của chúng tôi. Một điện trở phải được kết nối giữa chân nối đất của nút và chân GND trên Arduino.

LÀM VIDEO TRONG NGÀY

Với một nút có dây, đã đến lúc thêm các nút khác. Mỗi nút cần có Pin kỹ thuật số riêng; chúng tôi đã chọn 2, 3, 4 và 5 cho bốn nút mà chúng tôi đang sử dụng, nhưng bất kỳ Ghim kỹ thuật số nào sẽ hoạt động. Bây giờ Arduino của bạn đã được kết nối hoàn toàn, đã đến lúc bắt đầu làm việc với mã.

Lập trình nhiều nút đẩy với Arduino

Mã cho dự án rất đẹp và đơn giản, không cần bất kỳ thư viện lớp nào hoặc lập trình phức tạp khác.

Gán các nút cho các Ghim

Đối với bước đầu tiên, chúng ta cần gán các nút của mình cho các chân khác nhau trên bảng Arduino của chúng ta. Khi chúng ta sử dụng các Ghim kỹ thuật số 2, 3, 4 và 5, đây là các chân mà chúng ta sẽ khai báo với mã của mình. Điều này nên được đặt ở đầu dự án Arduino của bạn, trước bất kỳ chức năng nào.

int input4Pin = 5;
int input3Pin = 4;
int input2Pin = 3;
int input1Pin = 2;

Thiết lập các nút

Như với hầu hết các dự án Arduino, chúng tôi sẽ sử dụng một hàm sẽ chạy một lần vào đầu chương trình, được gọi là void setup (). Đầu tiên, chúng tôi sẽ bắt đầu kết nối nối tiếp của mình với tốc độ truyền là 57600, tiếp theo là khởi tạo các nút của chúng tôi. Đây là tất cả những gì chúng ta cần trong void setup () chức năng.

void setup()
{
Serial.begin(57600); // this begins the serial connection with a baud rate of 57600
pinMode(input4Pin, INPUT);
pinMode(input3Pin, INPUT);
pinMode(input2Pin, INPUT);
pinMode(input1Pin, INPUT); // these lines declare each of the buttons as an input
}

Phát hiện các lần nhấn nút

Giai đoạn tiếp theo này phức tạp hơn các giai đoạn khác, vì chúng ta sẽ tạo ra một hàm của riêng mình để xử lý một biến từ hàm vòng lặp chính. Để bắt đầu, chúng ta cần khai báo hàm của mình với một biến số nguyên như đoạn mã dưới đây.

void checkPush(int pinNumber)

Sau đó, chúng ta cần gán biến chúng ta đang sử dụng và tạo một nếu để phát hiện khi mỗi nút được nhấn. Hàm này chỉ có thể kiểm tra nút bật tại một thời điểm, sử dụng biến mà nó nhận được từ chức năng vòng lặp chính để nó biết nút nào đang kiểm tra. Của chúng tôi nếu câu lệnh kiểm tra trạng thái của nút bằng cách sử dụng digitalRead chức năng.

void checkPush(int pinNumber) 
{
int buttonPushed = digitalRead(pinNumber);
if (buttonPushed == HIGH) {
// add code here for when a button is pressed
}
else {
// add code here for when a button is not pressed
}
}

Mã được thêm vào nếu câu lệnh sẽ chạy khi một nút được nhấn, trong khi mã trong khác câu lệnh sẽ chỉ chạy khi một nút không được nhấn.

Xây dựng vòng lặp chính

Cuối cùng, là đoạn mã cuối cùng bạn cần thêm vào chương trình của mình, đã đến lúc xây dựng void loop () chức năng. Chúng tôi chỉ cần bốn dòng mã: một dòng cho mỗi nút mà chúng tôi đã gắn vào Arduino của mình. Các dòng này gọi hàm mà chúng ta đã tạo ở bước trước với số pin của mỗi nút.

void loop()
{
checkPush (5);
checkPush (4);
checkPush (3);
checkPush (2);
}

Mã hoàn thành

Khi bạn đã có tất cả mã này, chương trình hoàn chỉnh của bạn sẽ giống như mã bên dưới. Chúng tôi đã thêm nhận xét vào từng dòng để dễ hiểu hơn, nhưng chúng tôi khuyến khích bạn tra cứu và đọc về bất kỳ điều gì mà bạn không nhận ra. Đây có thể là một cách tuyệt vời để mở rộng kiến ​​thức mã hóa của bạn.

int input4Pin = 5;
int input3Pin = 4;
int input2Pin = 3;
int input1Pin = 2;
// this declares each of our buttons and their pins
// make sure that you use the pins your buttons are wired to
void setup()
{
Serial.begin(57600); // this begins the serial connection with a baud rate of 57600
pinMode(input4Pin, INPUT);
pinMode(input3Pin, INPUT);
pinMode(input2Pin, INPUT);
pinMode(input1Pin, INPUT); // these lines declare each of the buttons as an input
}
void loop()
{
checkPush (5);
checkPush (4);
checkPush (3);
checkPush (2); // each of these lines calls our checkPush function with a different pin number
}
void checkPush(int pinNumber) // this function expects an integer value when it is called
{
int buttonPushed = digitalRead(pinNumber); // this reads the state of a button based on its pin number
if (buttonPushed == HIGH) { // this checks the state of the button
// add code here for when a button is pressed
}
else {
// add code here for when a button is not pressed
}
}


Thành công: Nối dây và lập trình nhiều nút đẩy với Arduino

Đây là một dự án dễ bắt đầu khi bạn muốn tìm hiểu về phần cứng và phần mềm cho Arduinos. Bạn có thể dễ dàng mở rộng những gì bạn đã thực hiện với các thành phần bổ sung, mang lại cho bạn cơ hội khám phá vô số ý tưởng thú vị và tạo ra những thứ khiến bạn cảm thấy tự hào.


arduino-giao-thông-đèn-đặc-trưng

Lập trình Arduino cho người mới bắt đầu: Hướng dẫn dự án điều khiển đèn giao thông

Đọc tiếp


Thông tin về các Tác giả

Similar Posts

Leave a Reply

Your email address will not be published. Required fields are marked *