PSoC Expressデモ基板をI2C-USBブリッジとして使用する


【Capsense】PSoC スレ  其の四【USB】より



641774ワット発電中さん [sage] :2007/07/08(日) 23:37:32 ID:tvOE8YhW
>>638が書いてるI2C_USBキットだが、その簡易版をセミナー配布基板でやってみた。
(またそのネタかい!w)

使うのは配布基板右上にある、USB対応のCY8C24894。


■準備その1(I2CスレーブをP1.5とP1.7に接続する場合)

配布基板のP1.5/P1.7は基板上でPSoC間を相互接続しているので、同じ基板上にある
他のPSoCをI2Cでモニタする場合に使用する。

1. Application Note AN2352 (ttp://www.cypress.com/design/AN2352)のan2352.zipを
ダウンロード、展開。
2. BridgeFirmware\usbtoiic.hexを、配布基板右上のCY8C24894に書き込み。
3. PSoC Express 3.0でI2Cスレーブになるプログラムを作成し、配布基板の右上以外の
PSoCに書き込み。I2CバスのピンはP1.5とP1.7に割り当てること。
番外. 以前>>547-550に書いたcsmasterを基板右下のPSoCに書き込んである場合、
こいつもI2CマスタになってI2Cバスを取り合い正常な値が取れないので、
I2Cマスタにならないプログラムを上書きしておく必要がある。
ttp://www35.tok2.com/home/xcrosgs2wy/i2usb/src/nomaster.hex をどうぞ。)


■準備その2(I2CスレーブをP1.0とP1.1に接続する場合)

配布基板のP1.0/P1.1はISSPコネクタに出ているので、I2Cスレーブに外部接続可能。
ただし、配布基板のP1.0/P1.1はI2Cに必要なプルアップ抵抗が入っていないので、
I2Cスレーブ側に2K〜10K程度のプルアップ抵抗が必要。
なお、配布基板のI2C相互接続ジャンパを使う場合は、相互接続回路側に
プルアップ抵抗が入っているので、別途追加の必要はない。

1. Application Note AN2352 (ttp://www.cypress.com/design/AN2352)のan2352.zipを
ダウンロード、展開。
2. BridgeFirmware\USB_I2C_1_22\main.cを以下のように変更する。
  25行目,26行目,187行目のコメントアウトを外す。
  27行目,28行目をコメントアウトする。
3. BridgeFirmware\USB_I2C_1_22\USBtoIIC.SOCをPSoC Designerで開き、ビルド。
4. 生成されたHEXファイルを、配布基板右上のCY8C24894に書き込み。
ttp://www35.tok2.com/home/xcrosgs2wy/i2usb/src/usbtoiic2.hex をどうぞ。)
5. PSoC Express 3.0でI2Cスレーブになるプログラムを作成し、ターゲットに書き込み。
配布基板のPSoCを使う場合は、I2CバスのピンをP1.0とP1.1に割り当てること。
6. I2CスレーブになるターゲットのI2CバスとJ12の4番,5番を接続。配布基板のPSoCを
使う場合は、I2C相互接続ジャンパをショートする。

642774ワット発電中さん [sage] :2007/07/08(日) 23:38:22 ID:tvOE8YhW
■モニタ手順

1. 配布基板の右上のボリュームのワイパ位置を中央あたりにしておく。(最大、
最小以外なら適当でいい。)
2. 配布基板の右上のUSBコネクタにケーブルを接続。HIDデバイスとして認識する。
この時点で基板上の全デバイスに電源が入るので注意。
3. PSoC Express 3.0上でI2Cスレーブとなるターゲットアプリを開き、Monitorボタンを
押す。ボタン右側の(|>)(□)の右にConnectedと表示されることを確認。
(ちなみに、ここでUSBケーブルを抜くとNot Connectedに変わる。)
4. (|>)ボタンを押してモニター開始。レジスタの値が(若干タイムラグはあるが)
リアルタイムに変わるはず。
5. Tuner対応ユーザモジュール(CSDボタン等)を使っている場合は、そのユーザモジュールを
右クリックしてShow Tuner...を選択するとTuner Windowが表示される。
6. (□)ボタンでモニター停止。


とまぁ、こんなとこで。
やってみると結構面白い。


戻る
inserted by FC2 system