logo资料库

基于51单片机的SPWM波信号发生器.doc

第1页 / 共2页
第2页 / 共2页
资料共2页,全文预览结束
基于 51 单片机的 SPWM 波信号发生器 1、载波比选为 N=24 2、调制比 M=Uc/Ur=1 3、单片机采用 12M 晶振 4、正弦波频率为 50HZ 5、高电平的宽度 Tpw=Tt/2*(1+Msinwt) 低电平的宽度 TL=Tt/2*(1-M*sinwt) 其中 Tt 为三角波的周期 单片机输出的波形如下图示:
程序清单: #include unsigned char code x[]={66,38,78,26,89,15,97,7, 102,2,103,1,103,1,102,2, 97,7,89,15,78,26,66,38, 38,66,26,78,15,89,7,97, 2,102,1,103,1,103,2,102, 7,97,15,89,26,78,38,66}; unsigned int i,j; sbit L1=P2^7; void init() { TMOD=0X02; TH0=(255-x[i]); TL0=(255-x[i]); EA=1; ET0=1; TR0=1; L1=1; } void main() { init(); while(1); } void timer0() interrupt 1 { TH0=(255-x[i]); TL0=(255-x[i]); j++; if(j==8) { j=0; L1=~L1; i++; if(i>=48) i=0; } }
分享到:
收藏