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

3 Հեշտ ATTiny տոնական նվեր ՝ 4 քայլ
3 Հեշտ ATTiny տոնական նվեր ՝ 4 քայլ

Video: 3 Հեշտ ATTiny տոնական նվեր ՝ 4 քայլ

Video: 3 Հեշտ ATTiny տոնական նվեր ՝ 4 քայլ
Video: Շարոց - Քաղցր սուջուխ- Сладкий шароц - How to Make Armenian Sharots #sharots #սուջուխ #чурчхела 2024, Նոյեմբեր
Anonim
3 Հեշտ ATTiny տոնական նվեր
3 Հեշտ ATTiny տոնական նվեր

Ամեն տարի արձակուրդների սեզոնը պտտվում է, և ես խրվում եմ, թե ինչ նվիրել իմ ընկերներին և ընտանիքիս: Մարդիկ միշտ ասում են, որ ավելի լավ է նվերն ինքներդ պատրաստեք, քան այն խանութից գնեք, ուստի այս տարի ես հենց դա արեցի: Առաջինը ցուցադրում է անուն կամ հիմնական պատկեր, երբ ծածանվում է օդում, երկրորդը սահուն մարում է երկու սպիտակ լեդերի միջև (այն նաև ունի անվտանգության ամրակ ՝ այն հագուստին կամ դրամապանակին ամրացնելու համար), իսկ երրորդը ՝ մի տեսակ տրամադրության լույս, ոլորում անթերի գույների միջև: Բոլորը 15 դոլարից ցածր են և հեշտ է հավաքվել մեկ ժամից պակաս ժամանակում: Դուք կարող եք նաև այս հրահանգները, ինչպես նաև մասերը նվիրել մեկին, ով հետաքրքրված է էլեկտրոնիկա սովորելով:

Նշում. Ենթադրվում է եռակցման հիմնական մակարդակ: Սակայն, ի տարբերություն իմ նախորդ հրահանգի, ես կփորձեմ պարզել, թե ինչպես ծրագրավորել AVR: Ես իսկապես հույս ունեմ, որ դա կօգնի այն մարդկանց, ովքեր փորձում են սկսել էլեկտրոնիկայի ոլորտում: Ես հիշում եմ, երբ ես այնտեղ էի և ուրախ կլինեմ ձեզ հուզող ցանկացած հարցի: Հիշեք, որ հիմար հարցեր չկան: Ես բաց եմ թողել ձեզ ՝ որոշելու, թե ինչպես եք դասավորելու ձեր տպատախտակը ՝ հույս ունենալով, որ կգտնեք իմ կազմած պարզ սխեմաները ցուցադրելու նոր եղանակ: Խնդրում ենք նկարներ փակցնելուց հետո, ես անհամբերությամբ սպասում եմ, թե ինչով եք զբաղվում: Բոլոր նախագծերի մասեր N = նախագծերի քանակ x x N ATTiny45 (www.digikey.com) x N 8 փին DIP վարդակից (RadioShack) x 1 Large Perf Board (ես ստացել եմ RadioShack- ում) x N 3v Մետաղադրամների բջջային մարտկոց և պահոց (RadioShack) x1 ծրագրավորող (ես օգտագործում եմ սա, և մատակարարված կազմաձևը կկարգավորվի այս մեկը օգտագործելու համար) x2 N դիմադրիչներ, մեկ 10 օմ և մեկ 10k ohm (RadioShack) Ահա երեք ավարտված նախագծերի պատկերը.

Քայլ 1: Փայլեցնող անունը

Ֆլեշեր անունը
Ֆլեշեր անունը
Ֆլեշեր անունը
Ֆլեշեր անունը
Ֆլեշեր անունը
Ֆլեշեր անունը

