PICライタとROMライタ

PIC内部にはEEPROMが入っていて、PICライタはそのEEPROMにデータを書き込む装置。
ROMライタはEPROMやEEPROMなどにデータを書き込む装置。
じゃぁ、同じEEPROMに書き込むのにPICライタとROMライタは何が違うのか?とふと思った。何故かというとPICライタはROMライタに比べてすごく安いから。
PICとROMじゃぁ書き込みの仕方が違うからだと思うんだけど、値段の差があるのは他に何か理由があるからじゃないだろうか。
たぶんすごくバカらしい疑問なんだろうなあ(^^;

うだうだしなてないで、ライタの回路図とPIC,ROMのデータシートを探してこよう。

大体調べた

まず、PICについて

  • 13V程度の高電圧をリセット端子与えるとプログラミングモードに移行
  • 普段IOに使うピンのうち2本使ってシリアルで書き込みを行う

らしい。昇圧にはチャージポンプという回路を使うと良いらしい。
簡単には

  1. コンデンサをチャージ
  2. トランジスタ(でなくてもいいけど)でスイッチして電源と直列にする
  3. 電圧が2倍になる

みたいな回路。具体的にどうやって書き込みをするかはまだ読んでない。

次にEEPROMについて
ここで調べた。他のEEPROMについても基本的な部分は同じだろう。
http://www.semicon.toshiba.co.jp/openb2b/websearch/start.jsp

  • 3.5V程度で読み込み/書き込みともに動作する(内部に昇圧回路が入っているらしい)
  • スタートコンディションっていう信号を入力して読み/書き開始。8クロック毎にアクノリッジ信号でやり取りする
  • スタートコンディション後にデバイスアドレスとReadかWriteかのフラグを渡して、以後8クロック毎にアクノリッジ信号でやり取りしながらストップコンディションが入力されるまで読み書きを行う

らしい。

なるほど、
んで、こんなの見つけた。
http://ntus.net/j/i2clpt/
すげぇ。これなら、いま家にあるパーツだけで作れてしまう。
でも、パラレルポートの出力を直で入れちゃっていいのか?パラレルポートの波形は大分歪んでるはず。まぁ作ってみるか。