ATSAMC21 PWM 占空比停留在 99%
ATSAMC21 PWM Duty Cycle stuck at 99%
我正在尝试使用 ATSAMC21E18A
的 PWM。虽然,无论我用函数 "pwm_set_parameters" 设置的参数如何;占空比保持在 99%。
我什至尝试构建一个由 https://start.atmel.com/ 创建的更简单的项目。我只添加了 PWM 驱动,我写了一个简单的 main:
int main(void)
{
/* Initializes MCU, drivers and middleware */
atmel_start_init();
pwm_set_parameters(&PWM_0, 1000, 500);
pwm_enable(&PWM_0);
/* Replace with your application code */
while (1) {
}
}
但结果是一样的:输出信号的占空比为99%。
我做了很多硬件测试,似乎不是问题所在。我是不是忘了初始化什么?
它必须是 gpio 功能的配置(如果您使用的是 Atmel Start,则 driver_init.c 中的 void PWM_0_PORT_init(void))。您可以使用 WOx 代替 WO0。
这里有更多信息:https://www.avrfreaks.net/forum/pwm-tcx-module-not-working-samd21-using-asfv4
祝你好运,再见
我正在尝试使用 ATSAMC21E18A
的 PWM。虽然,无论我用函数 "pwm_set_parameters" 设置的参数如何;占空比保持在 99%。
我什至尝试构建一个由 https://start.atmel.com/ 创建的更简单的项目。我只添加了 PWM 驱动,我写了一个简单的 main:
int main(void)
{
/* Initializes MCU, drivers and middleware */
atmel_start_init();
pwm_set_parameters(&PWM_0, 1000, 500);
pwm_enable(&PWM_0);
/* Replace with your application code */
while (1) {
}
}
但结果是一样的:输出信号的占空比为99%。 我做了很多硬件测试,似乎不是问题所在。我是不是忘了初始化什么?
它必须是 gpio 功能的配置(如果您使用的是 Atmel Start,则 driver_init.c 中的 void PWM_0_PORT_init(void))。您可以使用 WOx 代替 WO0。
这里有更多信息:https://www.avrfreaks.net/forum/pwm-tcx-module-not-working-samd21-using-asfv4
祝你好运,再见