PWM
十六位寄存器
有四个十六位FIFO, 有一个十二位分频器, 时钟进入计数器, 还有一个周期寄存器, 还有一个采样寄存器
是一个向上计数器,
PWMx_PWMPR
: 当计数的值等于PWMPR+1的时候会重新开始下一个周期, 实际的周期是这个的值加二
FIFO保存着采样值, 向PWMSAR寄存器写值的时候就是写入FIFO, 每输出一个PWM就会让FIFO中的数据减一, 直到FIFO为空的时候就不能产生PWM, FIFO为空的时候会产生中断, 可以这时候写入采样值
PWM_CR寄存器, bit0使能, bit1-2设置每一个数据使用的次数, bit3复位, bit4-15分频设置, 可以设置0-4095, bit16-17设置时钟源, 设置1, bit18-19设置输出的配置, 跳变的时间的设置设置为0, bit27-26空余数字为多少的时候产生中断, 设置为1就是空余大于2的时候
PWM_IRbit0为1开启空中断