フォト
2017年12月
          1 2
3 4 5 6 7 8 9
10 11 12 13 14 15 16
17 18 19 20 21 22 23
24 25 26 27 28 29 30
31            
無料ブログはココログ

« ATtiny13Aをシステムクロック16kHzで利用する | トップページ | Raspbian Jessie のGPIOまわりの利用権限 »

2016年1月17日 (日)

Arduino IDE 1.06にATtiny13A開発を構築

smeezekittyさんが公開している「Arduino core for Attiny13(core13_022_arduino_1_6.zip)」を
Arduino IDE 1.06環境に導入するための作業メモです。

はじめに
このモジュールを導入することで、Arduino IDE上にてAttiny13Aをターゲットとした開発が行えます。
ただし、別途書き込み機器(USBaspやArduinoISP等)が必要です。

蛇足:aitendoのATTiny ISPシールドきっと [K-TINY-SLD] なんかお手軽で良さそうです。
    説明が無いですがarduino経由でArduinoISPにて書込む形式のようです。

             05


smeezekittyさん公開モジュールはシステムクロックの128kHz、600kHz、1.2MHz、4.8MHz、9.8MHzのに対応しており、
ブートローダの書き込みによってヒューズビットの書き込みが行われます。

「Arduino core for Attiny13」は定期的に更新されており、現在のバージョンはV0.22です。
いくつかの関数がAttiny13用にメモリ消費を抑えるよう最適化されています。

必要とするモジュールおよび入手先
Core13 prealpha - Arduino core for Attiny13

関連情報
Arduino Forum >  Using Arduino >  Microcontrollers >  core13: An Arduino core for the Attiny13 *testers wanted*

導入手順
1)モジュールのダウンロードと解凍
  ・入手先のリンクのサイトからcore13_022_arduino_1_6.zipをダウンロードして解凍します。

2)モジュールのインストール
  ・Arduino IDE 1.0.6をインストールしたディレクトリの
      E:\Arduino\IDE\arduino-1.0.6\hardware\
   に、解凍したcore13モジュールの\attiny13にある \avrフォルダをコピーします。

  ・コピーしたavrフォルダの名前をattiny13に変更します。

  ・attiny13フォルダにあるboads.txtの内容を次の内容に変更します。   

attiny13a.name=Attiny 13A standalone 128khz
attiny13a.upload.maximum_size=1024
attiny13a.maximum_data_size=64
attiny13a.upload.speed=19200
attiny13a.bootloader.low_fuses=0x7b
attiny13a.bootloader.high_fuses=0xFF
attiny13a.build.mcu=attiny13
attiny13a.build.f_cpu=128000L
attiny13a.build.core=core13
#######################

attiny13b.name=Attiny 13A standalone 600khz
attiny13b.upload.maximum_size=1024
attiny13b.maximum_data_size=64
attiny13b.upload.speed=19200
attiny13b.bootloader.low_fuses=0x69
attiny13b.bootloader.high_fuses=0xFF
attiny13b.build.mcu=attiny13
attiny13b.build.f_cpu=600000L
attiny13b.build.core=core13
#######################

attiny13c.name=Attiny 13A standalone 1.2mhz
attiny13c.upload.maximum_size=1024
attiny13c.maximum_data_size=64
attiny13c.upload.speed=19200
attiny13c.bootloader.low_fuses=0x6a
attiny13c.bootloader.high_fuses=0xFF
attiny13c.build.mcu=attiny13
attiny13c.build.f_cpu=1200000L
attiny13c.build.core=core13

#######################
attiny13d.name=Attiny 13A standalone 4.8Mhz
attiny13d.upload.maximum_size=1024
attiny13d.maximum_data_size=64
attiny13d.upload.speed=19200
attiny13d.bootloader.low_fuses=0x79
attiny13d.bootloader.high_fuses=0xFF
attiny13d.build.mcu=attiny13
attiny13d.build.f_cpu=4800000L
attiny13d.build.core=core13
#######################
attiny13e.name=Attiny 13A standalone 9.6Mhz
attiny13e.upload.maximum_size=1024
attiny13e.upload.speed=19200
attiny13e.maximum_data_size=64
attiny13e.bootloader.low_fuses=0x7A
attiny13e.bootloader.high_fuses=0xFF
attiny13e.build.mcu=attiny13
attiny13e.build.f_cpu=9600000L
attiny13e.build.core=core13

これで完了です。
Arduino IDEのメニュー ツール - マイコンボードに
ATtiny13Aの 128kHz、600kHz、1.2MHz、4.8MHz、9.8MHzが追加されます。

ただし、利用する書き込み機器によっては低速クロックを指定した場合、
低速に対応していないために書き込みに失敗する場合があります。

私の手持ちのUSBaspでは600kHzまでしか書き込み出来ませんでした。
本家のUSBaspにはジャンパスイッチによるLow speed設定が出来るようですが、
私のものにはありません。自動調整機能があるようですが128kHzには対応していないようです。

また、デフォルトのArduinoISP(arduino IDEのスケッチを利用)の利用では1.2MHzでもエラーになりました。

低速クロックを利用する方法としては、私は「ArduinoISP slow SCK」を利用しています。
Arduino IDEにあるArduinoISPの代わりに使います。

入手先
ArduinoISP slow SCK - https://github.com/lmpipaon/ArduinoISP_slow_SCK

さらにこれをArduino IDEから利用するために
\hardware\arduinoフォルダにある programmers.txt の最後に次の内容を追加します。

arduinoisp_low.name=Arduino as ISP(low speed)
arduinoisp_low.communication=serial
arduinoisp_low.protocol=stk500v1
arduinoisp_low.speed=2400

これで書込装置のメニューに追加されます。

Ide01

書込み機器が低速に対応していないで、ブートローダを書きこんでエラーが発生すると
以後ATtiny13Aへの書き込みが出来なくなる場合があります。

この状態から復活するには高圧12Vでのヒューズビットのリセット(書き込み)をする必要があります。これについては「ATtiny13Aのヒューズビットのリセット」を参照して下さい。


« ATtiny13Aをシステムクロック16kHzで利用する | トップページ | Raspbian Jessie のGPIOまわりの利用権限 »

arduino」カテゴリの記事

ATtiny13A」カテゴリの記事

コメント

コメントを書く

(ウェブ上には掲載しません)

トラックバック

この記事のトラックバックURL:
http://app.cocolog-nifty.com/t/trackback/571408/63081052

この記事へのトラックバック一覧です: Arduino IDE 1.06にATtiny13A開発を構築:

« ATtiny13Aをシステムクロック16kHzで利用する | トップページ | Raspbian Jessie のGPIOまわりの利用権限 »