首先引用一篇简洁清晰介绍重复控制环路和离散表达式的文章,
https://blog.csdn.net/liuzhijun301/article/details/80445590
这篇文章写得比较好,唯一的不足是用代码实现离散表达式时,使用了for循环,这种实现方式对仿真模型运行来说,问题不大,但对嵌入式系统来说就不可接受了,为了节省中断任务的时间开销,应避免使用for循环,而用中断本身的循环来代替。
这里给出另一种具体实现方式:
//N是重复信号一个周期对应的拍数,也是数组长度,Kr是幅值补偿系数,k是相位补偿拍数,Q是稳定补偿系数。
if(PWMEnable==1)
{
if(N<=i)
{