USB対応マイコンによるFTDI素子とのUSB通信

こんにちは。

Synergy (又はルネサスのUSB機能実装マイコン)で FTDI 素子を用いた機器と

通信を行いたいのですが、データの送受信を実現された方はいらっしゃいますでしょうか?

現在確認しているのは、

 CDCのClass Request(UX_HOST_CLASS_CDC_ACM_IOCTL_SET_LINE_CODING)は非対応である。

   非対応である為、上記関数を使用してボーレートやビットレートの設定は出来ない。

   従って、CDCドライバを使用して、FTDIデバイスを使用したUSB機器とデータのやり取りが出来ない。 

実現された方は、どのように対応されたのか、教えて頂けないでしょうか?

また、こうすればいいのではというご意見あれば教えて下さい。

是非、皆様のお知恵をかしてください。

よろしくお願い致します。

Parents
  • えん さん、こんにちは。NoMaYと申します。

    以下のスレッドにリプライをしたことがありますが、えんさんが以下のスレッドにも質問されているということは、Synergy(又はルネサスのUSB機能実装マイコン)側をUSBホストにして、そこにFTDIのUSBシリアル変換チップを繋ぎたい、ということですよね?

    rx111におけるCDCドライバを使用したFTDIチップ搭載デバイスとのシリアル通信について
    japan.renesasrulz.com/cafe_rene/f/forum5/3903/rx111-cdc-ftdi

    このスレッドにリプライしていたのは随分昔でしたので、改めて読み直してみたのですが、yamayamaさんが解決された方法は以下のような方法なのではないだろうか、と思いました。

    (1) FTDIチップのエンドポイントの構成は、INが1つ、OUTが1つ、コントロールが1つ、である。

    (2) INエンドポイントでは、最初の2バイトは以下のヘッダファイル記載の通り、ある目的の為に割り当てられている。
    (3) INエンドポイントの3バイト目以降は、FTDIチップが受信したシリアルデータではないかと、思われる。

    (4) OUTエンドポイントでは、最初の1バイトは以下のヘッダファイル記載の通り、データ長を示す為に割り当てられている。
    (5) OUTエンドポイントの2バイト目以降は、FTDIチップが送信するシリアルデータではないかと、思われる。

    (6) コントロールエンドポイントでのFTDIチップとのやりとりには、以下のヘッダファイル記載のコマンドが使用される。

    uClinux-H8のヘッダファイルの1つ(上記のスレッドでyamayamaさんが提示されていたURLです
    osdn.net/projects/uclinux-h8/scm/git/linux/blobs/master/drivers/usb/serial/ftdi_sio.h

    Synergyは使ったことがありませんが、INが1つ、OUTが1つ、コントロールが1つ、のバルク転送モードはありますでしょうか?あれば、そのバルク転送モードを使用して、FTDIチップと通信することになると思いました。

Reply
  • えん さん、こんにちは。NoMaYと申します。

    以下のスレッドにリプライをしたことがありますが、えんさんが以下のスレッドにも質問されているということは、Synergy(又はルネサスのUSB機能実装マイコン)側をUSBホストにして、そこにFTDIのUSBシリアル変換チップを繋ぎたい、ということですよね?

    rx111におけるCDCドライバを使用したFTDIチップ搭載デバイスとのシリアル通信について
    japan.renesasrulz.com/cafe_rene/f/forum5/3903/rx111-cdc-ftdi

    このスレッドにリプライしていたのは随分昔でしたので、改めて読み直してみたのですが、yamayamaさんが解決された方法は以下のような方法なのではないだろうか、と思いました。

    (1) FTDIチップのエンドポイントの構成は、INが1つ、OUTが1つ、コントロールが1つ、である。

    (2) INエンドポイントでは、最初の2バイトは以下のヘッダファイル記載の通り、ある目的の為に割り当てられている。
    (3) INエンドポイントの3バイト目以降は、FTDIチップが受信したシリアルデータではないかと、思われる。

    (4) OUTエンドポイントでは、最初の1バイトは以下のヘッダファイル記載の通り、データ長を示す為に割り当てられている。
    (5) OUTエンドポイントの2バイト目以降は、FTDIチップが送信するシリアルデータではないかと、思われる。

    (6) コントロールエンドポイントでのFTDIチップとのやりとりには、以下のヘッダファイル記載のコマンドが使用される。

    uClinux-H8のヘッダファイルの1つ(上記のスレッドでyamayamaさんが提示されていたURLです
    osdn.net/projects/uclinux-h8/scm/git/linux/blobs/master/drivers/usb/serial/ftdi_sio.h

    Synergyは使ったことがありませんが、INが1つ、OUTが1つ、コントロールが1つ、のバルク転送モードはありますでしょうか?あれば、そのバルク転送モードを使用して、FTDIチップと通信することになると思いました。

Children
No Data