2015.7.7 小山智史(弘前大学) AVRライター[pdf] 1. HIDaspx(ヒダピオ) ISPライター HIDaspxは千秋広幸氏が開発したAVRライタです[1]。「ヒダピオ」は浅田寿展氏が開発した制御学習教材で[2]、そのハードウェ ア部分(HIDaspxそのもの)が(株)トップマンから「ヒダピオ学習回路」として販売されているので[3]、ここではこれを用います。 インシステムで(マイコンが装置に組み込まれた状態で)書き込むタイプの「ISPライター」としました。マイコンに接続しやすいように ICクリップを用います。書き込み時には必ず回路の電源(電池)をオン状態にしておきます。 ライタソフトはHIDspxを用い、ヒダピオの場合は「-php」のオプションをつけます。書き込みは高速です。 (製作メモ) 部品表 名称 入手先等 ヒダピオ学習回路 6530-700 トップマン @1950 細ピンヘッダ 14P 秋月 @15 抵抗 1/4W 100Ω 4個 秋月 @100(100本) ICクリップ ITC-20A(ATtiny2313/4313用) 秋月 @1360 ICクリップ ITC-8A(ATtiny45/85用) 秋月 @480 リボンケーブル 5芯 千石 @273(6芯×1m) 細ピンヘッダに抵抗とケーブルを半田付け し、 リボンケーブル(5芯)でICクリップ(20P)に接 続 細ピンヘッダに抵抗とケーブルを半田付け し、 リボンケーブル(5芯)でICクリップ(8P)に接続 ヒダピオと接続し、テープで固定 ヒダピオと接続し、テープで固定 動作中のATtiny2313/4313に クリップで接続して書き込み ATtiny2313/4313用ISPライター 動作中のATtiny25/45/85に クリップで接続して書き込み ATtiny25/45/85用ISPライター ICの1番ピンの箇所には●印がついているので、方向を間違えないようにICクリップにも同じ箇所に●印をつけておきます。 1 2. HIDaspx(ヒダピオ) ZIPソケットライター 上と同じくHIDaspx(ヒダピオ)を使ったライターですが、ISPタイプではなく、AVRマイコンIC単体をICソケットに装着して書き込むタ イプです。プログラムが完成していて、組み立て前にプログラムを書き込みたい時にはこれがあると便利です。マイコンを装着しや すいようにゼロプレッシャーICソケット(ZIPソケット)を用います。 (製作メモ) 部品表 名称 入手先等 ヒダピオ学習回路 6530-700 トップマン @1950 ゼロプレッシャーICソケット 20P サトー電気 @350 ブレッドボード EIC-301 秋月 @190 ジャンパーワイヤ EIC-J-S 秋月 @250 L型ピンヘッダ 40P 秋月 @50 抵抗 1/4W 100Ω 4個 秋月 @100(100本) 細ピンヘッダ 14P 秋月 @15 以下の写真の方法で組み立てると、半田付けをしないですみます。 ブレッドボードに部品を配置・結線 L型ピンヘッダで接続するとライターが完成 2 3. Arduino UNO版 ArduinoISPライター Arduino開発環境(ArduinoIDE)の[スケッチの例]にあるArduinoISPをArduino UNOに書き込み、ArduinoをISPライタとして使う方法 です。ライタソフトはArduinoIDEにあるAvrdudeを使います。 (製作メモ) 部品表 名称 Arduino UNO R3 秋月 L型ピンヘッダ 40P 秋月 抵抗 1/4W 100Ω 4個 秋月 電解コンデンサ 10μF 1個 秋月 ICクリップ ITC-20A 秋月 リボンケーブル 5芯 千石 入手先等 @2940 @50 @100(100本) @10 @1360 @273(6芯×1m) 1. Arduino IDEで[ファイル][スケッチの例][ArduinoISP]をArduino UNOに書き込みます。(注)下記3のコンデンサを接続した状態では書 き込みができないので、必ず書き込みをしてからコンデンサを接続してください。 2. L型ピンヘッダを6ピンおよび8ピンに切断し、Arduino UNOに図のように取り付けます。 3. ピンヘッダに抵抗とコンデンサを半田づけし、抵抗とICクリップをリボンケーブルで接続します。 4. 8ミリビデオのケースにちょうど収まります。 3 4. Da Vinci版 ArduinoISPライター Arduino Leonardo互換のDa Vinciを使うとコンパクトなISPライターを作ることができます。ただし、製作過程は少々複雑です。 (製作メモ) 部品表 名称 入手先等 Da Vinci 32U ストロベリーリナックス @1300 抵抗 1/4W 100Ω 4個 秋月 @100(100本) ICクリップ ITC-20A 秋月 @1360 リボンケーブル 5芯 千石 @273(6芯×1m) 1. まずArduino UNOでArduinoISPライターを作る。 2. ArduinoISPライターからISPケーブルで Da VinciのICSP端子に接続する(Da VinciはUSB接続しない)。 3. boards.txtの150行目付近を以下のように変更する(ブートローダーを使わなずに書き込むため)。 #leonardo.upload.protocol=avr109 leonardo.upload.using=arduino:arduinoisp 4. ArduinoIDEを起動し、[ツール][マイコンボード]でArduino Leonardoを選択する。[ツール][書込装置]でArduino as ISPを選 択する。 5. Da Vinci 32U(DFUタイプ)の場合は、[ツール][ブートローダを書き込む]でLeonardoのブートローダーを書き込む。これにより 「クロック 1/1」のヒューズ設定となる。(Da Vinci 32U with Arduino Bootloaderの場合はクロック 1/1になっているのでこの操 作は不要) 6. [ファイル][スケッチの例][ArduinoISP]の47行目付近を以下のように変更して書き込む。 #define RESET ↓ #define RESET SS 8 7. ArduinoIDEで利用する場合は、hardware/arduino/programmers.txtに以下を追加する。 arduinoispleo.name=Arduino as ISP(Leonardo) arduinoispleo.communication=serial arduinoispleo.protocol=arduino arduinoispleo.speed=19200 8. ArduinoIDEで利用する場合は、hardware/arduino/boards.txtの[ArduinoISP/ATtiny4313]に以下を追加する。 arduinoisp4313.name=ArduinoISP/ATtiny4313(8MHz) arduinoisp4313.upload.using=arduino:arduinoisp arduinoisp4313.upload.maximum_size=4096 arduinoisp4313.bootloader.low_fuses=0xe4 arduinoisp4313.bootloader.high_fuses=0xdf arduinoisp4313.bootloader.path=dummy arduinoisp4313.bootloader.file=blink4313.hex arduinoisp4313.bootloader.unlock_bits=0x3F arduinoisp4313.bootloader.lock_bits=0x3F arduinoisp4313.build.mcu=attiny2313 arduinoisp4313.build.f_cpu=8000000L arduinoisp4313.build.core=arduino arduinoisp4313.build.variant=attiny4313 [1] AVRaspx, http://www-ice.yamagata-cit.ac.jp/ken/senshu/sitedev/index.php?AVR%2FHIDaspx_news02 [2] ヒダピオ, http://www.hidapio.jp/ [3] ヒダピオ学習回路, http://www.topman.co.jp/ky/download/hidapio/hidapio_00.html [email protected] 4
© Copyright 2024 ExpyDoc