一种提高pwm控制器精度的方法及装置

文档序号:1711614 发布日期:2019-12-13 浏览:26次 >En<

阅读说明:本技术 一种提高pwm控制器精度的方法及装置 (method and device for improving precision of PWM controller ) 是由 不公告发明人 于 2019-08-16 设计创作,主要内容包括:本发明适用于PWM控制器技术领域,尤其涉及一种提高PWM控制器精度的方法及装置,方法包括:设定扩展修正参数值;多次进入PWM中断,根据扩展修正参数值将已达周期扩展为预达周期,并基于预达计数计算预达周期中的脉冲宽度;以及当PWM中断的次数达到扩展修正参数值的整数倍时,将脉冲宽度分配到预达周期中。即使预达计数大于原PWM控制器的计数精度范围,经过重新分配脉冲宽度,能够避免受到硬件的限制,实现与预达计数相匹配的功能,大大提高了PWM控制器的精度。(The invention is suitable for the technical field of PWM controllers, and particularly relates to a method and a device for improving the precision of a PWM controller, wherein the method comprises the following steps: setting an extension correction parameter value; entering PWM interruption for multiple times, expanding the reached period into a preset period according to the expansion correction parameter value, and calculating the pulse width in the preset period based on the preset count; and distributing the pulse width into the expected period when the number of PWM interruptions reaches an integer multiple of the value of the extended correction parameter. Even if the count of the predicted number is larger than the count precision range of the original PWM controller, the pulse width is redistributed, so that the limitation of hardware can be avoided, the function matched with the predicted number is realized, and the precision of the PWM controller is greatly improved.)

一种提高PWM控制器精度的方法及装置

技术领域

本发明适用于PWM控制器技术领域,尤其涉及一种提高PWM控制器精度的方法及装置。

背景技术

脉冲宽度调制(英文简称为PWM,英文全称为Pulse Width Modulation)是利用微处理器的数字输出来对模拟电路进行控制的一种非常有效的技术,广泛应用在从测量、通信到功率控制与变换的许多领域中。

脉冲宽度调制是一种模拟控制方式,其根据相应载荷的变化来调制晶体管基极或MOS管栅极的偏置,来实现晶体管或MOS管导通时间的改变,从而实现开关稳压电源输出的改变。这种方式能使电源的输出电压在工作条件变化时保持恒定,是利用微处理器的数字信号对模拟电路进行控制的一种非常有效的技术。

但是,现有脉冲宽度调制的精度往往只能根据出厂前所作设定。例如,精度为8位的PWM控制器,其理论分辨率为1/256,要达到这个分辨率,T/C需要从0计数到255;而精度为16位的PWM控制器,其理论分辨率为1/65536,要达到这个分辨率,T/C需要从0计数到65535,显然精度为8位的PWM控制器无法实现精度为10位或者16位的对应功能。则操作人员在使用过程中,会受到由于精度所带来的局限性,无法实现更高精度的操作,给操作人员带来极大的不便。

发明内容

本发明实施例提供一种提高PWM控制器精度的方法及装置,旨在解决PWM控制器的精度固定,无法实现更高精度的问题。

本发明实施例是这样实现的,本发明提供一种提高PWM控制器精度的方法,所述方法包括:设定扩展修正参数值;多次进入PWM中断,根据扩展修正参数值将已达周期扩展为预达周期,并基于预达计数计算预达周期中的脉冲宽度;以及当PWM中断的次数达到扩展修正参数值的整数倍时,将脉冲宽度分配到预达周期中。

更进一步地,所述基于预达计数计算预达周期中的脉冲宽度的步骤,具体包括:将预达计数除以扩展修正参数值,以此获取脉冲宽度以及余数;将余数分摊到各个已达周期的脉冲宽度中。

更进一步地,所述将余数分摊到各个已达周期的脉冲宽度中的步骤,具体包括:每次进入PWM中断,判断余数是否完成分摊,若余数大于零,判断余数未完成分摊,继续通过修改脉冲宽度分摊余数,及更新分摊后的余数。

更进一步地,所述根据扩展修正参数值将已达周期扩展为预达周期的步骤,具体包括:设定PWM控制器的周期为已达周期;对已达周期进行计数,判断计数值是否达到扩展修正值的整数倍,若达到,则判断已达周期已扩展为预达周期。

更进一步地,所述设定扩展修正参数值的步骤,具体包括:根据预达精度的PWM控制器对应计数范围除以已达精度的PWM控制器对应计数范围,获取所设定的扩展修正参数值。

本发明还提供一种提高PWM控制器精度的装置,所述装置包括:设定单元,用于设定扩展修正参数值;计算单元,用于多次进入PWM中断,根据扩展修正参数值将已达周期扩展为预达周期,并基于预达计数计算预达周期中的脉冲宽度;以及分配单元,用于当PWM中断的次数达到扩展修正参数值的整数倍时,将脉冲宽度分配到预达周期中。

更进一步地,所述计算单元包括:第一计算单元,用于将预达计数除以扩展修正参数值,以此获取脉冲宽度以及余数;分摊单元,用于将余数分摊到各个已达周期的脉冲宽度中。

更进一步地,所述分摊单元包括:余数分摊单元,用于每次进入PWM中断,判断余数是否完成分摊,若余数大于零,判断余数未完成分摊,继续通过修改脉冲宽度分摊余数,及更新分摊后的余数。

更进一步地,所述计算单元包括:预设单元,用于设定PWM控制器的周期为已达周期;判断单元,用于对已达周期进行计数,判断计数值是否达到扩展修正值的整数倍,若达到,则判断已达周期已扩展为预达周期。

更进一步地,所述设定单元包括:第二计算单元,用于根据预达精度的PWM控制器对应计数范围除以已达精度的PWM控制器对应计数范围,获取所设定的扩展修正参数值。

本发明的有益效果在于,与现有技术相比,本发明通过设计一种提高PWM控制器精度的方法及装置,先是设定扩展修正参数值,在多次进入PWM中断之后,根据扩展修正参数值进行周期扩展,将较小的已达周期扩展为较大的预达周期,并根据预达计数重新分配预达周期中的脉冲宽度,在PWM中断的次数达到扩展修正参数值的整数倍时,将重新分配的脉冲宽度分配到预达周期中,即使预达计数大于原PWM控制器的计数精度范围,经过重新分配脉冲宽度,能够避免受到硬件的限制,实现与预达计数相匹配的功能,大大提高了PWM控制器的精度。

附图说明

图1是本发明实施例一提供的提高PWM控制器精度的方法的流程框图;

图2是本发明实施例二提供的计算脉冲宽度的流程框图;

图3是本发明实施例三提供的分摊余数到脉冲宽度上的流程框图;

图4是本发明实施例四提供的将已达周期扩展为预达周期的流程框图;

图5是本发明实施例五提供的清除标识位的流程框图;

图6是本发明实施例六提供的设定扩展修正参数值的流程框图;

图7是本发明实施例提供的精度提高前后的波形对照图;

图8是本发明实施例提供的提高PWM控制器精度的整体方法的流程步骤图;

图9是本发明实施例七提供的提高PWM控制器精度的装置的结构框图;

图10是本发明实施例八提供的计算单元的第一结构框图;

图11是本发明实施例九提供的余数分摊单元的结构框图;

图12是本发明实施例十提供的计算单元的第二结构框图;

图13是本发明实施例十一提供的计算单元的第三结构框图;

图14是本发明实施例十二提供的设定单元的结构框图。

具体实施方式

为了使本发明的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本发明进行进一步详细说明。应当理解,此处所描述的具体实施例仅仅用以解释本发明,并不用于限定本发明。

本发明通过设计一种提高PWM控制器精度的方法及装置,先是设定扩展修正参数值,在多次进入PWM中断之后,根据扩展修正参数值进行周期扩展,将较小的已达周期扩展为较大的预达周期,并根据预达计数重新分配预达周期中的脉冲宽度,在PWM中断的次数达到扩展修正参数值的整数倍时,将重新分配的脉冲宽度分配到预达周期中,即使预达计数大于原PWM控制器的计数精度范围,经过重新分配脉冲宽度,能够避免受到硬件的限制,实现与预达计数相匹配的功能,大大提高了PWM控制器的精度。

实施例一

参考图1,本实施例一提供一种提高PWM控制器精度的方法,所述方法包括:

步骤1、设定扩展修正参数值;

步骤2、多次进入PWM中断,根据扩展修正参数值将已达周期扩展为预达周期,并基于预达计数计算预达周期中的脉冲宽度;以及

步骤3、当PWM中断的次数达到扩展修正参数值的整数倍时,将脉冲宽度分配到预达周期中。

其中,首先设定扩展修正参数值,后续基于扩展修正参数值实现PWM控制器的精度扩展。

PWM控制器在开启控制作用之后,由于其固有属性,需要多次进入PWM中断,而PWM中断指的是当定时计数器溢出(即已达周期到达)时,单片机暂时停止当前程序的执行转而执行处理新情况的程序和执行过程。在多次进入PWM中断之后,可根据扩展修正参数值将已达周期扩展为预达周期,已达周期是PWM控制器原有精度对应的周期,例如,若是PWM控制器为8位PWM控制器,则已达周期为8位PWM控制器对应的周期。可以理解的是,预达周期由多个已达周期扩展组成。在已达周期扩展完预达周期后,可基于预达计数计算并获取预达周期中的脉冲宽度,并将获取的脉冲宽度存储到PWM寄存器中。预达计数可为高于PWM控制器原有精度的计数,例如,若是PWM控制器为8位PWM控制器,原本8位PWM控制器的计数为0至255,而预达计数可取高于255以上的计数。

先是设定扩展修正参数值,在多次进入PWM中断之后,根据扩展修正参数值进行周期扩展,将较小的已达周期扩展为较大的预达周期,并根据预达计数重新分配预达周期中的脉冲宽度,在PWM中断的次数达到扩展修正参数值的整数倍时,将重新分配的脉冲宽度分配到预达周期中。即使预达计数大于原PWM控制器的计数精度范围,经过重新分配脉冲宽度,能够避免受到硬件的限制,实现与预达计数相匹配的功能,大大提高了PWM控制器的精度。

举例来说,参考图7示出的波形图,假设PWM控制器为8位PWM控制器,占空比可达50.2%。

可知原本精度的8位PWM控制器,在其周期中的脉冲宽度为128,计数范围为0至255。占空比通过计算:128/256=50%,可知占空比为50%,无法达到50.2%的精度。如果需要达到该进度,8位PWM控制器需要扩展为10位,计数范围为0至1024,在其周期中的脉冲宽度为514,占空比通过计算:514/1024≈50.2%。而依照上述方法执行之后的PWM控制器,扩展修正参数值定义为4,即扩展之后的预达周期的计数范围为0至256*4=1024,分配在预达周期中的脉冲宽度为129、129、128和128。占空比通过计算:(129+129+128+128)/(256*4)=50.2%,可知占空比为50.2%。若是预达计数大于255,依然能够实现精度控制。

实施例二

参考图2,在实施例一的基础上,本实施例二的所述基于预达计数计算预达周期中的脉冲宽度的步骤,具体包括:

步骤23、将预达计数除以扩展修正参数值,以此获取脉冲宽度以及余数;

步骤24、将余数分摊到各个已达周期的脉冲宽度中。

其中,利用数学原理,将预达计数除以扩展修正参数值,以此获取脉冲宽度以及余数。在获取余数之后,可将余数分摊到各个已达周期的脉冲宽度中,并存储分摊后的脉冲宽度。通过上述方法,能够实现余数均匀的平摊到脉冲宽度上,实现在较大的预达周期下脉冲宽度的精度提高。

实施例三

参考图3,在实施例二的基础上,本实施例三的所述将余数分摊到各个已达周期的脉冲宽度中的步骤,具体包括:

步骤241、每次进入PWM中断,判断余数是否完成分摊,若余数大于零,判断余数未完成分摊,继续通过修改脉冲宽度分摊余数,及更新分摊后的余数。

其中,在每次进入PWM中断之后,对余数进行判断。若余数大于零,判断余数未完成分摊,则获取脉冲宽度后加一并设置到PWM寄存器,以及余数减一以更新余数;若余数等于零,则直接将获取的脉冲宽度设置到PWM寄存器。通过上述方法,能够更为具体的实现余数均匀的平摊到脉冲宽度上,实现在较大的预达周期下脉冲宽度的精度提高。

实施例四

参考图4,在实施例三的基础上,本实施例四的所述根据扩展修正参数值将已达周期扩展为预达周期的步骤,具体包括:

步骤221、设定PWM控制器的周期为已达周期;

步骤222、对已达周期进行计数,判断计数值是否达到扩展修正值的整数倍,若达到,则判断已达周期已扩展为预达周期。

其中,预先设定PWM控制器的周期即为已达周期。在每次进入PWM中断之后,对PWM控制器的已达周期进行判断。若是判断PWM控制器的已达周期计数值等于扩展修正参数值,则判断已扩展为预达周期,即是说,此时已达周期即是预达周期。若判断PWM控制器的已达周期计数值未达到扩展修正参数值,则继续进行已达周期的扩展。

详细来说,每进入一次PWM终端,已达周期计数值加一,直到计数值等于扩展修正值时则判断已达周期已扩展为预达周期,以及下次进入PWM中断重新计数,依此循环。

实施例五

参考图5,在实施例四的基础上,本实施例五的所述多次进入PWM中断之后的步骤,还包括:

步骤212、清除PWM中断的标识位。

其中,对于每一PWM控制器而言,为避免完成PWM中断处理程序之后,不会再次进入PWM中断,则在每次进入PWM中断之后,需要清除PWM中断的标识位。

当然,对于部分PWM控制器而言,在进入PWM中断之后会自动默认清除标识位,此时则无需执行步骤212。

实施例六

参考图6,在实施例一至实施例五的基础上,本实施例五的所述设定扩展修正参数值的步骤,具体包括:

步骤11、根据预达精度的PWM控制器对应计数范围除以已达精度的PWM控制器对应计数范围,获取所设定的扩展修正参数值。

其中,在提高精度之前,先需设定扩展修正参数值。可通过数学原理,根据预达精度的PWM控制器对应计数范围除以已达精度的PWM控制器对应计数范围,即可获取所设定的扩展修正参数值。

举例来说,8位PWM控制器需要提高精度为10位PWM控制器,8位PWM控制器为已达精度的PWM控制器,其对应计数范围为28=256,10位PWM控制器为预达精度的PWM控制器,其对应计数范围为210=1024,则设定的扩展修正参数值为210/28=4。

具体来说,参考图7和图8,在此详细描述提高PWM控制器精度的整体方法,将PWM控制器的占空比从50%提高到50.2%。

PWM控制器为8位PWM控制器,计数范围为0至255,若想实现计数范围为0至1023的10位PWM控制器的相应功能,占空比精度需达到50.2%,例如预达计数为514。先是通过公式210/28=4,获取扩展修正参数值为4。然后,PWM控制器第一次进入PWM中断或者中断计数值达到扩展修正值的整数倍,则预达计数除以扩展修正参数值并取余数,可得余数为2,进一步判断余数大于零,则余数减一后为一,预达计数除以扩展修正参数值再加一,即是通过公式(514/4)+1=129,再进一步判断该值与上次不同(上次为0),则更新脉冲宽度为129,退出PWM中断。随后,第二次进入PWM中断,清除PWM中断标识位,PWM控制器的已达周期加一后为二,并不等于扩展修正参数值,此时余数为1,进一步地判断余数大于零,则余数减一后为零,预达计数除以扩展修正参数值再加一,即是通过公式(514/4)+1=129,再进一步判断该值与上次相同(上次为129),则无需更新脉冲宽度,脉冲宽度依然取129,退出PWM中断。而后,第三次进入PWM中断,清除PWM中断标识位,PWM控制器的已达周期加一后为三,并不等于扩展修正参数值,此时余数为0,进一步地判断余数不大于零,则预达计数除以扩展修正参数值,即是通过公式514/4=128,再进一步判断该值与上次不同(上次为129),更新脉冲宽度为128,退出PWM中断。最后,第四次进入PWM中断,清除PWM中断标识位,PWM控制器的已达周期加一后为四,等于扩展修正参数值,则判断已达周期已扩展为预达周期,已达周期计数值清零,此时余数为0,进一步地判断余数不大于零,则预达计数除以扩展修正参数值,即是通过公式514/4=128,再进一步判断该值与上次相同(上次为128),则无需更新脉冲宽度,脉冲宽度依然取128,退出PWM中断。

从而,在预达周期中,脉冲宽度依次为129、129、128、128,通过计算(129+129+128+128)/(256*4)=50.2%,占空比为50.2%,即是说,可实现预达计数514的相应精度控制功能。

实施例七

参考图9,本实施例七提供一种提高PWM控制器精度的装置,所述装置包括:

设定单元100,用于设定扩展修正参数值;

计算单元200,用于多次进入PWM中断,根据扩展修正参数值将已达周期扩展为预达周期,并基于预达计数计算预达周期中的脉冲宽度;以及

分配单元300,用于当PWM中断的次数达到扩展修正参数值的整数倍时,将脉冲宽度分配到预达周期中。

其中,通过设定单元100,首先设定扩展修正参数值,后续基于扩展修正参数值实现PWM控制器的精度扩展。

