Using the Arduino Uno to program ATTINY84-20PU
Using the Arduino Uno to program ATTINY84-20PU (Newark item # 68T3783). This Instructable shows how to use the Arduino platform to work with physically smaller processors, such as the ATtiny84 (84/44/24), ATtiny85 (85/45/25), and ATtiny2313. This example is specifically for the ATtiny84-20PU processor (Newark item # 68T3783) but can be adapted for the others boards by selecting the appropriate board from the Arduino software (i.e., Arduino IDE) and modifying the pinouts as required.
Step 1: Configure the Arduino IDE Software
1) Ensure the Arduino IDE is NOT running.
2) Create new folder named “tiny” in your Arduino “hardware” folder
3) Download the Arduino-Tiny archive (ZIP-file)
4) Copy and paste the contents of the ZIP-file into the “tiny” folder.
5) Create a new file named “boards.txt” in the tiny directory.
6) Open the “boards.txt” file and the “Prospective Boards.txt” file using a text editor.
7) Copy board entries of interest from “Prospective Boards.txt” to “boards.txt”. I simply copied the entire contents from “Prospective Boards.txt” to “boards.txt”.
8) Save and close “boards.txt”. Close “Prospective Boards.txt” (see picture for how the contents should look).
Step 2: Program the Arduino to Use as an In-System Programmer (ISP)
9 ) Open the Arduino IDE.
10) Select your Arduino board. I have the Arduino UNO but replaced the processor with a pre-programmed Atmega328P chip from Adafruit, which requires that I select “Arduino Duemilanove with ATmega328.”
At this point, you should see additional “boards” listed, such as all of the ATtiny boards that as in your “Boards.txt”. Do not select the ATtiny chip at this point. Select your Arduino board so that you can tell the Arduino that you want to use it as an In-System Programmer (ISP).
11) Select AVR ISP programmer by selecting [Tools] [Programmer] AVR ISP.
12) Upload the ArduinoISP sketch to your Arduino by selecting [File] [Examples] ArduinoISP.
Step 3: Create Blink Sketch for the Attiny84
13) Open sketch to be programmed onto Attiny84. This example uses the Blink sketch from the Arduino software.
[File] [Examples] [01.Basics] [Blink]
14) Edit the sketch so the LED pins correspond to the ATtiny84. That is, change “int led = 13;” to “int led = 0;“
For more detail: Using the Arduino Uno to program ATTINY84-20PU