Съдържание:

LED Matrix Game of Life 32 X 32: 8 стъпки
LED Matrix Game of Life 32 X 32: 8 стъпки

Видео: LED Matrix Game of Life 32 X 32: 8 стъпки

Видео: LED Matrix Game of Life 32 X 32: 8 стъпки
Видео: Свидание в 16 vs 26 лет 😨😳 2024, Ноември
Anonim
LED Matrix Game of Life 32 X 32
LED Matrix Game of Life 32 X 32

Бях вдъхновен от 16 x16 Game of Life на Jptrsn, но в крайна сметка стана четири пъти по-голям. Намерих MAX7219 Dot Matrix Module 4-в-1 дисплей за Arduino платки на Bangood.com за £ 3,50, когато пристигнаха, се оказа доста трудно е да ги разделя и да ги използвам в мрежа 16x16, както бях планирал, затова реших да направя решетка 32x32. Тогава нещата се объркаха, тъй като не можете просто да увеличите кода.

Стъпка 1: Части

Взех частите си от BangGood, но можете да ги намерите навсякъде. 1. Arduino Nano (~ £ 2) 2. 4 1x4 Led матрици (~ £ 3,50 x 4) или потърсете мултипакети, които понякога са по -евтини 3. Някои проводници 4. USB микро гнездо (<£ 1) 5. USB захранване (<£ 5) 6. Рамка за картина 6 "x6" /15cmx15cm (~ 4 паунда) от местен магазин за занаяти

Стъпка 2: Инструменти

1. Пистолет за горещо лепило

2. Поялник

3. Машини за сваляне на тел

4. Остър нож

Стъпка 3: Изграждане на платка

Изграждане на платка
Изграждане на платка

Едно нещо, което научих в този момент, е, че нано (и вероятно други Arduinos) не може да осигури достатъчно мощност за работа на всичките 4 матрици, без да изгори захранването! Бъди предупреден

Когато моите платки пристигнаха, те имаха само щифтове на входния край и изходните щифтове бяха хлабави в торбата или в един случай заседнаха под дисплей, късо извеждайки щифтовете. Оказва се, че не е добре за тези дисплеи (добра работа, купих 6). Ще трябва да запоите изходните щифтове върху две от светодиодните матрици, ако не са поставени на вашата.

Оформлението е доста просто, можете да свържете последователно две от матриците заедно, за да образувате две вериги, като просто свържете изходните щифтове към съответстващите входни щифтове. Не можете да свържете всички от тях в един цикъл, тъй като библиотеката LedControl е ограничена до 8 дисплея наведнъж.

След това включете DataIn към пин 12, заредете (или CS) към пин 11 и Clock (или CLK) към пин 10, а за другата верига към 5, 4 и 3. Като алтернатива можете да изберете всички цифрови щифтове, които харесвате, просто не забравяйте да промените кода, който отразява вашия избор. След това добавете USB гнездото към макета. След това свържете v+ и заземените щифтове към релсите на макета. След това трябва да включите захранващите проводници от 2 -те вериги към +ve и земята и да свържете земята Arduino към земята. След като приключим с програмирането на платката, можете да свържете Arduino vin към v+ и никога повече да не включвате Aurdino USB отново.

Стъпка 4: Код

Първоначално си мислех, че всичко, което трябва да направя, е да взема съществуващия код и да го мащабира за 32x32, но това е малко по -сложно от това. 1. Имате нужда от два LedControl, тъй като всеки може да управлява само 8 MAX7219s LedControl lc [2] = {LedControl (12, 10, 11, 8), LedControl (5, 3, 4, 8)}; 2. В Nano няма достатъчно памет за съхраняване на 2 пълни масива с размери 32x32 байта, за да се поддържа състоянието на дъската. бордови масиви като 32x4 и съхраняват състоянието на всяка клетка като малко в байтовете в масива.

Стъпка 5: Съберете всичко заедно

Първо тествайте кода и оформлението на дъските е според очакванията, като използвате метода "testPattern", за да нарисувате диагонален кръст върху дъските. Ако това не изглежда правилно, значи има нещо нередно в реда на дъските и/или щифтовете, които сте инициализирали. След това проверете нещата с метода на планера, който създава планер, който се движи по екрана. Отново, ако не се получи, проверете реда на пиновете и т.н. Накрая задайте основния метод да бъде „рандомизиран“, задайте NUMITR на броя пъти, които трябва да се повтаря преди нулиране.

Стъпка 6: Рамкирайте го

Рамкирайте го
Рамкирайте го

Сега, за да поставите всичко в рамка. Първо, горещо залепете матриците заедно в рамка 32x32. Не забравяйте да се уверите, че входният край е от една и съща страна за всички тях (или променете кода за търсене в „gridToCell“, за да позволите вторите дъски да са с главата надолу). Добавете захранващия контакт и превключвател на 5 -водната линия и запоявайте всичко заедно.

Стъпка 7: Проблеми с рамката

Оказва се, че имате нужда от по -голяма рамка от тази с 6х6, която имам. Така че ще трябва да се върна, за да довърша това, когато имам възможност да стигна до магазина.

Стъпка 8:

Препоръчано: