2 Replies Latest reply on Jul 26, 2020 7:49 PM by NoTa_4591161

    Community Translation - How to Get a 0.1-µs Unit Timestamp with FX3 – KBA220034

    NoTa_4591161

      Hi,               

       

      I would like to translate KBA220034 into Japanese.

      Please confirm to my work.

       

      Thanks,

      Kenshow

        • 1. Re: Community Translation - How to Get a 0.1-µs Unit Timestamp with FX3 – KBA220034
          JuyoungJ_06

          Hi, Kenshow-san

          Confirm to work this KBA.

           

          Thanks

          Jenna

          • 2. Re: Community Translation - How to Get a 0.1-µs Unit Timestamp with FX3 – KBA220034
            NoTa_4591161

            Hi Jenna-san,

                                            

            Japanese translation was over.
            Please check below.

             

            Original KBA:

            How to Get a 0.1-µs Unit Timestamp with FX3 –

             

            Thanks.

            Kenshow

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

             

            タイトル: FX3で0.1 µs単位のタイムスタンプを取得する方法 – KBA220034

             

            バージョン:**

             

            質問:

            FX30.1 µs単位のタイムスタンプを取得する方法は?

             

            回答:

            FX3には複雑なGPIOタイマーがあります。現在のタイマー値を読み取るには、CyU3PGpioComplexSampleNow APIを使用します。その結果、GPIOタイマーが適切に構成されていれば、0.1 µs単位のタイムスタンプを取得できます。

            SYS_CLK_PLLの値が403.2 MHzであると想定します。0.1µsのユニットタイムスタンプでは、約10 MHzの周波数でタイマーを実行する必要があります。

            1. Fast GPIO Clockを約10 MHzに構成します。高速GPIOクロックは、分周器が10に設定されたSYS_CLK_PLL / 4から生成されるため、高速GPIOクロックの周波数は10.08 MHzです。
            CyU3PGpioClock_t gpioClock;
            /* GPIOモジュールの初期化 */
            gpioClock.fastClkDiv = 10;
            gpioClock.
            slowClkDiv = 0;
            gpioClock.
            simpleDiv = CY_U3P_GPIO_SIMPLE_DIV_BY_2;
            gpioClock.
            clkSrc = CY_U3P_SYS_CLK_BY_4;
            CY_U3P_SYS_CLK_BY_4;           gpioClock.
            halfDiv = 0;

               return  CyU3PGpioInit (&gpioClock, NULL);

            2. DUMMY_COMPLEX_GPIOを静的出力モードになるように設定します。
            /* DUMMY_COMPLEX_GPIOを静的モード出力として設定 */
                    gpioComplexConfig.outValue = CyFalse;
                    gpioComplexConfig.inputEn = CyFalse;
                    gpioComplexConfig.driveLowEn = CyTrue;
                    gpioComplexConfig.driveHighEn = CyTrue;
                    gpioComplexConfig.pinMode = CY_U3P_GPIO_MODE_STATIC;
                    gpioComplexConfig.intrMode = CY_U3P_GPIO_INTR_TIMER_ZERO;
                    gpioComplexConfig.timerMode = CY_U3P_GPIO_TIMER_HIGH_FREQ;
                    gpioComplexConfig.timer = 0;
                    gpioComplexConfig.priod = 0xffffffff;
                    gpioComplexConfig.threshold = 0xffffffff;
                    status = CyU3PGpioSetComplexConfig(DUMMY_COMPLEX_GPIO, &gpioComplexConfig);
                   
            if(status != CY_U3P_SUCCESS)
                    {
                       CyU3PDebugPrint(4, “CyU3PGpioSetComplexConfig failederror code =%d \ n”, status);
                
            CyCx3UvcAppErrorHandler(status;
                    }

            3. CyU3PGpioComplexSampleNow APIを使用してタイムスタンプを取得します。
                 CyU3PGpioComplexSampleNow(DUMMY_COMPLEX_GPIO, xtamp);

             

             

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

            27-July-2020

              Kenshow