連載
» 2005年05月10日 17時00分 UPDATE

春だからはじめる工作教室入門その3「PICライターでプログラムを書き込む」 (2/3)

[小林哲雄,ITmedia]

「コンフィグレーションワード」と「補正値」

 今回、PICに書き込むのは前回作成したtest1.asmをmakeした結果である「test1.hex」だ。これをPICライターソフトに渡せばよいのだが、このときに、プログラム以外に必要なデータが2つある。1つは「コンフィグレーションワード」と呼ばれるものでPICの動作を設定する。

 PICの資料をダウンロードした人はピンの説明を見てみよう。例えば「pin3」を見ると「GP4/AN3/T1G/OSC2/CLKOUT」と書かれており、このピン1つが5役をこなしていることが分かる。そのうちの一部はソフトウェア上で指定できるが、書き込むときにコンフィグレーションワードで決定しなければならない機能もある。先ほどのpin3では「OSC2」と「CLKOUT」がこれに該当する。

 外部に水晶などの発振子をつける場合、OSC2は発振回路を取り付ける端子となるし、内部発振の場合でも外部にクロックを出力する設定では出力用のCLKOUT端子となる。つまり、OSC2やCLKOUTとして使用する設定にするとGP4やAN3、T1Gとしての使い方はできなくなるのだ。

 前回のプログラムファイルを見ると冒頭に

▼  __CONFIG _INTRC_OSC_NOCLKOUT & _WDT_OFF & _MCLRE_OFF

 という記述があったが、これがコンフィグレーションワードを決めているものだ。今回はできる限りI/Oピンを使いたいので、内部発振クロックを使い、外部への出力はなくして(_INTRC_OSC_NOCLKOUT)、クリア端子もなし(_MCLRE_OFF)と設定した。余計な割り込み類も使っていないので“サボリ”チェックタイマーも使用しない(_WDT_OFF)。

 もう1つの「補正値」であるが、内部発振回路入りのPICは製造のバラつきで発振周波数がどうしてもばらついてしまう。そこで出荷時に±1%の精度に収まるような補正データを書き込んでいる。

 これが「補正値」でOSCCALに設定すると内部クロック発振を微調整できる(のだが、test1ではその補正データを使っていない)。このデータは$03FF(プログラムエリアの最後)に書き込まれているので、書込みソフトはHEXのデータのうち$03ffの値を無視して、PICに元々書き込まれている値にする必要がある(ただし、これらの数値は書き込みソフトがデバイス名から自動的に判定してくれるので、あまり気にしなくてもよい)。

 今回はFENG3氏のRCDライタキット+IC-Progと秋月電子のキットの両方で書き込み作業を行ってみた。IC-Progはここからダウンロードしたのち、適当なフォルダに展開しておけばよいが、Windows 2000/XPの場合は「IC-Prog NT/2000 driver」のファイルもダウンロードし、同一フォルダに展開しておく。

 IC-Progの初回起動時では、いくつかの項目で設定を行う必要がある。初期状態からの変更はWindows 2000/XPの場合、“Interface”を「Windows API」にしておくこと。あと、COMポートの番号が間違っていないか確認するとよい。SettingsメニューのHardware Checkで「Signals Out」にある項目のどれかにチェックを入れるとプログラマのLEDが点灯することで確認できる。

kn_pic3i2.jpg 初期設定はInterfaceの項目をWindows APIにして、COMポートをあわせる

 書込みは、まず18ピンソケットのライターの場合、1ピンをあわせるようにPICを差し込む。抜き差しは読み書きをしていないときに行うこと。それから、デバイスを「PIC12F675」に設定して、“File”メニューの「Open」でHEXファイル(ここではtest1.hex)をダウンロードし、“Command”メニューの「Program ALL」(またはF5キー)で書き込み処理を開始する。

 なお、書込み途中でダイヤログが表示されるが、これは「補正値をファイルの値のままにするか?」という質問なので必ず「No」を選択する。これでPICに書かれている補正値をそのまま引き継ぐことになる。

kn_pic3prg2.jpg HEXファイルをロードする前にデバイスをあわせる

kn_pic3prg3.jpg この質問には必ず「No」を押すのがポイントだ

 一方、秋月のPICライターで事前に必要なのはCOMポートの設定だけ。起動時にライターが正しく入っているか確認もしてくれるので安心だ。こちらもまずデバイス名を設定してからファイルをロードし、プログラムボタンを押す。こちらは「上書きするか?」というダイヤログが出る場合があるが、これは上書きのままでよい。

 なお、秋月のキットはファームウェア、書き込みソフトともにバージョンアップがあるので、使う前には秋月電子のWebページから最新のファームウェアをダウンロードしてアップデートしておきたい。

kn_pic3apic1.jpg 秋月電子のPICライターはソケットに差すICの方向も画面で教えてくれる

kn_pic3apic7.jpg 日本語版のPICライター専用ソフトということもあり分かりやすい

「マイキット」感覚で配線

Copyright© 2017 ITmedia, Inc. All Rights Reserved.

この記事が気に入ったら
ITmedia PC USER に「いいね!」しよう