« OSBDMで作る大電流発光ダイオード駆動装置 (5) | メイン | 作りながら学ぶPICマイコン入門のフォロー(22) »

OSBDMで作る大電流発光ダイオード駆動装置 (6)


大電流発光ダイオード駆動装置 書き込んで実行しよう

 ハードウェアができました.ソフトウェアもできました.いよいよ,MCUにプログラムを書き込みます.

OSBDMをUSBポートに挿入する

 プログラムを書き込む前にOSBDMをPCに認識させます.そのためには,まずOSBDMをPCのUSBポートに挿入します.すると,「新しいハードウェアの検出ウィザード」というダイアログが開きます.

新しいハードウェアの検出ウィザード(1)

 今までにOSBDMを使ったことがある場合には,このダイアログは表示されず,OSBDMに対応するドライバが自動的にインストールされます.

 OSBDMを使用するには,適切なドライバが必要です.ドライバをどこに探しに行くかという質問なのですが,すでに"CodeWarrior"といっしょにPCの中にドライバが入っています.そのため,「いいえ,今回は接続しません.」を選択して「次へ」ボタンをクリックします.

新しいハードウェアの検出ウィザード(2)

 "CodeWarrior"が適切にインストールされていれば,ドライバはオペレーティング・システムのわかる場所に配置してあります.ここでは,「ソフトウェアを自動的にインストールする」を選択して「次へ」ボタンをクリックします.

新しいハードウェアの検出ウィザード(3)

 しばらくすると,インストールは終了します.「完了」ボタンをクリックしてウィザードを終了します.これで,OSBDMが使えるようになりました.

デバッガからプログラムを書き込む

 いよいよ,PCとOSBDMを接続してプログラムを書きこみます."CodeWarrior"の「Debug」ボタンをクリックすると,デバッガが起動します.

「Debug」ボタン

 デバッガが起動した直後,デバッガ・プログラムが接続すべきOSBDMを選択するダイアログが現れます.

OSBDM選択ダイアログ

 今回は,OSBDMを一つだけ接続しているので,"OSBDM #1"を選択することになります.もし,存在しない番号のOSBDMを選択して接続を試みた場合,"Unable to open USB Device"(USBデバイスがopenできない)というダイアログが表示されます.

 "OSBDM #1"を選択したら,ターゲットの電源を投入し,それから「OK」ボタンをクリックします.うまく接続できたら,"LOADER WARNING"(書き込み警告)というダイアログが現れます.

LOADER WARNING ダイアログ

 「デバッガは,このデバイスの不揮発性メモリ(EEPROMまたはFLASH)の全体を消去してプログラムを書き込もうとしています.」

 つまり,「OK」ボタンをクリックすると,このMCUのFLASHに書かれている内容はすべて失われます.消去しても良いことを確認して,「OK」ボタンをクリックします.すると,プログラムが書き込まれて,デバッガ・ウィンドウが表示されます.

デバッガ・ウィンドウ

 これで,プログラムを実行する準備ができました.

プログラム済みのMCUに対して再書き込みをする時,接続ができない場合があります.これは,MCUがバックグラウンド・デバッグ・モード(BDM)と呼ばれるデバッグ用のモードに入っていないのが原因です.その場合の対処方法については,エレキジャック本誌をご参照ください.
プログラムを実行する

 あとは,プログラムを実行するだけです.デバッガの「Start/Continue」ボタンをクリックすると,LEDは,煌々と点滅を始めます.

Start/Continue ボタン

 65mAの電流で駆動すると,LEDがかなり明るくなりますので,直視すると危険です.気をつけて,ご観賞ください.

 『OSBDMで作る大電流発光ダイオード駆動装置』で作成したプロジェクトのアーカイブを用意しました。どうぞ、ご利用ください。

GangBlinker.zip
GangBlinker プロジェクトのアーカイブ
田中範明(noritan.org)

カテゴリ:

トラックバック

このエントリーのトラックバックURL:
http://www.eleki-jack.com/mt/mt-tb.cgi/3710





カテゴリ

会社案内
情報セキュリティおよび個人情報の取り扱いについて

コメントとトラックバックは、spamを予防するために、編集担当が公開の作業をするまで非公開になっています。
コメントはそれぞれ投稿した人のものです。

Powered by
Movable Type 4.1
/*yahoo remove*/