「AVRのATMEGA168があればArduino互換ボードが作れる」ということだけを教えてもらって始めたところ、いくつかはまったのでメモ。
- AVRISP MKIIでは外部電源が無いと書けない
- 買ってきたばかりのATMEGA168は外部クロックで動くモードになっているので、クロックを供給してあげないと書けない
- AVRにはヒューズというものがあって、クロックなどの動作モードはそこに書く。ヒューズのビットマップはチップごとに違うので仕様書を参照
で、次にはまったのがこのいい加減に選んだ20MHzという速度だった。
- Arduinoのブートローダーはクロック周波数によって違う
- 供給しているクロックに対応したブートローダーを作成して書き込む
- 内部クロック(8MHz)で動作する用にヒューズを書き換えて、8MHz用のブートローダー(lilypad 8MHz用)などを書き込む
とくにArduinoのknow-howが無い状態で始めてしまったので「こんなところではまるなよ」と言われそうだけど、しょうがない。おかげで最初にLEDの点滅プログラムを動かせた時には、すでにブートローダーのソースを読み終わっているというArduinoの思想とはちょっと離れたスタートになってしまった。
0 件のコメント:
コメントを投稿