ATtiny Programming Shield for Arduino TYWu. Reference Programming-Shield-for-Arduino-1/ .

27
ATtiny Programming Shield for Arduino TYWu

Transcript of ATtiny Programming Shield for Arduino TYWu. Reference Programming-Shield-for-Arduino-1/ .

Page 1: ATtiny Programming Shield for Arduino TYWu. Reference  Programming-Shield-for-Arduino-1/ .

ATtiny Programming Shield for Arduino

TYWu

Page 2: ATtiny Programming Shield for Arduino TYWu. Reference  Programming-Shield-for-Arduino-1/ .

Reference

• http://www.instructables.com/id/ATtiny-Programming-Shield-for-Arduino-1/

• http://highlowtech.org/?p=1695

Page 3: ATtiny Programming Shield for Arduino TYWu. Reference  Programming-Shield-for-Arduino-1/ .

Introduction

• This little circuit sits nicely ontop of an Arduino board

• Let you quickly plug in an ATtiny chip for programming using the Arduino "language" and IDE to write the code

• The Arduino board as an ISP programmer to upload the code to the tiny chip.

Page 4: ATtiny Programming Shield for Arduino TYWu. Reference  Programming-Shield-for-Arduino-1/ .

Step 1: Materials and Tools

Page 5: ATtiny Programming Shield for Arduino TYWu. Reference  Programming-Shield-for-Arduino-1/ .

Step 1: Materials and Tools

• Materials- Perforated circuit board- Male and female headers- Wire- 10uF capacitor- Arduino Uno

- ATtiny85

Page 6: ATtiny Programming Shield for Arduino TYWu. Reference  Programming-Shield-for-Arduino-1/ .

Step: Materials and Tools

• Tools- Cutter knife- Cutting mat- File- Wire cutters and stripper- Soldering iron- Helping hand

Page 7: ATtiny Programming Shield for Arduino TYWu. Reference  Programming-Shield-for-Arduino-1/ .

Step: Solder Circuit

• Wiring your ISP connectionATtiny         -----  ArduinoPin PB2 (SCK)   -----  Pin 13Pin PB1 (MISO)  -----  Pin 12Pin PB0 (MOSI)  -----  Pin 11Pin PB5 (Reset) -----  Pin 10Plus (VCC)    -----  +5VMinus (GND)   -----  GND

10uF Capcitor:Arduino pins: RESET ----||---- GND

Page 8: ATtiny Programming Shield for Arduino TYWu. Reference  Programming-Shield-for-Arduino-1/ .

Step: Solder Circuit

• Picture

Page 9: ATtiny Programming Shield for Arduino TYWu. Reference  Programming-Shield-for-Arduino-1/ .

Step: Solder Circuit

• Reference Picture

Page 10: ATtiny Programming Shield for Arduino TYWu. Reference  Programming-Shield-for-Arduino-1/ .

Step: Setup Arduino IDE

• Locate your Arduino sketchbook folder (you can find its location in the preferences dialog in the Arduino software)

• Create a new sub-folder called “hardware” in the sketchbook folder, if it doesn’t exist already.

• Copy the “attiny” folder (not the containing attiny-ide-1.6.x or attiny-1.0.x folder) from the unzipped ATtiny.zip to the “hardware” folder.

Page 11: ATtiny Programming Shield for Arduino TYWu. Reference  Programming-Shield-for-Arduino-1/ .

Step: Setup Arduino IDE

• File Preferences

Page 12: ATtiny Programming Shield for Arduino TYWu. Reference  Programming-Shield-for-Arduino-1/ .

Step: Setup Arduino IDE

• You should end up with folder structure like Documents > Arduino > hardware > attiny > avr that contains the file boards.txt and another folder called variants.

• For Arduino 1.0.x, the boards.txt and other files will be directly in the attiny folder, with no avr sub-folder.

Page 13: ATtiny Programming Shield for Arduino TYWu. Reference  Programming-Shield-for-Arduino-1/ .

