早速ですが、USB DFU での書き込みができましたので、ご報告です。
今回の記事は、面倒くさい回路の組立の報告です。
使用マイコン
当然ですが、USB を積んだマイコンを使います。
電子部品,通販,販売,半導体,IC,LED,マイコン,電子工作AVRマイコン AT32UC3B064秋月電子通商 電子部品通信販売
Flash が 64kBytes もあるので、十分遊べると思います。
回路構成
かなり面倒くさいところです。このマイコンに限らず、外部から入力する電圧とコアの駆動電圧が異なることが往々にしてあります。このマイコンもご多分に漏れずそうなのですが、なんと内蔵レギュレータからの電圧をユーザーが外部から CPU コア側に入れてやる必要があるという面倒な状況になっています。STM32 等は内部でその接続はされていて、ユーザーは外部で特に結線をする必要がないのですが、このマイコンは違います。
とりあえず参考にすべき文献はこちら。
- データシート
- ハードウェア構成やピン配置、ペリフェラルの情報まですべて入っています。
- アーキテクチャマニュアル
- アセンブリの仕様など。
- 回路チェックリスト
- 回路接続はこれを見ればどういう素子値の物を用いればよいか分かる。
- AVR32のマイコンボードを製作中です | kohacraftのblog
- 日本語で説明のある記事はこれくらい。とてもわかり易く書いてくださってる。
電源周り
これが一番だるい。とにかくピン数が多いので、そこは頑張るしかありません。同名のピンは全てを結線する必要ないと思いますが、まあ電源ですからね。ちゃんとやっておきましょう。
注意点
注意するべき内容は以下。
- VDDIO, VDDIN, VDDANA は 3.3V 入力。
- 一方で VDDPLL, VDDCORE は 1.8V 入力。これは VDDOUT から得ることができる。
- 2つの電圧レベルがあるので要注意ということ。
- コンデンサの値はよく見よう。
- 10uF とか 0.1uF とか 2.2uF とか。色々異なる。
まあ僕は面倒くさいから、0.1uF を全てつけなかったけどね。
- USB DFU を用いるためには 400kHz 〜 20MHz のクロックが必須。
- XIN0, XOUT0 につけます。
- 僕はめんどくなったので、16MHz のセラロックで済ませています。
- 書き込み後は内部 RC クロックを使用できるが、如何せん遅い。115kHz だし、PLL への入力にもできない。
- ブートモード切り替えは PA13。Low で USB DFU モードに入り、High で通常動作をする。
- RESET_N は内蔵プルアップされているため、オープンで問題なし。
- VBUS は 5V 入力。
できたぞ
〆
本当はプログラムの書き込みとかも書こうと思ったのですが、長くなりそうなので分けることにしました。
次回は書き込みについてです。