2014.01.07 USBTiny-MkIIを作ってみる
種別: 鉄道模型::電子工作
こんにちは。
今回は、Atmel製純正のAVRマイコン書き込み器「AVRISP mkII」と同様の操作で、Atmel Studio上からマイコンへの書込みが出来る書き込み器「USBTiny-MkII SLIM programmer (AVRISP-MKII clone)」を紹介し、実際に製作してみます。
これまでにも、AVRマイコンの書込みが可能で安価に作れるライタは、いくつかweb上で考案・紹介されています。しかし、Windows側で専用のソフトが必要だったりして、Atmel Studioとの親和性はあまり宜しくありませんでした。純正書き込み器は秋月で買っても3200円しますから、安く作れればAVRの布教も楽なのになァ……などと考えていたところ、先日こちらの書き込み器を発見したわけです。
このライタ、その名の通り純正品のクローンのようなもので、Atmel Studio上から何も考えずにそのまま書き込めるのが最大の特徴ではないでしょうか。また、TPIに対応しておりTiny10への書込みができるので、小さいものは正義!な方にも安心です。というわけで今回は、これを作ってみることにします。
日本語での先行事例としては、FRISK USBTiny MkIIやAVRISP mkII clone の製作などの記事が存在するようです。私はPDIポートは不要なのでそれを取り除き、小さく仕上げることにします。また、どうやらオリジナルで使用されているレベル変換IC GTL2003 は入出力電圧がともに同一電圧(この場合、5 V)での動作を保障していないような気がするので、ST2378E を使用することにします。 ※オリジナルページにある通り、MAX3002は出力電流が小さく不適です。
▽ このようなデータを作成し、Elecrowに投げてみました。12月21日に発注して、到着は年明け1月2日でした。
部品表はこんな感じです。1つあたり1200円くらいで作れると思います。ケースは省略したり、お菓子のケースを使ったりするのもアリですね。
番号 | メーカー | 型式 | 入手先 |
---|---|---|---|
U1 | Atmel | AT90USB162-16AUR | 秋月 |
U2 | STMicro | ST2378ETTR | Chip1 |
U3 | JRC | NJM2865F33 | 秋月 |
XTAL1 | エプソントヨコム | FA238-16MHz | 秋月 |
C1, C2 | any | 22p 1608 | 千石等 |
C3 | any | 1u 1608 | 秋月等 |
C4, 10 | any | 10u 3216 | 秋月等 |
C5-9 | any | 0.1u 1608 | 秋月等 |
CN1 (USB) | ヒロセ | ZX62R-B-5P | 秋月 |
CN2 (電源切替) | any | any | any |
ISP, TPI | Linkman | 217006SE | マルツ |
HWB, RST | アルプス | SKRPACE010 | 秋月 |
LED1, 2 | any | 1608 | any |
R1, 6 | any | 1k 1608 | 千石等 |
R2, 3 | any | 470 1608 | 千石等 |
R4, 5 | any | 22 1608 | 千石等 |
R8, 9 | any | 47 1608 | 千石等 |
ケース | タカチ | SW-53 | 千石 |
ゴム足 | タカチ | B-P40 | 千石 |
6Pフラットケーブル | Linkman | LFCBL06-01 | マルツ |
基板 | 外注 |
ファームのビルドについて……オリジナルページで配布されている最新版でも、ファームウェアのバージョン(偽装)が古く、新しいバージョンに偽装しないと最新のAtmel Studioでは使えません。やり方は、
- WinAVRをダウンロードし、インストールする
- オリジナルページで配布されている130303 versionをダウンロード、解凍する
- 解凍したフォルダのsource-130303\makefileをテキストエディタで開き、「Demos」及び「Bootloaders」と書いてある行の先頭に#をつけてコメントアウト
- 解凍したフォルダのsource-130303\Projects\AVRISP-MKII\LIB\V2ProtocolParams.hをテキストエディタで開き、「FIRMWARE_VERSION_MINOR」の後の数値を0x17 (など、最新のバージョン値)に変更
- コマンドプロンプトで解凍したフォルダのsource-130303に移動し、「make clean」→「make all」する
- source-130303\Projects\AVRISP-MKII の中に、hexファイルができるので、それをFlipを使ってマイコンに書き込む
といったところです。Flipの使い方などは、先行事例を参考にしてください。ファームを書き込むと、すんなりと認識してAtmel Studioから使用できます!
▽ 完成。ISP、TPIいずれも使えることを確認しました! (現在最新のAtmel Studio 6.1にて確認)
以上です。