よくある質問
自作ターゲットにMACHXをどのように接続するのですか?
MACHXはRJ12 コネクターを持っていますので、同梱されている RJ12ケーブルでプロトタイプ・ボードに接続して下さい。 もし、プロトタイプ・ボードにRJ12 ICD接続を加える場合は、下記のピンアウトになります:
MACHXからターゲットへの接続 | ||
---|---|---|
MACHX | ターゲット | ピン説明 |
1 | 6 | ターゲットPIC® MCU又は、 PIC® DSC上のピン3 - C言語リアル-タイム・デバッガ(オプショナル) |
2 | 5 | ターゲットPIC® MCU又は、 PIC® DSC上のピンB6 - ICSPクロック |
3 | 4 | ターゲットPIC® MCU 又は、 PIC® DSC上のピンB7 - ICSPデータ |
4 | 3 | Ground (GND) |
5 | 2 | Power (VDD)
|
6 | 1 | MCLR
|
- MACHXはUSBから電源供給されますのでMACHXのピン5とターゲット上のピン2を接続するのは避けて下さい。
1つの理由はMACHXはこの接続を電源値をプルアップするために使用します。他の理由はMACHXは可変電源(+2.0V〜+5.0V) をターゲット・ボードに供給する能力があります。これはPCを使用時にCCSLOADのオプション"MACHX Supplies Power"を 選択し"Setting"タブの電圧レベルをセットします。
ターゲットICD回路図
- イン-サーキット・プログラミングとデバッギングを使用するためにI/Oピン B6とB7
は PIC® MCU 又は、PIC® DSCでリザーブされます。
もしデバッグを行わない場合はこれらのピンはターゲット回路に使用することが出来ます。 しかし ターゲット回路がプログラミング中にハイ・インピーダンスを持っていることに注意して下さい。
有る種のPIC® MCU又は、PIC® DSCはピンB6とB7 をプログラミングとデバッギングに使用しません。常に各デバイスのデータシートで正しいプログラミングとデバッギング・ピンを見て下さい。以下のテーブルにリストされている PIC® MCUは異なったプログラム・ピンを使用します。
プログラミング/デバッギング・ピン | ||
---|---|---|
PIC® MCU | Clock Pin | Data Pin |
PIC12F629 | GP1 | GP0 |
PIC12F675 | GP1 | GP0 |
PIC12F683 | GP1 | GP0 |
PIC16F630 | RA0 | RA1 |
PIC16F676 | RA0 | RA1 |
PIC16F684 | RA0 | RA1 |
PIC16F688 | RA0 | RA1 |
- ターゲット・チップのオシレータはMACHXがデバッガとして動作するために動作(発信)していなければなりません。
プログラミングはオシレータなしでおこなうことが出来ます。
B3 はオプションです。そして、プログラミングには使用しないで下さい。しかし、デバッガのモニター機能はB3を使用します。 モニターを使わないでプログラムとデバッグ、そして、B3をターゲット・ハードウエアに割り当てることは可能です。 もし、モニター機能を使用しない場合は、ユーザー・ストリームをConfigure Tab でディスエーブル[Configure Tab→Enable Userstream→False] にすることが出来ます。そして、MACHXのピン1とターゲットのピン6の接続は無視されます。 古いバージョンのソフトウエアではConfigure Tabを使ってユーザー・ストリーム[Enable Userstream]を ディスエーブル[Falseにする]出来ませんのでピンは常にハイにプルアップする必要があります。 ピン3 がモニターに推奨されている間は、すべてのPIC® MCU又は、PIC® DSCをこの機能のために 使うことが出来ます。 - MCLR ピンはプログラミングとデバッギングの両方に使用されます。プログラミング中の電圧は13V、又は、 PIC18® MCU, PIC24/33® MCU又は、dsPIC® DSCのプログラミング中は+5.0Vです。 ターゲット側のMCLR 回路のプルアップ抵抗は47kオームの範囲を推奨します。5Vへの47Kの抵抗は13Vに対する アイソレーションとしては十分です。しかし、もし、何かがMCLR ピンに接続されている場合は、13Vが障害や干渉をしないように気をつけて下さい。
- MACHXは低電圧プログラミングを使う機能はありません。CプログラムでNOLVPヒューズを設定する必要があります。
例:ソースで#FUSE NOLVP - もし、MACHXをターゲット・デバイスのデバッグに使用するには、ターゲット・デバイスはアクティブなオシレータ が実行されいなければいけません。もし、MACHXはターゲット・デバイスのプログラミングのみに使用されるなら、 MACHXはオシレータの実行の必要なくPIC® MCU又は、PIC® DSC のプログラムに使用するクロック信号を生成します。
- 有る種のPIC® MCUは標準のバージョンのパーツでのデバッギングの能力はありません。
下記はそのチップの標準のバージョンではデバッギング機能を持っていないチップです。デバッグのためにには特定の ICDバージョンのチップが必要です。ICDチップは標準のチップより多くのピンを持っています。 デバッグするには特別なICDバージョンのチップが必要です。 下記のPIC® MCUはICDヘッダーが必要です。
ICDデバッギング・ヘッダー | |
---|---|
PIC® MCU | PIC® MCU-ICD |
PIC10F200/2/4/6 | PIC16F505-ICD |
PIC10F220/2 | PIC16F506-ICD |
PIC12F508/509 | PIC16F505-ICD |
PIC12F510 | PIC16F506-ICD |
PIC12F519 | PIC16F526-ICD |
PIC12F609/HV609 | PIC16F616-ICD |
PIC12F615/HV615 | PIC16F616-ICD |
PIC12F629 | PIC12F675-ICD |
PIC12F635 | PIC16F636-ICD |
PIC12F675 | PIC12F675-ICD |
PIC12F683 | PIC12F683-ICD |
PIC16F505 | PIC16F505-ICD |
PIC16F506 | PIC16F506-ICD |
PIC16F526 | PIC16F526-ICD |
PIC16F610/HV610 | PIC16F616-ICD |
PIC16F616/HV616 | PIC16F616-ICD |
PIC16F627A/628A | PIC16F648A-ICD |
PIC16F630 | PIC16F676-ICD |
PIC16F631 | PIC16F690-ICD |
PIC16F636 | PIC16F636-ICD |
PIC16F639 | PIC16F636-ICD |
PIC16F648A | PIC16F648A-ICD |
PIC16F676 | PIC16F676-ICD |
PIC16F677 | PIC16F690-ICD |
PIC16F684 | PIC16F684-ICD |
PIC16F685/687 | PIC16F690-ICD |
PIC16F688 | PIC16F688-ICD |
PIC16F689/690 | PIC16F690-ICD |
PIC16F716 | PIC16F716-ICD |
PIC16F785/HV785 | PIC16F785-ICD |
PIC18F13K50 | PIC18F14K50-ICE |
PIC18F14K50 | PIC18F14K50-ICE |
PIC18LF13K50 | PIC18LF14K50-ICE |
PIC18LF14K50 | PIC18LF14K50-ICE |