Տոնական զարդ PCB: 3 քայլ (նկարներով)
Տոնական զարդ PCB: 3 քայլ (նկարներով)
Anonim
Տոնական զարդ PCB
Տոնական զարդ PCB
Տոնական զարդ PCB
Տոնական զարդ PCB
Տոնական զարդ PCB
Տոնական զարդ PCB

Բարեւ բոլորին!

Տարվա այդ ժամանակն է, և նվերների փոխանակման սեզոնը մոտենում է մեզ: Անձամբ ինձ հաճույք է պատճառում իրերի պատրաստումը և դրանք կիսելը ընտանիքի հետ: Այս տարի ես որոշեցի տոնական զարդեր պատրաստել ՝ օգտագործելով Atting85 և որոշ WS2812C 2020 լուսադիոդներ: Nարդանախշը մոտավորապես 80 մմ տրամագծով է, ուստի դա ողջամիտ չափի զարդարանք է ծառի համար: Եթե դուք ծառ չեք, գիտեք ինչ, դա նաև հիանալի զարդարանք է սեղանի համար: WS2812C 2020 LED- ները աներևակայելի պայծառ փոքրիկ խոչընդոտներ են, այնպես որ մի անհանգստացեք, որ այն չափազանց մռայլ է: Ես այն փորձարկել եմ 3.3 վոլտ լարման դեպքում, ընթացիկ սպառումը `0.013 ամպեր, այնուհետև 5 վոլտ -ի համար ընթացիկ սպառումը 0.023 ամպեր էր: Դուք կարող եք այս տախտակը սնուցել հետևի 5 վոլտ ուղիղ հոսանքով կամ հետևի միկրո USB միակցիչով: Ես կարող էի սա միացնել նոութբուքիս և միացնել այն: Հետևում կա նաև այլ էներգիայի աղբյուրներով այն առավելագույնը 30 վոլտ հզորացնելու տարբերակ, բայց դա վստահում է 78L05 5V կարգավորիչի տվյալների թերթին, ես դրան այնքան էլ չեմ մղի:

Խնդրում ենք կարդալ ամբողջ ուղեցույցը նախքան սա կառուցելը: Սովորեք իմ սխալներից, որովհետև հավատացեք ինձ, ես սովորաբար շատ բան եմ անում և կարող եմ կիսել իմ իմաստության մարգարիտները:

Եթե դուք հետաքրքրված եք նախապես պատրաստված PCB կամ պարզապես PCB- ն գնելու համար այցելեք իմ tindie խանութ:

Պարագաներ

Սկսենք այն բոլոր գործիքներից, որոնք ձեզ հարկավոր են այս զարդերից մեկը ինքներդ կառուցելու համար: Սա իրականում իմ մի քանի նախագծերից մեկն է, որը չի պահանջում զգալի քանակությամբ գործիքներ, ինչը հիանալի է ձեզ համար:

Գործիքներ

- gunերմային ատրճանակ (հիմնական գործիք)/զոդման սարք (սխալը շտկող)

- ESD պինցետ

- իզոպրոպիլային սպիրտ

- SMT տրաֆարետ (բարձր խորհուրդ է տրվում)

- Sոդման մածուկ (ես օգտագործում եմ ցածր ջերմաստիճանի առանց կապարի զոդման մածուկ, որը վաճառվում է ամազոնում)

Պարագաներ

- x10 WS2812 2020 լուսադիոդներ

- x1 Attiny85 միկրոկոնտրոլեր

- x11 0.1uf 0603 Կոնդենսատորներ

- x1 0.1uf 0402 կոնդենսատոր (կարող եք հեռանալ 0603 գլխարկով)

- x1 SMD Micro USB միակցիչ

- x1 1.5K Օմ դիմադրություն

- x1 4.7uf 0805 Կոնդենսատոր

- x1 78L05 5V կարգավորիչ

- x1 SOD123 դիոդ (ես օգտագործել եմ մետաղալար որպես փոխարինում, քանի որ դա անհրաժեշտ չէ, բայց խորհուրդը նախագծելիս մոռացել եմ հեռացնել այն)

- x2 SOD323 դիոդներ

- x2 66.5 Օմ դիմադրիչներ (Դուք կարող եք այստեղ օգտագործել նաև x2 24 Օմ դիմադրիչներ, կարծում եմ, որ ցանկացած համապատասխան զույգ իրականում կանի. մի մեջբերեք ինձ)

Ըստ ցանկության

- x1 24 Օմ դիմադրություն

- x1 30 Օմ դիմադրություն

(Սրանք լարման բաժանարարի համար են, եթե ցանկանում եք չափել ցածր լարման մոնիտորի մուտքային լարումը `ընդամենը տարբերակ)

Քայլ 1: Հավաքում

Ժողով
Ժողով
Ժողով
Ժողով
Ժողով
Ժողով
Ժողով
Ժողով

Հավաքման գործընթացը բավականին ուղիղ առաջ է ընթանում: Համոզվեք, որ դուք ճիշտ եք կողմնորոշում մասերը և չպետք է բախվեք խնդիրների հետ: Գիտե՞ք ինչ, եթե դուք ինձ նման եք, և առաջին անգամ բացարձակապես ոչինչ չի աշխատում… բառացիորեն ոչինչ, ես վերջում նետում եմ որոշ անսարքություններ:

Դե, նախևառաջ, ձեզ հարկավոր կլինի այդ տրաֆարետը … Ես կցել եմ 1: 1 մասշտաբի PCB PDF ֆայլը, որպեսզի կարողանաք այն պատկերել ձեր սեփական լազերային դանակի վրա: Եթե ձեզ հարկավոր է մեկ հատ, ուղարկեք ինձ, ես նույնպես դա կանեմ: Հակառակ դեպքում դա ձեռքով անելը ձեզ դարձնում է մեկ հմուտ բադա $ $:

Եթե դուք ունեք PCB- ներ պատրաստելու փորձ, այստեղ դուք կշարունակեք ապահովել ձեր շաբլոնը, տարածեք ձեր զոդման մածուկը, որը կստանաք: Նրանց համար, ովքեր երբեք դա չեն արել, անհանգստացեք, դիտեք YouTube- ի մեկ կամ երկու տեսանյութ: Համոզվեք, որ ձեր դասավորվածությունը կատարյալ է նախքան ձեր զոդման մածուկը և հեշտ կեղևով կիտրոնը քամելը տարածելը:

Գուշորեն հեռացրեք ձեր շաբլոնը և եկեք սկսենք մասեր տեղադրել !!

Դիտեք ձեր համար խնամքով գծված իմ նկարը ՝ պատրաստված սիրով և քնքուշ խնամքով:

- Մուգ մանուշակագույն = 0.1uf 0603

- Կապույտ = դիոդներ

- Լայմ Կանաչ = 4.7 uf 0805 (Կարող է օգտագործվել 0603, հավանաբար)

- Մանուշակագույն = մետաղալար կամուրջ

- Վարդագույն = Լարման բաժանարար դիմադրիչներ

- Կարմիր = WS2812C LED (դիտեք դրանց կողմնորոշումը, մուգ հատվածը կլինի ներքևում)

- դեղին = 78L05 5V կարգավորիչ 100 մԱ

Ուզու՞մ եք իմանալ, թե ինչի համար է նախատեսված մյուս դեղին նշումը: Համոզված ես? Դե… ՍԽԱԼ Է ԼԱՎ: Ազդանշանի հետքի մեջ ես սարսափելի հիմք դրեցի, բառիս բուն իմաստով OK- ի միջով շրխկացնելով: ԻՆՉՈ…… ՉԵՄ ԳԻՏԵԼ:

Ես շեղվում եմ: Hoursամեր շարունակ ցավոտ մազերս քաշելուց հետո ես հասկացա իմ սխալը: Այն շտկելու համար ես ստիպված էի ոչ միայն գետնով փորել, այլ տախտակի միջով աներևակայելի փոքր անցք բացել և ազդանշանի հետքը մի փոքր մետաղալարով միացնել: Ես օգտագործել եմ հեղուկ էլեկտրական ժապավեն `իմ սխալը ապահովելու և ծածկելու համար: Դուք չեք կարող այն շատ լավ տեսնել, երբ ծածկված է փառք Աստծո:

Ես նաև դա կուղղեմ, եթե ինձանից տախտակ գնեք, որպեսզի այնտեղ անհանգստություն չլինի:

Քայլ 2: Կոդավորում

Կոդավորում
Կոդավորում
Կոդավորում
Կոդավորում

Այս նախագիծը նախագծելուց առաջ ես մտածեցի. ՍԽԱԼ

Սրանք չեն օգտագործում նույն ժամանակը, ինչպես WS2812b LED- ները, այնպես որ կա ուսուցման կոր կամ սար `կախված կոդավորման հարմարավետությունից:

«Oh $ hit» աննշան պահից հետո ես գտա blogոշ Լևինի այս բլոգը: Այսպիսով, բղավեք նրան, որ օգնեց ինձ պարզել դա: Ես օգտագործեցի նրա ծածկագրի զգալի մասը և փոփոխեցի այն այս տախտակների հետ աշխատելու համար: Ստուգեք նրա բլոգը, եթե ցանկանում եք հասկանալ, թե ինչպես է աշխատում այս կոդը: Իմ տեղադրած ծածկագիրը ազդում է ծիածանի վրա: Դա հնարավոր է, այնպես որ պատրաստեք պինդ գույներ, եթե դա ձեր գործն է:

Մի աննշան բան այն է, որ ես չեմ կարող պարզել, թե ինչպես կարելի է մթնել LED- ները, քանի որ դրանք իսկապես պայծառ են: Գուցե ինչ -որ մեկը կարող է մեկնաբանություն թողնել և օգնել ինձ:

#ներառում #սահմանել NS_PER_CYCLE (NS_PER_SEC / CYCLES_PER_SEC) #սահմանել NS_TO_CYCLES (n) ((n) / NS_PER_CYCLE)

