JAJAA35 September   2025 AM2612

 

  1.   1
  2.   概要
  3.   商標
  4. 1はじめに
  5. 2USB ホスト検出
    1. 2.1 一般的な USB ホスト検出フロー
    2. 2.2 AM261x USB ホスト検出
  6. 3ハードウェアの変更点
  7. 4ソフトウェアの変更
    1. 4.1 USB Synp ドライバの変更
    2. 4.2 USB アプリケーションの変更
    3. 4.3 USB ドライバとアプリケーションを再構築する手順
      1. 4.3.1 USB ライブラリの再構築
      2. 4.3.2 USB アプリケーションの再構築
        1. 4.3.2.1 CCS ビルド
        2. 4.3.2.2 コマンド ライン ビルド
    4. 4.4 新しいアプリケーションのテスト
  8. 5まとめ
  9. 6参考資料

USB アプリケーションの変更

まず、自動生成された syscfg コードから TinyUSB 初期化を無効にし、ホスト接続が検出された場合にのみ実行します。

tusb_init() を無効にするには、mcu_plus_sdk/source/sysconfig/usb/.meta/tinyusb/templates/tinyusb_open_close_config.c.xdtファイルを変更し、「tusb_init()」 関数をコメントアウトします。代わりに、この初期化は USB ドライバの初期化シーケンスに移動されます。

 Syscfg テンプレート ファイルから TinyUSB init を削除しています図 4-3 Syscfg テンプレート ファイルから TinyUSB init を削除しています

ここで、USB アプリケーションで example.syscfg を開き、次の手順を実行します。

  1. GPIO ピンを追加。この実装では、AM261x Launchpad のブースタパックテストヘッダ内で J6 ピン 53 としても利用できる GPIO6 を使用します。ホスト接続で VBUS ラインが high にプルアップされ、切断時に low になるため、トリガタイプを立ち上がりと立ち下がりの両方としてマークします。そのため、どちらの場合も ISR がトリガされることが予想されます。
     SysCfg GPIO 構成図 4-4 SysCfg GPIO 構成
  2. GPIO クロスバー割り込み配線を構成します。GPIO0 ~ GPIO15 ピンは、INTR_0 クロスバー出力を使用します。そのため、GPIO6 の場合、INTR_0 と VIM_MODULE0_0 を構成します。他の GPIO ピンを使用する場合は、割り込み構成が正しく処理されていることを確認してください。
     SysCfg GPIO INT XBAR の構成図 4-5 SysCfg GPIO INT XBAR の構成
  3. USB モジュールを設定します
 SysCfg USB 構成図 4-6 SysCfg USB 構成