ATtiny85 je majhen 8-bitni mikrokrmilnik, zasnovan za preproste krmilne naloge, kjer štejeta poraba prostora in energije. Združuje pomnilnik, časovnike, analogni vhod in serijsko komunikacijo v 8-pinskem ohišju. Ta članek ponuja podrobne informacije o specifikacijah, razporeditvi pinov, notranji strukturi, nastavitvah napajanja in takta, programiranju, vezjih in pogostih težavah.

Pregled ATtiny85
ATtiny85 je kompakten 8-bitni mikrokrmilnik, zasnovan za preproste krmilne naloge, kjer je treba prostor, porabo energije in število komponent ohranjati nizko. Njegova 8-pinska oblika pomaga zmanjšati velikost vezja, zapletenost ožičenja in stroške sistema, hkrati pa še vedno zagotavlja osnovno krmilno funkcionalnost.
Kljub dolgi prisotnosti na trgu ATtiny85 ostaja široko uporabljen zaradi svoje stabilnosti, močne dokumentacije in združljivosti z običajnimi razvojnimi orodji. Deluje v širokem razponu napetosti in podpira več možnosti takta, kar ga naredi primernega za kompaktne, nizkoenergijske zasnove, ki zahtevajo zanesljivo in predvidljivo delovanje.
Tehnične specifikacije ATtiny85
| Ne. of Pins | 8 |
|---|---|
| CPU | RISC 8-Bit AVR |
| Delovna napetost | 1,8 do 5,5 V |
| Programski pomnilnik | 8K |
| Tip pomnilnika programa | Flash |
| RAM | 512 bajtov |
| EEPROM | 512 bajtov |
| ADC Število ADC kanalov | 10-Bit 4 |
| Primerjalnik | 1 |
| Paketi | PDIP (8-pin) SOIC (8-pin) TSSOP (8-pin) QFN/MLF (20-pin) |
| Oscilator | do 20 MHz |
| Timer (2) | 8-bitni časovniki |
| Izboljšana moč pri ponastavitvi | Da |
| Časovnik za zagon moči | Da |
| I/O zatiči | 6 |
| Proizvajalec | Mikročip |
| SPI | Da |
| I2C | Da |
| Watchdog časovnik | Da |
| Zaznavanje izpada (BOD) | Da |
| Ponastavi | Da |
| USI (Univerzalni serijski vmesnik) | Da |
| Minimalna delovna temperatura | -40 C |
| Največja delovna temperatura | 125 C |
Konfiguracija pinov ATtiny85

| Pin | Ime | Glavne funkcije |
|---|---|---|
| 1 | PB5 | RESET, GPIO (če je varovalka zamenjana) |
| 2 | PB3 | GPIO, ADC |
| 3 | PB4 | GPIO, ADC |
| 4 | GND | Tla |
| 5 | PB0 | GPIO, PWM, MOSI |
| 6 | PB1 | GPIO, PWM, MISO |
| 7 | PB2 | GPIO, ADC, SCK |
| 8 | VCC | Napajanje |
ATtiny85 je na voljo v paketih PDIP-8 in QFN/MLF-20. Oba imata enako notranjo vezje, vendar se postavitev pinov razlikuje. Paket PDIP-8 razkriva le osnovne pine in je lažji za uporabo v osnovnih vezjih, medtem ko paket QFN/MLF-20 vključuje dodatne pine, označene kot nepriključene.
Večina pinov podpira več funkcij. En sam pin lahko deluje kot digitalni vhod ali izhod, bere analogne signale, generira PWM izhod ali podpira serijsko komunikacijo. Ta večfunkcijska zasnova omogoča, da ATtiny85 ostane majhen, hkrati pa ponuja prilagodljivost. PIN RESET je mogoče tudi nastaviti kot pin z menjavo nastavitev varovalke, vendar to odstrani zunanjo možnost ponastavitve.
ATtiny85 blok diagram

ATtiny85 je zgrajen okoli AVR procesorskega jedra, ki izvaja ukaze, shranjene v Flash pomnilniku. SRAM se uporablja za začasne podatke med delovanjem, medtem ko EEPROM shranjuje nehlapne podatke, ki jih je treba ohraniti ob izklopu napajanja. Števec programov, kazalec na sklad in registri upravljajo tok ukazov in obdelavo podatkov.
Časovne funkcije upravljata dva notranja 8-bitna časovnika in watchdog časovnik. Watchdog izboljša zanesljivost tako, da napravo ponastavi, če se normalno izvajanje programa ustavi. Notranji oscilator zagotavlja signal ure, centraliziran nadzor časa pa sinhronizira vse notranje module.
Vhodne in izhodne operacije se upravljajo preko registrov vrat, ki so neposredno povezani z zunanjimi pini. Naprava vključuje tudi analogna vezja, kot sta ADC in primerjalnik. Vsi notranji bloki so povezani preko skupnih podatkovnih poti, kar omogoča učinkovito komunikacijo med pomnilnikom, logiko procesiranja in vhodno-izhodnimi operacijami.
ATtiny85 nastavitve napajanja, ure in varovalk
• ATtiny85 vključuje notranji RC oscilator, ki omogoča delovanje brez zunanjih taktnih komponent.
• Zunanji viri ure ali kristali se lahko uporabijo, kadar je potrebna večja natančnost časovnega merjenja.
• Nastavitve varovalke nadzorujejo vir ure, zakasnitev zagona, stopnjo zaznavanja izpada in obnašanje RESET pina.
• Delovanje pri nižjih frekvencah zmanjšuje porabo energije in električni šum.
• Zaznavanje izpada zraka izboljša stabilnost pri nizkih napetostih napajanja, vendar rahlo poveča porabo toka.
Omejitve GPIO ATtiny85 in varno delovanje
• GPIO pini so namenjeni nadzoru signala in ne smejo zagotavljati napajanja zunanjim obremenitvam.
• LED diode, priključene na GPIO pine, potrebujejo upore za omejitev toka, da preprečijo poškodbe.
• Motorji, releji in druge naprave z visokim tokom morajo biti nadzorovane z zunanjimi tranzistorji ali MOSFET-i.
• Notranji pull-up upori so lahko omogočeni za poenostavitev povezav med gumbi in stikali.
• Vse napetosti GPIO morajo ostati znotraj določenih meja, da se preprečijo trajne poškodbe.
ATtiny85 ADC in analogne zmogljivosti
| Značilnost | Opis |
|---|---|
| ADC ločljivost | 10-bit |
| Vhodni kanali | Do 4 |
| Referenčne možnosti | VCC ali notranja referenca |
| Poseben način | Spanje z zmanjševanjem hrupa ADC |
ATtiny85 ima vgrajen analogno-digitalni pretvornik, ki meri spreminjajoče se napetostne ravni in jih pretvori v digitalne vrednosti. Kakovost merjenja je odvisna od stabilne referenčne napetosti, čistih napajalnih povezav in pravilnega usmerjanja signala. Uporaba načina ADC za zmanjševanje šuma pomaga zmanjšati notranji šum med pretvorbo, kar izboljša doslednost branja in splošno zanesljivost.
ATtiny85 serijska komunikacija z USI
ATtiny85 podpira serijsko komunikacijo prek univerzalnega serijskega vmesnika (USI). Ta prilagodljiv vmesnik je mogoče konfigurirati preko vdelane programske opreme za delovanje v načinu SPI ali podporo komunikaciji v slogu I²C. Z uporabo enega skupnega strojnega bloka naprava ohranja kompaktno velikost, hkrati pa omogoča osnovno izmenjavo podatkov.
Ker USI močno temelji na programskem nadzoru, je potrebno skrbno upravljanje časa. Primeren je za preproste in nizkohitrostne komunikacijske naloge, vendar ponuja manj avtomatizacijskih funkcij kot namenski SPI ali I²C periferni aparati, ki jih najdemo v večjih mikrokontrolerjih.
Programiranje ATtiny85 prek Arduino IDE

