CS+ で RX66T をターゲットとした USB FIT 使用について

いつもお世話になっております。
初心者です。よろしくお願いします。

CS+ で RX66T をターゲットとしたプロジェクトを作成しています。
USB FIT を使えたらいいなと思ったのですが、アプリケーションノート
USB Basic Host and Peripheral Driver Firmware Integration Technology)に
USB Host モードと USB Peripheral モードの同時動作はサポートしていません。
とあります。
・USB メモリへのデータ保存
・USB ケーブルで接続した PC と通信(PC側から問い合わせ)
を実現しようと思ったら、FIT が使えない・・・ということでしょうか。

通信部分は特に自信がないのですが、サンプル(?)を参考に自分で
書いていくしかないのでしょうか。

どなたかアドバイスいただけると幸いです。
よろしくお願いします。

  • ホストとペリフェラルのモードは排他的にしか使えません。
    運用上で、動作設定入力などを元、起動時にモード切り替えるような使い方とかなら実現できるかもしれませんが、ペリフェラルが1つのリソースしかないのに複数のモジュールがあるためリソース割り当てができないと思われます。スマートコンフィギュレータを使わずに自力なら上に書いたような運用上で排他的に使うことは可能だと思います。

  • hostとperipheral両方を使おうとしたらそれなりに苦労するでしょう。
    有償のプロトコルスタックを買っても簡単ではないと思いますが、一度聞いてみては。

    Renesas RX Partner エコシステムソリューション
    https://www.renesas.com/jp/ja/products/microcontrollers-microprocessors/rx-32-bit-performance-efficiency-mcus/rx-partners

    こんなのもありますね。
    TinyUSB
    https://github.com/hathach/tinyusb
    cdc_mscのサンプルがそれっぽい感じです。RXも対象ですが66Tはないので修正が必要。
    https://interface.cqpub.co.jp/wp-content/uploads/if2210_084.pdf

    cdc_mscを参考にFITで作っても良さそうですが、どっちが早いかは分かりません。


  •   様

    早々に返信ありがとうございます。
    スマートコンフィギュレータ上の制約なのか
    RX66T の制約なのかが分かっておらず上記のような
    質問になりました。
    「排他的に使う」という方策を示していただき
    リソースの制約と理解しました。
    データ保存の方法を変更する方が良さそうです。
    ありがとうございました。

  •  様

    返信ありがとうございます。

    アプローチを具体的に示していただき
    それを実現するのはとても苦労する・・・という
    イメージができました。
    データの保存方法を変更する方向で考えます。

    ありがとうございました。

  • 方針変更がいいと思います。

    ソフトウェアでそういうものが提供されたとしても物理的に繋ぐ方法が、正式な方法だとマイクロABタイプのコネクタでUSB OTGピンを使うことになります。もうこれは時代遅れです。1つの装置(マイコン)に全てやらせるより、PCと通信用、他の機器との接続用の役割を分けるのがいいと思います。今ならPC側というか上位側はWiFi搭載マイコン、具体的にはESP32やその他の同型のモジュールにやらせて、そこと通信することを考えるのがいいのではないでしょうか?Arduino UNO R4のWiFiの構成でしょうか?残念なことにRAシリーズですけど。

    ESP32は単品だけでもSD(名称的にはTFTカード?って言わないとダメでしたっけ?のSPIモード)読み書き、WiFi、アクセスポイント、Webサーバを担えます。具体的にはHTTP経由でファームをSDに書き込んでFW更新とかできます。

  •  様

    Replyありがとうございます。ESP32 ってすごいんですね!
    今回は ESP32 の使用は考えていませんでしたが、
    今後の選択肢の一つとして覚えておきたいと思います。

    ありがとうございます。