สารบัญ:

วิธีสร้างลูกบาศก์ LED 8x8x8 และควบคุมด้วย Arduino: 7 ขั้นตอน (พร้อมรูปภาพ)
วิธีสร้างลูกบาศก์ LED 8x8x8 และควบคุมด้วย Arduino: 7 ขั้นตอน (พร้อมรูปภาพ)

วีดีโอ: วิธีสร้างลูกบาศก์ LED 8x8x8 และควบคุมด้วย Arduino: 7 ขั้นตอน (พร้อมรูปภาพ)

วีดีโอ: วิธีสร้างลูกบาศก์ LED 8x8x8 และควบคุมด้วย Arduino: 7 ขั้นตอน (พร้อมรูปภาพ)
วีดีโอ: สร้างลูกบาศก์ LED 8x8x8 cube ควบคุมด้วย Arduino Part 1 - เตรียม LED แต่ละชั้น 2024, พฤศจิกายน
Anonim
วิธีสร้างลูกบาศก์ LED 8x8x8 และควบคุมด้วย Arduino
วิธีสร้างลูกบาศก์ LED 8x8x8 และควบคุมด้วย Arduino
วิธีสร้างลูกบาศก์ LED 8x8x8 และควบคุมด้วย Arduino
วิธีสร้างลูกบาศก์ LED 8x8x8 และควบคุมด้วย Arduino

ม.ค. 2563 แก้ไข:

ฉันจะทิ้งสิ่งนี้ไว้ในกรณีที่ใครก็ตามต้องการใช้เพื่อสร้างแนวคิด แต่ไม่มีประเด็นใดในการสร้างคิวบ์ตามคำแนะนำเหล่านี้อีกต่อไป ไม่มีการผลิต IC ไดรเวอร์ LED แล้ว และภาพสเก็ตช์ทั้งสองแบบเขียนใน Arduino และการประมวลผลเวอร์ชันเก่าและไม่ทำงานอีกต่อไป ฉันไม่รู้ว่าต้องเปลี่ยนอะไรจึงจะใช้งานได้ นอกจากนี้ วิธีการก่อสร้างของฉันยังทำให้เกิดความโกลาหลที่ไม่เป็นระเบียบอีกด้วย คำแนะนำของฉันคือทำตามคำแนะนำในคำแนะนำอื่นหรือซื้อชุดอุปกรณ์ ลูกบาศก์นี้มีราคาประมาณ $50 ในปี 2011 คุณสามารถซื้อชุดอุปกรณ์จาก ebay ได้ในราคาประมาณ $20 ในตอนนี้

บทนำดั้งเดิม:

มีคิวบ์ LED จำนวนมากบน Instructables แล้วทำไมต้องทำอีก? ส่วนใหญ่ใช้สำหรับลูกบาศก์ขนาดเล็กที่ประกอบด้วยไฟ LED 27 หรือ 64 ดวง ซึ่งมักไม่ค่อยใหญ่นักเนื่องจากถูกจำกัดจำนวนเอาต์พุตที่มีอยู่ในไมโครคอนโทรลเลอร์ ลูกบาศก์นี้จะเป็น LED 512 ดวง และต้องการเพียง 11 สายเอาต์พุตจาก Arduino เป็นไปได้อย่างไร? โดยใช้ไดรเวอร์ LED ของ Allegro Microsystems A6276EA

ฉันจะแสดงให้คุณเห็นว่าฉันสร้างคิวบ์ขึ้นมาได้อย่างไร บอร์ดควบคุม และสุดท้ายคือโค้ดที่จะทำให้มันเปล่งประกาย

ขั้นตอนที่ 1: วัสดุ

วัสดุ
วัสดุ

