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

Ինչպես միկրոկոնտրոլերի մի քանի կապում շատ լուսադիոդներ քշել. 6 քայլ (նկարներով)
Ինչպես միկրոկոնտրոլերի մի քանի կապում շատ լուսադիոդներ քշել. 6 քայլ (նկարներով)

Video: Ինչպես միկրոկոնտրոլերի մի քանի կապում շատ լուսադիոդներ քշել. 6 քայլ (նկարներով)

Video: Ինչպես միկրոկոնտրոլերի մի քանի կապում շատ լուսադիոդներ քշել. 6 քայլ (նկարներով)
Video: EBYTE LoRa մոդուլի ակնարկ և կազմաձևում 2024, Նոյեմբեր
Anonim
Ինչպես միկրոկոնտրոլերի մի քանի կապում քշել շատ լուսադիոդներ
Ինչպես միկրոկոնտրոլերի մի քանի կապում քշել շատ լուսադիոդներ

Օգտագործելով այն փաստը, որ միկրոկառավարիչի շատ կապում կա երեք վիճակ (+V, GND կամ «բարձր դիմադրություն»), դուք կարող եք N*(N-1) LED- ները քշել N կապումներից: Այսպիսով, PIC12Fxxx- ի կամ ATtiny11- ի նման փոքրիկ 8 պին միկրոկոնտրոլերը կարող է քշել 20 LED- ները միացնում են հինգ հասանելի ելքային կապերը, և դեռ մի պին մնում է ինչ-որ մուտքի համար: Տես նաև

Քայլ 1: 20 LED լուսարձակներ 5 կապում

20 LEDs 5 կապում
20 LEDs 5 կապում

Pinածր քորոցային միկրոկոնտրոլերների ընթացիկ բերքը (6 կապումից մինչև 20 կապում)

ամբողջ փաթեթը) գրավիչ գներով և «գեղեցիկ» են, բայց հարց է առաջանում, թե ինչպես կարող եք լավագույնս օգտագործել այդ կապանքները սովորական ծրագրերի համար, ինչպիսիք են LED- ները վարելը: Ուղղակի միացնող LED- ների մոտեցումը յուրաքանչյուր LED- ի համար սպառում է մեկ քորոց: Ավանդական մուլտիպլեքսավորման սխեմա, որտեղ LED անոդների տողերն առաջնորդվում են N կապանքների մեկ հավաքածուով, իսկ յուրաքանչյուր տողի ընդհանուր կաթոդն առաջնորդվում է M կապերի մեկ այլ շարքով, որը կարողանում է N+M կապոցներով լուսավորել N*M լուսադիոդներ: Այնուամենայնիվ, ընդամենը 5 կամ ավելի քիչ ելք ունեցող պրոցեսորի վրա (ինչպես դա տեղի է ունենում 8-փին միկրոկոնտրոլերների մեծ մասի դեպքում), սա հազիվ ձեզ ավելի շատ ելք է տալիս, քան ուղղակի սկավառակը:

Քայլ 2: Charlieplexing

Charlieplexing
Charlieplexing

Ենթադրելով, որ ելքային կապումներն իրականում եռակի են (ակտիվ բարձր, ակտիվ ցածր և բարձր անթույլատրելիություն (մուտքագրում)) հնարավոր է նաև կիսել տողերի և սյունակների վարորդները և վերահսկել N*(N-1) LED- ները միայն N կապումներով: Մեկ քորոցը միացված է LED- ների շարանի ընդհանուր և միացված կաթոդների հետ, իսկ մնացած N-1 կապումներն անոդներին են միացված և կամ բարձր են հոսում այդ սյունը լուսավորելու համար, կամ թողնում են որպես մուտքեր ՝ LED- ը թողնելու համար: Մաքսիմն այս տեխնիկան անվանում է «Charlieplexing» և նկարագրում այն (1) -ում; Միկրոչիպը դա նշում է նաև իրենց փաստաթղթում (2) (և լրացնում է նաև PICKit 1 տախտակը): (1) «Charlieplexing-Reduced Pin-Count LED Display Multiplexing» https://www.maxim-ic.com/appnotes: cfm/appnote_number/1880 (2) «Tips 'n Tricks 8-pin FLASH PIC Microcontrollers» https://ww1.microchip.com/downloads/en/DeviceDoc/40040b.pdf(3) Չարլիպլեքսավորման լուսադիոդներ- Տեսություն rgbphil

Քայլ 3: Գործի դնելը:

Գործի դնելը
Գործի դնելը
Գործի դնելը
Գործի դնելը

Սա ATtiny11- ից քշում է 20 LED: Այս տախտակի ավելի վաղ տարբերակն էր

իրականում կառուցված է և հայտնվում է որպես հիմնական էջի լուսանկար: Վախենում եմ, որ սխեմատիկ պատկերը բավականին անհույս է. Ձեզ անհրաժեշտ է, որ Արծիվը ձեզ ասի, թե որ ազդանշաններն են միացված որտեղ:

Քայլ 4: Ավելի փոքր և բազմակողմանի…

Ավելի փոքր և բազմակողմանի…
Ավելի փոքր և բազմակողմանի…

Քանի որ տախտակի մեծ մասը զբաղեցնում է LED զանգվածը, մենք կարող ենք տեղ ազատել

կա՛մ Attiny չիպի, կա՛մ միկրոչիպի PIC12F չիպի համար: Կրճատեք LED- ները մինչև 3 մմ և անցեք երկկողմանի տախտակ, և մենք ստանում ենք ինչ -որ բան մոտ 27x44 մմ: Ավաղ, այս տախտակը դեռ փորձարկված չէ…

Քայլ 5. Itty Bitty

Itty Bitty
Itty Bitty

Միկրոչիպն, իհարկե, ունի իր 6 փին PIC10F չիպերը, որոնք ունակ են վարել ա

ընդամենը 6 LED ՝ 3 ելքային կապումներից: Սա մոտ 16 մմ տրամագծով է: 603 LED- ների անցնելը թույլ է տալիս մի փոքր փոքրանալ, բայց ես չգիտեմ, թե որն է դրա իմաստը:

Քայլ 6: Softwareրագրակազմ

Serveրագրակազմը մի փոքր խառնաշփոթ է դառնում ծառայողական պատճառներով.

1) ցուցադրվող PCB- ների համար LED- ները տեղադրված են այնպես, ինչպես հարմար է PCB- ի դասավորությանը, այլ ոչ թե բիտերի «ճիշտ» կարգի: IMO, սա է ամեն ինչ անելու եղանակը, բայց դա նշանակում է, որ 1 -ին տողը պարտադիր չի նշանակում բիթ 1, կամ 3 -րդ բիթը չի նշանակում բիթ 3: Սա պահանջում է գծանշման մակարդակ սովորական տողի/սյունակի հասցեագրման և բիթեր, որոնք կարգավորման կարիք ունեն: 2) Քանի որ նույն բիթերն օգտագործվում են անոդների և կաթոդների համար, որոշ բիտերի ընդհանուր (տողային) կապը կարող է լինել քշված (սյունակ) բիթերի միջնամասում: Դա նշանակում է, որ դուք պետք է սյունակի բիթերը տեղաշարժեք ՝ կախված սյունակների այդ հավաքածուի տողի բիտից առաջ կամ հետո լինելուց: 3) Դուք պետք է ելքային բառեր բխեք ինչպես ioport- ի, այնպես էլ port- ի ուղղությունների գրանցամատյանի համար: ATtiny11- ի կցված ASM ծածկագիրը «հասկացության ապացույց» է: Embավեշտալիորեն չօպտիմալացված և վատ մեկնաբանված, բայց այն ամենը, ինչ ես գրել եմ մինչ այժմ:

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