Joystick - Nút nhấn đa hướng

I. Mở đầu

Hôm nay, mình sẽ hướng dẫn các bạn sử dụng Joystick....Các bạn hãy để ý những nút di chuyển đa hướng trên những tay game PS, đó chính là Joystick, nó thường được ứng dụng trong tay game, tay điều khiển robot, cần gạt,....Vậy làm thế nào để sử dụng nó???

II. Giới thiệu về Joystick

Joystick hoạt động như nút di chuyển trên tay game PS. Bên trong Joystick là 2 biến trở (10K) có thể di chuyển tự do tới/lùi/trái/phải

Ngoài ra trong Joystick còn có 1 button nhận biết khi ta nhấn mạnh xuống.

Hiện nay, Joystick được áp dụng vào các module như Joystick Shield,...đặc biệt đặc biệt là Module Joystick. Nó khá nhỏ gọn và dễ sử dụng. Module Joystick hoạt động ở mức điện áp 5V. Để sử dụng được, chúng ta cần đọc giá trị ở các biến trở và nút nhấn trên các chân của module:

  • VRx hay X -> giá trị biến trở trục X
  • VRy hay Y-> giá trị biến trở trục Y
  • SW hay KEY -> giá trị nút nhấn

III. Đọc giá trị module Joystick

a. Kết nối

Ở đây mình kết nối chân 2 trên board Arduino để đọc giá trị nút nhấn, A0 để đọc biến trở trục X, A1 để đọc biến trở trục Y

b. Code

int bientroX = A0 ; 
int bientroY = A1 ; 
int button = 2;      
void setup ()
{
     pinMode(2, INPUT);
     pinMode(A0, INPUT);
     pinMode(A1, INPUT);
     Serial.begin(9600);
}
void loop ()
{
              int x = analogRead(bientroX);  // doc gia tri cua truc X
              int y = analogRead(bientroY);  // doc gia tri cua truc Y
              int KEY = digitalRead(button);  // doc gia tri cua nut nhan
              // Xuat ra cong Serial
              Serial.print("X="); Serial.println(x);
              Serial.print("Y="); Serial.println(y);
              Serial.print("KEY="); Serial.print(KEY); Serial.println();
              delay(200);//delay để ổn định hơn
      
}

III. Lời kết

Sau khi đã đọc các giá trị, các bạn có thể sử dụng  lệnh If..then...huyền thoại để điều khiển các thiết bị nhé!!! Chúc các bạn thành công!!

 

lên
25 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

Hướng dẫn sử dụng cảm biến nhiệt độ DS18B20 (-55°C đến +125°C) sai số ±0.5°C

Lại quay về vấn đề đo nhiệt độ, như ở bài trước, mình đã dùng cả LM35, cả TMP36. Nhưng rốt cuộc vẫn không hiệu quả, lần này mình đang sử dụng con DS18B20 này và cảm thấy khá ổn hơn so với lần trước. Nhiệt độ ít bị chênh lệch hơn và như quảng cáo là chỉ có sai số ±0.5°C thôi (nếu nhiệt độ trong phạm vi -10°C to +85°C, đáng để thử phải không nào?

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

Hướng dẫn sử dụng cảm biến nhiệt độ TMP36 - Khoảng đo từ -40 đến 125 độ C

Mình thấy cảm biến nhiệt độ LM35 rất rẻ và hoạt động cũng tương đối chính xác. Tuy nhiên, độ bền của nó không cao vì mình thấy mình chỉ dùng cảm biến LM35 trong khoảng thời gian 3 tháng, sau đó phải thay cảm biến khác (để đo nhiệt độ luộc gà). Bản thân mình không thích điều đó nên thử dùng một cảm biến khác cũng có chức năng tương tự là TMP36 và thấy nó hoạt động bền hơn (đã đến tháng thứ 4 nhưng chưa hư). Mình xin chia sẻ với các bạn nhé. Loại này hơi khó tìm và không thông dụng, nhưng nó bền hơn hẳn LM35 các bạn nhé.

lên
10 thành viên đã đánh giá bài viết này hữu ích.
Các bài viết cùng tác giả

Hệ thống chống trộm bằng tia laze với Arduino

Hôm nay, mình xin hướng dẫn các bạn làm một hệ thống chống trộm cực đơn giản...Các bạn đã xem những bộ phim hành động của Mĩ...Để bảo mật một vật quý, họ thường hay cho vào một cái tủ...rồi chiếu hệ thống chống chộm laze xung quanh. Vậy hôm nay, mình sẽ hướng dẫn chế tạo nó!!!

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

Lập trình Raspberry Pi với C++ - Ví dụ về LED và nút nhấn

Hôm nay, chúng ta sẽ tìm cách nói chuyện với Raspberry Pi bằng ngôn ngữ C++. Thay vì sử dụng các ngôn ngữ Python, NodeJS thì C++ là một ngôn ngữ rất gần gũi với những ai đã có một nền tảng Arduino vững chắc. C++ cơ bản đủ để lập trình Raspberry pi cũng rất dễ học ( C++ cơ bản thôi nha...còn chuyên nghiệp thì là ngôn ngữ khó nhất rồi ). Vì vậy, mình sẽ cùng các bạn khám phá nó!!! Nào cùng bắt đầu thôi!!!

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