Sadržaj:
Video: Promijenite boje LED -a pomoću POT i ATTINY85: 3 koraka
2024 Autor: John Day | [email protected]. Zadnja izmjena: 2024-01-30 08:08
U ovom projektu koristimo potenciometar (POT) za promjenu boja LED diode pomoću ATTINY85.
Neke definicije -
Potenciometar je uređaj s malim mehanizmom za zavrtnje / okretanje koji prilikom okretanja daje različite električne otpore. Na gornjoj označenoj slici možete vidjeti da POT ima 3 pina, naime +, -, i izlaz. POT se napaja spajanjem + i - pinova na vcc i uzemljenje na izvor napajanja. Kako se POT zavrtanj okreće, izlazni otpor se mijenja i uzrokuje smanjenje ili povećanje intenziteta LED diode.. Drugim riječima, to je promjenjivi otpornik. Koriste se u stvarima poput prigušivača svjetla kod kuće.
LED - Ovo je malo svjetlo koje svijetli kada kroz njega prođe električna struja. U ovom slučaju, koristit ćemo višebojnu LED diodu koja ima 3 pina, jedan uzemljeni (srednji) i dva pina koji pri pokretanju pokazuju zelenu i crvenu boju.
ATTINY85-ovo je mali jeftini mikročip koji možete programirati poput Arduina.
Pregled - Izlaz iz POT -a je spojen na ATTINY85. Kako se POT zavrtanj okreće, razlika otpora izlazi kao broj između 0 i 255. ATTINY to može izmjeriti i poduzeti različite radnje ovisno o vrijednosti POT otpora. U ovom slučaju, programirali smo ga za spajanje na LED na sljedeći način.
Ako je broj veći od 170, LED prebacite u ZELENU.
Ako je broj manji od 170, ali veći od 85, LED prebacite u CRVENU.
ako je broj manji od 85, uključite LED ZELENU I CRVENU što rezultira NARANČASTOM.
BOM
1 x 3 -polna LED1 x ATTINY 85
1 x POT (B100K)
1 x matična ploča i kablovi
1 napajanje.
Korak 1: Programiranje ATTINY85
Što se tiče programiranja ATTINY85, molimo vas da pogledate moje prethodne upute-https://www.instructables.com/id/15-Dollar-Attiny8…
Kôd je prikazan ispod. Treba napomenuti da su dva ATTINY pina, PB3, fizički pin 2, PB2, fizički pin 7 spojena, u digitalnom načinu, na LED kako bi se izvršila promjena boje. ATTINY pin PB4, fizički pin 3, spojen je na POT u analognom načinu rada, što znači da može čitati vrijednosti između 0 i 254. Prilagodio sam kôd koji sam pronašao na internetu pa potvrđujem da radi. -
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 - ulaz za POT // pb3 led pin 1 // pb2 led pin 3 // ATTINY 85 frekvencija postavljena na internih 8 MHz/* ova funkcija inicijalizira ADC
Napomene za ADC predskaler:
Predkaler ADC -a mora biti podešen tako da ulazna frekvencija ADC -a bude između 50 - 200kHz.
Za više informacija pogledajte tablicu 17.5 "Izbori pretkalerara ADC -a" u poglavlju 17.13.2 "ADCSRA - ADC kontrolni i statusni registar A" (stranice 140 i 141 na kompletnom podatkovnom listu ATtiny25/45/85, Rev. 2586M – AVR – 07/ 10)
Važeće vrijednosti predrazdjelnika za različite brzine takta
Sat Dostupne vrijednosti predkalerara --------------------------------------- 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)
Ispod primjera postavite predskaler na 128 za mcu koji radi na 8MHz
(provjerite u tablici podataka odgovarajuće vrijednosti bitova za postavljanje predskalera) */
// 8-bitna rezolucija
// postavite ADLAR na 1 da biste omogućili rezultat pomaka ulijevo (dostupni su samo bitovi ADC9.. ADC2) // tada je samo čitanje ADCH dovoljno za 8-bitne rezultate (256 vrijednosti) DDRB | = (1 << PB3); // Pin je postavljen kao izlaz. DDRB | = (1 << PB2); // Pin je postavljen kao izlaz. ADMUX = (1 << ADLAR) | // rezultat pomaka ulijevo (0 << REFS1) | // Setovi ref. napon na VCC, bit 1 (0 << REFS0) | // Setovi ref. napon na VCC, bit 0 (0 << MUX3) | // koristimo ADC2 za ulaz (PB4), MUX bit 3 (0 << MUX2) | // koristimo ADC2 za ulaz (PB4), MUX bit 2 (1 << MUX1) | // koristimo ADC2 za ulaz (PB4), MUX bit 1 (0 << MUX0); // koristimo ADC2 za ulaz (PB4), MUX bit 0
ADCSRA =
(1 << ADEN) | // Omogući ADC (1 << ADPS2) | // postavimo predskaler na 64, bit 2 (1 << ADPS1) | // postavimo predskaler na 64, bit 1 (0 << ADPS0); // postavio predskaler na 64, bit 0}
int main (void)
{initADC ();
dok (1)
{
ADCSRA | = (1 << ADSC); // započinje ADC mjerenje while (ADCSRA & (1 << ADSC)); // čekati da se konverzija dovrši
ako (ADCH> 170)
{PORTB | = (1 << PB3); // Pin postavljen na HIGH. PORTB | = (1 << PB2); // Pin postavljen na HIGH. } else if (ADCH 85) {PORTB | = (1 << PB3); // Pin postavljen na HIGH. PORTB & = ~ (1 << PB2); // Pin postavljen na LOW
} else {
PORTB | = (1 << PB2); // Pin postavljen na HIGH. PORTB & = ~ (1 << PB3); // Pin postavljen na LOW
}
}
return 0;
}
Korak 2: Krug
ATTINY pinovi
PB3, fizički pin 2 - spojen LED pin 1
PB4, fizički pin 3, spojen je na srednji pin POT
GND, fizički pin 4, spojen je na negativnu šinu - izvor napajanja
PB2, fizički pin 7 - spojen LED pin 3
VCC, fizički pin 8, spojen je na pozitivnu šinu - napajanje
POT
poz i neg pin spojeni na odgovarajuće šine - napajanje.
LED
srednji pin spojen na negativnu šinu - napajanje
Eksperimentisao sam sa napajanjem od 3 i 3,3 volta i oba su radila.
Korak 3: Zaključak
Sposobnost ATTINY85 za prebacivanje između analognog i digitalnog načina rada je vrlo moćna i može se koristiti u brojnim različitim aplikacijama, npr. upravljanje motorima promjenjive brzine i stvaranje muzičkih nota. Ovo ću istražiti u budućim instrukcijama. Nadam se da vam je ovo bilo korisno.
Preporučuje se:
Promijenite svoj OBD-II kabel da ne isprazni bateriju automobila: 5 koraka
Promijenite svoj OBD-II kabel kako se ne bi ispraznila baterija u automobilu: Odavno su sva vozila opremljena ugrađenim dijagnostičkim portom. Vrlo često je ovaj port dostupan kao OBD-II konektor. Postoji više uređaja koji mogu komunicirati pomoću ovog priključka, mnogi od njih su bazirani
Promijenite naziv Bluetooth slušalica/zvučnika/adaptera ili druge postavke putem UART -a: 8 koraka (sa slikama)
Promijenite naziv Bluetooth slušalica/zvučnika/adaptera ili druge postavke putem UART -a: Imate li slučajno par Bluetooth slušalica ili drugih Bluetooth audio dodataka koji imaju zaista odvratan naziv i svaki put kad ih uparite imate unutrašnju želju da promijenite ime? Čak i ako razlozi nisu isti, postoji
Brz i jednostavan način da promijenite zaključani ekran u 6 jednostavnih koraka (Windows 8-10): 7 koraka
Brz i jednostavan način da promijenite zaključani ekran u 6 jednostavnih koraka (Windows 8-10): Želite li promijeniti stvari na svom prijenosnom računaru ili računaru? Želite promjenu svoje atmosfere? Slijedite ove brze i jednostavne korake za uspješnu personalizaciju zaključanog ekrana računara
Promijenite dugme Start u operativnom sistemu Windows XP: 5 koraka
Promena dugmeta „Start“u operativnom sistemu Windows XP: U ovom vodiču korak po korak moći ćete da promenite tekst na dugmetu „Start“u bilo šta što želite
Otkrivanje boje pomoću RGB LED: 4 koraka
Otkrivanje boje pomoću RGB LED: Jeste li ikada poželjeli automatizirani način otkrivanja boje objekta? Osvjetljavanjem određene boje na objektu i gledanjem koliko se svjetlosti reflektira unatrag, možete odrediti koje je boje objekt. Na primjer, ako zasvijetlite crveno svjetlo o