通过计算单元200,PWM控制器在开启控制作用之后,由于其固有属性,需要多次进入PWM中断,而PWM中断指的是当定时计数器溢出(即已达周期到达)时,单片机暂时停止当前程序的执行转而执行处理新情况的程序和执行过程。在多次进入PWM中断之后,可根据扩展修正参数值将已达周期扩展为预达周期,已达周期是PWM控制器原有精度对应的周期,例如,若是PWM控制器为8位PWM控制器,则已达周期为8位PWM控制器对应的周期。可以理解的是,预达周期由多个已达周期扩展组成。在已达周期扩展完预达周期后,可基于预达计数计算并获取预达周期中的脉冲宽度。预达计数可为高于PWM控制器原有精度的计数,例如,若是PWM控制器为8位PWM控制器,原本8位PWM控制器的计数为0至255,而预达计数可取高于255以上的计数。通过分配单元300,当PWM中断的次数达到扩展修正参数值的整数倍时,将计算得到的脉冲宽度分配到预达周期中

先是设定扩展修正参数值,在多次进入PWM中断之后,根据扩展修正参数值进行周期扩展,将较小的已达周期扩展为较大的预达周期,并根据预达计数重新分配预达周期中的脉冲宽度,在PWM中断的次数达到扩展修正参数值的整数倍时,将重新分配的脉冲宽度分配到预达周期中。即使预达计数大于原PWM控制器的计数精度范围,经过重新分配脉冲宽度,能够避免受到硬件的限制,实现与预达计数相匹配的功能,大大提高了PWM控制器的精度。

举例来说,参考图7示出的波形图,假设PWM控制器为8位PWM控制器,占空比可达50.2%。

可知原本精度的8位PWM控制器,在其周期中的脉冲宽度为128,计数范围为0至255。占空比通过计算:128/256=50%,可知占空比为50%,无法达到50.2%的精度。如果需要达到该进度,8位PWM控制器需要扩展为10位,计数范围为0至1024,在其周期中的脉冲宽度为514,占空比通过计算:514/1024≈50.2%。而依照上述装置执行之后的PWM控制器,扩展修正参数值定义为4,即扩展之后的预达周期的计数范围为0至256*4=1024,分配在预达周期中的脉冲宽度为129、129、128和128。占空比通过计算:(129+129+128+128)/(256*4)=50.2%,可知占空比为50.2%。若是预达计数大于255,依然能够实现精度控制。

实施例八

参考图10,在实施例七的基础上,本实施例八的所述计算单元包括:

第一计算单元230,用于将预达计数除以扩展修正参数值,以此获取脉冲宽度以及余数;

分摊单元240,用于将余数分摊到各个已达周期的脉冲宽度中。

其中,通过第一计算单元230,利用数学原理,将预达计数除以扩展修正参数值,以此获取脉冲宽度以及余数。通过分摊单元240,在获取余数之后,可将余数分摊到各个已达周期的脉冲宽度中,并存储分摊后的脉冲宽度。通过上述装置,能够实现余数均匀的平摊到脉冲宽度上,实现在较大的预达周期下脉冲宽度的精度提高。

实施例九

参考图11,在实施例八的基础上,本实施例九的所述分摊单元240包括:

余数分摊单元241,用于每次进入PWM中断,判断余数是否完成分摊,若余数大于零,判断余数未完成分摊,继续通过修改脉冲宽度分摊余数,及更新分摊后的余数。

其中,通过余数分摊单元241,在每次进入PWM中断之后,对余数进行判断。若余数大于零,判断余数未完成分摊,则获取脉冲宽度后加一并设置到PWM寄存器,以及余数减一以更新余数;若余数等于零,则直接将获取的脉冲宽度设置到PWM寄存器。通过上述装置,能够更为具体的实现余数均匀的平摊到脉冲宽度上,实现在较大的预达周期下脉冲宽度的精度提高。

实施例十

参考图12,在实施例九的基础上,本实施例十的所述计算单元包括:

预设单元221,用于设定PWM控制器的周期为已达周期;

判断单元222,用于对已达周期进行计数,判断计数值是否达到扩展修正值的整数倍,若达到,则判断已达周期已扩展为预达周期。

其中,通过预设单元221,预先设定PWM控制器的周期即为已达周期。通过判断单元222,在每次进入PWM中断之后,对PWM控制器的已达周期进行判断。若是判断PWM控制器的已达周期计数值等于扩展修正参数值,则判断已扩展为预达周期,即是说,此时已达周期即是预达周期。若判断PWM控制器的已达周期计数值未达到扩展修正参数值,则继续进行已达周期的扩展。

详细来说,每进入一次PWM终端,已达周期计数值加一,直到计数值等于扩展修正值时则判断已达周期已扩展为预达周期,以及下次进入PWM中断重新计数,依此循环。

实施例十一

参考图13,在实施例十的基础上,本实施例十一的所述计算单元包括:

清除单元212,用于清除PWM中断的标识位;

其中,通过清除单元212,其中,对于每一PWM控制器而言,为避免完成PWM中断处理程序之后,不会再次进入PWM中断,则在每次进入PWM中断之后,需要清除PWM中断的标识位。

当然,对于部分PWM控制器而言,在进入PWM中断之后会自动默认清除标识位,此时则无需设有清除单元212。

实施例十二

参考图14,在实施例七至实施例十一的基础上,本实施例十二的所述设定单元包括:

第二计算单元110,用于根据预达精度的PWM控制器对应计数范围除以已达精度的PWM控制器对应计数范围,获取所设定的扩展修正参数值。

其中,通过第二计算单元110,在提高精度之前,先需设定扩展修正参数值。可通过数学原理,根据预达精度的PWM控制器对应计数范围除以已达精度的PWM控制器对应计数范围,即可获取所设定的扩展修正参数值。

举例来说,8位PWM控制器需要提高精度为10位PWM控制器,8位PWM控制器为已达精度的PWM控制器,其对应计数范围为28=256,10位PWM控制器为预达精度的PWM控制器,其对应计数范围为210=1024,则设定的扩展修正参数值为210/28=4。

具体来说,参考图7和图8,在此详细描述提高PWM控制器精度的整体装置,将PWM控制器的占空比从50%提高到50.2%。

PWM控制器为8位PWM控制器,计数范围为0至255,若想实现计数范围为0至1023的10位PWM控制器的相应功能,占空比精度需达到50.2%,例如预达计数为514。先是通过公式210/28=4,获取扩展修正参数值为4。然后,PWM控制器第一次进入PWM中断或者中断计数值达到扩展修正值的整数倍,则预达计数除以扩展修正参数值并取余数,可得余数为2,进一步判断余数大于零,则余数减一后为一,预达计数除以扩展修正参数值再加一,即是通过公式(514/4)+1=129,再进一步判断该值与上次不同(上次为0),则更新脉冲宽度为129,退出PWM中断。随后,第二次进入PWM中断,清除PWM中断标识位,PWM控制器的已达周期加一后为二,并不等于扩展修正参数值,此时余数为1,进一步地判断余数大于零,则余数减一后为零,预达计数除以扩展修正参数值再加一,即是通过公式(514/4)+1=129,再进一步判断该值与上次相同(上次为129),则无需更新脉冲宽度,脉冲宽度依然取129,退出PWM中断。而后,第三次进入PWM中断,清除PWM中断标识位,PWM控制器的已达周期加一后为三,并不等于扩展修正参数值,此时余数为0,进一步地判断余数不大于零,则预达计数除以扩展修正参数值,即是通过公式514/4=128,再进一步判断该值与上次不同(上次为129),更新脉冲宽度为128,退出PWM中断。最后,第四次进入PWM中断,清除PWM中断标识位,PWM控制器的已达周期加一后为四,等于扩展修正参数值,则判断已达周期已扩展为预达周期,已达周期计数值清零,此时余数为0,进一步地判断余数不大于零,则预达计数除以扩展修正参数值,即是通过公式514/4=128,再进一步判断该值与上次相同(上次为128),则无需更新脉冲宽度,脉冲宽度依然取128,退出PWM中断。

从而,在预达周期中,脉冲宽度依次为129、129、128、128,通过计算(129+129+128+128)/(256*4)=50.2%,占空比为50.2%,即是说,可实现预达计数514的相应精度控制功能。

以上所述仅为本发明的较佳实施例而已,并不用以限制本发明,凡在本发明的精神和原则之内所作的任何修改、等同替换和改进等,均应包含在本发明的保护范围之内。

16页详细技术资料下载
上一篇:一种医用注射器针头装配设备
下一篇:应用于集成磁隔离芯片的边沿转换方法及编解码电路

网友询问留言

已有0条留言

还没有人留言评论。精彩留言会获得点赞!

精彩留言,会给你点赞!