- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Hi
I want to translate KBA226759, please confirm to my work.
Regards,
Nino
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Hello, Nino-san
Confirm to work this KBA.
Thanks
Jenna
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
タイトル: FX3のPWM周期とデューティーサイクルを計算する — KBA226759
chaitanyav_41が 2019/03/25 2:01 に作成。ChaitanyaV_61が 2019/08/13 0:17 に変更。
Author: SrinathS_16 Version: **
質問:
FX3でPWM周期およびデューティーサイクルはどうやって要求値に設定するのか?
回答:
gpioConfig.period およびgpioConfig.thresholdパラメータは、タイマー刻みの観点からPWM周期およびPWM閾値を定義します。FX3 SDKから来るGpioComplexAppの例では、これらのパラメータは403.2MHzのSYS_CLK周波数に対して計算されます。また、複雑なGPIOクロックはSYS_CLK/2に設定されるGPIO高速クロックから動作するように設定されます。gpioConfig.period およびgpioConfig.thresholdパラメータはPWM周期とデューティーサイクルを適切な値に設定するために調整する事が可能です。
下記の断片コードは値を計算しています:
gpioClock.clkSrc = CY_U3P_SYS_CLK; // GPIOクロックはSYS_CLKから派生します
gpioClock.fastClkDiv = 2; // GPIO高速クロックはSYS_CLK/2で構成されます
gpioConfig.timerMode = CY_U3P_GPIO_TIMER_HIGH_FREQ; // PWM生成用にGPIO高速クロックを使用
gpioConfig.period = 20160; // 周期を20160タイマー刻みに設定
gpioConfig.threshold = 10080; //閾値をデューティーサイクルに適した値に設定。この例では50%に設定されています
計算:
- SYS_CLK 周波数= 403.2 MHz
- GPIO高速クロック周波数 = (SYS_CLK 周波数)/2 = 201.6 MHz
- 1クロック周期= 1/(GPIO高速クロック周波数) = (1/201.6) µs
- gpioConfig.period = (希望するPWM波形周期/1クロック周期)
257 閲覧 カテゴリ: USB: SuperSpeed Peripherals タグ: pwm, fx3, fx3 gpio, ss_usb, duty cycle