2025 Autor: John Day | [email protected]. Naposledy změněno: 2025-01-23 14:38
V tomto projektu používáme potenciometr (POT) ke změně barev v LED pomocí ATTINY85.
Některé definice -
Potenciometr je zařízení s malým šroubovým / otočným mechanismem, které při otočení vydává různé elektrické odpory. Z komentovaného obrázku výše vidíte, že POT má 3 piny, konkrétně +, - a výstup. POT je napájen připojením pinů + a - k vcc a uzemnění na napájecím zdroji. Otáčením šroubu POT se výstupní odpor mění a způsobuje snižování nebo zvyšování intenzity LED.. Jinými slovy, je to proměnný odpor. Používají se v takových věcech, jako jsou domácí stmívače světla.
LED - Jedná se o malé světlo, které se rozsvítí, když jím prochází elektrický proud. V tomto případě použijeme vícebarevnou LED, která má 3 piny, jeden uzemňovací (střední) a dva piny, které se při spuštění zobrazují zeleně a červeně.
ATTINY85-to je malý nízkonákladový mikročip, který můžete programovat jako Arduino.
Přehled - Výstup z POT je připojen k ATTINY85. Při otáčení šroubem POT vychází rozdílový odpor jako číslo mezi 0 a 255. ATTINY to může měřit a provádět různé akce v závislosti na hodnotě odporu POT. V tomto případě jsme jej naprogramovali tak, aby se připojil k LED následovně.
Pokud je číslo větší než 170, přepněte LED na ZELENOU.
Pokud je číslo menší než 170, ale větší než 85, přepněte LED na ČERVENOU.
pokud je číslo menší než 85, zapněte LED ZELENOU A ČERVENOU, což má za následek ORANŽOVOU.
BOM
1 x 3 pin LED 1 x ATTINY 85
1 x POT (B100K)
1 x prkénko a kabely
1 napájecí zdroj.
Krok 1: Programování ATTINY85
Pokud jde o programování ATTINY85, podívejte se na můj předchozí instruktáž-https://www.instructables.com/id/15-Dollar-Attiny8…
Kód je uveden níže. Některé body je třeba poznamenat, že dva ATTINY piny, PB3, fyzický pin 2, PB2, fyzický pin 7 jsou připojeny v digitálním režimu k LED pro změnu barvy. ATTINY pin PB4, fyzický pin 3, je připojen k POT v analogovém režimu, což znamená, že dokáže číst hodnoty mezi 0 a 254. Přizpůsobil jsem kód, který jsem našel na internetu, takže tuto práci uznávám. -
neplatné 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 - vstup pro POT // pb3 LED pin 1 // pb2 led pin 3 // ATTINY 85 frekvence nastavena na interní 8 MHz/* tato funkce inicializuje ADC
Poznámky k předběžnému měření ADC:
ADC Prescaler je třeba nastavit tak, aby byla vstupní frekvence ADC mezi 50 - 200kHz.
Další informace naleznete v tabulce 17.5 „Výběr předřadníku ADC“v kapitole 17.13.2 „ADCSRA - ADC Control and Status Register A“(strany 140 a 141 v úplném datovém listu ATtiny25/45/85, rev. 2586M – AVR – 07/ 10)
Platné hodnoty prescaleru pro různé rychlosti hodin
Hodiny Dostupné hodnoty předzesilovače --------------------------------------- 1 MHz 8 (125kHz), 16 (62,5kHz) 4 MHz 32 (125kHz), 64 (62,5kHz) 8 MHz 64 (125kHz), 128 (62,5kHz) 16 MHz 128 (125kHz)
Níže uvedený příklad nastavte prescaler na 128 pro MCU běžící na 8MHz
(zkontrolujte správné bitové hodnoty v datovém listu, abyste mohli nastavit předzesilovač) */
// 8bitové rozlišení
// nastavte ADLAR na 1, aby byl povolen výsledek Left-shift (k dispozici jsou pouze bity ADC9.. ADC2) // pak pro 8bitové výsledky (256 hodnot) stačí pouze čtení ADCH | DDRB | = (1 << PB3); // Pin je nastaven jako výstup. DDRB | = (1 << PB2); // Pin je nastaven jako výstup. ADMUX = (1 << ADLAR) | // výsledek posunu doleva (0 << REFS1) | // Nastaví ref. napětí na VCC, bit 1 (0 << REFS0) | // Nastaví ref. napětí na VCC, bit 0 (0 << MUX3) | // použití ADC2 pro vstup (PB4), bit MUX 3 (0 << MUX2) | // použít ADC2 pro vstup (PB4), bit MUX 2 (1 << MUX1) | // použít ADC2 pro vstup (PB4), bit MUX 1 (0 << MUX0); // použití ADC2 pro vstup (PB4), bit MUX 0
ADCSRA =
(1 << ADEN) | // Povolit ADC (1 << ADPS2) | // nastavit prescaler na 64, bit 2 (1 << ADPS1) | // nastavit prescaler na 64, bit 1 (0 << ADPS0); // nastavit prescaler na 64, bit 0}
int main (neplatné)
{initADC ();
zatímco (1)
{
ADCSRA | = (1 << ADSC); // spuštění měření ADC while (ADCSRA & (1 << ADSC)); // počkejte na dokončení převodu
pokud (ADCH> 170)
{PORTB | = (1 << PB3); // Pin nastaven na VYSOKÝ. PORTB | = (1 << PB2); // Pin nastaven na VYSOKÝ. } else if (ADCH 85) {PORTB | = (1 << PB3); // Pin nastaven na VYSOKÝ. PORTB & = ~ (1 << PB2); // Pin nastaven na LOW
} else {
PORTB | = (1 << PB2); // Pin nastaven na VYSOKÝ. PORTB & = ~ (1 << PB3); // Pin nastaven na LOW
}
}
návrat 0;
}
Krok 2: Okruh
ATTINY piny
PB3, fyzický pin 2 - připojený LED pin 1
PB4, fyzický pin 3, je připojen ke střednímu POT POT
GND, fyzický pin 4, je připojen k záporné liště - napájení
PB2, fyzický pin 7 - připojený pin LED 3
VCC, fyzický kolík 8, je připojen ke kladnému napájecímu vodiči
HRNEC
pos a neg pin připojený k příslušným kolejnicím - napájení.
VEDENÝ
střední kolík připojený k záporné liště - napájení
Experimentoval jsem s použitím 3 a 3,3 voltového napájecího zdroje a oba fungovaly.
Krok 3: Závěr
Schopnost ATTINY85 přecházet mezi analogovým a digitálním režimem je velmi silná a lze ji použít v řadě různých aplikací, např. řízení motorů s proměnnými otáčkami a vytváření hudebních not. Prozkoumám to v budoucích instrukcích. Doufám, že jste to považovali za užitečné.
Doporučuje:
Výroba desek plošných spojů pomocí barvy fotorezistu a UV: 7 kroků (s obrázky)
Výroba desek plošných spojů pomocí barvy Photoresist a UV: Jak vyrobit kvalitní PCBI omluvu za fotografie s nízkým rozlišením, domov dvou PRO kamer. Obě kamery, které moje rodina vyňala z přípravy citypcb, se skládají z několika fází: 1. Připravte si PC program s EAGLE, Sprint-Layout, Prot
Změňte název náhlavní soupravy/reproduktoru/adaptéru Bluetooth nebo jiná nastavení pomocí UART: 8 kroků (s obrázky)
Změňte název náhlavní soupravy/reproduktoru/adaptéru Bluetooth nebo jiná nastavení prostřednictvím UART: Nemáte náhodou náhlavní soupravu Bluetooth nebo jiné zvukové příslušenství Bluetooth, které mají opravdu nechutný název a pokaždé, když je spárujete, máte vnitřní touhu změnit jejich název? I když důvody nejsou stejné, existuje
Změna barvy nočního světla pomocí Ardruino 101: 4 kroky (s obrázky)
Změna barvy nočního světla pomocí Ardruino 101: V tomto projektu budete vyrábět noční lampu pomocí ardruina, Adafruit neo rgb Strips a 3D tiskárny. Všimněte si, že tato nestrukturovatelná je čistě pro můj školní projekt. Kód pro tento projekt vychází z jiného projektu. Tím jsem řekl, že nejsem bývalý
Změňte úvodní obrazovku aplikace Mozilla Thunderbird: 3 kroky
Změnit úvodní obrazovku aplikace Mozilla Thunderbird: Stejně jako můžete změnit domovskou stránku v libovolném webovém prohlížeči, Mozilla Thunderbird vám také umožňuje vybrat webovou stránku, která se při spuštění zobrazí v oblasti prohlížení zpráv. To by mohlo být užitečné, můžete to ukázat zpravodajský web a podívejte se na novinky. Poté
RGB LED levná a snadná změna barvy nočního světla: 3 kroky
RGB LED levná a snadná změna barvy nočního světla: Tento projekt byl docela snadný, když jsem si hrál a přišel na to, což chvíli trvalo. Cílem je umět změnit barvu pomocí přepínače a mít také LED možnosti stmívání Toto jsou položky, které budete potřebovat ke