Arduino jako ISP programátor levných ATtiny45 a ATtiny85
Tento tutoriál vám ukáže, jak naprogramovat AVR procesory ATtiny45 a ATtiny85 pomocí softweru a hardweru Arduino.
ATtiny45 a ATtiny85 jsou velmi malé (8mi pinové) a velmi levné (GME 48,- kč) AVR mikroprocesory, které jsou vhodné pro běh jednoduchých programů.
Jsou téměř totožné, pouze ATtiny85 má dvakrát větší pamět než ATtiny45, a proto může mít složitější programy.
ATtiny mají interní oscilátor, takže k rozeběhnutí stačí velmi málo externích součástek!!!
Co budeme potřebovat:
- Arduino NANO (s procesorem ATmega328 – ne starší desku s ATmega168)
- ATtiny45 nebo ATtiny85 (8-pin DIP)
- Nepájivé kontaktní pole
- Drátové propojky
- Kondenzátor 10uF
- Software Arduino (verze 0022 a vyšší) a plugin pro podporu ATtiny45/85
Zde je zapojení pinů ATtiny45 a ATtiny85:
Instalace pluginu ATtiny45 / ATtiny85 pro Arduino
- Najděte si složku „hardware“ v adresáři Arduino
- Rozbalte zazipovaný soubor
- Zkopírujte celý adresář „attiny45_85“ do složky „hardware“
- Restartujte vývojové prostředí ARDUINO
Nastavení Arduino na programátor "In-System programátor" (ISP) takto:
- Spusťte vývojové prostředí Arduino
- Otevřete ArduinoISP v menu příkladů (Examples)
- V menu tools vyberte board a nastavte sériový port, který odpovídá vašemu Arduinu
- Nahrajte ArduinoISP sketch do Vašeho Arduina
Připojte ATtiny k Arduinu:
- ATtiny Pin 2 (vývod 7) na Arduino Pin 13 (SCK)
- ATtiny Pin 1 (vývod 6) na Arduino Pin 12 (MISO)
- ATtiny Pin 0 (vývod 5) na Arduino Pin 11 (MOSI)
- ATtiny Pin RESET (vývod 1) na Arduino Pin 10 (RESET )
- ATtiny Pin VCC (vývod 8) na Arduino +5V
- ATtiny Pin GND (vývod 4) na Arduino GND
Připojíme také kondenzátor 10uF mezi PIN Reset a PIN GND na desce Arduina, jak je znázorněno na obrázku (pruh na kondenzátoru, který je označený záporným znaménkem -, by měl jít na GND).
Programování ATtiny45 a ATtiny85
Nyní můžeme požívat Arduino jako ISP programátor a nahrát program do ATtiny45/85:
- Otevřete příklad „Blink“ , najdete ho ve File – Examples – Basics - Blink.
- Změňte v programu PIN 13 na PIN 0.
- Zvolte "ATtiny45 (w / Arduino jako ISP)" nebo "ATtiny85 (w / Arduino jako ISP)" z nabídky Tools – Board (ponechte sériový port nastaven na vaše Arduino).
- Nahrajte sketch s příkladem Blink do ATtiny
Pravděpodobně se objeví následující zpráva, ale nebojte se, program se nahrál a bude pracovat:
avrdude: please define PAGEL and BS2 signals in the configuration file for part ATtiny85
avrdude: please define PAGEL and BS2 signals in the configuration file for part ATtiny85
Nyní odpojte kondenzátor 10uF a připojte LED a uvidíme, jestli bliká.
Následující Arduino příkazy by měly být podporovány:
- pinMode ()
- digitalWrite ()
- digitalRead ()
- analogRead ()
- analogWrite ()
- shiftOut ()
- pulseIn ()
- Millis ()
- Micros ()
- delay ()
- delayMicroseconds ()
Nejsem autorem tohoto "vynálezu", čerpal jsem zde: http://hlt.media.mit.edu/?p=1229. Já jsem pouze popsaný postup vyzkoušel a článek jsem přeložil do českého jazyka.
Mohu řící, že vše funguje opravdu perfektně, do 10 minut máte hotový projekt, tak jak je dobrým zvykem u Arduina. Vše funguje na první zapojení bez jakýchkoliv záludností.
ZPĚT