Attiny

**ATtiny** on Atmel Corporation poolt välja töötatud ja AVR mikrokontrollerite perekonda kuuluv mikrokontrollerite alamklass, kuhu kuuluvad kõik ATtiny kiibid. ATtiny mikrokontrollereid kasutatakse peamiselt spetsiifiliste ülesannete täitmiseks madala energia tarbega, väikestes ja odavates seadetes. 

Esimene ATtiny mikrokontroller tuli turule 1999. aastal ATtiny15L näol.

## Peamised omadused
ATtiny mikrokontrollerid on elektroonikaprojektide jaoks odav alternatiiv Arduino mikrokontrolleritele. Need pakuvad mitmeid eeliseid Arduinode ees. Väiksem suurus, madalam hind ja paremini optimeeritud spetsifikatsioonid paljudele projektidele. Peamised erinevused ATtiny ja Arduino mikrokontrollerite vahel on I/O-ühenduste, välkmälu, ADC sisendite ja PWM-väljundite arvus. Näiteks ATtiny84-l on 12 I/O-ühendust ja 8 KB välkmälu, samas kui Arduino Uno-l on 23 I/O-ühendust ja 32 KB välkmälu. ATtiny mikrokontrollereid saab programmeerida Arduino IDE abil ja paljude Arduino teekidega, muutes need Arduino kasutajate jaoks ühilduvaks ja kättesaadavaks valikuks. ATtinyl on väiksem välkmälu, seetõttu on koodi optimeerimine oluline. ATtinysid kasutatakse rohkem valmistoodetes, minimaalse ruumi kasutusega või massiliselt toodetavate projektide jaoks.

### ATtiny85 programmeerimine Arduino IDE keskkonnas
ATtiny85 programmeerimiseks on vaja järgnevaid komponente:

* Arduino Uno
* ATtiny85 mikrokontroller
* 10 μF kondensaator
* 220 Ω takisti
* LED tuli

Enne programmeerimist tuleb teha vastavad ühendused:

* Ühenda Arduino UNO +5V   ->   ATtiny Pin 8
* Ühenda Arduino UNO GND   ->   ATtiny Pin 4
* Ühenda Arduino UNO Pin 10   ->   ATtiny Pin 1
* Ühenda Arduino UNO Pin 11   ->   ATtiny Pin 5
* Ühenda Arduino UNO Pin 12   ->   ATtiny Pin 6
* Ühenda Arduino UNO Pin 13   ->   ATtiny Pin 7

Arduino UNO ettevalmistamine:

* Vali "Examples" lahtri alt "ArduinoISP" kood.
* Laadi "ArduinoISP" kood Arduino UNO peale.
* Peale koodi üles laadimist ühenda 10uF kondensaator GND ja *reset* jala vahele.

ATtiny programmeerimine: 

* Enne programmeerimist tuleb installeerida ATtiny Core failid. Selleks, et need saaks installeerida, tuleb Arduino failide kausta nimega "sketchbook" luua uus kaust (kui seal seda juba ei ole) nimega "hardware". Sellesse kausta tuleb lahti pakkida internetist laaditud ATtiny core faili arhiiv.
* Kui ATtiny core failid on lahti pakitud tuleb teha Arduino IDE keskkonnale taaskäivitus.
* Kui tegid kõik õigesti peab ilmuma "Board" valiku ATtiny kiibi valik. 
* Nüüd tuleb valida õige kiip (Tools -> Board -> ATtiny85 (w/ Arduino as ISP)) ja saab asuda koodi peale laadima. 

Esimeseks testiks sobib hästi Arduino Blink näidiskood:

* Ühenda ATtiny pin 5 läbi 220 ohm takisti LED tule gnd jala külge
* Ühenda LED tule pluss jalg -> +5V 
* Nüüd tuleb valida Arduino näididskoodidest "Blink Sketch"
* Muuda koodis pin number 13 -> 0
* Kompileeri ja laadi kood ATtiny kiibile.

Kui kõik õnnestus ja koodi üles laadimisel vigu ei tekkinud hakkab LED tuli vilkuma.  

 

### Veel võimalusi Attiny programmeerimiseks

* Digispark Bootloader: Digispark Bootloader on tarkvara, mis võimaldab programmeerida ATtiny85 kiipi otse USB kaudu ilma Arduino’ta.
* Microchip Studio: Microchip Studio on integreeritud arendusplatvorm, mis on mõeldud AVR ja SAM mikrokontrolleri rakenduste arendamiseks
* AVRDUDE: (AVR Downloader Uploader) on utiliitprogramm, mis on mõeldud Microchipi AVR mikrokontrollerite mälude allalaadimiseks ja üleslaadimiseks
* PlatformIO: PlatformIO on ristplatvormiline, ristarhitektuuriline, mitme raamistiku, professionaalne tööriist integreeritud süsteemide inseneridele ja tarkvaraarendajatele, kes kirjutavad rakendusi integreeritud toodetele.

## Viited


## Välislingid
* Pro Arduino
* Arduino Wearable Projects