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

Փոխեք LED գույները ՝ օգտագործելով զամբյուղ և ATTINY85: 3 քայլ
Փոխեք LED գույները ՝ օգտագործելով զամբյուղ և ATTINY85: 3 քայլ

Video: Փոխեք LED գույները ՝ օգտագործելով զամբյուղ և ATTINY85: 3 քայլ

Video: Փոխեք LED գույները ՝ օգտագործելով զամբյուղ և ATTINY85: 3 քայլ
Video: ՀԱՄԱՆԱՅԻՆ WIFI CCTV տեսախցիկ (մարդկանց, մեքենաների, կենդանիների հայտնաբերում) 2024, Նոյեմբեր
Anonim
Փոխեք LED գույները ՝ օգտագործելով զամբյուղ և ATTINY85
Փոխեք LED գույները ՝ օգտագործելով զամբյուղ և ATTINY85
Փոխեք LED գույները ՝ օգտագործելով զամբյուղ և ATTINY85
Փոխեք LED գույները ՝ օգտագործելով զամբյուղ և ATTINY85
Փոխեք LED գույները `օգտագործելով զամբյուղ և ATTINY85
Փոխեք LED գույները `օգտագործելով զամբյուղ և ATTINY85

Այս նախագծում մենք օգտագործում ենք պոտենցիոմետր (POT) ՝ LED- ում գույները փոխելու համար ՝ օգտագործելով ATTINY85:

Որոշ սահմանումներ -

Պոտենցիոմետրը փոքր պտուտակով / պտտման մեխանիզմ ունեցող սարք է, որն անջատելիս տալիս է տարբեր էլեկտրական դիմադրություններ: Վերևի ծանոթագրված պատկերից կարող եք տեսնել, որ POT- ն ունի 3 կապում, այն է ՝ +, -, և ելք: POT- ը սնուցվում է ` + և - կապումներն համապատասխանաբար vcc- ին և գետնին միացնելով սնուցման աղբյուրի վրա: Երբ POT պտուտակը պտտվում է, ելքային դիմադրությունը փոխվում է և առաջացնում LED- ի նվազում կամ ինտենսիվության բարձրացում:. Այլ կերպ ասած, դա փոփոխական դիմադրություն է: Դրանք օգտագործվում են այնպիսի իրերի մեջ, ինչպիսիք են տան լույսի լուսամփոփները:

LED - Սա փոքր լույս է, որը լուսավորում է, երբ էլեկտրական հոսանքը անցնում է դրանով: Այս դեպքում մենք կօգտագործենք բազմագույն LED, որն ունի 3 կապում, մեկ հիմք (մեջտեղում) և երկու կապում, որոնք միացման ժամանակ համապատասխանաբար կանաչ և կարմիր են ցույց տալիս:

ATTINY85-սա փոքր էժան միկրոչիպ է, որը կարող եք ծրագրավորել Arduino- ի նման:

Ակնարկ - Կաթսայից ելքը միացված է ATTINY85- ին: Երբ POT պտուտակը պտտվում է, տարբերության դիմադրությունը դուրս է գալիս որպես թիվ 0 -ից 255 -ի միջև: ATTINY- ն կարող է դա չափել և տարբեր գործողություններ կատարել `կախված POT- ի դիմադրության արժեքից: Այս դեպքում մենք ծրագրել ենք այն LED- ին միանալ հետևյալ կերպ.

Եթե համարը 170 -ից մեծ է, LED- ը փոխեք Կանաչի:

Եթե թիվը 170 -ից փոքր է, բայց 85 -ից մեծ է, LED- ը փոխեք ԿԱՐՄԻՐ:

եթե թիվը 85 -ից փոքր է միացրեք LED GREEN AND RED- ը, որի արդյունքում ստացվում է Նարնջագույն:

BOM

1 x 3 փին LED1 x ATTINY 85

1 x կաթսա (B100K)

1 x տախտակ և մալուխներ

1 էլեկտրամատակարարում:

Քայլ 1. ATTINY85 ծրագրավորում

Ինչ վերաբերում է ATTINY85- ի ծրագրավորմանը, խնդրում եմ անդրադառնալ իմ նախորդ ուսանելիին `https://www.instructables.com/id/15-Dollar-Attiny8…

Կոդը ներկայացված է ստորև: Որոշ կետեր պետք է նշել, որ երկու ATTINY կապում ՝ PB3, ֆիզիկական 2, PB2, ֆիզիկական կապ 7, թվային ռեժիմում միացված են LED- ին ՝ գույնի փոփոխություն կատարելու համար: ATTINY pin PB4, ֆիզիկական կապ 3, անալոգային ռեժիմում միացված է POT- ին, ինչը նշանակում է, որ այն կարող է կարդալ արժեքներ 0 -ից 254 -ի միջև: Ես հարմարեցրել եմ ինտերնետում գտած կոդը, որպեսզի ընդունեմ այդ աշխատանքը: -

void initADC () {// *** // *** Pinout ATtiny25/45/85: // *** PDIP/SOIC/TSSOP // *** ============= ================================================== ============================= // *** // *** (PCINT5/RESET/ADC0/dW) PB5 [1]* [8] VCC // *** (PCINT3/XTAL1/CLKI/OC1B/ADC3) PB3 [2] [7] PB2 (SCK/USCK/SCL/ADC1/T0/INT0/PCINT2) //* ** (PCINT4/XTAL2/CLKO/OC1B/ADC2) PB4 [3] [6] PB1 (MISO/DO/AIN1/OC0B/OC1A/PCINT1) // *** GND [4] [5] PB0 (MOSI/ DI/SDA/AIN0/OC0A/OC1A/AREF/PCINT0) // *** // pb4 - մուտքագրում POT // pb3 led pin 1 // pb2 led pin 3 // ATTINY 85 հաճախականությունը սահմանվում է ներքին 8 ՄՀց/* այս գործառույթը նախնականացնում է ADC- ն

ADC Prescaler Նշումներ.

ADC Prescaler- ը պետք է այնպես սահմանվի, որ ADC մուտքագրման հաճախականությունը լինի 50-200 կՀց -ի միջև:

Լրացուցիչ տեղեկությունների համար տե՛ս աղյուսակ 17.5 «ADC Prescaler Selections» բաժնում 17.13.2 «ADCSRA - ADC Control and Status Register A» (էջ 140 և 141 ամբողջական ATtiny25/45/85 տվյալների թերթիկում, Rev. 2586M – AVR – 07/ 10)

Presամացույցի տարբեր արագությունների համար նախալեզվային վավեր արժեքներ

Clամացույց Հասանելի նախալեզվային արժեքներ ------------------------------------------- 1 ՄՀց 8 (125 կՀց), 16 (62.5kHz) 4 MHz 32 (125kHz), 64 (62.5kHz) 8 MHz 64 (125kHz), 128 (62.5kHz) 16 MHz 128 (125kHz)

Ստորև բերված օրինակը նախածավալաչափը սահմանել է 128 ՝ 8 ՄՀց հաճախականությամբ աշխատող mcu- ի համար

(ստուգեք տվյալների թերթիկը `նախալեզվիչը սահմանելու համար բիթերի համապատասխան արժեքների համար) */

// 8-բիթանոց լուծում

// սահմանել ADLAR- ը 1-ի համար `ձախակողմյան տեղաշարժի արդյունքը (հասանելի են միայն ADC9.. ADC2 բիթերը) // այնուհետև միայն ADCH- ի ընթերցումը բավարար է 8-բիթանոց արդյունքների համար (256 արժեք) DDRB | = (1 << PB3); // Pin- ը սահմանվում է որպես ելք: DDRB | = (1 << PB2); // Pin- ը սահմանվում է որպես ելք: ADMUX = (1 << ADLAR) | // ձախ հերթափոխի արդյունք (0 << REFS1) | // Սահմանում է հղում լարումը դեպի VCC, բիթ 1 (0 << REFS0) | // Սահմանում է հղում լարումը դեպի VCC, բիթ 0 (0 << MUX3) | // մուտքագրման համար օգտագործեք ADC2 (PB4), MUX բիթ 3 (0 << MUX2) | // մուտքագրման համար օգտագործեք ADC2 (PB4), MUX բիթ 2 (1 << MUX1) | // մուտքագրման համար օգտագործեք ADC2 (PB4), MUX բիթ 1 (0 << MUX0); // մուտքագրման համար օգտագործեք ADC2 (PB4), MUX բիթ 0

ADCSRA =

(1 << ԱԴԵՆ] | // Միացնել ADC (1 << ADPS2) | // նախալեզվիչը սահմանել 64, բիթ 2 (1 << ADPS1) | // նախալեզվիչը սահմանել 64, բիթ 1 (0 << ADPS0); // նախալեզվիչը սահմանել 64, բիթ 0}

int հիմնական (անվավեր)

{initADC ();

մինչդեռ (1)

{

ADCSRA | = (1 << ADSC); // սկսել ADC չափումը մինչ (ADCSRA & (1 << ADSC)); // սպասեք մինչև փոխակերպումն ավարտվի

եթե (ADCH> 170)

{PORTB | = (1 << PB3); // Pin- ը սահմանվել է HIGH: PORTB | = (1 << PB2); // Pin- ը սահմանվել է HIGH: } else if (ADCH 85) {PORTB | = (1 << PB3); // Pin- ը սահմանվել է HIGH: PORTB & = ~ (1 << PB2); // Պին սահմանվել է OWԱOWՐ

} ուրիշ {

PORTB | = (1 << PB2); // Pin- ը սահմանվել է HIGH: PORTB & = ~ (1 << PB3); // Պին սահմանվել է OWԱOWՐ

}

}

վերադարձ 0;

}

Քայլ 2: Շղթա

Շրջան
Շրջան

ATTINY կապում

PB3, ֆիզիկական կապ 2 - միացված LED փին 1

PB4- ը, ֆիզիկական 3 -րդ կապը, միացված է միջին PIN POT- ին

GND- ը, ֆիզիկական 4 -րդ կապը, միացված է բացասական ռելսին `էլեկտրամատակարարմանը

PB2, ֆիզիկական կապում 7 - միացված LED փին 3

VCC- ն, ֆիզիկական 8 -րդ կապը, միացված է դրական ռելսին `էլեկտրամատակարարմանը

Կաթսա

pos և neg pin, որոնք կապված են համապատասխան ռելսերի հետ - էլեկտրամատակարարում:

LED

միջին քորոց `միացված բացասական երկաթուղու հետ - էլեկտրամատակարարում

Ես փորձարկեցի ՝ օգտագործելով 3 և 3.3 վոլտ էներգիայի աղբյուր և երկուսն էլ աշխատեցին:

Քայլ 3: Եզրակացություն

Եզրակացություն
Եզրակացություն

ATTINY85- ի անալոգային և թվային ռեժիմի միջև շարժվելու ունակությունը շատ հզոր է և կարող է օգտագործվել մի շարք տարբեր ծրագրերում, օրինակ. փոփոխական արագության շարժիչներ վարելը և երաժշտական նոտաներ ստեղծելը: Ես դա կուսումնասիրեմ ապագա հրահանգների մեջ: Հուսով եմ, որ սա օգտակար եք գտել:

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