Tartalomjegyzék:

A LED színeinek cseréje POT és ATTINY85 használatával: 3 lépés
A LED színeinek cseréje POT és ATTINY85 használatával: 3 lépés

Videó: A LED színeinek cseréje POT és ATTINY85 használatával: 3 lépés

Videó: A LED színeinek cseréje POT és ATTINY85 használatával: 3 lépés
Videó: Как записать загрузчик Outseal PLC Nano на Arduino Nano 2024, November
Anonim
A LED színeinek cseréje POT és ATTINY85 segítségével
A LED színeinek cseréje POT és ATTINY85 segítségével
A LED színeinek cseréje POT és ATTINY85 segítségével
A LED színeinek cseréje POT és ATTINY85 segítségével
A LED színeinek cseréje POT és ATTINY85 segítségével
A LED színeinek cseréje POT és ATTINY85 segítségével

Ebben a projektben potenciométert (POT) használunk a LED színeinek megváltoztatására egy ATTINY85 segítségével.

Néhány definíció -

A potenciométer egy kis csavarral / esztergálószerkezettel rendelkező készülék, amely elfordításkor különböző elektromos ellenállásokat eredményez. A fenti megjegyzésekkel ellátott képen látható, hogy a POT -nak 3 csapja van, nevezetesen +, - és kimenet. A POT tápellátását a + és - csapok vcc -hez, illetve földeléshez való csatlakoztatása biztosítja. A POT csavar elforgatásával a kimeneti ellenállás megváltozik, és a LED intenzitását csökkenti vagy növeli.. Más szóval, ez egy változó ellenállás. Olyan dolgokban használják őket, mint az otthoni fényszabályozók.

LED - Ez egy kicsi fény, amely akkor világít, amikor az elektromos áram áthalad rajta. Ebben az esetben egy sokszínű LED -et fogunk használni, amelynek 3 érintkezője van, egy földelt (középső) és két érintkező, amelyek zölden és pirosan jelennek meg indításkor.

ATTINY85-ez egy kicsi, olcsó mikrochip, amelyet programozhat, mint egy Arduino.

Áttekintés - A POT kimenete csatlakoztatva van az ATTINY85 készülékhez. A POT csavar elforgatásakor a különbség -ellenállás 0 és 255 közötti számként jelenik meg. Az ATTINY ezt meg tudja mérni, és a POT ellenállás értékétől függően különböző műveleteket hajthat végre. Ebben az esetben az alábbiak szerint programoztuk be, hogy csatlakozzon a LED -hez.

Ha a szám nagyobb, mint 170, kapcsolja a Zöldre.

Ha a szám kevesebb, mint 170, de nagyobb, mint 85, kapcsolja a LED -et PIROSRA.

Ha a szám kevesebb, mint 85, kapcsolja be a ZÖLD ÉS PIROS LED -et, amely narancssárgát eredményez.

BOM

1 x 3 tűs LED 1 x ATTINY 85

1 db edény (B100K)

1 x kenyeretábla és kábelek

1 tápegység.

1. lépés: Az ATTINY85 programozása

Az ATTINY85 programozását illetően kérjük, olvassa el az előző utasításomat-https://www.instructables.com/id/15-Dollar-Attiny8…

A kód alább látható. Érdemes megjegyezni, hogy két ATTINY csap, a PB3, a fizikai 2. tű, a PB2, a 7. fizikai tű digitális módban csatlakozik a LED -hez a színváltozás érdekében. ATTINY PB4, fizikai 3. tű, analóg üzemmódban csatlakozik a POT -hez, ami azt jelenti, hogy 0 és 254 közötti értékeket tud leolvasni. Az interneten talált kódot személyre szabtam, így tudomásul veszem, hogy ez a munka. -

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 - bemenet a POT -hez // pb3 led pin 1 // pb2 led pin 3 // ATTINY 85 frekvencia a belső 8 MHz -en/* ez a funkció inicializálja az ADC -t

ADC prescaler megjegyzések:

Az ADC Prescalert úgy kell beállítani, hogy az ADC bemeneti frekvenciája 50-200 kHz között legyen.

