标题: out1.2出来是一个交流,有正负的方波,但滤波后成了正弦,疑惑求教 [打印本页]

作者: 韩she    时间: 2021-7-13 00:25
标题: out1.2出来是一个交流,有正负的方波,但滤波后成了正弦,疑惑求教
[attach]275731[/attach]

单片机源程序如下:
#include<reg51.h>
#define uint unsigned int
#define uchar unsigned char
uchar t_max = 20;                       //一个周期
static uchar t = 0,i = 0;        //PWM计数
sbit P2_0=P2^0;
sbit P1_0=P1^0;
uchar code SinParam[40]={  
  10,10,11,12,13,14,14,15,16,16,17,17,18,18,18,19,
19,19,19,19,19,19,19,19,19,19,18,18,17,17,16,16,
15,15,14,13,12,12,11,10
};


// 正弦波样本值

void main(void)
{
        TMOD = 0x02;                                //定时器0,工作模式2,8位定时模式
        TH0 =1;                                //写入预置初值(取值1-255,数越大PWM频率越高)
        TL0 =1;                                //写入预置值(取值1-255,数越大PWM频率越高)
        TR0 = 1;                                        //启动定时器
        ET0 = 1;                                        //允许定时器0中断
        EA = 1;                                        //允许总中断

            P2_0=1;                                //初始化P1
        P1_0=0;

        while(1)
        {

        }
}


timer0()interrupt 1 using 2
{        
        t++;                                //每次定时器溢出加1

        if(t < t_max && t >= SinParam[ i])        //PWM周期                                          5
                {                                
                        P2_0 = 0;                        //使LED灯亮
                        P1_0=1;
                }
                else if( t >= t_max)
                {
                        t = 0;        //使t=0,开始新的PWM周期
                        i++;                        
                        P2_0 =1;
            P1_0=0;                        
                }               
   if(i >= 40)
   {i = 0;}
}

out1.2出来是一个交流,有正负的方波,但滤波后成了正弦,(全大于0)单极性波。问题出在哪儿里?萌新求教
作者: 1543330241    时间: 2021-7-13 08:19
你应该把波形图贴出来
作者: xuyaqi    时间: 2021-7-13 09:15
方波由多谐波(正弦波)组成,滤去高次谐波后成了正弦波。
作者: glinfei    时间: 2021-7-13 09:25
就是傅里叶分解
作者: rz12345    时间: 2021-7-13 09:41
对地点不对,负本来就是虚地产生的,测量方法会影响结果的。
作者: 韩she    时间: 2021-7-15 12:11
已解决,请删除




欢迎光临 (http://www.51hei.com/bbs/) Powered by Discuz! X3.1