ATF22LV10Cライター ( PIC32MX270F256B-50I/SP )

  マイクロチップ社のSPLD(Simple programmable logic device)に、ATF22LV10C(旧アトメル)というチップがあります。このSPLD専用のライターを作りました。パーソナル・コンピュータとUSB接続するだけで使用できます。
  Parallel Port ATF and GAL Programmerの回路を参照し、プログラムを移植して本ライターを作りました。また、書き込みアルゴリズムについては、ATF22V10C Programming Algorithmをも参照しました。本ライターはATF22LV10C専用ですが、ATF22V10Cでも使用できるかも知れません。


回路図と実際の回路

  回路図と実際の回路を以下に示します。

  回路は、ユニバーサル基板(Takasu IC-701-72)上で組んでいます。水晶発振子(Xtal)には20MHzのものを用いています。PIC内部では50MHzがシステムクロックとなるよう設定しています。

  ATF22LV10Cにフューズデータを書き込むためには、+12Vの電圧が必要です。このため、DC-DCコンバータ(MAX662 DIPモジュール:秋月電子通商)を用いてUSBケーブルで供給される+5Vから+12Vを得ています。このコンバータのSHDNピンが出力制御ピンとなっています。このピンがLOWのとき、Voutピンから+12Vが出力されます。ところが、このピンをHIGHにしても+5Vが出力されてしまいます。+12Vが出力されたときにだけ、赤色LED(回路図の中心から少し上の方にあるLED2)を点灯させ、+5Vが出力されたときには、このLEDが点灯しないようにしました。具体的には、LEDと直列に9V程度のツェナーダイオード(HZ9B3-E: RENESAS;回路図のD1)を接続しただけです。

  なお、回路図中、ゼロプレッシャーICソケットから出ている線で、例えばPIC#2と書かれた線はPICの2番ピンに接続するという意味です。

  下の写真を見ると分かりますが、ATF22LV10Cは、1番ピンが左上になるよう24ピンゼロプレッシャーICソケットに挿入します。ゼロプレッシャーICソケットがなければ、抜き差しに手間がかかりますが、普通の24ピンのICソケットで十分です。

  特に気を付ける点は、ATF22LV10Cの2番ピンに+12Vをかける前に、必ずATF22LV10Cの電源ピンに+5Vを掛ける必要があるということです。詳しくは、回路試験の節を参照してください。


PIC用ファームウェア

  PIC用ファームウェアATF22LV10C_USB.zipをPICに書き込みます。以下、その手順です。

1.MHC環境を整えていないならば、MHC環境に従ってMHC環境を整えます。

2.ATF22LV10C_USB.zipを解凍して出てくるATF22LV10C_USBフォルダーを\microchip\harmony\v2_05_01\appsフォルダーの中にいれます。

3.XC32(v2.05)でコンパイルして、PICにファームウェアを書き込みます。


PC用プログラム

パーソナル・コンピュータ(PC)用プログラムはATFwriter.zipです。ATFwriter.zipを解凍して出てくるATATFwriterフォルダの中のATFwriter.exeが実行ファイルです。


回路試験

1.ATF22LV10CをゼロプレッシャーICソケットに挿入しないこと

2.ファームウェアを書き込んだPIC回路をパーソナル・コンピュータ(PC)とUSB接続します。赤色LEDが一寸光ったあと、緑色LEDが点燈します。緑色LEDの点燈は、USB(HID)接続が完了したことと、ATF22LV10Cの挿入、取り外しが安全にできることを意味しています。緑色LEDが点燈しない場合は、回路の配線を確認します。なお、回路図では、赤色LEDはLED2に、一方緑色LEDはLED1に相当します。

3.ソケットの24番ピンと12番ピン間の電圧が+5Vとなっていることをテスターで確認します。+5Vが検出されなければ回路を確認します。必ず、ソケット上で確認します。

4.PC上でATFwriter.exeを実行します。

5.TFwriter.exeのメニューの「ファイル」->「JEDEC読込」をマウスでクリックすると、ファイル・ダイアログが現れるので、お手持ちのjedecファイル(何でもよい)を読み込みます。jedecファイルを持っていない場合には、後出のyts.zipを解凍すると出て来るNAME.jedやNAME2.jedを読み込むと良いでしょう。

6.ソケットの2番ピンの電圧をテスター(+12Vが測れるレンジ)で測りながら、ATFwriter.exeのメニューの「書き込み」をマウスでクリックします。すると、少しの間、赤色LEDが光り、+12Vが2番ピンから出力されるので、それを確認します。これで、ATF22LV10Cを壊す可能性はかなり低くなります。

7.緑色LEDの点燈を確認して、1番ピンが左上になるように、ATF22LV10CをゼロプレッシャーICソケットに挿入します。回路の写真を参照のこと。くれぐれも、逆さに挿入しないこと

8.ATFwriter.exeのメニューの「PES取得」をマウスでクリックします。すると、以下のようなダイアログがでて、PES(Programmer Electronic Signature)が「1F22L10C3」と読み込めます。この読み込みができれば、回路の問題はないということになります。なお、JEDECファイル(フューズデータ)をATF22LV10Cに書き込んだ後は、「1F22L」としか表示されません。


使用方法

1.ATF22LV10CをゼロプレッシャーICソケットに挿入しない状態にする。

2.ファームウェアを書き込んだPIC回路をパーソナル・コンピュータ(PC)とUSB接続します。赤色LEDが一寸光ったあと、緑色LEDが点燈するはずです。緑色LEDの点燈は、USB(HID)接続が完了したことと、ATF22LV10Cの挿入、取り外しが安全にできることを意味しています。

3.PC上でATFwriter.exeを実行します。

4.緑色LEDの点燈を確認して、1番ピンが左上になるように、ATF22LV10CをゼロプレッシャーICソケットに挿入します。回路の写真を参照のこと。くれぐれも、逆さに挿入しないこと

5.JEDECファイル(フューズデータ)のPICへの転送:TFwriter.exeのメニューの「ファイル」->「JEDEC読込」をマウスでクリックすると、ファイル・ダイアログが現れるので、ATF22LV10Cに書き込みたいJEDECファイル(***.jed)を選択します。これで、PICにフューズデータが転送されます。なお、ファイルの内容はエディット画面にも表示されます。

6.TFwriter.exeのメニューの「書き込み」をマウスでクリックすると、ATF22LV10Cにフューズデータが書き込まれます。書き込みが終わるまで(緑色LEDが消灯している間)、ATF22LV10Cを取り外してはいけません。書き込みに成功すると、次のようなダイアログが現れます。

7.TFwriter.exeのメニューの「読み込み」をマウスでクリックすると、ATF22LV10Cに書き込んだ(あるいは、書き込まれている)フューズデータがPCに読み込まれ、エディット画面に表示されます。

8.TFwriter.exeのメニューの「ファイル」->「JEDEC保存」をマウスでクリックすると、エディット画面に表示されたJEDECデータをファイルに保存することができます。


WinCupl

  JEDECファイル(フューズデータ)を作成するために、WinCuplを使用します。最初にWinCuplを起動すると、Serial Numberが要求されるので、60008009と入力します。

  簡単な2つのプロジェクトをyts.zipに入れておきました。NAMEプロジェクトはAND回路、NAME2プロジェクトはクリアつき3ビットカウンターです。



コピーガード・キャンセラー

  昔、秋月電子通商でコピーガード・キャンセラーが販売されていました。回路図は コピーガードキャンセラキットです。この回路では、3個のIC(4011、4012、4520)が使われています。以下の写真のように、これらを1個のATF22LV10Cに置き換えてみました。回路の調整にはオシロスコープが必要です

回路はプリント基板上に組みました。 作成した回路は、4011、4012、4520をATF22LV10Cで置き換えた以外、秋月電子通商の回路と全く同じです。ただ、+5V単一電源で働かせます。基板データはyts1.zip(yts.mb3なるファイルが入っています)です。なお、このデータはプリント基板編集ソフトウェア(mbe)で作成しました。回路には6箇所のジャンパーがありあます(上の写真のJ1からJ6まで)。

  ATF22LV10Cに書き込むデータはVIDEO2.zipです。秋月電子通商のの回路図では、4520に含まれる2つのカウンターのクロックは、それぞれLM1881のC(1番ピン)とLM555のOUT(3番ピン)から得ています。ところが、ATF22LV10Cではクロックピンは1つ(1番ピン)しかありません。そこで、クロックピンの前にマルチプレクサを入れて、LM1881のC(1番ピン)から12個のパルスを受け付けた後、LM555のOUT(3番ピン)から12個のパルスを受け付けるようにしています。また、カウンターは5ビットカウンター(24進カウンター)、だた1つだけとしました。

 ATF22LV10Cの配線は以下の表の通りです。その他の配線は秋月電子通商の回路図を参照ください。

ATF22LV10C 配線 備考
PIN#1 PIN#23と接続 マルチプレクサ出力をクロックとして使用
PIN#3 LM555のOUT(3番ピン)と接続
PIN#10 LM1881のC(1番ピン)と接続
PIN#11 LM1881のV(3番ピン)と接続
PIN#12 GNDと接続
PIN#22 LM555のR(4番ピン)と接続
PIN#23 PIN#1と接続 マルチプレクサ出力
PIN#24 VCC=+5Vと接続

  調整方法:秋月電子通商の回路図におけるVideo INにビデオ信号を入力します。そして、オシロスコープの1つのチャンネルでLM1881のV(3番ピン)の信号を見ます。この信号でトリガーをかけます。次に、オシロスコープの別のチャンネルで、秋月電子通商の回路図におけるVideo OUTの信号を見て、1kの半固定抵抗でパルス幅を決めます。また、10Kの半固定抵抗で、パルスのHIGHレベルを整形前のビデオ信号と同じになるよう調整します。オシロスコープで見ながら、これら半固定抵抗を動かして、波形のどこが変わるかを観察すれば理解できます。


戻る