Այլ մասեր x5 ՏԱՐԱՎԱ 3 մմ LED (RadioShack) Այս նախագիծը օգտագործում է տեսողության համառությունը `պատկերն ու տեքստը արագ տեղափոխելիս: Այն ավելի լավ է աշխատում, երբ մութ է: AVR- ով մենք ավելի արագ ենք անցնում LED- ների միջև, այնուհետև աչքը տեսնում է, որ մենք կարող ենք օդում նկար ստեղծել շատ քիչ բաղադրիչներով: Կոդ. (Ներբեռնեք.zip ֆայլը էջի ներքևում ՝ ծածկագրի, makefile- ի և այլնի համար): zip ֆայլ)) #սահմանել F_CPU 1000000 #ներառել #ներառել void dispClear () {PORTB = ~ 0b00000000; } int main () {DDRB = 0xFF; // Ձեզանից նրանց համար, ովքեր երբևէ C չեն կարդացել մինչև կրկնակի շեշտը ցույց է տալիս մեկնաբանություն: Սա սահմանում է avr- ի կապումներն որպես ելքային նշան x = 10; // x- ն օգտագործվում է հետաձգման ոտքը սահմանելու համար: Արժեքի ավելացումը տալիս է ավելի դանդաղ անցում պիքսելների միջև ՝ նվազելով, ավելի ցածր միաժամանակ (1) // Մինչդեռ (պայմանը ճշմարիտ է); {Կատարեք սա} (C- ում ճիշտ է 1) {PORTB = ~ 0b00010001; // Իմ ընկերոջ անունը oeոի է, այնպես որ ես գծագրերի գծերը հանեցի գրաֆիկական թղթի վրա, այնուհետև դրանք փոխարկեցի PORTB: Առաջին երեք զրոները նշանակություն չունեն, քանի որ կապակցված են միայն հինգ լեդ: Մնացած հինգ տարածություններից մեկում մեկը ցույց է տալիս, որ LED- ը միացված է, զրո, անջատված: _delay_ms (x); // միլիվայրկյան ուշացում PORTB = ~ 0b00010011; _delay_ms (x); PORTB = ~ 0b00010101; _delay_ms (x); PORTB = ~ 0b00011001; _delay_ms (x); PORTB = b 0b00010001; _delay_ms (x); dispClear (); // Նիշերի միջև բաց տարածություն _delay_ms (x); PORTB = b 0b00001110; _delay_ms (x); PORTB = b 0b00010001; _delay_ms (x*3); PORTB = b 0b00001110; _delay_ms (x); dispClear (); _delay_ms (x); PORTB = ~ 0b00011111; _delay_ms (x); PORTB = ~ 0b00010101; _delay_ms (x); PORTB = b 0b00010001; _delay_ms (x); dispClear (); _delay_ms (x*5); // Բառն այնպես է արված, որ պարզության համար ես ավելի մեծ տարածություն ունեմ բառերի միջև}} Այժմ հետևեք 4 -րդ էջի հրահանգներին ՝ այս ծածկագիրը կազմելու և այն ուղարկելու ձեր AVR- ին:

Քայլ 2: Դրամապանակի լույսը

Դրամապանակի լույսը
Դրամապանակի լույսը
Դրամապանակի լույսը
Դրամապանակի լույսը

Այլ մասեր x2 LED- ի ԱՌԱՆ ԱՌԱՅՈԹՅՈՆ (RadioShack) Այս նախագիծը սահուն մարում է երկու LED- ների միջև: Մայրս ուզում էր, որ իր դրամապանակի վրա ինչ -որ բան մտնի, որը կօգնի նրան գիշերը տեսնել: Ես զգում էի, որ հեծանիվի առկայծող լույսը չափազանց մեծ ուշադրություն կգրավի, ուստի ես դա արեցի: Այն օգտագործում է PWM (Pulse Width Modulation) ՝ թույլ և լուսավորող ազդեցություն ունենալու համար: Այն, ինչ իրականում տեղի է ունենում, այն է, որ լեդն ավելի արագ է փայլփլում, քան աչքը տեսնում է տարբեր ընդմիջումներով ՝ փոփոխությունը նմանեցնելու համար: Դուք կարող եք դա ավելի հստակ տեսնել, երբ այն թափահարում եք ձեր դեմքից, ինչպես կտեսնեիք Flasher անվան հետ: Կոդը կարելի է ներբեռնել այս էջի վերջում: Տեսեք էջ 4 -ը, թե ինչպես կազմել ձեր AVR- ին: Այստեղ ծածկագիրը մեկնաբանելու փոխարեն ես հակիրճ կբացատրեմ հասկացությունը: PWM- ն ստեղծվում է ժամանակաչափի միջոցով: Clockամացույցի յուրաքանչյուր ցիկլը ժամաչափը հաշվում է մեկից: Երբ այն հասնում է որոշակի արժեքի (Այս դեպքում OCR1B) փոխում է քորոցի վիճակը (այս դեպքում OC1B): Որպեսզի LED- ները «անջատվեն», մյուսը միացրել եմ [ԸՆԴԴԵՄ] OC1B- ին (ահա թե ինչ է նշանակում վերևի գծի բարը): Այնուհետև մենք x- ով օգտագործում ենք LED- ների միացման ժամանակը ավելացնելու և նվազեցնելու համար:

Քայլ 3: Գունավոր ոլորիչ

Գունավոր ոլորող
Գունավոր ոլորող
Գունավոր ոլորող
Գունավոր ոլորող

Այլ Partsx1 RGB LED (ավելի լավ է ցրված լինելը) (RadioShack) Սա ինձ համար դասական է: Ինձ միշտ դուր են եկել նման լույսերը և դրանք շատ հանգստացնող եմ համարում, այնպես որ, բնականաբար, ես ուզում էի այն պատրաստել: Նաև հասարակության մեջ նրանց տեսանելիությունը նրանց տալիս է իրական WOW գործոն: «Դուք դա արե՞լ եք»: Կոդը գրեթե նույնն է և, իմ կարծիքով, ավելի հեշտ է կարդալ: Դուք կարող եք ներբեռնել ներքևում: Այս անգամ մենք տրամադրում ենք PWM'd քոր RGB LED- ի յուրաքանչյուր հիմնավորման քորոցի համար: Այս կերպ մենք մանրացնում ենք չիպի միջով: Վոլտերը կարող են չափվել որպես երկու կետերի տարբերություն: 3v-0v = 3v 5v-2v = 3v *** 3v-3v = 0v *** Այս վերջին օրինակն այն է, ինչ մենք անում ենք, երբ հիմնավորում ենք չիպի միջով: Երբ երկու կողմերում կա երեք վոլտ, մեկ ասենք, լուսադիոդ վարելու համար բավարար վոլտ չկա: Այսպիսով, գույների միջև մարելու համար մենք ընտրեցինք գույն և այլ գույն: Մեկը դրեք x- ի, իսկ մյուսը `255-x- ի կամ x- ի INVERSE- ի վրա: Ինչպես անում էինք նախորդ նախագծում: Այժմ անցեք ծրագրի 4 -րդ քայլին:

Քայլ 4: Programրագրավորում

Ծրագրավորում
Ծրագրավորում

Նախ ներբեռնեք և տեղադրեք Emacs- ը, avr-gcc- ն և Avrdude- ն և նրանցից կախվածությունը: Arch linux- ում ես դա արեցի ՝ sudo pacman -Sy emacs avrdude

Հիմա ժամանակն է ծրագրավորողին միացնել ձեր avr- ին: 6-պին ISP ծրագրավորողի (ստորև նկարը) կապումներն ամրացրեք ձեր AVR- ի կորոսպոնդինգի կապում (տեղեկագիր, էջ 2) (ես դա արել եմ տախտակի վրա): Այժմ միացրեք ծրագրավորողը ձեր համակարգչին և ՇԱՏ ԱՐԱԳ դիպչեք AVR- ի վերևին: Եթե շոգ է, ՀԱՆՁՆԵՔ GRՐԱԳՐԱՎՈՐԸ ՔՈ ՀԱՄԱԿԱՐԳԻՉՉԻ ԱՅՍԿԱՄ մեկ անգամ ստուգեք ձեր կապերը և նորից փորձեք (Power և Gnd հետընթաց): Եթե տաք չէ, բացեք emacs- ը և սեղմեք Ctl-x Ctl-f ՝.c ֆայլը գտնելու համար: Բացեք այն, ապա սեղմեք Meta (Usualy Alt) -x և մուտքագրեք compile: Երկու անգամ սեղմեք enter և եթե հաջողակ եք, ձեր AVR- ն այժմ պետք է գործարկի ձեր կոդը: Շնորհակալություն կարդալու համար: Հուսով եմ, որ այն ձեզ դուր եկավ և ինչ -որ բան սովորեցիք: Խնդրում եմ, մի հապաղեք հարցեր տալ և մի մոռացեք տեղադրել ձեր պատկերացրած լուսանկարները: Շնորհավոր արձակուրդներ և մի մոռացեք քվեարկել:

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