Բովանդակություն:

LED Matrix Game of Life 32 X 32: 8 քայլ
LED Matrix Game of Life 32 X 32: 8 քայլ

Video: LED Matrix Game of Life 32 X 32: 8 քայլ

Video: LED Matrix Game of Life 32 X 32: 8 քայլ
Video: DIY 32 * 8 точечно-матричные спектральные часы / полноцветный RGB с голосовой активацией 2024, Նոյեմբեր
Anonim
LED Matrix Game of Life 32 X 32
LED Matrix Game of Life 32 X 32

Ինձ ոգեշնչեց Jptrsn's 16 x16 Կյանքի խաղը, բայց ավարտվեց չորս անգամ ավելի մեծ: Ես գտա որոշ MAX7219 Dot Matrix Module 4-in-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. eringոդման երկաթ

3. Մետաղալարեր

4. Սուր դանակ

Քայլ 3: Breadboard Build

Breadboard Build
Breadboard Build

Այս պահին մի բան սովորեցի, որ նանոն (և, հավանաբար, այլ Արդուինոսները) չի կարող ապահովել բավարար ուժ ՝ բոլոր չորս մատրիցաներն աշխատեցնելու համար ՝ առանց սնուցման աղբյուրը այրելու: զգուշանալ

Երբ իմ տախտակները ժամանեցին, նրանք միայն կապում էին մուտքի ծայրին, իսկ ելքային կապումներն ազատ էին տոպրակի մեջ, կամ մի դեպքում խցանվել էին ցուցափեղկի տակ, որը կապում էր դրանք: Ստացվում է, որ լավ չէ այս ցուցադրումների համար (լավ աշխատանք, որ ես գնել եմ 6): Դուք պետք է կպցրեք ելքային կապանքները LED մատրիցներից երկուսի վրա, եթե դրանք տեղադրված չեն ձեր վրա:

Դասավորությունը բավականին պարզ է, կարող եք շաղ տալ մատրիցներից երկուսը ՝ երկու շղթա կազմելու համար, պարզապես ելքային կապերը միացնելով համապատասխան մուտքային կապումներին: Դուք չեք կարող դրանք բոլորը մեկ շղթայով կապել, քանի որ LedControl գրադարանը միաժամանակ սահմանափակվում է 8 ցուցադրմամբ:

Այնուհետև միացրեք DataIn- ը 12 -ի կապակցման համար, բեռնեք (կամ CS) 11 -ին, իսկ ժամացույցը (կամ 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. Նանոյի վրա բավարար հիշողություն չկա, որպեսզի կարողանա պահել 2 լիարժեք 32x32 բայթ զանգված `տախտակի վիճակը պահելու համար: (Վերջապես, բոլոր այն ժամանակները, երբ ես հարցազրույցների ժամանակ գրատախտակի վրա գրել եմ Life of Life- ը, վճարում է իրենց արդյունքը): Այսպիսով, մենք որոշում ենք տախտակի զանգվածները որպես 32x4 և յուրաքանչյուր բջիջի վիճակը պահեք մի փոքր բայտում զանգվածի միջով:

Քայլ 5: Ամեն ինչ միասին դնել

Նախ փորձարկեք ծածկագիրը և տախտակների դասավորությունը, ինչպես և սպասվում էր, օգտագործելով «testPattern» մեթոդը `տախտակների վրա անկյունագծային խաչ քաշելու համար: Եթե դա ճիշտ չի թվում, ապա ինչ -որ բան սխալ է տախտակների և/կամ ձեր նախաստորագրված կապերի կարգի մեջ: Այնուհետև ստուգեք իրերը սահարանի մեթոդով, որը ստեղծում է սահնակ, որը շարժվում է էկրանի վրայով: Կրկին, եթե դա չի ստացվում, ապա ստուգեք քորոցների հերթականությունը և այլն: Վերջապես, հիմնական մեթոդը սահմանեք «պատահականացված», սահմանեք NUMITR- ը այն կրկնությունների քանակին, որոնք այն պետք է կրկնել նախքան վերականգնելը:

Քայլ 6: Շրջանակեք այն

Շրջանակիր այն
Շրջանակիր այն

Այժմ ամեն ինչ շրջանակի մեջ դնելու համար: Նախ, տաք սոսնձեցրեք մատրիցները 32x32 շրջանակի մեջ: Հիշեք, որ համոզվեք, որ բոլորի համար մուտքի վերջը նույն կողմում է (կամ փոփոխեք «gridToCell» - ի որոնման կոդը, որպեսզի 2 -րդ տախտակները գլխիվայր շրջվեն): Ավելացրեք հոսանքի վարդակը և անջատիչը 5 վ գծի վրա և ամեն ինչ միացրեք միասին:

Քայլ 7: Շրջանակի խնդիրներ

Ստացվում է, որ ձեզ հարկավոր է ավելի մեծ շրջանակ, քան իմ մոտ եղած 6x6- ը: Այսպիսով, ես պետք է վերադառնամ, որպեսզի ավարտեմ սա, երբ հնարավորություն կունենամ հասնել խանութ:

Քայլ 8:

Խորհուրդ ենք տալիս: