Satura rādītājs:

Mainiet LED krāsas, izmantojot POT un ATTINY85: 3 soļi
Mainiet LED krāsas, izmantojot POT un ATTINY85: 3 soļi

Video: Mainiet LED krāsas, izmantojot POT un ATTINY85: 3 soļi

Video: Mainiet LED krāsas, izmantojot POT un ATTINY85: 3 soļi
Video: Урок 99. Создание цифровых часов Arduino с использованием ЖК-дисплея DS3231 и семисегментного дисплея. 2024, Jūlijs
Anonim
Mainiet LED krāsas, izmantojot POT un ATTINY85
Mainiet LED krāsas, izmantojot POT un ATTINY85
Mainiet LED krāsas, izmantojot POT un ATTINY85
Mainiet LED krāsas, izmantojot POT un ATTINY85
Mainiet LED krāsas, izmantojot POT un ATTINY85
Mainiet LED krāsas, izmantojot POT un ATTINY85

Šajā projektā mēs izmantojam potenciometru (POT), lai mainītu gaismas diodes krāsas, izmantojot ATTINY85.

Dažas definīcijas -

Potenciometrs ir ierīce ar nelielu skrūvi / pagrieziena mehānismu, kas, pagriežot, izdala dažādas elektriskās pretestības. No iepriekš norādītā attēla var redzēt, ka POT ir 3 tapas, proti, +, - un izvade. POT tiek darbināts, pievienojot + un - tapas attiecīgi vcc un zemei pie barošanas avota. Pagriežot POT skrūvi, izejas pretestība mainās un izraisa gaismas diodes intensitātes samazināšanos vai palielināšanos.. Citiem vārdiem sakot, tas ir mainīgs rezistors. Tos izmanto tādās lietās kā mājas gaismas regulētāji.

LED - Šī ir maza gaisma, kas iedegas, kad elektriskā strāva iet tai cauri. Šajā gadījumā mēs izmantosim daudzkrāsainu gaismas diodi, kurai ir 3 tapas, viena zeme (vidū) un divas tapas, kas aktivizēšanas laikā ir attiecīgi zaļas un sarkanas.

ATTINY85-šī ir neliela lēta mikroshēma, kuru varat programmēt kā Arduino.

Pārskats - POT izeja ir pievienota ATTINY85. Griežot POT skrūvi, pretestības starpība tiek izvadīta kā skaitlis no 0 līdz 255. ATTINY var to izmērīt un veikt dažādas darbības atkarībā no POT pretestības vērtības. Šajā gadījumā mēs to esam ieprogrammējuši, lai izveidotu savienojumu ar LED šādi.

Ja skaitlis ir lielāks par 170, pārslēdziet LED uz ZAĻU.

Ja skaitlis ir mazāks par 170, bet lielāks par 85, pārslēdziet LED uz SARKANO.

ja skaitlis ir mazāks par 85, ieslēdziet zaļo un sarkano gaismas diodi, kas rada oranžu krāsu.

BOM

1 x 3 kontaktu LED 1 x ATTINY 85

1 x POT (B100K)

1 x maizes dēlis un kabeļi

1 barošanas avots.

1. darbība: ATTINY85 programmēšana

Attiecībā uz ATTINY85 programmēšanu, lūdzu, skatiet manu iepriekšējo pamācību-https://www.instructables.com/id/15-Dollar-Attiny8…

Kods ir parādīts zemāk. Daži punkti, kas jāņem vērā, ir tas, ka divas ATTINY tapas, PB3, fiziskā tapa 2, PB2, fiziskā tapa 7 ir digitālajā režīmā pievienotas LED, lai mainītu krāsu. ATTINY tapa PB4, fiziskā tapa 3, ir savienota ar POT analogā režīmā, kas nozīmē, ka tā var nolasīt vērtības no 0 līdz 254. Es pielāgoju internetā atrasto kodu, tāpēc es atzīstu šo darbu. -

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 - ieeja POT // pb3 led pin 1 // pb2 led pin 3 // ATTINY 85 frekvence iestatīta iekšējā 8 MHz/* šī funkcija inicializē ADC

ADC prescaler piezīmes:

ADC prescaler ir jāiestata tā, lai ADC ievades frekvence būtu no 50 līdz 200 kHz.

Papildinformāciju skatiet 17.5. Tabulā "ADC prescaler izvēle" 17.13.2. Nodaļā "ADCSRA - ADC vadības un statusa reģistrs A" (140. un 141. lpp. Pilnā ATtiny25/45/85 datu lapā, Rev. 2586M – AVR – 07/ 10)

Derīgas prescaler vērtības dažādiem pulksteņa ātrumiem

Pulkstenis Pieejamās prescaler vērtības --------------------------------------- 1 MHz 8 (125kHz), 16 (62,5 kHz) 4 MHz 32 (125 kHz), 64 (62,5 kHz) 8 MHz 64 (125 kHz), 128 (62,5 kHz) 16 MHz 128 (125 kHz)

Zemāk esošajā piemērā iestatiet prescaler uz 128, lai mcu darbotos 8 MHz

(pārbaudiet datu lapā pareizās bitu vērtības, lai iestatītu prescaler) */

// 8 bitu izšķirtspēja

// iestatiet ADLAR uz 1, lai iespējotu kreisās nobīdes rezultātu (ir pieejami tikai biti ADC9.. ADC2) // tad 8 bitu rezultātiem pietiek ar ADCH lasīšanu (256 vērtības) DDRB | = (1 << PB3); // Piespraude ir iestatīta kā izeja. DDRB | = (1 << PB2); // Piespraude ir iestatīta kā izeja. ADMUX = (1 << ADLAR) | // kreisās maiņas rezultāts (0 << REFS1) | // Komplekti ref. spriegums līdz VCC, 1. bits (0 << REFS0) | // Komplekti ref. spriegums līdz VCC, bits 0 (0 << MUX3) | // ievadīšanai izmantojiet ADC2 (PB4), MUX bitu 3 (0 << MUX2) | // ievadīšanai izmantojiet ADC2 (PB4), MUX bitu 2 (1 << MUX1) | // ievadīšanai izmantojiet ADC2 (PB4), MUX bitu 1 (0 << MUX0); // ievadīšanai izmantojiet ADC2 (PB4), MUX bitu 0

ADCSRA =

(1 << ADEN) | // Iespējot ADC (1 << ADPS2) | // iestatīt prescaler uz 64, 2. bitu (1 << ADPS1) | // iestatīt prescaler uz 64, 1. bitu (0 << ADPS0); // iestatīt prescaler uz 64, bitu 0}

int main (anulēts)

{initADC ();

kamēr (1)

{

ADCSRA | = (1 << ADSC); // sākt ADC mērīšanu, kamēr (ADCSRA & (1 << ADSC)); // pagaidiet, līdz konversija ir pabeigta

ja (ADCH> 170)

{PORTB | = (1 << PB3); // Piespraude iestatīta uz HIGH. PORTB | = (1 << PB2); // Piespraude iestatīta uz HIGH. } cits, ja (ADCH 85) {PORTB | = (1 << PB3); // Piespraude iestatīta uz HIGH. PORTB & = ~ (1 << PB2); // Piespraude iestatīta uz LOW

} vēl {

PORTB | = (1 << PB2); // Piespraude iestatīta uz HIGH. PORTB & = ~ (1 << PB3); // Piespraude iestatīta uz LOW

}

}

atgriezties 0;

}

2. solis: ķēde

Ķēde
Ķēde

ATTINY tapas

PB3, fiziskā tapa 2 - pievienota LED tapa 1

PB4, fiziskā tapa 3, ir savienots ar vidējo tapu POT

GND, fiziskā tapa 4, ir savienota ar negatīvo sliedi - barošanas avotu

PB2, fiziskā tapa 7 - pievienota LED tapa 3

VCC, fiziskā tapa 8, ir savienota ar pozitīvo sliedi - barošanas avotu

POT

pos un neg tapa savienota ar attiecīgajām sliedēm - barošanas avots.

LED

vidējā tapa, kas savienota ar negatīvo sliedi - barošanas avots

Es eksperimentēju, izmantojot 3 un 3,3 voltu barošanas avotu, un abi strādāja.

3. solis: secinājums

Secinājums
Secinājums

ATTINY85 spēja pārvietoties starp analogo un digitālo režīmu ir ļoti spēcīga, un to var izmantot daudzās dažādās lietojumprogrammās, piem. braukt ar mainīga ātruma motoriem un radīt mūzikas notis. Es to izpētīšu turpmākajos norādījumos. Es ceru, ka jums tas šķita noderīgi.

Ieteicams: