ATtiny85 je malý 8-bitový mikrokontrolér navrhnutý pre jednoduché riadiace úlohy, kde záleží na využití priestoru a energie. Kombinuje pamäť, časovače, analógový vstup a sériovú komunikáciu v 8-pinovom balení. Tento článok poskytuje podrobné informácie o jeho špecifikáciách, rozložení pinov, vnútornej štruktúre, nastavení napájania a hodín, programovaní, obvodoch a bežných otázkach.

Prehľad ATtiny85
ATtiny85 je kompaktný 8-bitový mikrokontrolér navrhnutý pre jednoduché riadiace úlohy, kde je potrebné udržiavať nízky priestor, spotrebu energie a počet komponentov. Jeho 8-pinový formát pomáha znižovať veľkosť obvodu, zložitosť zapojenia a náklady na systém, pričom stále poskytuje základné riadiace funkcie.
Napriek dlhej prítomnosti na trhu zostáva ATtiny85 široko používaný vďaka svojej stabilite, silnej dokumentácii a kompatibilite s bežnými vývojovými nástrojmi. Pracuje v širokom rozsahu napätia a podporuje viacero možností hodinového signálu, čo ho robí vhodným pre kompaktné, nízkoenergetické konštrukcie, ktoré vyžadujú spoľahlivé a predvídateľné správanie.
Technické špecifikácie ATtiny85
| Nie. kolkov | 8 |
|---|---|
| CPU | RISC 8-Bit AVR |
| Prevádzkové napätie | 1,8 až 5,5 V |
| Pamäť programu | 8K |
| Typ programovej pamäte | Flash |
| RAM | 512 bajtov |
| EEPROM | 512 bajtov |
| ADC Počet ADC kanálov | 10-Bit 4 |
| Komparátor | 1 |
| Balíky | PDIP (8-pin) SOIC (8-pin) TSSOP (8-pin) QFN/MLF (20-pin) |
| Oscilátor | až do 20 MHz |
| Časovač (2) | 8-bitové časovače |
| Vylepšené napájanie pri resete | Áno |
| Časovač zapnutia napájania | Áno |
| I/O piny | 6 |
| Výrobca | Mikročip |
| SPI | Áno |
| I2C | Áno |
| Watchdog časovač | Áno |
| Detekcia brownout (BOD) | Áno |
| Reset | Áno |
| USI (Univerzálne sériové rozhranie) | Áno |
| Minimálna prevádzková teplota | -40 C |
| Maximálna prevádzková teplota | 125 C |
Konfigurácia pinov ATtiny85

| Pin | Názov | Hlavné funkcie |
|---|---|---|
| 1 | PB5 | RESET, GPIO (ak sa poistka zmenila) |
| 2 | PB3 | GPIO, ADC |
| 3 | PB4 | GPIO, ADC |
| 4 | GND | Ground |
| 5 | PB0 | GPIO, PWM, MOSI |
| 6 | PB1 | GPIO, PWM, MISO |
| 7 | PB2 | GPIO, ADC, SCK |
| 8 | VCC | Napájanie |
ATtiny85 je dostupný v balení PDIP-8 a QFN/MLF-20. Oba majú rovnaké vnútorné obvody, ale usporiadanie pinov sa líši. Obal PDIP-8 odhaľuje iba základné piny a je jednoduchší na použitie v základných obvodoch, zatiaľ čo balík QFN/MLF-20 obsahuje ďalšie piny označené ako nepripojené.
Väčšina pinov podporuje viacero funkcií. Jeden pin môže slúžiť ako digitálny vstup alebo výstup, čítať analógové signály, generovať PWM výstup alebo podporovať sériovú komunikáciu. Tento multifunkčný dizajn umožňuje ATtiny85 zostať malý, pričom ponúka flexibilitu. PIN RESET je možné tiež nastaviť ako pin zmenou nastavení poistky, hoci tým sa odstraňuje externá možnosť resetu.
Blokový diagram ATtiny85

ATtiny85 je postavený na procesorovom jadre AVR, ktoré vykonáva inštrukcie uložené vo flash pamäti. SRAM sa používa na dočasné dáta počas prevádzky, zatiaľ čo EEPROM uchováva nevolatilné dáta, ktoré musia zostať zachované pri odpojení napájania. Programový čítač, ukazovateľ zásobníka a registre riadia tok inštrukcií a spracovanie dát.
Časové funkcie sú riadené dvoma internými 8-bitovými časovačmi a watchdog časovačom. Watchdog zvyšuje spoľahlivosť resetovaním zariadenia, ak sa bežné vykonávanie programu zastaví. Vnútorný oscilátor poskytuje hodinový signál a centralizované časové riadenie synchronizuje všetky vnútorné moduly.
Vstupné a výstupné operácie sú riadené cez portové registre priamo pripojené k externým pinom. Zariadenie tiež integruje analógové obvody, ako je ADC a komparátor. Všetky vnútorné bloky sú prepojené zdieľanými dátovými cestami, čo umožňuje efektívnu komunikáciu medzi pamäťou, logikou spracovania a I/O.
ATtiny85 nastavenia napájania, hodiny a poistky
• ATtiny85 obsahuje interný RC oscilátor, ktorý umožňuje prevádzku bez externých hodinových komponentov.
• Externé hodinové zdroje alebo kryštály môžu byť použité, ak je potrebná vyššia presnosť časovania.
• Nastavenia poistiek riadia zdroj hodín, oneskorenie pri štarte, úroveň detekcie výpadku nažlta a správanie pinu RESET.
• Prevádzka pri nižších taktoch znižuje spotrebu energie a elektrický šum.
• Detekcia brown-outu zlepšuje stabilitu pri nízkych napájacích napätiach, ale mierne zvyšuje odber prúdu.
Limity GPIO ATtiny85 a bezpečná prevádzka
• GPIO piny sú určené na riadenie signálu a nesmú dodávať napájanie externým záťažiam.
• LED pripojené k GPIO pinom vyžadujú rezistory obmedzujúce prúd, aby sa zabránilo poškodeniu.
• Motory, relé a iné zariadenia s vysokým prúdom musia byť riadené pomocou externých tranzistorov alebo MOSFETov.
• Vnútorné pull-up rezistory môžu byť zapnuté na zjednodušenie pripojenia medzi tlačidlami a prepínačmi.
• Všetky GPIO napätia musia zostať v špecifikovaných limitoch, aby sa predišlo trvalému poškodeniu.
ATtiny85 ADC a analógové schopnosti
| Funkcia | Popis |
|---|---|
| ADC rozlíšenie | 10-bitový |
| Vstupné kanály | Až do 4 |
| Referenčné možnosti | VCC alebo interná referencia |
| Špeciálny režim | ADC redukcia hluku spánok |
ATtiny85 má zabudovaný analógovo-digitálny prevodník, ktorý meria meniace sa úrovne napätia a prevádza ich na digitálne hodnoty. Kvalita merania závisí od stabilného referenčného napätia, čistých napájania a správneho smerovania signálu. Použitie režimu ADC Noise Reduction v spánku pomáha znížiť vnútorný šum počas konverzie, čo zlepšuje konzistenciu čítania a celkovú spoľahlivosť.
ATtiny85 Sériová komunikácia s USI
ATtiny85 podporuje sériovú komunikáciu prostredníctvom univerzálneho sériového rozhrania (USI). Toto flexibilné rozhranie je možné nakonfigurovať cez firmvér tak, aby fungovalo v režime SPI alebo podporovalo komunikáciu v štýle I²C. Použitím jedného zdieľaného hardvérového bloku si zariadenie udržiava kompaktnú veľkosť a zároveň umožňuje základnú výmenu dát.
Keďže USI sa silne spolieha na softvérové riadenie, je potrebné dôkladné riadenie času. Je vhodný na jednoduché a nízkorýchlostné komunikačné úlohy, ale ponúka menej automatizačných funkcií než špecializované periférie SPI alebo I²C, ktoré sa nachádzajú vo väčších mikrokontroléroch.
Programovanie ATtiny85 cez Arduino IDE

• ATtiny85 je možné naprogramovať v Arduino IDE po inštalácii jadra kompatibilného s ATtiny.
• Programovanie prebieha pomocou USB programátora alebo Arduina nastaveného ako ISP.
• Nastavenia dosky v Arduino IDE musia zodpovedať zvolenej frekvencii a prevádzkovému napätiu ATtiny85.
• PIN kódy používané v kóde sa líšia od fyzického rozloženia pinov, preto musia byť pred zapojením starostlivo overené.
Minimálny spoľahlivý ATtiny85 obvod

Tento obvod používa iba základné komponenty potrebné na stabilnú prevádzku. Piny VCC a GND zabezpečujú napájanie, čo umožňuje správnu funkciu vnútornej logiky. Vnútorný oscilátor riadi časovanie, takže nie sú potrebné žiadne externé hodinové komponenty.
LED pripojená cez rezistor 47 Ω demonštruje kontrolu výstupu a zároveň chráni LED aj GPIO pin. PIN RESET zostáva dostupný na preprogramovanie alebo reštart zariadenia. S veľmi malým počtom externých komponentov poskytuje toto nastavenie jednoduchý a spoľahlivý základ pre základné aplikácie.
ATtiny85 Bežné problémy a rýchle kontroly
| Problém | Čo skontrolovať alebo opraviť? |
|---|---|
| Nahrávanie kódu zlyhalo | Skontrolujte zapojenie ISP a potvrďte nastavenie poistky RESET |
| Nesprávne načasovanie | Overte vybraný zdroj hodín a konfiguráciu poistky |
| Nestabilné ADC hodnoty | Zlepšiť uzemnenie a pridať správne oddeľovacie kondenzátory |
| Komunikačné chyby | Skontrolujte nastavenia a časovanie USI |
| Prehrievanie pinov | Znížte záťažový prúd a použite externé komponenty ovládača |
Záver
ATtiny85 spája základné ovládacie funkcie vo veľmi kompaktnej podobe. Jeho špecifikácie, funkcie pinov, vnútorné bloky a nastavenia napájania vysvetľujú, ako funguje v reálnych obvodoch. Pri správnom spracovaní GPIO, použití ADC, sériovom nastavení a minimálnom obvode je možné ATtiny85 jasne pochopiť a aplikovať v stabilných, nízkoenergetických návrhoch.
Často kladené otázky [FAQ]
Koľko energie spotrebuje ATtiny85?
Spotreba energie závisí od napájacieho napätia, frekvencie taktu a aktívnych funkcií. Nižšie frekvencie a vypnutie nepoužívaných periférií znižujú spotrebu prúdu.
Potrebuje ATtiny85 externý hodinový signál?
Nie. ATtiny85 má vnútorný RC oscilátor a môže pracovať bez externých hodinových komponentov. Externé hodiny sú potrebné len pre vyššiu presnosť časovania.
Dá sa RESET pin použiť ako bežný I/O pin?
Áno. Pin RESET je možné nastaviť ako GPIO pomocou nastavení poistky. To deaktivuje štandardné programovanie ISP a vyžaduje vysokonapäťové programovanie na preprogramovanie zariadenia.
Môže ATtiny85 priamo poháňať motory alebo relé?
Nie. GPIO piny ATtiny85 slúžia len na ovládanie signálu. Motory a relé musia byť poháňané pomocou externých tranzistorov alebo MOSFETov.
Prečo sú hodnoty ATtiny85 ADC nestabilné?
Nestabilné hodnoty ADC sú zvyčajne spôsobené šumom napájania alebo zlým uzemnením. Pridanie správnych odpojovacích kondenzátorov a použitie režimu redukcie šumu ADC zlepšuje stabilitu.