Mục lục:

POiNG! - Trò chơi điện tử Arduino!: 3 bước
POiNG! - Trò chơi điện tử Arduino!: 3 bước

Video: POiNG! - Trò chơi điện tử Arduino!: 3 bước

Video: POiNG! - Trò chơi điện tử Arduino!: 3 bước
Video: Học lập trình Arduino KHÔNG HỀ KHÓ - Bộ KIT học tập Arduino Uno R3 BLK 2024, Tháng mười một
Anonim
Image
Image
POiNG! - Trò chơi điện tử Arduino!
POiNG! - Trò chơi điện tử Arduino!

Chúng tôi sẽ xây dựng một trò chơi điện tử kiểu PONG sử dụng các bộ phận từ bộ "Dự án UNO R3 dành cho người mới bắt đầu hoàn chỉnh nhất" của Elegoo Inc.

Tiết lộ đầy đủ - Hầu hết các phần được cung cấp cho Sách hướng dẫn này đã được Elegoo Inc. cung cấp cho tác giả.

Tôi muốn xây dựng một dự án bằng cách sử dụng mô-đun LED Ma trận. Màn hình LED 8x8 cơ bản yêu cầu sử dụng các thanh ghi dịch chuyển bổ sung để có thể xác định các đèn LED riêng lẻ trong ma trận. Thay vào đó, dự án này sử dụng mô-đun LED MAX7219 8x8. Đây là một mô-đun rất dễ sử dụng.

Tôi đề nghị rằng do số lượng lớn các kết nối dây trong dự án này, nó sẽ được coi là cấp độ TRUNG GIAN Có thể giảng dạy.

Bắt đầu nào!

Quân nhu

Các bộ phận của bộ khởi động Elegoo đã sử dụng (https://rebrand.ly/dvjb3w8)

  • Bộ vi điều khiển UNO R3
  • Mô-đun LED MAX7219 8x8
  • Mô-đun hiển thị LCD 16x2
  • Núm và chiết áp 10K Trim
  • Dây Dupont
  • Điện trở 220R
  • Piezo Buzzer thụ động
  • Mô-đun cấp điện
  • Bộ chuyển đổi 9V 1A - cần thiết vì UNO không thể cung cấp đủ dòng điện cho Mô-đun LED 8x8
  • Breadboard

Các bộ phận bổ sung cần thiết

Chiết áp tuyến tính 2 x 10K - rẻ tiền và có sẵn rộng rãi trên eBay, AliExpress, Banggood, v.v.

Bước 1: Nối mạch

Đấu dây mạch
Đấu dây mạch

Đấu dây mạch điện theo sơ đồ nối dây. Hãy dành thời gian của bạn. Có RẤT NHIỀU kết nối được yêu cầu cho hai màn hình.

Lưu ý trong ảnh của mạch rằng mô-đun nguồn được gắn vào bên trái của bảng mạch và Bộ chuyển đổi DC 9V 1A được cắm vào mô-đun nguồn để cung cấp đủ dòng điện cho ma trận LED. KHÔNG có kết nối giữa chân 5V trên UNO và breadboard. NHƯNG, chân GND trên UNO được kết nối với GND trên breadboard.

Kiểm tra gấp đôi và ba lần công việc của bạn.

Bước 2: Mã Arduino

Hướng dẫn này giả định rằng bạn đã biết cách lập trình trong Arduino.

Tải xuống bản phác thảo Arduino đính kèm. Đảm bảo rằng bạn đã thêm thư viện LedControl vào các thư viện Arduino của mình. Tôi đã sử dụng phiên bản của Eberhard Fahle. Chỉ cần tìm kiếm MAX7219 trong trình duyệt Quản lý Thư viện và bạn sẽ tìm thấy và cài đặt nó.

Đảm bảo rằng tệp pitchhes.h nằm trong thư mục phác thảo của bạn. Nó được sử dụng để phát âm thanh trong trò chơi.

Một chút về thời gian

Vì lệnh delay () tạm dừng hoàn toàn việc thực hiện bản phác thảo của bạn khi nó chạy, thay vào đó, chúng tôi tìm kiếm các khoảng thời gian đã trôi qua xảy ra khi chúng tôi muốn thực thi các phần liên quan đến hoạt ảnh của bản phác thảo. Chúng tôi tìm kiếm một khoảng thời gian đặt trước để trôi qua trước khi chúng tôi thực hiện các phần của bản phác thảo, chẳng hạn như cập nhật vị trí của quả bóng trên màn hình.

Đáng nói hơn, lệnh delay () chỉ thực sự được thực thi trong phương thức loop (). Nó thường không thực thi như mong đợi trong các phương thức khác. Vì vậy, tất cả thời gian liên quan đến hoạt ảnh được thực hiện trong phương thức loop ().

Thí dụ:

Chúng tôi xác định một số biến kiểu 'dài' và một vài boolean, sau đó đặt chúng ở cuối setup ().

bThresh = 80; // thời gian tính bằng mili giây giữa các lần cập nhật bóng

ballTime = millis (); // đặt thành thời gian hệ thống hiện tại

bon = sai lầm; // bóng LED đang bật hay tắt

ballReturn = false; // có phải chúng ta đang trả lại một quả bóng sau một cú đánh của mái chèo không?

Trong vòng lặp () để vẽ quả bóng, chúng ta có:

if ((millis () - ballTime> bThresh) && bon == false) {// nếu bóng TẮT và đủ thời gian thì ballOn (); // bật đèn LED bóng

bon = true; // quả bóng hiện BẬT

ballTime = millis (); // đặt lại ballTime về thời điểm hiện tại

}

if ((millis () - ballTime> bThresh) && bon == true) {// nếu bóng BẬT và đã đủ thời gian

ballOff (); // tắt bóng LED

bon = sai; // quả bóng hiện TẮT

ballTime = millis (); đặt lại ballTIme về thời điểm hiện tại

}

Có nhiều cách để thực hiện trò chơi này. Đây chỉ là sở thích của tôi.

Bản phác thảo được ghi lại đầy đủ tài liệu vì vậy tôi mời bạn đọc mã để xem nó hoạt động như thế nào.

Kiểm tra, biên dịch và tải lên mã của bạn.

Hãy tận hưởng trò chơi của bạn!

Bước 3: Kết luận

Phần kết luận
Phần kết luận
Phần kết luận
Phần kết luận

Xin gửi lời cảm ơn tới Elegoo Inc vì đã cung cấp bộ khởi động được sử dụng trong dự án này. Đó là một bộ công cụ với nhiều bộ phận và mô-đun khác nhau sẽ giúp bạn hòa nhập tốt vào thế giới Arduino Maker.

Đề xuất: