PICライタ5V2
PICライタ全般 |
Q1 PICには正しく書き込めているようなのですが、ベリファイ(照合)でエラーになります。 |
A1 コンフィギュレーション・ワードでコードプロテクトが設定されているHexファイルを書き込むと、正しく書き込めていてもつぎに読み出すとメモリの内容がランダムな値となったりすべて0(ゼロ)として読み出されたりして、プログラムが他人に盗まれることを防止します。そのため、コードプロテクトをベリファイのあとで設定することができないPICライタのソフトウェア(ミニPICプログラマ、RCDライタ、JDMプログラマ用のソフトウェアを含みます)の場合は、コードプロテクトが設定されたHexファイルをそのまま書き込むと、ベリファイで失敗します。 コードプロテクトを設定しなければこのような問題はおきませんので、個人で使用するのであれば、コードプロテクトは設定しないようにするとよいでしょう。また、インターネットからダウンロードしてきたHexファイルには、コードプロテクトを設定したものがまれにあります。そうしたHexファイルのコードプロテクトをオフにするには、IC-ProgやWinPic、PICProg4UなどのソフトでHexファイルを読み込んで、コンフィギュレーション・ワードのコードプロテクトをオフにしてからPICに書き込みます。 |
Q2 PICにまったく書き込めません。ベリファイ(照合)でエラーになります。 該当デバイス 低電圧プログラミング(LVP)モードをもっているPIC16F628AやPIC16F877Aなどの一部のPIC |
A2 低電圧プログラミング(LVP)モードをもっているデバイスのコンフィギュレーション・ワードのLVPビットのデフォルトの設定は、低電圧プログラミングが有効になっています。そのため、RB3(またはRB4, RB5)/PGMピンは、デジタルI/Oとしてではなく、低電圧プログラミング用のPGMピンとして機能します。 たいていのPICライタは、高電圧プログラミング(HVP)専用です。HVPのPICライタでLVPモードをもったデバイスにプログラム書き込みをするときは、PGMピンが浮いた状態にあると、高電圧プログラミングモードと低電圧プログラミングモードが衝突してしまい、プログラム書き込みに失敗することがあります(この問題は、LVPモードをもっているすべてのデバイスでおきる問題ではありません。新しい機種では、HVPとLVPが衝突しないように改良されています)。 この問題を回避するには、PGMピンをGND(Vss)にプルダウンします。なお、ハーフマットで取り扱っている書き込み用のソケット付きのPICライタやアダプタでは、あらかじめソケットやアダプタのPGMにあたるピンをプルダウンしてあります。 |
ミニPICプログラマ |
Q1 プログラムが書き込めません。ベリファイ(照合)でエラーになります。 該当デバイス名 PIC18F1220, PIC18F1230, PIC18F2220, PIC18F2320, PIC18F4220, PIC18F4320 |
A1 PIC18F1220, PIC18F1230, PIC18F2220, PIC18F2320, PIC18F4220, PIC18F4320 では、デバイスによってはプログラミング・モードに入るタイミングがずれてしまい、プログラムの読み込みや書き込み、消去、ベリファイ(照合)に失敗することが、ミニPICプログラマに限らず、メーカー製のPICライタでもおきることがあります。 この問題を回避するためには、つぎのようにします。 0.1μFのコンデンサをPICのVddとVssの端子の間に挿入してください。 |
Q2 ミニPICプログラマをパソコンに接続しても他のUSB機器のようなアイコンがタスクバーに表示されません。 |
A2 USBシリアルポートは、仮想COMポートとして通常のシリアルポートとおなじようにデバイスマネージャで確認することができます。タスクバー上には表示されません。 |
Q3 ミニPICプログラマをパソコンに接続すると、USBシリアルポートとしては認識されるのですが、パソコン側ソフトを起動すると、PICライタが認識されるときと認識されないときがあります。 |
A3 USBシリアルポートとミニPICプログラマとの間の通信がうまくいっていません。デバイスマネージャでUSBシリアルポートのレイテンシータイマを調節してみてください。 |
Q4 デバイスマネージャで確認すると、ミニPICプログラマに割り当てられているCOMポート番号は10を超えています。Writer509専用ソフトを起動してもミニPICプログラマが認識されません。どうしたらよいですか。 |
A4 Writer509専用ソフトでミニPICプログラマを使う場合は、使用できるのはCOM10までです。不要なCOMポートを削除し、ミニPICプログラマが使うCOMポート番号を10以内に設定してください。COMポート番号を削除したり変更するには、それぞれのCOMポート番号を割り当てて使用しているドライバのアンインストールが必要な場合もあります。 注: MiniPICProgでは、扱えるCOMポート番号の上限が10という制約はありません。 |
ミニPICプログラマ組立キット |
Q1 ミニPICプログラマがUSBシリアルポートとして認識されません。緑色のLEDは点灯しています。 |
A1 FT232RLが正しくはんだ付けされているか、はんだブリッジ等がないか、ご確認ください。 |
Q2 ミニPICプログラマがUSBシリアルポートとして認識されません。緑色のLEDも点灯しません。 |
A2 USBコネクタやFT232RLが正しくはんだ付けされているか、はんだブリッジや短絡等がないか、ご確認ください。また、USBケーブルのコネクタは、しっかり奥まで差し込む必要があります。 |
Q3 「デバイスIDを確認できませんでした」というエラーメッセージが表示されて書き込みも消去もできません。 |
A3 プログラム読み書き時に赤色のLEDが点灯するかどうか、ご確認ください。 何も操作しないときだけでなく、プログラムの読み書き時にも赤色のLEDが常時消灯している場合は、U1から高電圧が供給されていない可能性がありますので、U1(662A)のピンのはんだ付け不良がないか、ご確認ください。 何も操作しないときに点灯し、プログラム読み書き時に消灯する場合は、U3(PIC12F509)の6番ピン、D1、R2、R3、Q1のはんだ付け不良が考えられます。プログラム読み書き時に赤色LEDがちゃんと点灯するのに「DEVICEIDを確認できませんでした」と表示される場合は、U2の2番ピン、3番、7番ピンのはんだ付け不良、R4、R5、Q2のはんだ付け不良が考えられます。いずれにしましても、動作不良の原因の大半は、はんだ付け不良ですので、上記当該箇所にフラックスを塗布してはんだごてをもう一度当ててみることをおすすめします。 |
RCDライタ |
Q1 わたしのノートパソコンにはシリアルポートがありません。USBシリアル変換ケーブルでRCDライタは動きますか? |
A1 残念ですが、USBシリアルポートを介してRCDライタを動かすことはできません。USBシリアルポートは、OS側からは仮想COMポートとして扱われ、TxD、RxD以外のハンドシェイクラインをデータやクロック信号の送受信に使うRCDライタやJDMプログラマではOSに対する割り込み要求が多発します。その待ち時間があまりにも長くなるため、正常にプログラムの読み書きを終了することは期待できません。 |
Q2 わたしのノートパソコンのシリアルポートでRCDライタは動きますか? |
A2 最近のノートパソコンは低消費電力となっているため、シリアルポートも最低±5Vの出力があれば旧RS-232規格との互換性が保たれるようになっています。RCDライタが動作するにはデバイスの要求するプログラミング用の高電圧によりますが、およそ±7V以上のシリアルポートの電圧が必要です。お使いのシリアルポートの電圧を測ってみて電圧が±7Vなければ、RCDライタはお使いのノートパソコンでは満足に動かないでしょう。また、省スペース型のデスクトップパソコンでも、ACアダプタから電源を供給されるタイプのものは、ノートパソコンと事情はおなじです。 |
Q3 RCDライタの半固定抵抗R3は何のためにあるのですか? |
A3 RCDライタは、当初はR3の値が10kΩ固定でした。しかし、FLASHメモリを搭載した初期のPICマイコンであるPIC16F84Aでは、プログラミング用の高電圧に最近のPICマイコンよりも少し多めの電流を必要とするようです。それで、需要のまだ衰えないPIC16F84Aのために、R3を半固定抵抗(トリマーポット)にして、電流を調節できるようにしてあります。したがって、通常の使用では半固定抵抗は右いっぱいに回転させて10kオームの位置にしておきます。PIC16F84Aのときだけ、左から1目盛あたりの位置(およそ1kΩ)の位置にします。 |
Q4 PIC16F84Aに書き込むとエラーになります。読み込むと、0560hがプログラムメモリに書き込まれていて、消去することができません。 |
A4 RCDライタは、ハードウェアでは 常に Vpp First(Vpp before Vdd) のプログラマとして動作します。これを Vdd First(Vdd before Vpp) のデバイスでも動くように、ソフトウェア(PICProg4U)で工夫してあります。WinPicなど高速なポートアクセスをするソフトウェアでRCDライタを使ってPIC16F84Aにプログラム書き込みをしたばあい、プログラムカウンタが異常になって、PIC16F84AのデバイスIDである0560hが誤ってプログラムメモリに書き込まれてしまうことがあります。また、RCDライタのR3を調節しないで書き込んだ場合もおきることがあります。 この問題を回避するには、RCDライタのR3(半固定抵抗)を1kΩ以下に調節し、書き込みソフトとしてPICProg4Uか、Direct I/O に設定したIC-Progで消去や書き込みをおこないます。 |
(C)2007 HALFMAT All RIGHTS RESERVED