További információért lásd a 17.5 "ADC prescaler Selections" táblázatot a 17.13.2 "ADCSRA - ADC Control and Status Register A" fejezetben (140. és 141. oldal a teljes ATtiny25/45/85 adatlapon, Rev. 2586M – AVR – 07/ 10)

Érvényes előskálázó értékek a különböző órajelekhez

Óra Elérhető előskálázási értékek --------------------------------------- 1 MHz 8 (125 kHz), 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)

Az alábbi példa állítsa az előskálázót 128 -ra a 8 MHz -en futó mcu -hoz

(az adatlapon ellenőrizze a megfelelő bitértékeket az előskálázó beállításához) */

// 8 bites felbontás

// állítsa az ADLAR értéket 1-re a bal oldali eltolás eredményének engedélyezéséhez (csak az ADC9.. ADC2 bitek állnak rendelkezésre) // akkor csak az ADCH olvasása elegendő a 8 bites eredményekhez (256 érték) DDRB | = (1 << PB3); // A tű kimenetként van beállítva. DDRB | = (1 << PB2); // A tű kimenetként van beállítva. ADMUX = (1 << ADLAR) | // bal eltolás eredménye (0 << REFS1) | // Beállítja a ref. feszültség VCC -hez, 1. bit (0 << REFS0) | // Beállítja a ref. VCC feszültség, 0 bit (0 << MUX3) | // ADC2 használata bemenethez (PB4), MUX bit 3 (0 << MUX2) | // ADC2 használata bemenethez (PB4), MUX bit 2 (1 << MUX1) | // ADC2 használata bemenethez (PB4), MUX bit 1 (0 << MUX0); // használjon ADC2 bemenetet (PB4), MUX bit 0

ADCSRA =

(1 << ADEN) | // ADC engedélyezése (1 << ADPS2) | // állítsa az előskálázót 64 -re, 2. bit (1 << ADPS1) | // állítsa az előskálázót 64 -re, bit 1 (0 << ADPS0); // állítsa az előskálázót 64 -re, bit 0}

int main (void)

{initADC ();

míg (1)

{

ADCSRA | = (1 << ADSC); // indítsa el az ADC mérést miközben (ADCSRA & (1 << ADSC)); // várjon, amíg a konverzió befejeződik

ha (ADCH> 170)

{PORTB | = (1 << PB3); // A tű HIGH -ra van állítva. PORTB | = (1 << PB2); // A tű HIGH -ra van állítva. } else if (ADCH 85) {PORTB | = (1 << PB3); // A tű HIGH -ra van állítva. PORTB & = ~ (1 << PB2); // Tű LOW -ra állítva

} más {

PORTB | = (1 << PB2); // A tű HIGH -ra van állítva. PORTB & = ~ (1 << PB3); // Tű LOW -ra állítva

}

}

visszatérés 0;

}

2. lépés: Áramkör

Áramkör
Áramkör

ATTINY csapok

PB3, fizikai tüske 2 - csatlakoztatott LED -es tű 1

A PB4, a 3. fizikai csap, a középső csap POT -hoz van csatlakoztatva

A GND, 4. fizikai csap, a negatív sínre van csatlakoztatva

PB2, 7. fizikai tű - csatlakoztatott LED -es tű 3

A VCC, 8. fizikai tüske, a pozitív sínre van csatlakoztatva

FAZÉK

pos és neg csap a megfelelő sínekhez csatlakoztatva - tápegység.

VEZETTE

középső csap csatlakozik a negatív sínhez - tápegység

Kísérleteztem 3 és 3,3 voltos tápegységgel, és mindkettő működött.

3. lépés: Következtetés

Következtetés
Következtetés

Az ATTINY85 képessége az analóg és a digitális üzemmód közötti váltásra nagyon erős, és számos különböző alkalmazásban használható, pl. változó fordulatszámú motorok meghajtása és hangjegyek készítése. Ezt a későbbi oktatóanyagokban fogom vizsgálni. Remélem, hasznosnak találta ezt.

Ajánlott: