
Mục lục:
2025 Tác giả: John Day | [email protected]. Sửa đổi lần cuối: 2025-01-23 15:15

DFRobot đã liên hệ với tôi gần đây, muốn tôi sử dụng bảng Arduino Nano và OLED đặc biệt của họ. Lúc đầu, tôi muốn tạo ra một chiếc xe đạp thông minh và tôi đã chế tạo nó toàn bộ. Nhưng tiếc là Nano quá yếu để có thể chạy và lưu trữ bản phác thảo lớn cần thiết. Vì vậy, tôi quyết định xem lại một trong những dự án trước đây của mình, ma trận Neopixel chạy trò chơi Pong. Thay vào đó, tôi muốn làm cho nó di động và OLED 1,7 inch sẽ tạo ra một màn hình hoàn hảo.
Danh sách các bộ phận:
- Arduino nano
- OLED
- Loa
Bước 1: Video


Bước 2: Thiết kế trò chơi

Đối với trò chơi Pong này, tôi muốn giữ nó tương đối đơn giản, có nghĩa là không có máy tính điều khiển mái chèo hoặc các thuật toán phản xạ bóng. Về cơ bản, có một mái chèo duy nhất mà người dùng có thể di chuyển lên hoặc xuống và làm cho quả bóng va chạm với mái chèo sẽ khiến vectơ trục x của nó bị lật. Mỗi khi quả bóng được đánh sẽ có một âm thanh phát ra. Khi thiết bị trò chơi được bật nguồn, một màn hình xuất hiện với tên trò chơi và hướng dẫn. Ngoài ra, mẹ tôi đã tạo một bài hát chủ đề nhỏ chạy trong nền cho đến khi nhấn nút trên cùng.
Bước 3: Thiết kế Thiết bị Trò chơi




Chương trình CAD mà tôi sử dụng là Fusion 360, vì vậy tôi quyết định sử dụng nó để thiết kế thiết bị chơi game pong của mình. Tôi bắt đầu thiết kế từng thành phần được sử dụng: OLED, Arduino Nano và loa. Bằng cách này, tôi có thể thấy chính xác vị trí và cách mỗi thành phần sẽ phù hợp với bên trong của vỏ máy. Sau đó, tôi đặt Nano và PCB ở phần sau của vỏ máy và đặt màn hình OLED lên trên. Tiếp theo là câu hỏi đặt loa và các nút ở đâu. Tôi quyết định rằng loa 3W có thể đi ngay dưới màn hình (nhìn từ trên xuống) và điều đó cũng yêu cầu đặt một "vỉ nướng" trên loa để âm thanh không bị bóp nghẹt. Cuối cùng, tôi đã thêm hai nút ở phía bên trái để thêm điều khiển.
Bước 4: Xây dựng thiết bị



Tôi bắt đầu bằng cách in 3D từng phần, bao gồm nửa dưới, nửa trên và 2 nút. Tiếp theo, tôi hàn một tiêu đề nữ vào 4x6cm và kết nối nó với Nano. Điều này không chỉ cho phép dễ dàng tháo OLED ra mà còn nâng nó lên trên Arduino Nano. Kiểm tra sơ đồ để biết thông tin về hệ thống dây điện. Sau đó, tôi kết nối hai nút, cùng với một bảng ngắt micro USB đơn giản để cấp nguồn. Loa cũng đã được gắn vào và đặt đúng vị trí của nó. Thiết kế Fusion 360 của tôi cho phép các vít máy 3mm để giữ màn hình OLED, loa và kết nối hai nửa của thiết bị. Nhưng, tôi phải làm cho chúng chính xác, vì vậy tôi đã sử dụng máy khoan bấm của mình để khoan 8 lỗ: 2 cho loa, 2 cho màn hình và 4 bên dưới. Bạn có thể truy cập liên kết Thingiverse để biết các tệp.
Bước 5: Lập trình trò chơi
Việc sử dụng một giao diện đơn giản là rất quan trọng để giữ cho chương trình nhỏ gọn. Tôi bắt đầu bằng cách thêm một số thư viện: Adafruit_GFX, Adafruit_SSD1351 và thư viện Bộ hẹn giờ Arduino. Tiếp theo, tôi xác định các chân và màu sắc của mình, chẳng hạn như các chân của OLED và định nghĩa màu 16 bit. Trong mã của tôi cũng có 4 cách để thay đổi cách chơi của trò chơi, chẳng hạn như thay đổi kích thước mái chèo và tốc độ di chuyển của quả bóng. Sau đó, một phần tồn tại nơi mỗi biến được xác định, bao gồm điểm và các tọa độ khác nhau. Bất cứ khi nào thiết bị được cấp nguồn bằng hình ảnh một quả bóng và một số văn bản xuất hiện trên màn hình, cùng với một bài hát chủ đề nhỏ được xác định trước đó trong mã. Sau khi trận đấu bắt đầu, hai bộ hẹn giờ được tạo, một bộ đếm thời gian cập nhật mái chèo và bộ bấm giờ kia cập nhật quả bóng. Mỗi lần vị trí của quả bóng cập nhật tọa độ của nó sẽ được kiểm tra để đảm bảo nó không đi qua đường viền màn hình hoặc nếu nó chạm vào mái chèo. Mỗi lần nó trả lại, trục x hoặc y của nó sẽ bị đảo ngược và một âm báo nhỏ sẽ phát ra. Xem video ở đầu phần ghi này để biết cách chơi của trò chơi.
Bước 6: Chơi Pong




Tên của trò chơi là đạt điểm thấp nhất có thể. Không có giới hạn thời gian, vì vậy nó rất thú vị và thậm chí gây mê. Tất cả những gì cần thiết là nhấn một trong hai nút để di chuyển mái chèo lên hoặc xuống. Cũng có thể thêm một cách để lưu trữ điểm số cao nhất bằng cách sử dụng EEPROM của Arduino.
Đề xuất:
Điều khiển bằng cử chỉ đơn giản - Điều khiển đồ chơi RC của bạn bằng chuyển động của cánh tay: 4 bước (có hình ảnh)

Điều khiển bằng cử chỉ đơn giản - Điều khiển đồ chơi RC của bạn bằng chuyển động của cánh tay: Chào mừng bạn đến với 'ible' # 45 của tôi. Cách đây một thời gian, tôi đã tạo một phiên bản RC hoàn chỉnh của BB8 bằng cách sử dụng các phần Lego Star Wars … https://www.instructables.com/id/Whats-Inside-My-R…Khi tôi thấy nó thú vị như thế nào Force Band do Sphero tạo ra, tôi nghĩ: " Ok, tôi c
Công tắc ánh sáng điều khiển bằng nháy mắt bằng kính đeo đầu tẩy của Shota Aizawa (Học viện anh hùng của tôi): 8 bước (có hình ảnh)

Công tắc ánh sáng được điều khiển bằng mắt-nháy bằng Kính bảo hộ đầu tẩy của Shota Aizawa (Học viện anh hùng của tôi): Nếu bạn đọc truyện tranh về học viện anh hùng của tôi hoặc xem anime về học viện anh hùng của tôi, bạn phải biết một người vẽ bùa tên là shota aizawa. Shota Aizawa còn được gọi là Thủ lĩnh tẩy, là một Anh hùng chuyên nghiệp và là giáo viên chủ nhiệm của Lớp 1-A của U.A. Shota's Quirk cho anh ta
ESP8266 RGB LED STRIP Điều khiển WIFI - NODEMCU làm điều khiển từ xa hồng ngoại cho dải đèn Led được điều khiển qua Wi-Fi - Điều khiển điện thoại thông minh RGB LED STRIP: 4 bước

ESP8266 RGB LED STRIP Điều khiển WIFI | NODEMCU làm điều khiển từ xa hồng ngoại cho dải đèn Led được điều khiển qua Wi-Fi | Điều khiển bằng điện thoại thông minh RGB LED STRIP: Xin chào các bạn trong hướng dẫn này, chúng ta sẽ học cách sử dụng gật đầu hoặc esp8266 làm điều khiển từ xa IR để điều khiển dải LED RGB và Nodemcu sẽ được điều khiển bằng điện thoại thông minh qua wifi. Vì vậy, về cơ bản bạn có thể điều khiển DÂY CHUYỀN LED RGB bằng điện thoại thông minh của mình
Diều hâu: Robot điều khiển bằng cử chỉ bằng tay sử dụng giao diện dựa trên xử lý hình ảnh: 13 bước (có hình ảnh)

Gesture Hawk: Robot điều khiển bằng cử chỉ bằng tay sử dụng giao diện dựa trên xử lý hình ảnh: Gesture Hawk đã được giới thiệu trong TechEvince 4.0 như một giao diện người-máy xử lý hình ảnh đơn giản. Tiện ích của nó nằm ở chỗ không cần thiết bị cảm biến hoặc thiết bị đeo bổ sung nào ngoại trừ một chiếc găng tay để điều khiển chiếc xe robot chạy trên
Bảng điều khiển cầm tay với bộ điều khiển và cảm biến không dây (Arduino MEGA & UNO): 10 bước (có hình ảnh)

Bảng điều khiển cầm tay với bộ điều khiển và cảm biến không dây (Arduino MEGA & UNO): Những gì tôi đã sử dụng: - Arduino MEGA- 2x Arduino UNO- Adafruit 3.5 " Màn hình cảm ứng TFT 320x480 HXD8357D- Buzzer- Loa 4Ohm 3W- Đèn LED 5mm- Máy in Ultimaker 2+ w / Black PLA Filament- Lasercutter w / MDF wood- Phun sơn đen (cho gỗ) - 3x nRF24