在MCC里配置PWM的引脚,生成库函数
解下密分析
方便计算,设置系统时钟源为内置8MHz时钟源,不分频,就是1
这样一个时钟周期就是1/8M
先简单配置一下PWM初始化设置,选择系统时钟,也就是刚才那个没分频的值8MHz
接下来使用生成的库函数随便配置一下
PWM1_16BIT_WritePeriodRegister(10000);
PWM1_16BIT_SetSlice1Output1DutyCycleRegister(5000);
PWM1_16BIT_SetSlice1Output2DutyCycleRegister(5000);
PWM1_16BIT_LoadBufferRegisters();
为了方便计算,周期设置为10K,输出1设置为5K,输出2也设置为5K,方便计算。
编译,通过示波器观测波形,并测量周期,
得到周期为800Hz方波
那么刚才设置的周期值10K就对应实际上的800Hz,看看是如何得到的。
首先刚才的时钟品啦8MHz,那么计数10K次就是PWM波形的周期T=((1/8M)*10K)
而PWM波形的F=1÷T
带入上述T
得到F=8M/10K =800Hz
对上了
就是这么算。
|