ทุกชิ้นส่วนที่คุณจำเป็นต้องสร้างลูกบาศก์: 1 Arduino/Freeduino พร้อม Atmega168 หรือชิปที่สูงกว่า 512 LEDs ขนาดและสีขึ้นอยู่กับคุณ ฉันใช้ชิปไดรเวอร์ LED สีแดง A6276EA ขนาด 3 มม. จากทรานซิสเตอร์ Allegro 8 NPN เพื่อควบคุมกระแสไฟ, ฉันใช้ตัวต้านทาน BDX53B ดาร์ลิงตันทรานซิสเตอร์ 4 1,000 โอห์ม 1/4 วัตต์หรือสูงกว่าตัวต้านทาน 12 560 โอห์ม 1/4 วัตต์หรือสูงกว่า 1 330uF ตัวเก็บประจุด้วยไฟฟ้า 4 ซ็อกเก็ต IC 24 พิน 9 ซ็อกเก็ต IC 16 พิน 4 "x4" 4 "x4" (หรือใหญ่กว่า) แผ่นกระดานติดเพื่อยึดชิ้นส่วนทั้งหมด พัดลมคอมพิวเตอร์เครื่องเก่า สายเคเบิลตัวควบคุมฟลอปปี้เก่า แหล่งจ่ายไฟของคอมพิวเตอร์เครื่องเก่า ลวดเชื่อม บัดกรี หัวแร้ง ฟลักซ์ และอื่นๆ มากมายที่จะทำให้ชีวิตของคุณง่ายขึ้นในขณะที่ทำสิ่งนี้ ไม้ขนาด 7 "x7" (หรือใหญ่กว่า) ที่ใช้ทำจิ๊กบัดกรี LED กรณีที่ดีในการแสดงลูกบาศก์ที่เสร็จแล้ว My Arduino/Freeduino ที่เลือกคือ Bare Bones Board (BBB) จาก www.moderndevice.com ไฟ LED ถูกซื้อจาก eBay และมีราคา 23 เหรียญสหรัฐสำหรับไฟ LED 1,000 ดวงที่จัดส่งจากประเทศจีน อุปกรณ์อิเล็กทรอนิกส์ที่เหลือซื้อจาก Newark Electronics (www.newark.com) และควรมีราคาเพียง 25 เหรียญเท่านั้น หากคุณต้องซื้อทุกอย่าง โครงการนี้ควรมีราคาเพียง 100 เหรียญเท่านั้น ฉันมีอุปกรณ์คอมพิวเตอร์เก่าๆ มากมาย ชิ้นส่วนเหล่านั้นจึงหลุดออกจากกองเศษเหล็ก

ขั้นตอนที่ 2: ประกอบเลเยอร์

ประกอบเลเยอร์
ประกอบเลเยอร์
ประกอบเลเยอร์
ประกอบเลเยอร์
ประกอบเลเยอร์
ประกอบเลเยอร์
ประกอบเลเยอร์
ประกอบเลเยอร์