inline void sendBit (bool bitVal) {

if (bitVal) {asm volatile ("sbi %[port], %[bit] n / t" ".rept %[onCycles] n / t" "nop / n / t" ".endr / n / t "" cbi %[port], %[bit] n / t "".rept %[offCycles] n / t "" nop / n / t "".ndr / n / t ":: [նավահանգիստ]" I "(_SFR_IO_ADDR (PIXEL_PORT)), [bit]" I "(PIXEL_BIT), [onCycles]" I "(NS_TO_CYCLES (T1H) - 2), [offCycles]" I "(NS_TO_CYCLES (T1L) - 2));

} ուրիշ {

asm volatile ("sbi %[port], %[bit] n / t" ".rept %[onCycles] n / t" "nop / n / t" ".ndr / n / t" "cbi %[port], %[bit] n / t "".rept %[offCycles] n / t "" nop / n / t "".ndr / n / t ":: [նավահանգիստ]" I "(_SFR_IO_ADDR (PIXEL_PORT)), [bit] «I» (PIXEL_BIT), [onCycles] «I» (NS_TO_CYCLES (T0H) - 2), [offCycles] «I» (NS_TO_CYCLES (T0L) - 2));

} }

inline void sendByte (անստորագիր char բայթ) {for (unsigned char bit = 0; bit <8; bit ++) {sendBit (bitRead (byte, 7)); բայթ << = 1; }}

void ledsetup () {

bitSet (PIXEL_DDR, PIXEL_BIT); }

inline void sendPixel (unsigned char r, unsigned char g, unsigned char b) {

sendByte (g); // Neopixel- ը ցանկանում է գույներ կանաչ, ապա կարմիր, ապա կապույտ պատվիրել sendByte (r); sendByte (բ); }

դատարկ շոու () {

_delay_us ((RES / 1000UL) + 1); // Կլորացնել, քանի որ ուշացումը պետք է լինի _ առնվազն_ այսքան երկար (շատ կարճ կարող է չաշխատել, շատ երկար խնդիր չլինել)}

void showColor (unsigned char r, unsigned char g, unsigned char b) {

cli (); համար (int p = 0; p

8;

անստորագիր char քայլ = currentPixelHue & 0xff; անջատիչ (փուլ) {դեպք 0: sendPixel (~ քայլ, քայլ, 0); ընդմիջում; գործ 1: sendPixel (0, ~ քայլ, քայլ); ընդմիջում;

դեպք 2:

sendPixel (քայլ, 0, ~ քայլ); ընդմիջում; } currentPixelHue+= pixelAdvance; } sei (); ցուցադրում(); firstPixelHue += frameAdvance; }}

void setup () {

ledsetup (); }

դատարկ շրջան () {

rainbowCycle (1000, 10, 10); վերադարձ; }

Քայլ 3: Ամեն ինչ արված է

Ամեն ինչ արված է
Ամեն ինչ արված է
Ամեն ինչ արված է
Ամեն ինչ արված է
Ամեն ինչ արված է
Ամեն ինչ արված է

Հուսանք, որ այս պահին ամեն ինչ աշխատում է, բայց եթե դա այդպես չէ, եկեք ավարտենք որոշ անսարքություններով:

1. Տախտակը չի ճանաչվում Arduino- ի կողմից. Համոզվեք, որ տեղադրված է digispark գրադարանը և կարդում եք, թե ինչպես օգտագործել digispark տախտակները:

2. Կոդը չի վերբեռնվի. Դուք պետք է սեղմեք վերբեռնումը, այնուհետև մոդուլը միացրեք համակարգչին, բութ գիտեմ, բայց այդպես է աշխատում:

3. Տախտակը դեռ չի աշխատում. Համոզվեք, որ ձեր միկրո USB մալուխը թույլ է տալիս ինչպես տվյալներ, այնպես էլ հոսանք, ոչ բոլոր մալուխները: Դուք կարող եք պատկերացնել, որ ես դա պարզեցի դժվար ճանապարհով:

4. Դեռ ոչինչ. Ձեր դիոդները կարող են հետընթաց լինել. Ստուգեք մուլտիմետրով `ճիշտ կողմնորոշվելու համար:

5. irdրամեկուսացման տարօրինակ լուսադիոդներ - Կամ սա կոդի խնդիր է, կամ ձեր լուսադիոդներից մեկը պատշաճ կերպով նստած չէ ազդանշանի վրա:

6. Վերջին 3 LED- ները խառնված են - Ահ! Դուք բախվել եք իմ նախագծային սխալի հետ: Համոզվեք, որ գետինը հորատվել է `ազդանշանի և գետնի միջև բազմիմետր շարունակականությամբ ստուգելով: Ապա համոզվեք, որ ձեր կամուրջի մետաղալարը նույնպես մեկուսացված է գետնից:

7. Դեռևս կոտրված. Ես անկեղծորեն լուծումներից դուրս եմ, ուղարկեք ինձ:

Դե, հուսով եմ, որ դուք վայելել եք իմ Instructable- ը: Խնդրում ենք թողնել մեկնաբանություն, եթե դա արել եք:

Լավագույնը, Նիկ

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