欢迎来到天天文库
浏览记录
ID:14579190
大小:540.50 KB
页数:13页
时间:2018-07-29
《c8051f系列单片机产生spwm算法大全》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库。
1、一种基于C8051单片机的SPWM波形实现方案AmethodofproducingSPWMwaveformbasedonC8051MCUNsx2009 摘 要:详细介绍了通过C8051单片机的可编程计数器列阵PCA来实现SPWM控制波形的原理和方法,并对SPWM脉冲序列中的最小脉冲处理问题进行了分析。实验结果证实了该方法的准确性和可靠性。叙 词:C8051;SPWM波形;最小脉冲Abstract:TheprincipleandmethodofproducingSPWMcontrolwaveformbyusingtheC8051M
2、CUs’programmablecounterarray(PCA)isintroducedindetail.AndtheminimumpulseproblemoftheSPWMpulseseriesisanalyzed.Experimentalresultsverifythatthemethodisaccurateandreliable.Keywords:C8051,SPWMwaveform,minimumpulse1引言 正弦脉宽调制(SPWM)技术已在交流调速、直流输电、变频电源等领域得到广泛应用,为了提高整个系统的控制效果,高性能S
3、PWM脉冲形成技术一直是人们不断探索的问题。采用模拟电路和数字电路等硬件电路来产生SPWM波形是一种切实可行的方法,但是这种实现方法控制电路复杂、抗干扰能力差、实时调节较困难。近年来,人们提出了由单片机、DSP等微控制器来实现SPWM波形的数字控制方法[1][2],由于微控制器内部集成了很多控制电路,比如定时器、PWM电路、可编程计数器阵列等,所以使得这种实现SPWM的方法具有控制电路简单、运行速度快、控制精度高、抗干扰能力强等优点。本文介绍了一种利用C8051单片机实现输出频率可变SPWM波形的方法,并将由C8051F040产生的单极性S
4、PWM波应用于单相频率可调逆变电源,实验结果证实了利用C8051实现SPWM波形的可行性和有效性。2SPWM技术原理 SPWM技术的基本原理是利用一个三角波载波和一个正弦波进行比较,得到一个宽度按正弦规律变化的脉冲序列,用它们来驱动逆变器开关管的开关转换。由微控制器来实现SPWM波形的方法有表格法、随时计算法和实时计算法,但前两种无实时处理能力[2]。采用实时计算法要有数学模型,其中一种较为常用的是采样型SPWM法,它分为自然采样法、对称规则采样法和不对称规则采样法。本文采用对称规则采样法,即利用经过采样的正弦波(实际上是阶梯波)与三角波
5、相交,由交点得出脉冲宽度。图1是典型的单极性对称规则采样法,它只在三角波的峰值时刻采样正弦调制波并将采样值保持,分别取保持值和三角波交点作为脉冲宽度时间。图中Ts为三角波的周期,同时也是采样周期;Ur为三角波的高,正弦波为Ucsinωt。根据三角形相似关系,得到 所以 其中,M=Uc/Ur为调制比,t为采样点(这里为顶点采样)的时刻。则脉冲宽度为 采样点时刻t只与载波比N有关。对于图1情况有t=kTS+θ,其中k=0,1,2,…,N-1,θ=180/N度。图1对称规则采样法 在对称规则采样情况下,只要知道采样点时刻t就可以确定这个采
6、样周期内的脉冲宽度tpw和时间间隔toff,从而可以计算出SPWM波形高、低脉冲的宽度。3C8051实现SPWM波形的原理及算法3.1C8051F系列单片机PCA简介 C8051F系列单片机都具有一个可编程计数器阵列PCA,以C8051F040为例,PCA包含1个专用的16位计数器/定时器和6个16位捕捉/比较模块,可以输出6路PWM波形。如图2所示,16位PCA专用计数器/定时器的时基信号可有多种选择,可通过配置相关的系统控制器的特殊功能寄存器(SFR)来实现。每个捕捉/比较模块有自己的I/O线CEXn,可通过配制交叉开关寄存器(XBR
7、0)将每个模块的I/O线连接到端口I/O;每个模块都可配制为独立工作,有四种工作方式:边沿触发捕捉、软件定时器、高速输图2PCA原理框图出或脉宽调制器。本文中,产生频率可变的SPWM波形是使用了捕捉/比较模块的高速输出工作方式,其原理如下: 当PCA的16位计数器/定时器PCA0H(高8位)和PCA0L(低8位)与16位捕捉/比较模块寄存器PCA0CPHn(高8位)和PCA0CPLn(低8位)发生匹配时,模块的CEXn引脚上的逻辑电平将发生跳变,并产生一个中断请求,即将控制寄存器PCA0CN中相应的CCFn位置位,当CCF中断被允许时,C
8、PU将转向CCF中断服务程序。如果将相应模块的I/O线CEXn连接到端口I/O,单片机相应端口输出电平即发生变化,这就可实现PWM脉冲的高、低电平输出。置位PCA0CPMn寄存器
此文档下载收益归作者所有