Community Translation - Handling CY_U3P_USB_EVENT_LMP_EXCH_FAIL Event from FX3 SDK during USB Enumeration - KBA225778

Tip / Sign in to post questions, reply, level up, and achieve exciting badges. Know more

cross mob
Kenshow
Level 8
Level 8
Distributor - Marubun (Japan)
50 solutions authored 25 solutions authored 10 solutions authored

Hi,               

I would like to translate KBA225778 into Japanese.

Please confirm to my work.

Thanks,

Kenshow

0 Likes
2 Replies
JennaJo
Moderator
Moderator
Moderator
1000 replies posted 750 replies posted 500 replies posted

Hi, Kenshow-san

Confirm to work this KBA.

Thanks

Jenna

Jenna Jo
0 Likes
Kenshow
Level 8
Level 8
Distributor - Marubun (Japan)
50 solutions authored 25 solutions authored 10 solutions authored

Hi Jenna-san,

                                

Japanese translation was over.
Please check below.

Original KBA:

Handling CY_U3P_USB_EVENT_LMP_EXCH_FAIL Event from FX3 SDK during USB Enumeration - KBA225778

Thanks.

Kenshow

==============================

タイトル: USBエニュメレート中のFX3 SDKからのCY_U3P_USB_EVENT_LMP_EXCH_FAILイベントの処理 - KBA225778

バージョン:**

質問:

FX3 SDKからのUSBエニュメレート中にCY_U3P_USB_EVENT_LMP_EXCH_FAILイベントを処理する方法を教えて下さい。

回答:

FX3 SDK は、ホストからのポート機能要求またはポート設定要求のいずれかがタイムアウトになると、CY_U3P_USB_EVENT_LMP_EXCH_FAILイベントをユーザーアプリケーションに通知します。サイプレスは、このイベントを処理している間、ユーザーアプリケーションでUSBインターフェイスブロックの再起動を推奨しております。

次の手順は、サンプルアプリケーションプロジェクトのイベントを処理する方法を示しています。

1. USBイベントコールバックを構成して、CY_U3P_USB_EVENT_LMP_EXCH_FAIL イベントの受信時にカスタムフラグCY_FX_USB_RESTART_EVT_FLAG をメインアプリケーションイベントに設定します。

case CY_U3P_USB_EVENT_LMP_EXCH_FAIL:

  CyU3PEventSet (&glApplnEvent, CY_FX_USB_RESTART_EVT_FLAG, CYU3P_EVENT_OR);

     break;

2. CyU3PEventGet APIを使用して、アプリケーションスレッドエントリ関数でカスタムイベントフラグ(CY_FX_USB_RESTART_EVT_FLAG )を受け取ります。イベントマスク(evMask )は、CY_FX_USB_RESTART_EVT_FLAG を受信するように設定する必要があることに注意してください。CyFxAppUsbRestart()関数は、USBインターフェイスのブロックを再初期化します。CyFxAppUsbRestart()のソースコードは、添付のサンプルプロジェクトに含まれています。

/* USBブロックの再起動要求 */

#define CY_FX_USB_RESTART_EVT_FLAG(1 << 3)

.

.

.

/*イベントマスク構成 */

uint32_t evMask = CY_FX_SETCONF_EVENT_FLAG | CY_FX_RESET_EVENT_FLAG | CY_FX_USB_RESTART_EVT_FLAG;

  .

.

.

.

/*アプリケーションスレッドでのカスタムイベントの処理 */

for(;;)

{

  status = CyU3PEventGet(&glApplnEvent, evMask, CYU3P_EVENT_OR_CLEAR, &evStat, CYU3P_WAIT_FOREVER);

        if(status == CY_U3P_SUCCESS)

{

          If(evStat&CY_FX_USB_RESTART_EVT_FLAG)

{

CyFxAppUsbRestart();

}

.

.

.

注意:

これらの手順は、FX3FX3SCX3、およびSD3に適用されます。

添付ファイルUSBBulkLoopAuto.zipは、USBBulkLoopAuto FX3 SDKサンプルプロジェクトの修正バージョンです。関連する変更について、cyfxbulklpauto.cファイルでHANDLE_LMP_EXCH_FAIL_EVTを検索してください。

==============================

6-July-2020

Kenshow

0 Likes