สารบัญ:

HackerBox 0036: JumboTron: 7 ขั้นตอน
HackerBox 0036: JumboTron: 7 ขั้นตอน

วีดีโอ: HackerBox 0036: JumboTron: 7 ขั้นตอน

วีดีโอ: HackerBox 0036: JumboTron: 7 ขั้นตอน
วีดีโอ: Sperian Biosystems PhD Lite Gas Calibration Guide by Ideal Calibrations 2024, พฤศจิกายน
Anonim
HackerBox 0036: JumboTron
HackerBox 0036: JumboTron

ในเดือนนี้ HackerBox แฮกเกอร์กำลังสำรวจการแสดงเมทริกซ์ LED ขนาดจัมโบ้ คอมพิวเตอร์ชิปเดี่ยว ESP32 และการควบคุมเกมด้วยจอยสติ๊ก คำแนะนำนี้มีข้อมูลสำหรับการเริ่มต้นกับ HackerBox #0036 ซึ่งสามารถซื้อได้ที่นี่จนกว่าของจะหมด นอกจากนี้ หากคุณต้องการรับ HackerBox แบบนี้ในกล่องจดหมายของคุณทุกเดือน โปรดสมัครสมาชิกที่ HackerBoxes.com และเข้าร่วมการปฏิวัติ!

หัวข้อและวัตถุประสงค์การเรียนรู้สำหรับ HackerBox 0036:

  • กำหนดค่า Arduino IDE เพื่อตั้งโปรแกรม ESP32
  • จอยสติ๊กอินเทอร์เฟซและอินพุตควบคุมปุ่มกด
  • ต่อสายข้อมูลและจ่ายไฟไปยังแผงไฟ LED JumboTron
  • ตั้งโปรแกรมแอปพลิเคชันต่างๆ ที่ใช้ประโยชน์จากการแสดงเมทริกซ์

HackerBoxes เป็นบริการกล่องสมัครสมาชิกรายเดือนสำหรับอุปกรณ์อิเล็กทรอนิกส์ DIY และเทคโนโลยีคอมพิวเตอร์ เราเป็นมือสมัครเล่น ผู้สร้าง และผู้ทดลอง เราคือผู้ใฝ่ฝัน แฮ็คดาวเคราะห์!

ขั้นตอนที่ 1: HackerBox 0036: เนื้อหาในกล่อง

Image
Image
  • P3 RGB LED Matrix พร้อม 64x32 พิกเซล
  • คณะกรรมการพัฒนา ESP32
  • บอร์ดควบคุมเกมพร้อมจอยสติ๊ก
  • ชุดสายไฟสำหรับ LED Matrix
  • DuPont Jumpers หญิง-หญิง 20cm
  • พิเศษ HackerBoxes Glider Koozie
  • สติกเกอร์แฟนอาร์ทย้อนยุค Atari สุดพิเศษ

สิ่งอื่น ๆ ที่จะเป็นประโยชน์:

  • แหล่งจ่ายไฟ 5V DC (2-4 แอมป์)
  • หัวแร้ง หัวแร้ง และเครื่องมือบัดกรีพื้นฐาน
  • คอมพิวเตอร์สำหรับใช้งานเครื่องมือซอฟต์แวร์

ที่สำคัญที่สุด คุณจะต้องมีความรู้สึกของการผจญภัย จิตวิญญาณของแฮ็กเกอร์ ความอดทน และความอยากรู้อยากเห็น การสร้างและทดลองกับอุปกรณ์อิเล็กทรอนิกส์ แม้จะให้ผลตอบแทนสูง แต่ก็อาจเป็นเรื่องยาก ท้าทาย และน่าหงุดหงิดในบางครั้ง เป้าหมายคือความก้าวหน้า ไม่ใช่ความสมบูรณ์แบบ เมื่อคุณยืนกรานและสนุกไปกับการผจญภัย งานอดิเรกนี้จะได้รับความพึงพอใจอย่างมาก เราทุกคนสนุกกับการเรียนรู้เทคโนโลยีใหม่และหวังว่าจะสร้างโครงการดีๆ ทำแต่ละขั้นตอนอย่างช้าๆ ใส่ใจในรายละเอียด และอย่ากลัวที่จะขอความช่วยเหลือ

มีข้อมูลมากมายสำหรับสมาชิกปัจจุบันและที่คาดหวังในคำถามที่พบบ่อยของ HackerBoxes

Glider เป็นรูปแบบที่เดินทางข้ามกระดานใน Conway's Game of Life มันถูกนำไปใช้อย่างหลวม ๆ เป็นสัญลักษณ์เพื่อแสดงถึงวัฒนธรรมของแฮ็กเกอร์เนื่องจากหุ่นยนต์มือถือ Game of Life ดึงดูดแฮกเกอร์และแนวคิดของเครื่องร่อนถือกำเนิดขึ้นในเวลาเดียวกันกับอินเทอร์เน็ตและ Unix คุณสามารถตั้งโปรแกรม Conway's Game of Life บนเมทริกซ์ LED 64x32 ได้หรือไม่?

ขั้นตอนที่ 2: ESP32 และ Arduino IDE

บอร์ดควบคุมเกมพร้อมจอยสติ๊ก
บอร์ดควบคุมเกมพร้อมจอยสติ๊ก

ESP32 เป็นคอมพิวเตอร์ชิปตัวเดียว มีการบูรณาการอย่างสูงด้วย Wi-Fi 2.4 GHz และ Bluetooth ESP32 รวมสวิตช์เสาอากาศ, RF balun, เพาเวอร์แอมป์, แอมพลิฟายเออร์รับสัญญาณรบกวนต่ำ, ฟิลเตอร์และโมดูลการจัดการพลังงาน ด้วยเหตุนี้ โซลูชันทั้งหมดจึงใช้พื้นที่แผงวงจรพิมพ์ (PCB) น้อยที่สุด

มีบอร์ดพัฒนา ESP32 อยู่สองสามประเภท อันที่ใช้ในที่นี้คือรูปแบบหนึ่งของ "DOIT ESP32 DevKit" พิน I/O ส่วนใหญ่จะหมดไปที่ส่วนหัวของพินทั้งสองด้านเพื่อการเชื่อมต่อที่ง่ายดาย ชิปอินเทอร์เฟซ USB และตัวควบคุมแรงดันไฟฟ้ารวมอยู่ในโมดูล ESP32 ได้รับการสนับสนุนภายในระบบนิเวศ Arduino และ IDE ซึ่งเป็นวิธีการทำงานกับ ESP32 ที่รวดเร็วและง่ายดาย

ที่เก็บ GitHub ของ Arduino ESP32 มีคำแนะนำในการติดตั้งสำหรับ Linux, OSX และ Windows คลิกที่ลิงค์นั้นและทำตามคำแนะนำที่สอดคล้องกับระบบปฏิบัติการบนคอมพิวเตอร์ของคุณ

การเขียนโปรแกรมคณะกรรมการพัฒนา

หากต้องการทดสอบว่า IDE ได้รับการกำหนดค่าอย่างถูกต้องก่อนดำเนินการต่อ ให้โหลดตัวอย่าง BLINK เพื่อแฟลช LED บนบอร์ด เปลี่ยนค่าการหน่วงเวลาเพื่อลองใช้ความถี่การกะพริบที่แตกต่างกัน และตรวจสอบให้แน่ใจว่าโค้ดนั้นโหลดใหม่บนบอร์ด ESP32 อย่างมีประสิทธิภาพ

เมื่อตั้งโปรแกรม ESP32 ให้กดปุ่ม "BOOT" ในบอร์ดพัฒนา ESP32 ค้างไว้ก่อนที่จะกดปุ่มอัปโหลดบน Arduino IDE เมื่อข้อความ “Connecting _ _ _ …” ปรากฏบน Arduino IDE คุณสามารถปล่อยปุ่ม “BOOT” และการเขียนโปรแกรมควรเริ่มต้นขึ้น

ขั้นตอนที่ 3: บอร์ดควบคุมเกมพร้อมจอยสติ๊ก

ตัวควบคุมเกมนี้ "กระดานฝ่าวงล้อม" รวมถึงการควบคุมจอยสติ๊กแบบอะนาล็อกและปุ่มสี่ปุ่ม ขนาดและรูปร่างเหมาะอย่างยิ่งสำหรับการใช้งานแบบถือด้วยมือ

การควบคุมตำแหน่งแอนะล็อกใช้โพเทนชิโอมิเตอร์สองตัว (หนึ่งอันสำหรับ x และอีกอันสำหรับ y) ซึ่งต่อสายในการกำหนดค่า "ตัวแบ่งแรงดันไฟฟ้า" มาตรฐาน ดังนั้น ต้องอ่าน OUTX และ OUTY เป็นค่าแอนะล็อกและปรับขนาดอย่างเหมาะสมตามที่แสดงในโค้ดสาธิต OUTZ และปุ่มทั้งสี่เป็นสวิตช์เปิด/ปิดแบบดิจิตอลอย่างง่าย ซึ่งปกติจะลอยเปิดอยู่และสั้นถึง GND เมื่อเปิดใช้งาน

บอร์ดสามารถต่อสายเข้ากับ ESP32 โดยใช้ DuPont Jumpers บนพินต่อไปนี้:

ตัวควบคุมเกม ESP32

GND GND 3V3 VCC 35 OUTX 34 OUTY 26 OUTZ 27 KEY1 32 KEY2 33 KEY3 25 KEY4

การกำหนดพินเหล่านี้ไม่มีอะไรพิเศษ แต่เป็นพินที่ใช้ในโค้ดสาธิต เนื่องจากพิน IO บางตัวบน ESP32 เป็นเอาต์พุตเท่านั้น คุณอาจต้องการทำให้มันเรียบง่ายและใช้ค่าเดียวกันเหล่านี้

ขั้นตอนที่ 4: 64x32 RGB LED Matrix P3 แผง

64x32 RGB LED Matrix P3 แผง
64x32 RGB LED Matrix P3 แผง

ด้วยไฟ LED RGB แบบสีเต็ม 2048 เมทริกซ์นี้เปรียบเสมือนจอแสดงผลจัมโบตรอน "ขนาดเล็ก" ของคุณเอง แผงเหล่านี้เป็นประเภทเดียวกับที่ใช้ในจอแสดงผล LED ขนาดจัมโบ้ เนื่องจากคุณสามารถบอกได้จากชุดสายไฟที่มีความแข็งแรงทางอุตสาหกรรม ไฟ LED อยู่ในตำแหน่งบนกริดระยะห่าง 3 มม. (ด้วยเหตุนี้การกำหนด P3) ขับเคลื่อนด้วยอัตราการสแกน 1:16

เราจะใช้ PxMatrix Library สำหรับ Arduino IDE ไปข้างหน้าและติดตั้งไลบรารีนั้นทันที นอกจากนี้ยังมีรายละเอียดทฤษฎีปฏิบัติการมากมายที่ลิงก์นั้นหากคุณสนใจที่จะตรวจสอบ

มีตัวเชื่อมต่อสามตัวที่ด้านหลังของ LED Matrix Panel ซึ่งรวมถึงหัวต่อคู่ 16 พินสองตัว (มีป้ายกำกับว่า IN และ OUT) และหัวจ่ายไฟขนาดเล็ก มีสายไฟสามชุดที่แตกต่างกันเพื่อเชื่อมต่อกับสิ่งเหล่านี้ตามที่อธิบายไว้ด้านล่าง

จัมเปอร์ FINE จาก DATA IN ไปยัง DATA OUT

เข้าออก

R2 R1 G1 R2 G2 G1 B1 G2 B2 B1

NINE Jumpers จาก ESP32 ถึง DATA IN

ESP IN

13 R1 22 LAT 19 A 23 B 18 C 5 D 2 OE 14 CLK GND GND

ชุดสายไฟ

ชุดสายไฟที่ให้มาจะต้องเชื่อมต่อกับแหล่งจ่ายไฟ 5VDC หากคุณวางแผนที่จะให้ไฟ LED ทั้งหมดสว่างเต็มที่ แผงจะดึงพลังงานได้สูงสุดประมาณ 4A หากคุณมี "ม้านั่งสำรอง" ที่เหมาะสมที่ควรนำไปใช้กับ 4A สำหรับการทำงานโดยเฉลี่ยทั่วไป 2A อาจเพียงพอ ตัวอย่างเช่น เราทดสอบพาวเวอร์แบงค์ USB ขนาด 2.5A (ก้อนแบตเตอรี่) ซึ่งใช้ได้ดี เราบัดกรีขั้วต่อ USB แทนสลักสกรูบนชุดสายไฟเพื่อให้สามารถเสียบเข้ากับพาวเวอร์แบงค์ USB ได้

มีหัวต่อสี่พินสองตัวบนชุดสายไฟ เหล่านี้มีไว้สำหรับเปิดเครื่องสองแผง คุณสามารถถอดส่วนหัวอันใดอันหนึ่งออกได้หากต้องการจัดระเบียบสิ่งของ เพียงให้แน่ใจว่าได้พันปลายลวดที่ตัดแล้ว (ด้วยเทปหรือท่อ) เพื่อป้องกันไม่ให้แหล่งจ่ายไฟลัดวงจร

แหล่งจ่ายไฟทั่วไปไปยังแผง LED และ ESP32

ตัดปลายจัมเปอร์ของดูปองท์ด้านหนึ่ง ปอกและพันสายไฟเพื่อเชื่อมต่อกับเส้นสีแดงของสายรัด ตัวเลือกที่ง่ายคือการใช้หนึ่งในบรรทัดที่เราถอดหัวจ่ายไฟสี่พินพิเศษออก ย้ำอีกครั้งว่าได้พันสายไฟเพื่อป้องกันการลัดวงจร หลังจากตั้งโปรแกรม ESP32 และถอดสาย USB แล้ว ปลั๊ก DuPont ตัวเมียที่ปลายอีกด้านของสายประกบสามารถวางบนพิน VIN (ไม่ใช่พิน 3V3) ของบอร์ด ESP32 สิ่งนี้จะจ่ายพลังงานให้กับบอร์ด ESP32 และและเมทริกซ์ LED จากแหล่งจ่ายไฟ 5V เดียวกันทำให้การกำหนดค่าที่แน่นและพกพาได้สำหรับการทำงานภายใต้พลังงานแบตเตอรี่

ขั้นตอนที่ 5: โปรแกรมสาธิตเมทริกซ์

Matrix Demo Prog
Matrix Demo Prog

ตั้งโปรแกรมร่าง jumbotrondemo.ino ที่แนบมาลงใน ESP32

ตรวจสอบให้แน่ใจว่าได้ติดตั้งไลบรารี่ PxMatrix แล้ว

สี่โหมดของโปรแกรมสาธิตถูกเลือกโดยใช้ K1 - K4 รหัสควรอธิบายตนเองได้พอสมควรสำหรับการขยายไปสู่โครงการของคุณเอง

ขั้นตอนที่ 6: 1 2 3 ไป

1 2 3 ไป!
1 2 3 ไป!

คุณจะทำอะไรกับจอแสดงผลสี 64x32 และตัวควบคุมเกมของคุณ? เริ่มระดมความคิดด้วยแรงบันดาลใจจากโครงการตัวอย่างอื่นๆ…

  • โครงการนาฬิกาดิจิตอล Morphing
  • Adafruit Matrix Display ทรัพยากร
  • สอนได้ด้วย LED Matrix Projects
  • เพิ่มการควบคุม Android BLE
  • แล้วเกม Tetris ที่ดีล่ะ?
  • เกม CHIP-8 (แต่เดิมสำหรับจอแสดงผล 64x32)
  • ไลบรารี่สำหรับใช้กับ ESP32 IDF (ไม่ใช่ Arduino)
  • เกมอิเล็กทรอนิกส์ DIY ยอดเยี่ยมสิบเกมจาก WIRED

โปรดส่งลิงก์ไปยังโครงการของคุณเพื่อให้เราสามารถแชร์กับคนอื่นๆ ด้านล่าง:

  • ของเล่นฟิสิกส์จาก JeffG
  • เกมงูจากคอลลีน
  • Go Fast Turn Left Game จาก ppervink
  • Cryptocurrency Ticker จาก ananseMugen
  • นาฬิกานับถอยหลังคริสต์มาส จาก rznazn

ขั้นตอนที่ 7: แฮ็กดาวเคราะห์

แฮ็คดาวเคราะห์
แฮ็คดาวเคราะห์

หากคุณชอบคำแนะนำนี้และต้องการมีกล่องอิเล็กทรอนิกส์ที่แฮ็กได้และโปรเจ็กต์เทคโนโลยีคอมพิวเตอร์ที่ยอดเยี่ยมลงมาที่กล่องจดหมายของคุณทุกเดือน โปรดเข้าร่วมการปฏิวัติโดยไปที่ HackerBoxes.com และสมัครรับกล่องเซอร์ไพรส์รายเดือนของเรา

ติดต่อและแบ่งปันความสำเร็จของคุณในความคิดเห็นด้านล่างหรือบนหน้า Facebook ของ HackerBoxes โปรดแจ้งให้เราทราบหากคุณมีคำถามหรือต้องการความช่วยเหลือ ขอบคุณที่เป็นส่วนหนึ่งของ HackerBoxes!

แนะนำ: