FT245 SYNC FIFO に切り替えた後、MPSSE 出力を回復するために FT2232H をリセットする必要がありますが、ftdi_usb_reset()を(チャネル A とチャネル B の両方で) 使用すると、FT245 が有効になった後に MPSSE に戻ることができず、MPSSE へのアクセスを回復する唯一の方法です。 FTDIからUSBを抜き差しすることです。
ただし、FPGA でのデザインがスタックすることがあり、FPGA ですべてのスタックをデバッグするのは面倒であり、すべてのスタックを見つけることが保証されていないため、FPGA のリセットピンにアクセスするには MPSSE が必要であり、ソフトウェアで行う必要があります。デバイスのプラグを抜くのはあまり便利ではありません。
これはファームウェアの更新にも必要です。ビットストリームで SPI フラッシュにアクセスするために FPGA を Hi-Z にする MPSSE が必要であり、ファームウェアを更新する前にユーザーが USB デバイスを再接続するのは不便です。
理想的には USB デバイスの電源をリセットするための libftdi または libusb の方法はありますか?