[][mobile][Homepage][BBS][Blog][YouTube][asablo]

PICkit2はEEPROMが書けて便利 PICkit3では?2014/02/12 23:59:59


2016/6/3追記:PICkit3でもEEPROMは書き込めます。ただし、改造が必要です。こちらへ

---------------------------------------------------

PICkit3でEEPROMが書けるのか?

PICkit3でEEPROMが書けるのか?そんな話題がツイッター上であったので調べてみることに。
検証ROMはアトメルの24C04があったので、リストで24LC0Bを選んで接続。

接続方法
 2:電源
 3:GND
 5:SCL
 6:SDA(要プルアップ)
 EEPROMのA0~2、WPはGND



まずはMPLABXをインストールすると一緒に付いてくる書き込みソフトIPE。リストには存在するが、書き込もうとしても赤い信号表示、つまり未対応なので書き込みはできなかった。PowerをPICkit3から供給しても同じ。



今は公式での公開を止めてしまったPICkit3スプリクティングツールを起動させてみた。PICkit3専用ファームを転送後、リストを選択するも、あえなく玉砕。このことから、残念ながら現時点ではPICkit3ではEEPROMが書き込めない模様だ。(ファームを書き換えたPICkit3をMPLABXで使う時は、PICkit3のボタンを押しながらUSBに差し込んでプログラムを書き換える必要あり)



ではPICkit2ではどうなのかというと、



書き込みも読み込みも普通で出来る。電源チェックは不要。



Program Memoryの部分で直接数字を編集して書き込めるのでとっても便利なEEPROMツールに早変わり! 液晶ディスプレイなどに搭載されているVESA策定のDDCの情報の読み書きなんていうこともできてしまうw(書き込みについては、装置内でライトプロテクトをかけている場合あり)

PICのリアルタイムでのデバッグには欠かせなくなったPICkit3ではあるが、PICkit2はこういう使い方ができるので、流通しているうちに購入しておくのがオススメだ。


PICKit2のピン配置に対する対応ピン一覧表

モードPICHCSUARTI2CSPIMicrowireLogic Tool
マイクロチップKEELOQ非同期NXP(旧フィリップスセミコンダクタ)フリースケール・セミコンダクタ(旧モトローラ)ナショナルセミコンダクターLogicAnalyzer
規格--無手順I2C specifications ver 2.1(PDF)

日本語ver2.1
Latest ver 4.0
SPI
Block Guide


(本家よりデータ取得ができないため、ミラーとしてNew Mexico Institute of Mining and Technology)
MICRO WIRETM Serial Interface(PDF)  
デバイスPICxxHCS20x, 320,360, 361-24LCxx(8pin)25LCxx(8pin)93LCxx(8pin)  
PICkit 2のpin1 VPPVpp
(vddと10kΩでプルアップ)
2 HCS360, 361 only--1 nCS1 CSOutput only 
2 VddVdd8Vdd (Vcc)8 Vcc8 Vcc8 VccVddVdd
3 GNDVss5GND4 Vss4 Vss5 VssGNDGND
4 PGDRB76RX in 
ロジックレベル
-2 SO4 DOI/OCH1
5 PGCRB6/3 HCS20x, 320
\3 -or- 4 HCS30x, 36x
TX out
ロジックレベル
6 SCL
プッシュプルドライブなので、プルアップ抵抗は不要
6 SCK2 CLKI/OCH2
6 AUX---5 SDA
(Vddと2kΩ程度でプルアップが必要)
5 SI3 DII/OCH3
デバイスのピン処理---1, 2, 3 Ax pins
デバイスのデータシートを元に、VddかGNDにしておく。一つならば通常はGNDでよい。

7 WP →GNDへ接続
7 nHOLD - disabled (Vddへ接続)

3 nWP - disabled (Vddへ接続)
7 PE - enabled (Vdd)

6 'C' Device ORG 
word サイズによりVdd/GNDを選択
  
その他-HCSxxx File -> Import HEx Notes:
The first line only may be imported from SQTP
*.NUM files generated by the KEELOQ tool in 
MPLAB.
150~
38400bpsを1bps単位で指定可能。

送受信はBusyランプで表示。

PICkit2アプリ以外ではUART動作はできない。
400kHz:Tools -> Fast Programming にチェック

100kHz:Tools -> Fast Programmingのチェックをはずす
925kHz:Tools -> Fast Programming にチェック

245kHz:Tools -> Fast Programmingのチェックをはずす
925kHz:Tools -> Fast Programming にチェック

245kHz:Tools -> Fast Programmingのチェックをはずす
ターゲットからの電源をつなぐ。

4,5ピンは4.7kΩでプルダウンされているので、その影響を考慮する必要がある。





コメント

_ 通りすがり ― 2014/06/13 10:39:14

Pickit3でもPICkit 3 Programmer App and Scripting Tool v3.10を使ってI2C EEPROM(24LC*など)に書けますよ。
ICSP6番ピンがI2CのSDA信号ですが、Pickit3側の回路は低電圧PGMのみを想定しているので、ツェナーダイオードが咬まっています。素のPickit3でシリアルEEPROMに書けない原因はこれです。
PICkit 3 Programmer AppのReadmeには、TR3とR50を取れと書いてありますが、PICkit3自体の改造をせずに書く方法もあります。
I2Cの信号レベルに合わせて外部プルアップ抵抗の値を調整してやれば、何とか書けます。
実際、僕はこの方法で24LC1025に漢字フォントを書き込んでます。

_ air_variable ― 2014/06/14 19:57:13

通りすがりさん

なんと、貴重な情報を頂きありがとうございます。
readmeを確認して実験してみたいと思います。

_ KOH ― 2015/12/25 06:26:49

お二人さん、めっちゃ助かりました。
とにかくありがとう。

_ air_variable ― 2015/12/31 19:21:28

少なからずお役に立てまして光栄です。
またよろしくお願いいたします。

_ takada ― 2017/11/26 10:28:52

PICKit3の質問があるんですが。

_ air_variable ― 2017/11/26 23:21:37

takadaさん、こんにちは。

ここはチャットの場でも、質問コーナーでもありませんので、
ご用件を書いていただくか、別にあるBBSに投稿していただけますか。

http://airvariable.bbs.fc2.com/


誰か親切な方が答えてくれるかもしれませんが、趣味で運営していますので、質問しても答えられるとは限らないという事をご了承ください。

宜しくお願いします。

コメントをどうぞ

※メールアドレスとURLの入力は必須ではありません。 入力されたメールアドレスは記事に反映されず、ブログの管理者のみが参照できます。

※投稿には管理者が設定した質問に答える必要があります。

名前:
メールアドレス:
URL:
次の質問に答えてください:
全角で「あ」をタイプしてください。Japanese language only.

コメント:

トラックバック





[][admin][mobile][Homepage][BBS][Blog][YouTube][asablo]