• ATtiny85 je mogoče programirati v Arduino IDE po namestitvi ATtiny-kompatibilnega jedra.
• Programiranje poteka z uporabo USB programerja ali Arduina, ki je nastavljen kot ISP.
• Nastavitve plošče v Arduino IDE morajo biti usklajene z izbrano frekvenco in delovno napetostjo ATtiny85.
• PIN-i, uporabljeni v kodi, se razlikujejo od fizične postavitve pinov, zato jih je treba pred ožičenjem natančno preveriti.
Minimalno zanesljivo ATtiny85 vezje

To vezje uporablja le osnovne komponente, potrebne za stabilno delovanje. Pini VCC in GND zagotavljajo napajanje, kar omogoča pravilno delovanje notranje logike. Notranji oscilator uravnava časovno usklajevanje, zato zunanji taktovni elementi niso potrebni.
LED dioda, povezana preko 47 Ω upornikov, prikazuje nadzor izhoda in hkrati ščiti tako LED kot GPIO pin. PIN RESET ostaja dostopen za ponovno programiranje ali zagon naprave. Z zelo malo zunanjimi komponentami ta postavitev zagotavlja preprosto in zanesljivo osnovo za osnovne aplikacije.
ATtiny85 Pogoste težave in hitri pregledi
| Problem | Kaj preveriti ali popraviti? |
|---|---|
| Nalaganje kode ni uspelo | Preverite ožičenje ponudnika interneta in potrdite nastavitev varovalke RESET |
| Nepravilna časovna usklajenost | Preverite izbrani vir ure in konfiguracijo varovalke |
| Nestabilni ADC odčitki | Izboljšajte ozemljitev in dodajte ustrezne decoupling kondenzatorje |
| Komunikacijske napake | Pregledaj USI nastavitve in časovne nastavitve |
| Pregrevanje zatičov | Znižajte tok obremenitve in uporabljajte zunanje gonilnike |
Zaključek
ATtiny85 združuje osnovne kontrolne funkcije v zelo kompaktni obliki. Njegove specifikacije, funkcije pinov, notranji bloki in nastavitve napajanja pojasnjujejo, kako deluje v resničnih vezjih. Ob pravilni obdelavi GPIO, uporabi ADC-jev, serijski postavitvi in minimalnem vezju je ATtiny85 mogoče jasno razumeti in uporabiti v stabilnih, nizkoenergijskih zasnovah.
Pogosta vprašanja [FAQ]
Koliko energije porabi ATtiny85?
Poraba energije je odvisna od napetosti napajanja, frekvence in aktivnih funkcij. Nižje frekvence in onemogočanje neuporabljenih perifernih naprav zmanjšujeta porabo toka.
Ali ATtiny85 potrebuje zunanjo uro?
Ne. ATtiny85 ima notranji RC oscilator in lahko deluje brez zunanjih taktnih komponent. Zunanji urnik je potreben le za večjo natančnost časovnega merjenja.
Ali se lahko PIN RESET uporabi kot običajen I/O pin?
Da. PIN RESET je mogoče konfigurirati kot GPIO z nastavitvami varovalke. To onemogoči standardno programiranje ISP in zahteva visokonapetostno programiranje za ponovno programiranje naprave.
Ali lahko ATtiny85 neposredno poganja motorje ali releje?
Ne. ATtiny85 GPIO pini so namenjeni samo nadzoru signala. Motorje in releje je treba gnati z zunanjimi tranzistorji ali MOSFET-i.
Zakaj so odčitki ATtiny85 ADC nestabilni?
Nestabilni odčitki ADC so običajno posledica šuma napajanja ali slabe ozemljitve. Dodajanje ustreznih decoupling kondenzatorjev in uporaba načina ADC Noise Reduction izboljšata stabilnost.