一种突破MCU硬件的限制输出pwm的方法

文档序号:8474841阅读:657来源:国知局
一种突破MCU硬件的限制输出pwm的方法
【技术领域】
[0001]本发明涉及脉宽调制领域,尤其涉及一种突破MCU硬件的限制输出pwm的方法。
【背景技术】
[0002]目前各种电子设备中MCU的功能完善,其中就包含pwm输出功能;其1(^硬件支持pwm的输出功能,只需要对当前MCU进行pwm配置,即可得到相应的频率的pwm输出。
[0003]但是针对该MCU选择的晶振和电子电路限制了该MCU硬件pwm输出的频率,为了提高Pwm的输出的频率,现有的技术有三种:
(1)更改硬件电路,将pwm输出口更改为其他pwm功能输出口。缺陷是:产品升级更改电路和软件同时进行,升级开发周期长,负价值多;
(2)添加高速外部晶振,使pwm输出频率增加。缺陷是:需升级电路和大部分软件配置,升级开发周期长,产品成本升高,负价值多;
(3)更换更高速MCU。缺陷是:产品成本升高,软件重新开发,周期长。

【发明内容】

[0004]本发明的目的是提供一种突破MCU硬件的限制输出pwm的方法,在增加硬件装置和电路结构的情况下提升pwm输出频率。
[0005]本发明的技术方案是一种突破MCU硬件的限制输出pwm的方法,包括如下步骤:
51、初始化时钟配置,在MCU中配置一个8位的连续的时钟溢出中断;
52、正常运行,经过设定的时间后,出现一个中断;以及
53、判断I/O输出标志是否为真,当I/O输出标志为真时,重载pwm中低电平时间给时钟定时器,I/O输出标志设为假,I/O 口输出低电平,然后重复步骤S2 ;当I/O输出标志为假时,重载pwm中高电平时间给时钟定时器,I/O输出标志设为真,I/O 口输出高电平,然后重复步骤S2。
[0006]本技术方案采用8位时钟定时器进行模拟pwm输出功能,使得可以将MCU中I/O口可调占空比个数Dc进行任意设定。如将Dc=100,那么Dc〈255 ;使得频率升高,突破了原有的MCU硬件的pwm输出功能。产品升级开发周期短,不需要更改硬件电路、添加高速外部晶振或更换高速MCU,降低了成本。
[0007]进一步地,步骤S2中,所述设定的时间满足下述公式:
Tx=255*t
公式中,Tx表示距离下一个中断的时间,t表示MCU的指令周期。程序运行到时间Tx时,出现一个中断;未运行到Tx时,继续运行。
[0008]进一步地,步骤S3中,重载pwm中低电平时间满足下述公式:
Tl= (255-Dc+Dd) *t
公式中,Tl表示pwm中低电平时间,t表示MCU的指令周期,Dc表示可调占空比个数,Dd表示占空比对应的数值。
[0009]进一步地,步骤S3中,重载pwm中高电平时间满足下述公式:
Th= (255-Dd)*t
公式中,Th表示pwm中高电平时间,t表示MCU的指令周期,Dd表示占空比对应的数值。
[0010]进一步地,MCU的I/O 口最终输出稳定的周期为T的pwm波形,所述周期T满足公式:
T=Th+Tl=Dc*t(I)
公式中,T表示pwm的周期,t表示MCU指令周期,Dc表示可调占空比个数;
所述pwm波形的占空比为(Dd/Dc) *100% ;
根据公式(I)可得出,MCU的I/O 口最终输出pwm波形的频率满足公式:
Fpwm=I/T=I/(Dc*t)
公式中,Dc表示可调占空比个数,t表示MCU的指令周期
有益效果:通过采用8位时钟定时器进行模拟pwm输出功能,使得可以将MCU中I/O 口可调占空比个数Dc进行任意设定,使得频率升高,突破了原有的MCU硬件的pwm输出功能。产品升级开发周期短,不需要更改硬件电路、添加高速外部晶振或更换高速MCU,降低了成本。
【附图说明】
[0011]图1是本发明一种实施例的工作流程图。
【具体实施方式】
[0012]下面结合附图,对本发明的较优的实施例作进一步的详细说明:
参见图1,一种突破MCU硬件的限制输出pwm的方法,包括如下步骤:
51、初始化时钟配置,在MCU中配置一个8位的连续的时钟溢出中断;
52、正常运行,经过设定的时间后,出现一个中断;以及
53、判断I/O输出标志是否为真,当I/O输出标志为真时,重载pwm中低电平时间给时钟定时器,I/O输出标志设为假,I/O 口输出低电平,然后重复步骤S2 ;当I/O输出标志为假时,重载pwm中高电平时间给时钟定时器,I/O输出标志设为真,I/O 口输出高电平,然后重复步骤S2。
[0013]步骤S2中,所述设定的时间满足下述公式:
Tx=255*t
公式中,Tx表示距离下一个中断的时间,t表示MCU的指令周期。程序运行到时间Tx时,出现一个中断;未运行到Tx时,继续运行。
[0014]步骤S3中,重载pwm中低电平时间满足下述公式:
Tl= (255-Dc+Dd) *t
公式中,Tl表示pwm中低电平时间,t表示MCU的指令周期,Dc表示可调占空比个数,Dd表示占空比对应的数值。
[0015]步骤S3中,重载pwm中高电平时间满足下述公式:
Th= (255-Dd)*t公式中,Th表示pwm中高电平时间,t表示MCU的指令周期,Dd表示占空比对应的数值。
[0016]MCU的I/O 口最终输出稳定的周期为T的pwm波形,所述周期T满足公式: T=Th+Tl=Dc*t(I)
公式中,T表示pwm的周期,t表示MCU指令周期,Dc表示可调占空比个数;
所述pwm波形的占空比为(Dd/Dc) *100% ;
根据公式(I)可得出,MCU的I/O 口最终输出pwm波形的频率满足公式:
Fpwm=I/T=I/(Dc*t)
公式中,Dc表示可调占空比个数,t表示MCU的指令周期。
[0017]本实施例中,MCU型号为MB95F564K,t=0.25,假设Dd=50,Dc=100,那么p碰波形的占空比为:
50/100*100=50%,
MCU的I/O 口最终输出pwm波形的频率为:
(1/100*0.25)MHz=40KHzo
[0018]因此,在软件中将50赋值给Dd,就可以使该MCU输出一个40KHz的占空比为50%的pwm波形。
[0019]本实施例采用8位时钟定时器进行模拟pwm输出功能,使得可以将MCU中I/O 口可调占空比个数Dc进行任意设定。如将Dc=100,那么Dc〈255 ;使得频率升高,突破了原有的MCU硬件的pwm输出功能。产品升级开发周期短,不需要更改硬件电路、添加高速外部晶振或更换高速MCU,降低了成本。
[0020]以上内容是结合具体的优选实施方式对本发明所作的进一步详细说明,不能认定本发明的具体实施只局限于这些说明。对于本发明所属技术领域的普通技术人员来说,在不脱离本发明构思的前提下,还可以做出若干简单推演或替换,都应当视为属于本发明的保护范围。
【主权项】
1.一种突破MCU硬件的限制输出pwm的方法,其特征在于,包括如下步骤: 51、初始化时钟配置,在MCU中配置一个8位的连续的时钟溢出中断; 52、正常运行,经过设定的时间后,出现一个中断;以及 53、判断I/O输出标志是否为真,当I/O输出标志为真时,重载pwm中低电平时间给时钟定时器,I/O输出标志设为假,I/O 口输出低电平,然后重复步骤S2 ;当I/O输出标志为假时,重载pwm中高电平时间给时钟定时器,I/O输出标志设为真,I/O 口输出高电平,然后重复步骤S2。
2.根据权利要求1所述的突破MCU硬件的限制输出pwm的方法,其特征在于,步骤S2中,所述设定的时间满足下述公式:Tx=255*t 公式中,Tx表示距离下一个中断的时间,t表示MCU的指令周期。
3.根据权利要求2所述的突破MCU硬件的限制输出pwm的方法,其特征在于,步骤S3中,重载pwm中低电平时间满足下述公式:Tl= (255-Dc+Dd) *t 公式中,Tl表示pwm中低电平时间,t表示MCU的指令周期,Dc表示可调占空比个数,Dd表示占空比对应的数值。
4.根据权利要求3所述的突破MCU硬件的限制输出pwm的方法,其特征在于,步骤S3中,重载pwm中高电平时间满足下述公式:Th= (255-Dd)*t 公式中,Th表示pwm中高电平时间,t表示MCU的指令周期,Dd表示占空比对应的数值。
5.根据权利要求4所述的突破MCU硬件的限制输出pwm的方法,其特征在于,MCU的I/O 口最终输出稳定的周期为T的pwm波形,所述周期T满足公式: T=Th+Tl=Dc*t(I) 公式中,T表示pwm的周期,t表示MCU指令周期,Dc表示可调占空比个数; 所述pwm波形的占空比为(Dd/Dc) *100% ; 根据公式(I)可得出,MCU的I/O 口最终输出pwm波形的频率满足公式:Fpwm=I/T=I/(Dc*t) 公式中,Dc表示可调占空比个数,t表示MCU的指令周期。
【专利摘要】本发明公开了一种突破MCU硬件的限制输出pwm的方法,其特征在于,包括如下步骤:S1、初始化时钟配置,在MCU中配置一个8位的连续的时钟溢出中断;S2、正常运行,经过设定的时间后,出现一个中断;以及S3、判断I/O输出标志是否为真,当I/O输出标志为真时,重载pwm中低电平时间给时钟定时器,I/O输出标志设为假,I/O口输出低电平,然后重复步骤S2;当I/O输出标志为假时,重载pwm中高电平时间给时钟定时器,I/O输出标志设为真,I/O口输出高电平,然后重复步骤S2。产品升级开发周期短,不需要更改硬件电路、添加高速外部晶振或更换高速MCU,降低了成本。
【IPC分类】G06F1-10, H03K7-08, H03K5-135
【公开号】CN104796118
【申请号】CN201510211221
【发明人】宋志超, 陈志杰
【申请人】深圳市振邦智能科技有限公司
【公开日】2015年7月22日
【申请日】2015年4月29日
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1