last update: 2024/04
Demo Sample Application Folder:
Application └ _Exclude ├ USBH ..... USB Host各種クラス機能のデモサンプル
Sample | 説明 |
---|---|
USBH_Printer_Start | プリンタクラスドライバのデモサンプル |
USBH_MTP_Start | USBホストのMTPクラスドライバの使用方法を示すデモサンプル |
USBH_MSD_Start | MSDクラスのデモアプリケーション(ファイルシステムが必要です) |
USBH_HID_Start | 標準HIDキーボード・マウスデバイス用デモサンプル |
USBH_FT232_Start | FTDI FT232クラスドライバのデモサンプル |
USBH_CreateInterfaceList | USBポートに接続されているデバイスのステータス及びデバイス情報をIOコンソールに表示します |
USBH_CDC_Start | USBホストのCDC-ACMクラスドライバのデモサンプル |
USBH_CCID_Start | CCID通信デバイスクラスドライバのデモサンプル |
USBH_BULK_Start | BULK(VENDOR)クラスドライバのデモサンプル |
USBH_AUDIO_Speaker | AUDIO(スピーカーデバイス)クラスドライバのデモサンプル |
USBH_AUDIO_ScanDevices | USBポートにAUDIOクラスデバイスが接続された時にデバイスのベンダ・コンフィグレーション情報を表示します |
USBH_AUDIO_Microphone | AUDIO(マイクロフォンデバイス)クラスドライバのデモサンプル |
BSP |- BSP_USB.c .......... ボード依存の初期化設定ファイル(USB-HOST) | |- Setup |- USBH_Config_Renesas_EK_RX671.c .......... USB-HOSTドライバ設定ファイル Config |- USBH_Conf.h ............... コンフィグレーション設定ファイル | |- IO | |- USBH_ConfigIO.c ....... デバッグコンソールIOインターフェース設定ファイル | |- OS |- lib_embOSLayer_RXv3_L.lib ..... OSインターフェース設定ファイル
プロジェクト設定では「\Application\_Exclude\USBH」フォルダはビルド対象外に設定しています。以下のどちらかの方法で動作確認を行うサンプルアプリケーションを選択します。
各テストアプリケーションの動作確認方法はテストサンプルアプリケーションのヘッダのコメント情報を参照ください。
プロジェクトを再ビルドし、EK-RX671評価ボードに接続してデバッグセッションを開始します。
テストアプリケーションの要件に合わせてUSBホストボードにデバイスを接続してプログラムを実行します。デバッガのIOコンソールのログ画面から結果を確認します。
USBディスクドライブインターフェースを使用しますので、以下の手順でファイルシステム(emFile)のドライバ設定をUSBディスクドライブに変更してください。
評価ボードのジャンパー設定でJ29 USBポートをHOSTモードに変更します。
操作手順:プログラム起動してUSBポートにUSBデバイスを挿入します。対象デバイスのクラス、Vendor情報はログウインドウから確認します。以下、LANアダプタ及びUSBディスク接続の事例です。
Debug IO Console:
SEGGER Software Evaluation Sample Eval Board: EK-RX671 RTOS: SEGGER embOS ---------------------------------------------- 0:019 MainTask - INIT: emUSB-Host Init started. Version 2.36.5 0:021 MainTask - INIT: ********************************************************************* 0:022 MainTask - INIT: * emUSB-Host Configuration * 0:023 MainTask - INIT: ********************************************************************* 0:024 MainTask - INIT: * External hubs are ALLOWED 0:025 MainTask - INIT: * Time before communicating with a newly connected device: 300 ms 0:026 MainTask - INIT: ********************************************************************* 0:027 MainTask - INIT: Init completed 0:028 MainTask - INIT: Enumeration of devices enabled 0:029 USBH_Task - INIT: USBH_Task started 0:130 USBH_isr - INIT: USBH_ISRTask started 0:969 USBH_Task - APP: **** Device added [1] 1:031 MainTask - APP: **** Device information for interface with ID 1 1:032 MainTask - APP: Device ID: 1 1:033 MainTask - APP: Vendor ID: 0x0B95 1:034 MainTask - APP: Product ID: 0x7720 1:035 MainTask - APP: BCD device version: 0x1 1:036 MainTask - APP: Interface number: 0 1:037 MainTask - APP: Device class: 0xFF 1:038 MainTask - APP: Device subclass: 0xFF 1:039 MainTask - APP: Device protocol: 0x0 1:040 MainTask - APP: Number of open handles: 0 1:041 MainTask - APP: Exclusive state: 0 1:042 MainTask - APP: Speed: FullSpeed 1:047 MainTask - APP: Manufacturer name: ASIX Elec. Corp. 1:050 MainTask - APP: Product name: AX88x72A 1:053 MainTask - APP: Serial number: E54DF0 1:055 MainTask - APP: Configuration description: 0 1:057 MainTask - APP: Interface description: 0 1:058 MainTask - APP: connected to port 1 of controller 0 47:327 USBH_Task - APP: **** Device removed [1] 47:359 MainTask - APP: No devices found. 55:478 USBH_Task - APP: **** Device added [2] 55:560 MainTask - APP: **** Device information for interface with ID 2 55:561 MainTask - APP: Device ID: 2 55:562 MainTask - APP: Vendor ID: 0x090C 55:563 MainTask - APP: Product ID: 0x1000 55:564 MainTask - APP: BCD device version: 0x1100 55:565 MainTask - APP: Interface number: 0 55:566 MainTask - APP: Device class: 0x8 55:567 MainTask - APP: Device subclass: 0x6 55:568 MainTask - APP: Device protocol: 0x50 55:569 MainTask - APP: Number of open handles: 0 55:570 MainTask - APP: Exclusive state: 0 55:571 MainTask - APP: Speed: FullSpeed 55:573 MainTask - APP: Manufacturer name: USB 55:575 MainTask - APP: Product name: Flash DISK 55:577 MainTask - APP: Serial number: 1403033990013620 55:578 MainTask - APP: connected to port 1 of controller 0 63:856 USBH_Task - APP: **** Device removed [2] 63:879 MainTask - APP: No devices found.
操作手順:ファイルシステムのUSBH-MSDドライバ定義ファイル「FS_USBH_MSDConfig.c」をビルド対象に設定してプロジェクトをビルドします。プログラム起動してUSBポートにUSBディスクを挿入します。
テスト完了後に「FS_USBH_MSDConfig.c」をビルド対象外に設定します。
Debug IO Console:
SEGGER Software Evaluation Sample Eval Board: EK-RX671 RTOS: SEGGER embOS ---------------------------------------------- 0:019 MainTask - INIT: emUSB-Host Init started. Version 2.36.5 0:021 MainTask - INIT: ********************************************************************* 0:022 MainTask - INIT: * emUSB-Host Configuration * 0:023 MainTask - INIT: ********************************************************************* 0:024 MainTask - INIT: * External hubs are ALLOWED 0:025 MainTask - INIT: * Time before communicating with a newly connected device: 300 ms 0:026 MainTask - INIT: ********************************************************************* 0:027 MainTask - INIT: Init completed 0:028 MainTask - INIT: Enumeration of devices enabled 0:029 USBH_Task - INIT: USBH_Task started 0:130 USBH_isr - INIT: USBH_ISRTask started 0:965 USBH_Task - APP: **** Device added [0] 0:966 MainTask - APP: The following device was detected: 0:967 MainTask - APP: VendorId: 0x0411 0:968 MainTask - APP: ProductId: 0x023A 0:969 MainTask - APP: VendorName: BUFFALO 0:970 MainTask - APP: ProductName: USB Flash Disk 0:971 MainTask - APP: Revision: 1.00 0:972 MainTask - APP: NumSectors: 60566016 0:973 MainTask - APP: BytesPerSector: 512 0:975 MainTask - APP: TotalSize: 29573 MByte 0:976 MainTask - APP: HighspeedCapable: No 0:977 MainTask - APP: ConnectedToRootHub: Yes 0:978 MainTask - APP: SelfPowered: No 0:979 MainTask - APP: Reported Imax: 150 mA 0:980 MainTask - APP: Connected to Port: 1 0:981 MainTask - APP: PortSpeed: FullSpeed 0:982 MainTask - APP: Checking whether the volume is formatted... 2:433 MainTask - APP: Running sample on volume "msd:0:" DevIndex 0, LUN 0 2:434 MainTask - APP: Reading volume information... 2:435 MainTask - APP: **** Volume information for msd:0: 2:436 MainTask - APP: 30270720 KBytes total disk space 2:437 MainTask - APP: 30181248 KBytes available free space 2:438 MainTask - APP: 32768 bytes per cluster 2:439 MainTask - APP: 945960 clusters available on volume 2:440 MainTask - APP: 943164 free cluster available on volume 2:441 MainTask - APP: Creating file msd:0:\TestFile.txt... 2:457 MainTask - APP: Ok 2:458 MainTask - APP: Contents of msd:0: 2:459 MainTask - APP: Attributes: A--- Size: 0 2:460 MainTask - APP: TestFile.txt Attributes: A--- Size: 239 2:461 MainTask - APP: Firmware.old (Dir) Attributes: ---- Size: 0 2:462 MainTask - APP: Firmware (Dir) Attributes: ---- Size: 0 2:463 MainTask - APP: **** Unmount ****
操作手順:プログラム起動してUSBポートにHID キーボードデバイスを挿入します。キーボードデバイスからキーを入力してレスポンスをログコンソールから確認します。
Debug IO Console:
SEGGER Software Evaluation Sample Eval Board: EK-RX671 RTOS: SEGGER embOS ---------------------------------------------- 0:019 MainTask - INIT: emUSB-Host Init started. Version 2.36.5 0:021 MainTask - INIT: ********************************************************************* 0:022 MainTask - INIT: * emUSB-Host Configuration * 0:023 MainTask - INIT: ********************************************************************* 0:024 MainTask - INIT: * External hubs are ALLOWED 0:025 MainTask - INIT: * Time before communicating with a newly connected device: 300 ms 0:026 MainTask - INIT: ********************************************************************* 0:027 MainTask - INIT: Init completed 0:028 MainTask - INIT: Enumeration of devices enabled 0:029 USBH_Task - INIT: USBH_Task started 0:130 USBH_isr - INIT: USBH_ISRTask started 80:336 USBH_Task - APP: **** Device added [0] 80:357 USBH_Task - APP: **** Device added [1] 88:709 MainTask - APP: Keyboard: Key Spacebar - pressed 88:756 MainTask - APP: Keyboard: Key Spacebar - released 94:673 MainTask - APP: Keyboard: Key e/E - pressed 94:719 MainTask - APP: Keyboard: Key e/E - released 94:806 MainTask - APP: Keyboard: Key m/M - pressed 94:885 MainTask - APP: Keyboard: Key m/M - released 95:491 MainTask - APP: Keyboard: Key LeftShift - pressed 95:746 MainTask - APP: Keyboard: Key u/U - pressed 95:785 MainTask - APP: Keyboard: Key u/U - released 95:816 MainTask - APP: Keyboard: Key s/S - pressed 95:895 MainTask - APP: Keyboard: Key s/S - released 96:110 MainTask - APP: Keyboard: Key b/B - pressed 96:189 MainTask - APP: Keyboard: Key b/B - released 96:341 MainTask - APP: Keyboard: Key LeftShift - released 104:074 MainTask - APP: Keyboard: Key Return (ENTER) - pressed 104:120 MainTask - APP: Keyboard: Key Return (ENTER) - released 116:756 MainTask - APP: Keyboard: Key 1/! - pressed 116:882 MainTask - APP: Keyboard: Key 1/! - released 116:883 MainTask - APP: Keyboard: Key 2/@ - pressed 116:969 MainTask - APP: Keyboard: Key 2/@ - released 124:703 MainTask - APP: Keyboard: Key 3/# - pressed 124:734 MainTask - APP: Keyboard: Key 3/# - released 125:012 MainTask - APP: Keyboard: Key 4/$ - pressed 125:013 MainTask - APP: Keyboard: Key 4/$ - released 130:850 USBH_Task - *** Warning *** HID: _SubmitInBuffer: SubmitUrb USBH_STATUS_DEVICE_REMOVED 130:851 USBH_Task - APP: **** Device removed [0]
操作手順:プログラム起動してUSBポートにFTD UARTチップセットのUSB-UART変換アダプタデバイスを挿入します。UARTポートをパソコンに接続してTeraTermなど起動してCOMポートコンソールを開きます。COMポートコンソールから文字を入力してログコンソールからECHOレスポンスを確認します。
Debug IO Console:
6:223 USBH_Task - APP: **** Device added [0] 6:233 MainTask - APP: Vendor Id = 0x0403 6:234 MainTask - APP: Product Id = 0x6001 6:235 MainTask - APP: bcdDevice = 0x0400 58:543 MainTask - APP: Received: "F" 58:730 MainTask - APP: Received: "T" 61:443 MainTask - APP: Received: "2" 61:982 MainTask - APP: Received: "3" 62:393 MainTask - APP: Received: "2" 64:387 MainTask - APP: Received: "C" 64:829 MainTask - APP: Received: "l" 64:968 MainTask - APP: Received: "a" 65:315 MainTask - APP: Received: "s" 65:486 MainTask - APP: Received: "s" 66:393 MainTask - APP: Received: "T" 66:559 MainTask - APP: Received: "e" 66:806 MainTask - APP: Received: "s" 66:898 MainTask - APP: Received: "t"
操作手順:USB AUDIOデバイス(スピーカー・ヘッドセットなど)を挿入してプログラムを実行します。ログコンソールからAUDIOデバイスの情報を確認します。
Debug IO Console:
32:791 USBH_Task - APP: **** AUDIO Interface added [0] 32:792 USBH_Task - APP: **** AUDIO Interface added [1] 32:793 USBH_Task - APP: **** AUDIO Interface added [2] 32:832 MainTask - APP: AUDIO control interface found (DevId 1): 32:834 MainTask - APP: Vendor 2D0B, Product 0002, Version 1.0 32:835 MainTask - APP: Serial: 00000000 32:849 MainTask - APP: Manuf.: IPD Korea 32:869 MainTask - APP: Prod. : IPD USB Headset 32:870 MainTask - APP: Input terminal 1 32:871 MainTask - APP: Terminal type 402 32:872 MainTask - APP: Output terminal 3, Source 2 32:873 MainTask - APP: Terminal type 101 32:874 MainTask - APP: Input terminal 4 32:875 MainTask - APP: Terminal type 101 32:876 MainTask - APP: Output terminal 6, Source 5 32:877 MainTask - APP: Terminal type 402 32:878 MainTask - APP: Input terminal 10 32:879 MainTask - APP: Terminal type 201 32:880 MainTask - APP: Feature Unit 2, Source 1 32:881 MainTask - APP: Control channel 0, mask = 43 32:886 MainTask - APP: Volume: Cur = 0, Min = FFFFE200, Max = 500, Res = 100 32:887 MainTask - APP: Control channel 1, mask = 0 32:888 MainTask - APP: Control channel 2, mask = 0 32:889 MainTask - APP: Feature Unit 5, Source 12 32:890 MainTask - APP: Control channel 0, mask = 1 32:891 MainTask - APP: Control channel 1, mask = 2 32:897 MainTask - APP: Volume: Cur = 500, Min = FFFFCE00, Max = 500, Res = 100 32:898 MainTask - APP: Control channel 2, mask = 2 32:903 MainTask - APP: Volume: Cur = 500, Min = FFFFCE00, Max = 500, Res = 100 32:904 MainTask - APP: Feature Unit 11, Source 10 32:905 MainTask - APP: Control channel 0, mask = 3 32:910 MainTask - APP: Volume: Cur = 3B3, Min = 0, Max = 1000, Res = 1 32:911 MainTask - APP: Control channel 1, mask = 0 32:912 MainTask - APP: Control channel 2, mask = 0 32:913 MainTask - APP: Mixer Unit 12 32:914 MainTask - APP: Input 1 = source unit 4 32:915 MainTask - APP: Input 2 = source unit 11 32:916 MainTask - APP: Output channels 2, wChannelConfig = 3 32:917 MainTask - APP: Control mask[0] = 00 32:918 MainTask - APP: AUDIO streaming interface found (DevId 1): 32:919 MainTask - APP: Found streaming IN EP on AltSetting 1 32:920 MainTask - APP: Terminal Link 3 32:921 MainTask - APP: Channels=2, Frame=2, Resolution=16 32:922 MainTask - APP: Sampling Frequencies: 32:923 MainTask - APP: 8000 Hz 32:924 MainTask - APP: 16000 Hz 32:925 MainTask - APP: 24000 Hz 32:926 MainTask - APP: 32000 Hz 32:927 MainTask - APP: 44100 Hz 32:928 MainTask - APP: 48000 Hz 32:929 MainTask - APP: AUDIO streaming interface found (DevId 1): 32:930 MainTask - APP: Found streaming OUT EP on AltSetting 1 32:931 MainTask - APP: Terminal Link 4 32:932 MainTask - APP: Channels=2, Frame=2, Resolution=16 32:933 MainTask - APP: Sampling Frequencies: 32:934 MainTask - APP: 8000 Hz 32:935 MainTask - APP: 16000 Hz 32:936 MainTask - APP: 24000 Hz 32:937 MainTask - APP: 32000 Hz 32:938 MainTask - APP: 44100 Hz 32:939 MainTask - APP: 48000 Hz
操作手順:AUDIO SPEAKERデバイスを挿入してプログラムを実行します。スピーカーから音声「It simply works」を確認します。
Debug IO Console:
0:969 USBH_Task - APP: **** AUDIO Interface added [0] 0:970 USBH_Task - APP: **** AUDIO Interface added [1] 0:971 USBH_Task - APP: **** AUDIO Interface added [2] 0:982 MainTask - APP: AUDIO device: 0:983 MainTask - APP: Vendor 0B0E, Product 0420, Version 1.0 0:985 MainTask - APP: Prod. : Jabra SPEAK 510 USB 0:986 MainTask - APP: Found streaming OUT, Channels=2, Frame=2, Resolution=16 0:987 MainTask - APP: Sampling Frequencies: 0:988 MainTask - APP: 8000 Hz 0:989 MainTask - APP: 16000 Hz 0:990 MainTask - APP: 48000 Hz 0:991 MainTask - APP: Configure Audio device... 0:992 MainTask - APP: SetAltInterface to 1 0:994 MainTask - APP: SetSampleFreq to 48000 Hz 0:999 MainTask - APP: Feature unit 2, Source 1 1:000 MainTask - APP: Unmute Unit 2, control 0 1:004 MainTask - APP: Get volume unit 2, control 0 1:009 MainTask - APP: Volume[0] = FFFFE800, FFFFDC00, 800, 400 1:010 MainTask - APP: Set volume to 30 % (E933) 1:016 MainTask - APP: Feature unit 5, Source 4 1:017 MainTask - APP: Unmute Unit 5, control 0 1:019 MainTask - APP: Get volume unit 5, control 0 1:024 MainTask - APP: Volume[0] = FFFFFA00, FFFFF400, 900, 300 1:025 MainTask - APP: Set volume to 30 % (FA4C) 1:032 MainTask - APP: Open streaming channel 1:033 MainTask - APP: Playing .... 3:517 MainTask - APP: End
セキュリティ機能の評価