在线时间1020 小时
UID299704
注册时间2011-6-18
NXP金币2187
TA的每日心情 | 开心 2024-4-10 22:38 |
---|
签到天数: 1335 天 [LV.10]以坛为家III
版主
- 积分
- 9049
- 最后登录
- 2024-4-13
|
脉宽调制,在数字电路里面的应用非常广,用于控制电机的步进,调节PID等等。这里我们将用于控制风扇的转速,达到对散热的按需散热的目的。
我们先来看一下调制后PWM引脚输出的图像:
这里本次测试为输出20KHz的频率,使用10%的占空比的配置,输出结果与期望值一致。
其实代码也相对简单一些,我采用的是ctimer0的mat1引脚,即PIO0_29引脚。
示意代码如下:
- CTIMER_Init(CTIMER, &config);
- CTIMER_GetPwmPeriodValue(20000, 10, timerClock);
- CTIMER_SetupPwmPeriod(CTIMER, CTIMER_MAT_OUT, g_pwmPeriod, g_pulsePeriod, false);
- CTIMER_StartTimer(CTIMER);
复制代码 总体而言,在库函数的加持下,对于外设的操作还是相当容易的。
|
|