一种多路多相pwm的实现方法
【专利摘要】本发明涉及一种多路多相PWM的实现方法,包含:多路独立的PWM(101,103)和相位控制电路(105)。该相位控制电路可以根据预设的相位调节寄存器值来自动调节相位,从而产生多路任意相位的PWM波形输出。同时调节相位的硬件资源与该PWM独立使用时的硬件资源进行复用,节省了电路实现的物理资源。通过本发明可以实现任意相位可调的多路PWM输出,可以广泛应用于测量、通信以及功率控制与变换等诸多领域。
【专利说明】—种多路多相PWM的实现方法
【技术领域】
[0001]本发明涉及一种PWM的实现方法,尤其涉及多路PWM输出及任意相位调节控制等领域。
【背景技术】
[0002]脉冲宽度调制(Pulse Width Modulat1n,简称PWM)是一种通过高分辨率计数器用一定占空比的方波来代替模拟信号的方法。广泛应用于测量、通信以及功率控制与变换等诸多领域。
[0003]通过以数字方式控制模拟电路,可以大幅度降低系统的成本和功耗。此外,许多微控制器和DSP已经在芯片上包含了 PWM控制器,这使数字控制的实现变得更加容易了。
[0004]在PWM的部分应用中,只需要单路输出便可完成对电路的控制。而在复杂的应用中,则需要多路PWM同时进行控制,例如两相,三相电机的控制,多色LED灯的控制等。
[0005]在很多控制应用中,需要不同相位差的PWM的输出,例如在三相电机中需要有三路相位差为120°的PWM输出,因此需要支持不同相位输出的多路PWM。现有技术中,有采用对PWM的初始计数值的设置来调整PWM的相位,也有采用在PWM计数期间调整翻转次数来控制,还有采用控制计数方式及翻转时刻点来控制,例如先进行PWM递增计数达到最大值时再进行PWM递减计数,在递增计数期间和递减计数期间各进行一次翻转,这三种方法都会增加PWM硬件资源。
【发明内容】
[0006]本发明要解决的技术问题是:本发明提供一种多路多相PWM的实现方法,通过对多路PWM的启动时刻及相位调整后的延时控制,实现预设相位差的PWM的输出;并且通过资源共享,减少硬件实现成本。
[0007]本发明解决其技术问题所采用的技术方案是:一种多路PWM的实现方式,可以独立工作,也可以由一个PWM主控进行同步配合工作,并且相位可调节。具体为:
[0008]a:多路PWM独立工作时,各个PWM根据自己的参数设置分别启动,输出各自的波形;
[0009]b:需要特定的相位关系输出时,设定其中一个PWM为主控,其他PWM根据主控PWM的启动信号及预设的相位寄存器值来延时启动,从而达到一定相位差输出;
[0010]C:相位调节的精度由预设的相位寄存器位宽N决定,该值越大则精度越高;预设的相位寄存器的具体值决定该路PWM与主控PWM的相位差值;
[0011]d:由于多路多相PWM同步输出时主控PWM及需要调节相位的PWM的周期值是一致的,因此在进行相位调节控制时,需要调整相位的PWM的周期寄存器将共享主控PWM的周期寄存器值使用,而需要调节相位的PWM内部的周期寄存器作为预设的相位寄存器使用。这样在不增加寄存器资源的条件下既可以支持多路独立输出各自的PWM波形,又可以支持同步配合输出一定相位差的PWM波形,节约了物理资源;
[0012]e:修改PWM的周期及相位将在下个主控PWM周期输出时更新相位的变化,这样可以保持PWM波形的稳定性。
[0013]本发明的有益效果是:上述多路多相PWM通过对独立PWM的资源复用与共享,不增加寄存器资源的条件下,对需要调节相位的PWM的启动信号及修改相位变化时的延时控制来实现,节约了成本。
【专利附图】
【附图说明】
[0014]下面参照附图结合【具体实施方式】对本发明作进一步的说明。
[0015]图1为本发明中多路多相PWM的总体框图。
[0016]图2为本发明中PWM相位调节实施方式的框图。
[0017]图3为本发明中PWM启动时相位调节的时序图。
[0018]图4为本发明中PWM其他时刻相位调节的时序图。
【具体实施方式】
[0019]为了方便本发明实施例的描述,下面定义一些术语。这里定义的术语具有相关领域中通常所理解的相同含义。诸如“一”、“之”和“该”等术语不只指代单个实体,而是包括用于说明的特定示例所属的普通类。这里用于描述本发明的特定实施例,但其使用不对本发明划界,除非权利要求中那样阐述。
[0020]本发明实施例包括多路独立的PWM和相位控制电路。下面将结合附图详细地讨论本发明实施例的目的,方法及优点,同时给出相位调节在启动时刻及修改时各自对应的控制时序图。
[0021]图1为多路多相PWM实施的总体框图。多路多相电路100包括主控PWM101,可独立控制的其他PWM103和相位控制电路105及其他可独立控制PWM等。各路PWM可以各自独立工作,也可以由主控PWM和相位控制电路来同步其他PWM的输出,并调节其他PWM的相位。
[0022]图2进一步描述了 PWM之间的相位调节控制的实施电路200。下面以两个PWM的相位控制为例说明该实施电路,其他需要调节相位的PWM的控制实施方式与之一致。在主控PWM202的启动信号的基础上,经过相位控制电路,得到延时启动信号控制产生不同相位的PWM输出波形。其中相位控制电路由延时单元212以及PWM204中复用的周期寄存器208构成。
[0023]图2中PWM204在独立使用时,周期寄存器208用于寄存周期计数值;而在相位调节时,PWM204的周期值将共享主控PWM的周期寄存器210的值,自身的周期寄存器208作为调节相位寄存器使用。这样可以节省物理资源,从而降低成本。
[0024]图2中的延时单元212是根据预设的相位调节寄存器值使用PWM的工作时钟进行计数得到。初次启动时,当计数到预设的相位寄存器值时,PWM204开始启动。当修改相位值时将在主控PWM202当前周期输出完成后开始重新启动,从而再次产生PWM204的延时启动信号,得到的PWM204输出与主控PWM202的输出从下一周期起保持调整后的相位差值,其时序关系请参见图3及图4。
[0025]图2中调节相位输出时复用的硬件资源包含:需要调节相位的各路PWM的周期寄存器值将共享主控PWM,而自身的周期寄存器都作为相位调节寄存器使用。此外还有部分控制逻辑的复用。
[0026]对于可调相位的精度由PWM的相位寄存器位宽N来决定,可调节的最小相位值为 36--。当N值越大,则可调节的相位的精度则越高。例如,当N= 10时,可调节的最小相位为0.3516° ;而当N= 16时,可调节的最小相位为0.0055°。
[0027]图3为两路PWM相位调节在启动时的控制时序图。M_START信号表示主控PWM的启动信号,Delay_value表示需要调节相位的延时值,Delay_en表示根据延时值Dl的延时控制信号,M_0UT为主控PWM的输出波形,而Delay_0UT为相位调节后的PWM的输出波形。由图中可以看出预设的相位差是由Delay_en的有效长度控制的。
[0028]图4为两路PWM在修改相位时的控制时序图。延时控制值Delay_value在某一时刻从Dl变为D2,Delay_en表示根据延时值从Dl变为D2后的延时控制信号,M_0UT为主控PWM的输出波形,而Delay_0UT为相位调节后的PWM的输出波形。由图中可以看出预设的相位差是由Delay_en的有效长度控制的,并且Delay_en并未在Delay_value变化时立即改变,而是在M_0UT当前周期输出完成后再进行延时控制,这样可以保持主控PWM输出的稳定性。
[0029]显然,上面所描述的实施例只是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
【权利要求】
1.一种多路多相PWM的实现方法,其特征在于,包括: 可独立控制的多路PWM信号发生器及可根据预设相位进行调整的相位控制电路。
2.根据权利要求1所述的一种多路多相PWM的实现方法,其特征在于,通过所述的多路PWM信号发生器独立产生需要的PWM输出,也可以通过所述的多路PWM配合使用产生有相位要求的PWM输出。
3.根据权利要求2中所述的一种多路多相PWM的实现方法,其特征在于,所述的相位控制电路根据所述多路PWM配合使用,其中某一个PWM为主控,其余的PWM根据主控PWM进行相位调节产生各种相位需求的输出。
4.根据权利要求3中所述的一种多路多相PWM的实现方法,其特征在于,PWM相位调节为:在主控PWM启动时刻点通过延时计数控制需要调节相位的PWM的硬件启动时刻;而修改相位值将在主控PWM下一周期输出时更新需要调整的PWM的相位,从而实现多路的独立相位调节。
5.根据权利要求4中所述的一种多路多相PWM的实现方法,其特征在于,PWM相位调节精度由PWM的相位调节控制寄存器决定。
6.根据权利要求4中所述的一种多路多相PWM的实现方法,其特征在于,PWM相位调节所使用的逻辑电路,可以复用各路独立PWM的硬件资源。
【文档编号】H03K7/08GK104135254SQ201410365896
【公开日】2014年11月5日 申请日期:2014年7月29日 优先权日:2014年7月29日
【发明者】孙振玮, 陶建平, 王和国, 沈敏 申请人:江苏宏云技术有限公司