วิธีทำ 1 ชั้น (64 LEDs) ของลูกบาศก์ LED 512 ก้อนนี้: LED ที่ฉันซื้อมีเส้นผ่านศูนย์กลาง 3 มม. ฉันตัดสินใจใช้ไฟ LED ขนาดเล็กเพื่อลดต้นทุน และทำให้ขนาดสุดท้ายของลูกบาศก์เล็กพอที่จะนั่งบนโต๊ะหรือชั้นวางของโดยไม่ต้องวางบนโต๊ะหรือชั้นวางของจนหมด ฉันวาดตารางขนาด 8x8 ที่มีขนาดประมาณ 0.6 นิ้วระหว่างบรรทัด นี่ทำให้ฉันมีขนาดลูกบาศก์ประมาณ 4.25 นิ้วต่อด้าน เจาะรูขนาด 3 มม. ที่เส้นบรรจบกันเพื่อสร้างจิ๊กที่จะยึดไฟ LED ขณะที่คุณประสานแต่ละชั้น A6276EA เป็นอุปกรณ์ซิงก์ปัจจุบัน ซึ่งหมายความว่าจะให้เส้นทางสู่กราวด์แทนที่จะเป็นเส้นทางสู่แรงดันแหล่ง คุณจะต้องสร้างคิวบ์ในคอนฟิกูเรชันแอโนดทั่วไป ลูกบาศก์ส่วนใหญ่ถูกสร้างขึ้นเป็นแคโทดทั่วไป โดยทั่วไปด้านยาวของ LED จะเป็นขั้วบวก ตรวจสอบของคุณเพื่อให้แน่ใจว่า สิ่งแรกที่ฉันทำคือทดสอบ LED ทุกดวง ใช่ เป็นกระบวนการที่ยาวและน่าเบื่อ และคุณสามารถข้ามไปได้หากต้องการ ฉันค่อนข้างจะใช้เวลาทดสอบ LED มากกว่าหาจุดบอดในคิวบ์ของฉันหลังจากประกอบแล้ว ฉันพบ LED ตาย 1 ดวงจากทั้งหมด 1,000 ดวง ไม่เลวเลย ตัดขอเกี่ยวที่เป็นของแข็งและไม่หุ้มฉนวน 11 ชิ้นเป็น 5 นิ้ว วาง LED 1 ดวงที่ปลายแต่ละแถวในอุปกรณ์จับยึด จากนั้นบัดกรีลวดเข้ากับแต่ละขั้วบวก ตอนนี้วางไฟ LED ที่เหลือ 6 ดวงลงในแถวแล้วประสานขั้วบวกเหล่านั้นเข้ากับสายไฟ จะเป็นแนวตั้งหรือแนวนอนก็ได้ ตราบใดที่คุณทำเลเยอร์ทั้งหมดในลักษณะเดียวกัน เมื่อคุณทำแต่ละแถวเสร็จแล้ว ให้ตัดลีดส่วนเกินออกจากแอโนด ฉันเหลือประมาณ 1/8 ทำซ้ำจนกว่าคุณจะเสร็จสิ้นทั้ง 8 แถว ตอนนี้ประสานลวด 3 ชิ้นข้ามแถวที่คุณเพิ่งทำเพื่อเชื่อมต่อทั้งหมดเป็นชิ้นเดียว จากนั้นฉันทดสอบเลเยอร์โดยแนบ 5 โวลต์ เพื่อยึดตะแกรงลวดผ่านตัวต้านทานและสัมผัสกราวด์นำไปสู่แคโทดแต่ละตัว เปลี่ยนไฟ LED ใด ๆ ที่ไม่สว่าง นำเลเยอร์ออกจากจิ๊กอย่างระมัดระวังและตั้งไว้ หากคุณงอสายไฟ ไม่ต้องกังวล เพียงแค่ ยืดให้ตรงที่สุดเท่าที่จะทำได้ งอได้ง่ายมาก อย่างที่คุณบอกได้จากรูปภาพ ฉันมีสายไฟที่งอเยอะมาก ยินดีด้วย คุณทำเสร็จแล้ว 1/8 ทำอีก 7 ชั้น ทางเลือก: เพื่อทำการบัดกรี เลเยอร์เข้าด้วยกัน (ขั้นตอนที่ 3) ง่ายขึ้นในขณะที่แต่ละชั้นที่ตามมายังคงอยู่ในจิ๊กงอนิ้วบนของแคโทดไปข้างหน้า 45 ถึง 90 องศา สิ่งนี้จะช่วยให้ตะกั่วไปถึงรอบ ๆ LED ที่เชื่อมต่อและจะทำให้บัดกรีได้มาก ง่ายกว่า อย่าทำสิ่งนี้กับเลเยอร์แรกของคุณ เราจะประกาศว่าเลเยอร์หนึ่งคือเลเยอร์ด้านล่างและลีดต้องเป็น s ตรง

ขั้นตอนที่ 3: ประกอบ Cube

ประกอบลูกบาศก์
ประกอบลูกบาศก์
ประกอบลูกบาศก์
ประกอบลูกบาศก์

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

ขั้นตอนที่ 4: การสร้างบอร์ดควบคุม

การสร้างคณะกรรมการควบคุม
การสร้างคณะกรรมการควบคุม
การสร้างคณะกรรมการควบคุม
การสร้างคณะกรรมการควบคุม
การสร้างคณะกรรมการควบคุม
การสร้างคณะกรรมการควบคุม

