ATtiny 系列是 Atmel 低功耗低成本的單晶片,適合應用於體積小 pin 腳需求少的專案使用,開發流程中通常先以 Arduino Uno 這類硬體資源較多的開發板做開發測試,開發完成後可移植到 ATTiny 上使用。由於燒錄 ATtiny 必須透過 SPI 介面,因此可透過 Arduino Uno 的 SPI 介面對ATtiny 進行燒錄,相信對於 Arduino 老玩家們而言是相當熟悉的流程。假如手上的開發板換成 Arduino Leonardo 需要做哪些更動呢?本篇說明如何透過 Arduino Leonardo 燒錄ATtiny85。
下圖為 ATtiny 25/45/85 的 Pin 腳定義(取自 http://www.atmel.com/):
階段一、新增 ATtiny 擴充包於 Arduino IDE
- 至 Arduino Tiny 選擇下載對應 IDE 版本的擴充包並解壓縮
- 將 Prospective Boards.txt 檔案更名為 boards.txt
- 複製 tiny 資料夾至 Arduino hardware 安裝路徑 {ARDUINO}/hardware/
- Mac OS 路徑: Application/Arduino/Contents/Java/hardware/
- Linux 路徑: /usr/share/arduino/hardware/
- 重新開啟 Arduino IDE,Tools -> Board 選單會出現 ATtiny 系列的選項
階段二、將 Arduino ISP firmware 下載至 Arduino Leonardo
- 開啟檔案 File -> Example -> ArduinoISP
- 修改適用於 Leonardo 的 ISP:
- #define RESET SS 改為 #define RESET 10
- #define LED_HB 9 改為 #define LED_HB 13
- 儲存上述修改為 ArduinoISP_Leonardo 供日後使用
- 下載 ISP 至 Arduino Leonardo,此時 Leonardo 即可作為 ISP 燒錄器使用
步驟三、連接ATtiny 與 Leonardo 開發板並下載程式至 ATtiny
- ATtiny 與 Leonardo 接線如下圖,完成下圖接線後將 Leonardo 透過 USB 接上電腦
- 設定 Tools -> Programmer -> Arduino as ISP
- 第一次使用的ATtiny 晶片須先燒錄 Bootload,選擇 Tools -> Burn Bootloader
- 接著開啟ATtiny 專案燒錄即可