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 |- USBH_OS_uITRON_Config.c ........... OSリソースID設定ファイル |- libRI600V4_OSLayer_RXv3_L.lib ..... OSインターフェース設定ファイル
プロジェクト設定では「\Application\_Exclude\USBH」フォルダはビルド対象外に設定しています。
「\_Exclude\USBH」フォルダ下の対象テストサンプルファイルをビルド対象設定の「\Application」フォルダ下にコピーします。
各テストアプリケーションの動作確認方法はテストサンプルアプリケーションのヘッダのコメント情報を参照ください。
プロジェクトを再ビルドし、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 Base: Renesas RI600V4 RTOS ------------------------------------------------ 0:021 INIT: emUSB-Host Init started. Version 2.36.6 0:029 INIT: ********************************************************************* 0:104 INIT: * emUSB-Host Configuration * 0:117 INIT: ********************************************************************* 0:130 INIT: * External hubs are ALLOWED 0:136 INIT: * Time before communicating with a newly connected device: 300 ms 0:232 INIT: ********************************************************************* 0:245 INIT: Init completed 0:250 INIT: Enumeration of devices enabled 0:257 INIT: USBH_Task started 0:362 INIT: USBH_ISRTask started 45:139 APP: **** Device added [1] 45:211 APP: **** Device information for interface with ID 1 45:220 APP: Device ID: 1 45:224 APP: Vendor ID: 0x05A7 45:230 APP: Product ID: 0x40FE 45:236 APP: BCD device version: 0x100 45:242 APP: Interface number: 0 45:248 APP: Device class: 0x3 45:253 APP: Device subclass: 0x0 45:259 APP: Device protocol: 0x0 45:265 APP: Number of open handles: 0 45:271 APP: Exclusive state: 0 45:344 APP: Speed: FullSpeed 45:350 APP: Manufacturer name: Bose Corporation 45:359 APP: Product name: Bose QuietComfort 35 45:368 APP: Serial number: 072546Z70983573AE 45:376 APP: connected to port 1 of controller 0 60:907 APP: **** Device removed [1] 60:938 APP: No devices found. 84:175 APP: **** Device added [2] 84:273 APP: **** Device information for interface with ID 2 84:282 APP: Device ID: 2 84:286 APP: Vendor ID: 0x0781 84:292 APP: Product ID: 0x55A8 84:297 APP: BCD device version: 0x111 84:304 APP: Interface number: 0 84:309 APP: Device class: 0x8 84:348 APP: Device subclass: 0x6 84:354 APP: Device protocol: 0x50 84:360 APP: Number of open handles: 0 84:366 APP: Exclusive state: 0 84:371 APP: Speed: FullSpeed 84:378 APP: Manufacturer name: SanDisk 84:385 APP: Product name: Extreme SSD 84:459 APP: Serial number: 313934364535343030353232 84:468 APP: connected to port 1 of controller 0 91:727 APP: **** Device removed [2] 91:748 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 Base: Renesas RI600V4 RTOS ------------------------------------------------ 0:021 INIT: emUSB-Host Init started. Version 2.36.6 0:029 INIT: ********************************************************************* 0:105 INIT: * emUSB-Host Configuration * 0:118 INIT: ********************************************************************* 0:131 INIT: * External hubs are ALLOWED 0:138 INIT: * Time before communicating with a newly connected device: 300 ms 0:232 INIT: ********************************************************************* 0:245 INIT: Init completed 0:250 INIT: Enumeration of devices enabled 0:257 INIT: USBH_Task started 0:261 INIT: USBH_ISRTask started 1:268 APP: **** Device added [0] 1:273 APP: The following device was detected: 1:280 APP: VendorId: 0x0411 1:286 APP: ProductId: 0x023A 1:292 APP: VendorName: BUFFALO 1:299 APP: ProductName: USB Flash Disk 1:306 APP: Revision: 1.00 1:334 APP: NumSectors: 60566016 1:340 APP: BytesPerSector: 512 1:346 APP: TotalSize: 29573 MByte 1:353 APP: HighspeedCapable: No 1:358 APP: ConnectedToRootHub: Yes 1:363 APP: SelfPowered: No 1:369 APP: Reported Imax: 150 mA 1:442 APP: Connected to Port: 1 1:447 APP: PortSpeed: FullSpeed 1:454 APP: Checking whether the volume is formatted... 2:875 APP: Running sample on volume "msd:0:" DevIndex 0, LUN 0 2:886 APP: Reading volume information... 2:893 APP: **** Volume information for msd:0: 2:900 APP: 30270720 KBytes total disk space 2:908 APP: 30181248 KBytes available free space 2:916 APP: 32768 bytes per cluster 2:922 APP: 945960 clusters available on volume 2:934 APP: 943164 free cluster available on volume 2:943 APP: Creating file msd:0:\TestFile.txt... 2:968 APP: Ok 2:970 APP: Contents of msd:0: 2:975 APP: Attributes: A--- Size: 0 2:982 APP: TestFile.txt Attributes: A--- Size: 280 2:994 APP: Firmware.old (Dir) Attributes: ---- Size: 0 3:003 APP: Firmware (Dir) Attributes: ---- Size: 0 3:011 APP: **** Unmount ****
操作手順:プログラム起動してUSBポートにHID マウス又はキーボードデバイスを挿入します。キーボード・マウス操作のレスポンスをログコンソールから確認します。
Debug IO Console:
SEGGER Software Evaluation Sample Eval Board: EK-RX671 Base: Renesas RI600V4 RTOS ------------------------------------------------ 0:021 INIT: emUSB-Host Init started. Version 2.36.6 0:029 INIT: ********************************************************************* 0:103 INIT: * emUSB-Host Configuration * 0:116 INIT: ********************************************************************* 0:129 INIT: * External hubs are ALLOWED 0:135 INIT: * Time before communicating with a newly connected device: 300 ms 0:214 INIT: ********************************************************************* 0:227 INIT: Init completed 0:232 INIT: Enumeration of devices enabled 0:238 INIT: USBH_Task started 0:344 INIT: USBH_ISRTask started 1:275 APP: **** Device added [0] 6:804 APP: Mouse: xRel: 1, yRel: 0, WheelRel: 0, ButtonState: 0 6:823 APP: Mouse: xRel: 2, yRel: 1, WheelRel: 0, ButtonState: 0 6:834 APP: Mouse: xRel: 2, yRel: 2, WheelRel: 0, ButtonState: 0 6:853 APP: Mouse: xRel: 1, yRel: 2, WheelRel: 0, ButtonState: 0 6:865 APP: Mouse: xRel: 2, yRel: 2, WheelRel: 0, ButtonState: 0 6:876 APP: Mouse: xRel: 0, yRel: 1, WheelRel: 0, ButtonState: 0 6:887 APP: Mouse: xRel: 2, yRel: 6, WheelRel: 0, ButtonState: 0 6:898 APP: Mouse: xRel: 2, yRel: 8, WheelRel: 0, ButtonState: 0 6:948 APP: Mouse: xRel: 7, yRel: 39, WheelRel: 0, ButtonState: 0 6:959 APP: Mouse: xRel: 1, yRel: 1, WheelRel: 0, ButtonState: 0 6:971 APP: Mouse: xRel: 1, yRel: 2, WheelRel: 0, ButtonState: 0 6:982 APP: Mouse: xRel: 3, yRel: 3, WheelRel: 0, ButtonState: 0 7:001 APP: Mouse: xRel: 2, yRel: 2, WheelRel: 0, ButtonState: 0 7:012 APP: Mouse: xRel: 1, yRel: 1, WheelRel: 0, ButtonState: 0 7:078 APP: Mouse: xRel: 4, yRel: 0, WheelRel: 0, ButtonState: 0 7:089 APP: Mouse: xRel: 1, yRel: -1, WheelRel: 0, ButtonState: 0 7:108 APP: Mouse: xRel: 1, yRel: -1, WheelRel: 0, ButtonState: 0 7:173 APP: Mouse: xRel: -1, yRel: 4, WheelRel: 0, ButtonState: 0 7:185 APP: Mouse: xRel: -4, yRel: 11, WheelRel: 0, ButtonState: 0 7:196 APP: Mouse: xRel: -4, yRel: 14, WheelRel: 0, ButtonState: 0 7:207 APP: Mouse: xRel: -5, yRel: 13, WheelRel: 0, ButtonState: 0 7:218 APP: Mouse: xRel: -5, yRel: 11, WheelRel: 0, ButtonState: 0 7:295 APP: Mouse: xRel: -9, yRel: 17, WheelRel: 0, ButtonState: 0 7:496 APP: Mouse: xRel: -1, yRel: -1, WheelRel: 0, ButtonState: 0 7:516 APP: Mouse: xRel: -4, yRel: -4, WheelRel: 0, ButtonState: 0 7:527 APP: Mouse: xRel: -1, yRel: -1, WheelRel: 0, ButtonState: 0 7:538 APP: Mouse: xRel: -7, yRel: -4, WheelRel: 0, ButtonState: 0 7:549 APP: Mouse: xRel: -9, yRel: -3, WheelRel: 0, ButtonState: 0 7:620 APP: Mouse: xRel: -6, yRel: -3, WheelRel: 0, ButtonState: 0 7:957 APP: Mouse: xRel: 1, yRel: -1, WheelRel: 0, ButtonState: 0 8:006 APP: Mouse: xRel: 1, yRel: -1, WheelRel: 0, ButtonState: 0 8:111 APP: Mouse: xRel: 1, yRel: 0, WheelRel: 0, ButtonState: 0 8:136 APP: Mouse: xRel: 1, yRel: 0, WheelRel: 0, ButtonState: 0 8:161 APP: Mouse: xRel: 0, yRel: 0, WheelRel: 0, ButtonState: 1 8:330 APP: Mouse: xRel: 0, yRel: 0, WheelRel: 0, ButtonState: 0 8:371 APP: Mouse: xRel: 1, yRel: 0, WheelRel: 0, ButtonState: 0 8:398 APP: Mouse: xRel: 1, yRel: -1, WheelRel: 0, ButtonState: 0 8:409 APP: Mouse: xRel: 0, yRel: -1, WheelRel: 0, ButtonState: 0 8:420 APP: Mouse: xRel: 0, yRel: -1, WheelRel: 0, ButtonState: 0 9:413 APP: Mouse: xRel: 0, yRel: 0, WheelRel: 0, ButtonState: 2 9:598 APP: Mouse: xRel: 0, yRel: 0, WheelRel: 0, ButtonState: 0 10:703 APP: Mouse: xRel: 0, yRel: 0, WheelRel: 1, ButtonState: 0 10:728 APP: Mouse: xRel: 0, yRel: 0, WheelRel: -1, ButtonState: 0 11:113 APP: Mouse: xRel: 0, yRel: 0, WheelRel: 1, ButtonState: 0 11:458 APP: Mouse: xRel: 0, yRel: 0, WheelRel: -1, ButtonState: 0 11:531 APP: Mouse: xRel: 0, yRel: 0, WheelRel: -1, ButtonState: 0 11:644 APP: Mouse: xRel: 0, yRel: -1, WheelRel: 0, ButtonState: 0 11:661 APP: Mouse: xRel: 0, yRel: -2, WheelRel: 0, ButtonState: 0 11:686 APP: Mouse: xRel: 0, yRel: -1, WheelRel: 0, ButtonState: 0 11:759 APP: Mouse: xRel: 0, yRel: -1, WheelRel: 0, ButtonState: 0 11:816 APP: Mouse: xRel: 0, yRel: -1, WheelRel: 0, ButtonState: 0 11:835 APP: Mouse: xRel: 0, yRel: -2, WheelRel: 0, ButtonState: 0 11:854 APP: Mouse: xRel: 0, yRel: -1, WheelRel: 0, ButtonState: 0 11:943 APP: Mouse: xRel: 1, yRel: -2, WheelRel: 0, ButtonState: 0 12:064 APP: Mouse: xRel: 0, yRel: 0, WheelRel: 0, ButtonState: 2 12:169 APP: Mouse: xRel: 0, yRel: 0, WheelRel: 0, ButtonState: 0 12:274 APP: Mouse: xRel: 0, yRel: 0, WheelRel: 0, ButtonState: 2 12:363 APP: Mouse: xRel: 0, yRel: 0, WheelRel: 0, ButtonState: 0 12:540 APP: Mouse: xRel: 0, yRel: -2, WheelRel: 0, ButtonState: 0 12:565 APP: Mouse: xRel: 0, yRel: -1, WheelRel: 0, ButtonState: 0 12:670 APP: Mouse: xRel: 0, yRel: -1, WheelRel: 0, ButtonState: 0 12:751 APP: Mouse: xRel: 0, yRel: -1, WheelRel: 0, ButtonState: 0 12:800 APP: Mouse: xRel: 1, yRel: -3, WheelRel: 0, ButtonState: 0 15:801 APP: Mouse: xRel: -1, yRel: 0, WheelRel: 0, ButtonState: 0 16:178 APP: Mouse: xRel: -2, yRel: 0, WheelRel: 0, ButtonState: 0 16:189 APP: Mouse: xRel: -1, yRel: 0, WheelRel: 0, ButtonState: 0 16:206 APP: Mouse: xRel: -3, yRel: 0, WheelRel: 0, ButtonState: 0 16:217 APP: Mouse: xRel: -2, yRel: 0, WheelRel: 0, ButtonState: 0 16:297 APP: Mouse: xRel: -24, yRel: -4, WheelRel: 0, ButtonState: 0 16:309 APP: Mouse: xRel: -2, yRel: 0, WheelRel: 0, ButtonState: 0 16:320 APP: Mouse: xRel: -3, yRel: -1, WheelRel: 0, ButtonState: 0 16:331 APP: Mouse: xRel: -1, yRel: 0, WheelRel: 0, ButtonState: 0 16:406 APP: Mouse: xRel: -48, yRel: -6, WheelRel: 0, ButtonState: 0 17:508 *** Warning *** HID: _SubmitInBuffer: SubmitUrb USBH_STATUS_DEVICE_REMOVED 17:521 APP: **** Device removed [0]
操作手順:プログラム起動してUSBポートにFTD UARTチップセットのUSB-UART変換アダプタデバイスを挿入します。UARTポートをパソコンに接続してTeraTermなど起動してCOMポートコンソールを開きます。COMポートコンソールから文字を入力してログコンソールからECHOレスポンスを確認します。
Debug IO Console:
SEGGER Software Evaluation Sample Eval Board: EK-RX671 Base: Renesas RI600V4 RTOS ------------------------------------------------ 0:021 INIT: emUSB-Host Init started. Version 2.36.6 0:029 INIT: ********************************************************************* 0:090 INIT: * emUSB-Host Configuration * 0:103 INIT: ********************************************************************* 0:116 INIT: * External hubs are ALLOWED 0:123 INIT: * Time before communicating with a newly connected device: 300 ms 0:203 INIT: ********************************************************************* 0:216 INIT: Init completed 0:220 INIT: Enumeration of devices enabled 0:227 INIT: USBH_Task started 0:333 INIT: USBH_ISRTask started 1:181 APP: **** Device added [0] 1:249 APP: Vendor Id = 0x0403 1:254 APP: Product Id = 0x6001 1:258 APP: bcdDevice = 0x0400 109:900 APP: Received: "F" 110:095 APP: Received: "T" 111:097 APP: Received: "D" 117:072 APP: Received: "-" 117:435 APP: Received: "T" 117:734 APP: Received: "e" 117:952 APP: Received: "s" 118:107 APP: Received: "t"
操作手順:AUDIO SPEAKERデバイスを挿入してプログラムを実行します。スピーカーから音声「It simply works」を確認します。
Debug IO Console:
SEGGER Software Evaluation Sample Eval Board: EK-RX671 Base: Renesas RI600V4 RTOS ------------------------------------------------ 0:021 INIT: emUSB-Host Init started. Version 2.36.6 0:029 INIT: ********************************************************************* 0:090 INIT: * emUSB-Host Configuration * 0:103 INIT: ********************************************************************* 0:116 INIT: * External hubs are ALLOWED 0:122 INIT: * Time before communicating with a newly connected device: 300 ms 0:201 INIT: ********************************************************************* 0:214 INIT: Init completed 0:219 INIT: Enumeration of devices enabled 0:225 INIT: USBH_Task started 0:331 INIT: USBH_ISRTask started 1:549 APP: **** AUDIO Interface added [0] 1:555 APP: **** AUDIO Interface added [1] 1:562 APP: **** AUDIO Interface added [2] 1:569 APP: AUDIO device: 1:573 APP: Vendor 0B0E, Product 0420, Version 1.0 1:583 APP: Prod. : Jabra SPEAK 510 USB 1:589 APP: Found streaming OUT, Channels=2, Frame=2, Resolution=16 1:650 APP: Sampling Frequencies: 1:655 APP: 8000 Hz 1:659 APP: 16000 Hz 1:663 APP: 48000 Hz 1:667 APP: Configure Audio device... 1:673 APP: SetAltInterface to 1 1:679 APP: SetSampleFreq to 48000 Hz 1:756 APP: Feature unit 2, Source 1 1:761 APP: Unmute Unit 2, control 0 1:770 APP: Get volume unit 2, control 0 1:783 APP: Volume[0] = FFFFE800, FFFFDC00, 800, 400 1:791 APP: Set volume to 30 % (E933) 1:806 APP: Feature unit 5, Source 4 1:857 APP: Unmute Unit 5, control 0 1:864 APP: Get volume unit 5, control 0 1:878 APP: Volume[0] = FFFFFA00, FFFFF400, 900, 300 1:886 APP: Set volume to 30 % (FA4C) 1:903 APP: Open streaming channel 1:908 APP: Playing .... 4:397 APP: End
操作手順:AUDIO SPEAKERデバイスを挿入してプログラムを実行します。ログコンソールからAUDIOデバイスのスキャン情報を確認します。
Debug IO Console:
SEGGER Software Evaluation Sample Eval Board: EK-RX671 Base: Renesas RI600V4 RTOS ------------------------------------------------ 0:021 INIT: emUSB-Host Init started. Version 2.36.6 0:029 INIT: ********************************************************************* 0:100 INIT: * emUSB-Host Configuration * 0:113 INIT: ********************************************************************* 0:126 INIT: * External hubs are ALLOWED 0:132 INIT: * Time before communicating with a newly connected device: 300 ms 0:210 INIT: ********************************************************************* 0:223 INIT: Init completed 0:228 INIT: Enumeration of devices enabled 0:235 INIT: USBH_Task started 0:340 INIT: USBH_ISRTask started 1:194 APP: **** AUDIO Interface added [0] 1:201 APP: **** AUDIO Interface added [1] 1:208 APP: **** AUDIO Interface added [2] 1:214 APP: AUDIO control interface found (DevId 1): 1:222 APP: Vendor 0B0E, Product 0420, Version 1.0 1:231 APP: Serial: 501AA524ECD3020A00 1:242 APP: Prod. : Jabra SPEAK 510 USB 1:313 APP: Input terminal 1 1:318 APP: Terminal type 101 1:323 APP: Output terminal 3, Source 2 1:329 APP: Terminal type 301 1:335 APP: Input terminal 4 1:339 APP: Terminal type 201 1:345 APP: Output terminal 6, Source 7 1:434 APP: Terminal type 101 1:439 APP: Feature Unit 2, Source 1 1:445 APP: Control channel 0, mask = 3 1:459 APP: Volume: Cur = FFFFE800, Min = FFFFDC00, Max = 800, Res = 400 1:471 APP: Control channel 1, mask = 0 1:478 APP: Control channel 2, mask = 0 1:559 APP: Feature Unit 5, Source 4 1:565 APP: Control channel 0, mask = 3 1:577 APP: Volume: Cur = FFFFFA00, Min = FFFFF400, Max = 900, Res = 300 1:589 APP: Selector Unit 7 1:594 APP: Input 1 = source unit 5 1:600 APP: AUDIO streaming interface found (DevId 1): 1:671 APP: Found streaming OUT EP on AltSetting 1 1:679 APP: Terminal Link 1 1:684 APP: Channels=2, Frame=2, Resolution=16 1:692 APP: Sampling Frequencies: 1:698 APP: 8000 Hz 1:702 APP: 16000 Hz 1:773 APP: 48000 Hz 1:777 APP: AUDIO streaming interface found (DevId 1): 1:785 APP: Found streaming IN EP on AltSetting 1 1:793 APP: Terminal Link 6 1:798 APP: Channels=1, Frame=2, Resolution=16 1:806 APP: Sampling Frequencies: 1:880 APP: 16000 Hz
USB-Deviceインターフェース