定期的に更新するのは難しいですね。
続きがあるっぽい記事をかなり放置していますがまた真新しいことを書きます。
今回は題名通りAVRマイコンを使う時の書き込み冶具を作ります。
今までは、ブレッドボードとかとArduinoを適当に配線して書き込んでいましたが、なんとなく取り回しとかが気に食わないのとマイコンを変えるたびに配線をいちいち差し替えないといけないのが面倒なのでZIFソケット(ワンタッチでIC外したりできるやつ↓)
こういう奴です。これで書き込んですぐ外して基板に付けたりできると便利じゃないかと。
で、できたのがこれ。
一応ボード上で簡単な動作確認ができるように圧電素子スピーカとLED、セラロックと電源ラインくらいは付けてみました。チップによって書き込みに使う端子の場所がバラバラなのでチップによって右の方のコネクタの位置を変えないといけません。6pinのピンヘッダがそうです。上からATtiny13,AT90s2313,ATmega88系となっています。クロックを自分で生成できない子もいるのでセラロックを接続できるようにしています。
お気づきかもわかりませんが、使用しているカラフルなケーブルは8本線が出ているのに対し、ピンヘッダは6pinです。これでは挿し間違いが起きる可能性大です。対策として
コネクタの穴を半田で塞ぎました。これでコネクタの向きも含めて常識的な方向で挿せば動作するという感じになりました。
Arduinoと接続している様子。
そこそこ使いやすかなぁといったところです。
しかし、このボードを作っていざ書き込みテストを行ったところ、全く書き込めません。
どうやらArduinoのICSPピンからちゃんと信号が来ていないようです。
調べていくと、ICSP書き込みする際にターゲットのマイコンのリセット端子はArduinoのディジタル10番ピンに繋がないといけないのですが、Arduino側のリセットに繋がっています。これではいかんのでArduinoを少し改造しました。
PEWで直接10番ピンにバイパスさせます。
元のリセットと繋がったままだとまずいので、パターンもカットします。
最初間違えて手前のパターンをカットしてしまい(カットすべきは奥のピン)焦りましたが大丈夫なようです。
動きました。
使用した青LEDはおずやで分けて頂いたものです。感謝しています。
ついでに、ソフト側も少し使いやすくしてみましょう。
僕は最近までAVRStudioから出てきたhexファイルをコマンドプロンプトからいちいち指定してAVRdudeから書き込んでいたのですが、バッチファイルを使うと幾分楽に書き込めるみたいです。
メモ帳を開いて下のような文字を打って、保存する時拡張子を.batにします。ファイル名はなんでも良いです。
avrdude -c avrisp -P COM7 -b 19200 -p t13 -U flash:w:%~nx1
pause
赤字にしたところは皆さんお使いのArudinoが繋がっているポート番号、緑字のところはお使いのマイコンの識別子(?)に読み替えてください。mega88ならm88です。
このファイルをデスクトップなり好きなところに置いて、AVRStudioから出てきたhexファイルをドラッグ&ドロップすると接続が正常なら書き込めるはずです。終わったら何か入力するように促されるのでなんでもいいのでキーボードのボタンを押すと終了します。
僕はこれをよく使うマイコンごとに幾つか用意して書き込んでいます。純正の書き込み機を使わないのはやはりこういうとこで手間ですね。
次回(次の記事とは限らない)予告
Web拍手反応
>すこ
おもしろスコープ
>今日誕生日です
>おめでとうございます(脅迫)
なかたくんもワイも誕生日遅いんよね
>ティッシュを被せる→バシュッって致してそう
被せるだ?
>わい!
芋!
>タイトル変わってててててててて
こっそり記事の通し番号ズレてたの直したけどバレちゃってたか…
>ピキッ!
パシュッみたいな音したような気がする
>なかた
なかたでぇ~す
なかたくん記事書かないなぁ
>だれかなぁ〜^^
ペロッ…これは…
クチビル^^
>み て い る ぞ
ジロジロ
>わんわん
わんわんお
>クワーッ!
ショベルカーが威嚇する時そんな音しそう
>ぽんぽんすき
ぽんぽんすき(宣伝)
>マルクス主義で対決?
マルクス思ってたよりも難しそうで困ってる。
なかたくんはどうかなぁ~?
それでは、今日はこの辺で。
0 件のコメント:
コメントを投稿
何かあればお気軽にどうぞ。