ATTinyとは、Atmel社が製造しているAVRマイコンの中でも低消費電力マイコンのシリーズになります。
AVRマイコンといえば、Arduinoが採用しているATMegaシリーズが有名ですが、それよりも小型で4〜18ピンほどの小さなマイコンです。
とはいえ、低消費電力なのでちょっとしたものを作るのには大変便利なマイコンになりますし、動作電圧が低い(1.8V〜)ため乾電池でも簡単に動かすことができます。
例えばメイカーフェアとかだと、LED付きアクセサリの制御とかに使用されているのを見たことがあります。
これは、ATTiny13。秋月電子通商で50円で売ってます。
さらに便利なことに、ATTinyマイコンはArduinoから書き込みができます。つまり、Arduinoを持っていればすぐに開発を始めることができるのです。
便利〜!とうことで、今回はATTinyの開発環境構築についてです。
<開発環境>
・Arduino UNO
・Arduino IDE 1.8.2
1.ArduinoをAVRライタにする
まずは、ArduinoUNOをISPライタにします。
ArduinoIDEを起動して[ファイル]→[スケッチの例]→[ArduinoISP]→[ArduinoISP]を開きます。
これを普通に書き込みます。
2.ArduinoIDE用開発環境をダウンロード
これについては、下記を参考にさせていただきました。
http://make.kosakalab.com/avr/most_strong_attiny-dev_env/
ATTiny用の開発環境をgithubで公開されている方がいますので、そこからダウンロードしてきます。
・ATTiny 1634,828,x313,x4,x41,x5,x61,x7,x8
https://github.com/SpenceKonde/ATTinyCore/
・ATTiny 13
https://github.com/MCUdude/MicroCore
ダウンロードしたファイルを解答し、arudiono/hardwareフォルダ以下に配置します。(hardwareフォルダがない場合は作成して下さい)
ArduinoIDEを再起動すると[ツール]→[ボード]にATTinyシリーズが追加されていれば問題ありません。
3.書き込み
3.1配線
ArduinoとATTinyマイコンを下記の通りに接続します。下記はATTiny13Aの場合です。
Arduino側 → ATTiny側
+5V → VDD
GND → GND
SCK(Digital 13) → SCK
MISO(Digital 12) → MISO
MOSI(Digital 11) → MOSI
SS(Digital 10) → RESET
3.2書き込みの設定
ボード:”ATtiny13″
B.O.D:”2.7v” (リセット電圧)
Clock:”9.6MHz”(外付けなしならinternalを選択)
シリアルポート:Arduino接続ポート
書き込み装置:”Arduino as ISP” !注意:Arduino ISPではない!
3.3書き込み
下記スケッチを書き込みます。
#define PIN 4 #define DTIME 500 void setup() { pinMode(PIN, OUTPUT); } void loop() { digitalWrite(PIN, HIGH); delay(DTIME); digitalWrite(PIN, LOW); delay(DTIME); }