歩き遍路 平成19年春(J1) 記録の準備

Visual C++で FT-232HのMPSSEのGPIOを制御


 USB 2.0 Hi-Speed (480Mb/s) to UART/FIFO IC の FT-232H が発売されたので早速購入して調べました。
 調べた内容は、FT-232HのMulti-Protocol Synchronous Serial Engine (MPSSE)にあるGPIOです。

●Visual C++でFT-232H MPSSEのGPIOにカウント値を表示

 Visual C++のプログラムでカウントした値をFT-232H MPSSEのGPIOに送り表示しました。
 Visual C++のプログラムは、FTDI社のアプリケーションノート AN108 を参考に作りました。
 FT-232Hは、モジュールになった UM232H をユニバーサル基盤に実装しました。
 構成を下の写真に示します。モジュールの上下に2.2kΩの電流制限抵抗と10バーのLEDを配置しています。

 節電のため、電流制限抵抗を2.2kΩとしたため、LEDの輝度が低いので見えにくいですが、正常に動作しました。






●Visual C++のプログラム

 ダイアログベースでプログラムしました。
 「ポートR/W」ボタンを押すとカウンタを開始して、カウント毎にその値を FT-232H に出力します。






 「ポートR/W」ボタンを押すと次のプログラムが呼び出されます。

 まず、次のようにMPSSEモードの設定をします。
 ・FT232を開く
 ・FT232の受信バッファと送信バッファをリセット
 ・FT232をリセット

 次に、 FT-232H のコマンドを使ってSPIインタフェースタイミングの設定コマンドの準備をします。

 そして、カウントしながら FT-232H のコマンドを使ってカウント値を FT-232H に送ります。カウントは、for 文を使ってます。





●FT_OpenExのFT_OPEN_BY_DESCRIPTIONを使って「FT232を開く」

 FT-232H のコマンドFT_OpenExのFT_OPEN_BY_DESCRIPTIONを使って「FT232を開く」ため、DESCRIPTION名を知る必要があります。
 次のように、「FT Prog」を使ってDESCRIPTION名を調べます。 このモジュールは、「UM232H」です。

 そして、ftStatus = FT_OpenEx("UM232H",FT_OPEN_BY_DESCRIPTION,&ftHandle); に記入して実行すると問題無く動作しました。

 すぐれ物ですね。






ホームへ戻る