Step: Setup Arduino IDE

• Example

Page 14: ATtiny Programming Shield for Arduino TYWu. Reference  Programming-Shield-for-Arduino-1/ .

Step: Setup Arduino IDE

• For Arduino 1.0.x, use the ide-1.0.x branch: https://github.com/damellis/attiny/tree/ide-1.0.x

• For Arduino 1.6.x, use the ide-1.6.x branch: https://github.com/damellis/attiny/tree/ide-1.6.x

Page 15: ATtiny Programming Shield for Arduino TYWu. Reference  Programming-Shield-for-Arduino-1/ .

Step: Setup Arduino IDE

• Snapshot

Page 16: ATtiny Programming Shield for Arduino TYWu. Reference  Programming-Shield-for-Arduino-1/ .

Step: Upload your program!

• Upload “ArduinoISP” to your Arduino– Open “ArduinoISP” sketch

from “Examples” folder– Select “Arduino Uno” from the

“Tools > Board” menu– Upload sketch

Page 17: ATtiny Programming Shield for Arduino TYWu. Reference  Programming-Shield-for-Arduino-1/ .

Step: Insert Solder Circuit

Page 18: ATtiny Programming Shield for Arduino TYWu. Reference  Programming-Shield-for-Arduino-1/ .

Step: Burn Bootloader

• Burn Bootloader– To set the clock speed of your ATtiny to be

faster (8Mhz) than the default 1 MHz.- Select “ATtiny85 (8 MHz)” from the “Tools > Board” menu- Select “Arduino as ISP“ from the “Tools > Programmer” menu- Select “Burn Bootloader” from the “Tools” menu

Page 19: ATtiny Programming Shield for Arduino TYWu. Reference  Programming-Shield-for-Arduino-1/ .

Step: Burn Bootloader

• Picture

Page 20: ATtiny Programming Shield for Arduino TYWu. Reference  Programming-Shield-for-Arduino-1/ .

Step: Burn Bootloader

• Picture

Page 21: ATtiny Programming Shield for Arduino TYWu. Reference  Programming-Shield-for-Arduino-1/ .

Step: Burn Bootloader

• Picture

Page 22: ATtiny Programming Shield for Arduino TYWu. Reference  Programming-Shield-for-Arduino-1/ .

Step: Upload your program

• Writing a Sketch for the ATtiny• Uploading a Sketch to the ATtiny

– Open the sketch you want to upload to ATtiny– Select “ATtiny85 (8 MHz)” from the “Tools >

Board” menu”– Select “Arduino as ISP“ from the “Tools >

Programmer” menu– Upload sketch

Page 23: ATtiny Programming Shield for Arduino TYWu. Reference  Programming-Shield-for-Arduino-1/ .

Quick Reference

• https://cdn.sparkfun.com/assets/a/f/1/8/0/Tiny_QuickRef.pdf

Page 24: ATtiny Programming Shield for Arduino TYWu. Reference  Programming-Shield-for-Arduino-1/ .

ATtiny85 Pinout

Page 25: ATtiny Programming Shield for Arduino TYWu. Reference  Programming-Shield-for-Arduino-1/ .

Example One

int blinkPin = 0;void setup() { pinMode(blinkPin, OUTPUT);}

void loop() { digitalWrite(blinkPin, HIGH); delay(500); digitalWrite(blinkPin, LOW); delay(500);}

Page 26: ATtiny Programming Shield for Arduino TYWu. Reference  Programming-Shield-for-Arduino-1/ .

Arduino Llibrary Support

• pinMode() • digitalWrite(), digitalRead()• analogRead(), analogWrite()• shiftOut()• pulseIn()• millis()• micros()• delay()• delayMicroseconds()• SoftwareSerial (has been updated in Arduino 1.0)• Not Serial

Page 27: ATtiny Programming Shield for Arduino TYWu. Reference  Programming-Shield-for-Arduino-1/ .

Reference

• http://hlt.media.mit.edu/?p=1706