วิธีสร้างบอร์ดควบคุมและต่อเข้ากับ Arduino ของคุณ: ทำตามแผนผังและสร้างบอร์ดตามที่คุณต้องการ ฉันวางชิปควบคุมไว้ที่กึ่งกลางของบอร์ดและใช้ด้านซ้ายเพื่อยึดทรานซิสเตอร์ที่ควบคุมกระแสไปยังแต่ละชั้นของลูกบาศก์ และใช้ด้านขวาเพื่อยึดขั้วต่อที่ไปจากชิปควบคุมไปยังแคโทดของ คอลัมน์ LED ฉันพบพัดลมคอมพิวเตอร์ขนาด 40 มม. รุ่นเก่าที่มีขั้วต่อโมเล็กซ์ตัวเมียเพื่อเสียบเข้ากับแหล่งจ่ายไฟของคอมพิวเตอร์ นี้สมบูรณ์แบบ ปริมาณอากาศที่ไหลผ่านชิปเพียงเล็กน้อยนั้นมีประโยชน์ และตอนนี้ฉันมีวิธีง่ายๆ ในการจัดหา 5 โวลต์ให้กับชิปควบคุมและ Arduino เอง ในแผนผัง RC เป็นตัวต้านทานจำกัดกระแสสำหรับ LED ทั้งหมดที่เชื่อมต่อกับ A6276EA แต่ละอัน ฉันใช้ 1,000 โอห์ม เพราะมันให้ไฟ LED 5 มิลลิแอมป์ ซึ่งเพียงพอสำหรับให้แสงสว่าง ฉันใช้ความสว่างสูง ไม่ใช่ LED Super Brite ดังนั้นการระบายน้ำในปัจจุบันจึงลดลง หากไฟ LED ทั้ง 8 ดวงในคอลัมน์ติดสว่างพร้อมกัน นั่นคือ 40 มิลลิแอมป์ เอาต์พุตแต่ละอันของ A6276EA สามารถรองรับ 90 มิลลิแอมป์ ดังนั้นฉันจึงอยู่ในช่วงที่ดี RL คือตัวต้านทานที่เชื่อมต่อกับลอจิกหรือสายสัญญาณ มูลค่าที่แท้จริงไม่สำคัญตราบเท่าที่มีอยู่และไม่มากเกินไป ฉันใช้ 560 โอห์มเพราะฉันมีอยู่มากมาย ฉันใช้ทรานซิสเตอร์กำลังที่สามารถรองรับได้ถึง 6 แอมป์เพื่อควบคุมกระแสที่ไหลไปยังแต่ละชั้นของลูกบาศก์ นี่เป็นสิ่งที่เกินความจำเป็นสำหรับโปรเจ็กต์นี้ เนื่องจากแต่ละเลเยอร์ของคิวบ์จะวาดได้เพียง 320 มิลลิแอมป์โดยที่ไฟ LED ทั้งหมดติดสว่าง ฉันต้องการพื้นที่ที่จะเติบโตและอาจใช้บอร์ดควบคุมสำหรับสิ่งที่ใหญ่กว่าในภายหลัง ใช้ทรานซิสเตอร์ขนาดใดก็ได้ที่เหมาะกับความต้องการของคุณ ตัวเก็บประจุขนาด 330 uF จากแหล่งจ่ายแรงดันไฟอยู่ที่นั่นเพื่อช่วยให้ความผันผวนของแรงดันไฟฟ้าเล็กน้อยเป็นไปอย่างราบรื่น เนื่องจากฉันใช้แหล่งจ่ายไฟของคอมพิวเตอร์เครื่องเก่า จึงไม่จำเป็น แต่ฉันปล่อยทิ้งไว้เผื่อในกรณีที่มีคนต้องการใช้อะแดปเตอร์ติดผนังขนาด 5 โวลต์เพื่อจ่ายไฟให้กับลูกบาศก์ ชิปควบคุม A6276EA แต่ละตัวมีเอาต์พุต 16 ตัว ฉันไม่มีตัวเชื่อมต่อที่เหมาะสมอื่น ๆ ดังนั้นฉันจึงบัดกรีนำไปสู่ซ็อกเก็ต IC 16 พินและจะใช้ตัวเชื่อมต่อเหล่านี้เพื่อเชื่อมต่อบอร์ดควบคุมกับลูกบาศก์ ฉันยังตัดซ็อกเก็ต IC ครึ่งหนึ่งและใช้เพื่อเชื่อมต่อสายไฟ 8 เส้นที่เชื่อมต่อทรานซิสเตอร์กับชั้นของลูกบาศก์ ฉันตัดปลายสายเคเบิลฟลอปปี้เก่าประมาณ 5 นิ้วเพื่อใช้เป็นตัวเชื่อมต่อสำหรับ Arduino ฟล็อปปี้ดิสก์มี 2 แถว 20 พิน บอร์ด Bones เปล่ามี 18 พิน นี่เป็นวิธีที่ถูกมาก (ฟรี) ในการเชื่อมต่อ Arduino กับบอร์ด ฉันดึงสายแพออกจากกันเป็นกลุ่มละ 2 เส้น ดึงปลายสายออกแล้วบัดกรีเข้าด้วยกัน สิ่งนี้ทำให้คุณสามารถเสียบ Arduino เข้ากับขั้วต่อใดก็ได้ ทำตามแผนผังและประสานขั้วต่อเข้าที่ อย่าลืมบัดกรีสายดิน 5 โวลต์และสายดินสำหรับขั้วต่อเพื่อให้พลังงานแก่ Arduino ฉันตั้งใจที่จะใช้บอร์ดควบคุมนี้สำหรับโครงการอื่น ๆ เพื่อให้การออกแบบโมดูลาร์ใช้งานได้ดีสำหรับฉัน หากคุณต้องการต่อสายแบบแข็งก็ไม่เป็นไร

ขั้นตอนที่ 5: สร้างเคสแสดงผล

สร้างเคสแสดงผล
สร้างเคสแสดงผล
สร้างเคสแสดงผล
สร้างเคสแสดงผล
สร้างเคสแสดงผล
สร้างเคสแสดงผล
สร้างเคสแสดงผล
สร้างเคสแสดงผล

ทำให้ผลิตภัณฑ์ขั้นสุดท้ายของคุณดูดี: ฉันพบหีบไม้ชิ้นนี้ที่ Hobby Lobby ในราคา $4 และคิดว่ามันน่าจะสมบูรณ์แบบเพราะมีพื้นที่ภายในสำหรับเก็บลวดทั้งหมด แถมยังดูดีอีกด้วย ฉันย้อมสีแดงนี้ ซึ่งเป็นรอยเดียวกับที่ฉันใช้บนโต๊ะคอมพิวเตอร์เพื่อให้เข้ากัน วาดตารางด้านบนขนาดเดียวกับตารางที่ใช้สำหรับจิ๊กบัดกรี (.6 นิ้วระหว่างบรรทัด) เจาะรูเพื่อให้ลีดผ่านด้านบน และเจาะรูอีกรูด้านหลังกริดสำหรับสายเลเยอร์/ระนาบ (จากทรานซิสเตอร์ในขั้นตอนที่ 4) ฉันได้เรียนรู้วิธีที่ยากที่พยายามจัดแถว 64 ลีดเพื่อผ่านรูเล็ก ๆ นั้นยากมาก ในที่สุดฉันก็ตัดสินใจเจาะรูใหม่ทั้งหมดให้ใหญ่ขึ้นเล็กน้อยเพื่อให้กระบวนการทำงานเร็วขึ้น ฉันลงเอยด้วยการใช้ดอกสว่านประมาณ.2 เมื่อลูกบาศก์วางอยู่ด้านบนของจอแสดงผล งอมุมนำไปสู่มุมเพื่อให้ลูกบาศก์อยู่กับที่เมื่อคุณต่อสายไฟ ตรวจสอบให้แน่ใจว่าคุณต่อสายไฟทั้งหมดตามลำดับที่ถูกต้อง 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64และต่อสายไฟระหว่างชั้นต่างๆ (มีป้าย 'ระนาบ' บนแผนผัง) และทรานซิสเตอร์ ทรานซิสเตอร์บน Arduino pin 6 เป็นเลเยอร์บนสุดของคิวบ์ หากคุณวางสายไฟผิด อาจแก้ไขได้ภายในโค้ด แต่อาจต้องใช้งานมาก ดังนั้นพยายามจัดลำดับให้ถูกต้อง เอาล่ะ ทุกอย่างสร้างเสร็จแล้วและพร้อมใช้งาน มาเอาโค้ดมาลองใช้กัน

ขั้นตอนที่ 6: รหัส

รหัส
รหัส

รหัสสำหรับคิวบ์นี้แตกต่างไปจากส่วนใหญ่ ฉันจะอธิบายวิธีปรับตัว โค้ดคิวบ์ส่วนใหญ่ใช้การเขียนโดยตรงไปยังคอลัมน์ รหัสบอกว่าคอลัมน์ X จำเป็นต้องจุดไฟ ดังนั้นให้น้ำผลไม้แล้วเสร็จ ใช้งานไม่ได้เมื่อใช้ชิปคอนโทรลเลอร์ ชิปคอนโทรลเลอร์ใช้สาย 4 เส้นเพื่อพูดคุยกับ Arduino: SPI-in, Clock, Latch และ Enable ฉันต่อสายดินที่เปิดใช้งานพิน (พิน 21) ผ่านตัวต้านทาน (RL) ดังนั้นเอาต์พุตจึงเปิดใช้งานอยู่เสมอ ฉันไม่เคยใช้ Enable ดังนั้นฉันจึงนำมันออกจากรหัส SPI-in คือข้อมูลที่ส่งมาจาก Arduino นาฬิกาเป็นสัญญาณบอกเวลาระหว่างทั้งสองขณะที่พวกเขาพูดคุยกัน และ Latch บอกผู้ควบคุมว่าถึงเวลาต้องยอมรับข้อมูลใหม่ เอาต์พุตแต่ละตัวสำหรับชิปแต่ละตัวถูกควบคุมโดยเลขฐานสอง 16 บิต ตัวอย่างเช่น; การส่ง 1010101010101010 ไปยังคอนโทรลเลอร์จะทำให้ LED อื่น ๆ บนคอนโทรลเลอร์สว่างขึ้น รหัสของคุณต้องทำงานผ่านทุกอย่างที่จำเป็นสำหรับการแสดงผลและสร้างเลขฐานสองนั้น จากนั้นจึงส่งไปที่ชิป มันง่ายกว่าเสียง ในทางเทคนิคมันเป็นการเพิ่มระดับบิตจำนวนมาก แต่ฉันไม่ค่อยถนัดคณิตศาสตร์ระดับบิตดังนั้นฉันจึงทำทุกอย่างเป็นทศนิยม ทศนิยมสำหรับ 16 บิตแรกมีดังนี้: 1 << 0 == 1 1 << 1 == 2 1 << 2 == 4 1 << 3 == 8 1 << 4 == 16 1 << 5 == 32 1 << 6 == 64 1 << 7 == 128 1 << 8 == 256 1 << 9 == 512 1 << 10 == 1024 1 << 11 == 2048 1 << 12 == 4096 1 << 13 == 8192 1 << 14 == 16384 1 << 15 == 32768 หมายความว่าถ้าคุณต้องการ สว่างขึ้นเอาต์พุต 2 และ 10 คุณเพิ่มทศนิยม (2 และ 512) เข้าด้วยกันเพื่อให้ได้ 514 ส่ง 514 ไปยังคอนโทรลเลอร์และเอาต์พุต 2 และ 10 จะสว่างขึ้น แต่เรามีไฟ LED มากกว่า 16 ดวงจึงยากขึ้นเล็กน้อย เราจำเป็นต้องสร้างข้อมูลการแสดงผลสำหรับ 4 ชิป ซึ่งง่ายพอๆ กับการสร้าง 1 อัน แค่ทำอีก 3 ครั้ง ฉันใช้อาร์เรย์ตัวแปรส่วนกลางเพื่อเก็บรหัสควบคุม วิธีนี้ง่ายกว่า เมื่อคุณมีรหัสแสดงผลทั้ง 4 รายการที่พร้อมส่งแล้ว ให้วางสลัก (ตั้งค่าเป็น LOW) และเริ่มส่งรหัส คุณต้องส่งอันสุดท้ายก่อน ส่งรหัสสำหรับชิป 4 จากนั้น 3 จากนั้น 2 จากนั้น 1 จากนั้นตั้งค่า Latch เป็น HIGH อีกครั้ง เนื่องจากหมุดเปิดใช้งานเชื่อมต่อกับกราวด์เสมอ จอแสดงผลจึงเปลี่ยนทันที รหัสคิวบ์ส่วนใหญ่ที่ฉันเคยเห็นใน Instructables และเว็บโดยทั่วไปประกอบด้วยชุดโค้ดขนาดยักษ์สำหรับสร้างแอนิเมชั่นที่ตั้งไว้ล่วงหน้า ใช้งานได้ดีกับคิวบ์ที่มีขนาดเล็กกว่า แต่จำเป็นต้องจัดเก็บ อ่าน และส่งไบนารี 512 บิตทุกครั้งที่คุณต้องการเปลี่ยนจอแสดงผลจะใช้หน่วยความจำมาก Arduino ไม่สามารถจัดการได้มากกว่าหนึ่งเฟรม ดังนั้นฉันจึงเขียนฟังก์ชันง่ายๆ เพื่อแสดงการทำงานของคิวบ์ที่ต้องอาศัยการคำนวณ แทนที่จะเป็นแอนิเมชั่นที่กำหนดไว้ล่วงหน้า ฉันได้รวมแอนิเมชั่นเล็กๆ ไว้เพื่อแสดงว่ามันทำงานอย่างไร แต่ฉันจะปล่อยให้คุณสร้าง display.cube8x8x8.pde ของคุณเองด้วยโค้ด Arduino ฉันวางแผนที่จะเพิ่มฟังก์ชันให้กับโค้ดต่อไป และจะอัปเดตโปรแกรมเป็นระยะ.matrix8x8.pde เป็นโปรแกรมในการประมวลผลเพื่อสร้างจอแสดงผลของคุณเอง หมายเลขแรกที่ระบุจะอยู่ในรูปแบบ1 หมายเลขที่สองคือรูปแบบ2 เป็นต้น ดูเอกสารข้อมูลสำหรับ A6276EA ได้ที่:https://www.allegromicro.com/en/Products/Part_Numbers/6276/6276.pdf

ขั้นตอนที่ 7: แสดงฝีมือของคุณ

แสดงฝีมือของคุณ
แสดงฝีมือของคุณ

คุณทำเสร็จแล้ว ได้เวลาสนุกไปกับคิวบ์ของคุณแล้ว อย่างที่คุณเห็น ลูกบาศก์ของฉันออกมาคดเคี้ยวเล็กน้อย ฉันไม่ค่อยกระตือรือร้นที่จะสร้างใหม่ แต่ฉันก็จะอยู่กับมันคด ฉันมีจุดตายสองสามจุดที่ฉันต้องตรวจสอบ อาจเป็นการเชื่อมต่อที่ไม่ดี หรือฉันอาจต้องการชิปควบคุมใหม่ ฉันหวังว่าคำแนะนำนี้จะสร้างแรงบันดาลใจให้คุณสร้างคิวบ์ของคุณเองหรือโปรเจ็กต์ LED อื่นๆ โดยใช้ A6276AE โพสต์ลิงก์ในความคิดเห็นหากคุณสร้างมันขึ้นมา ฉันพยายามตัดสินใจว่าจะไปไหนต่อจากนี้ บอร์ดควบคุมจะควบคุมลูกบาศก์ RGB ขนาด 4x4x4 ด้วยดังนั้นจึงเป็นไปได้ ฉันคิดว่ามันน่าจะเรียบร้อยดีถ้าทำทรงกลมและวิธีที่ฉันเขียนโค้ด มันก็ไม่ยากเกินไปที่จะทำ

แนะนำ: