pwm.c

来自「用单片机的可变pwm的输出实现正弦波的输出。」· C语言 代码 · 共 58 行

C
58
字号
 #include <reg51.h>		//2005.11.18 By ClimberWin
 #include <stdio.h>	    //PWM调制
 #include <math.h>
 sbit 	P32=P3^2;		//端口设置
 sbit 	P33=P3^3;
 sbit 	P10=P1^0;
 sbit 	P11=P1^1;
 unsigned int j;		//设置全局变量用于控制延时时间
 void delay(unsigned int i)//**   //延时子程序
{						   //**
 unsigned int n;		   //**
 n=0;					   //**
 while(n < i)			   //**
 {n++;}					   //**
 return;				   //**
 }						   //**
 //****************************
 //主程序/
 void main(void)
{ 
  j=250;
loop: 
   if (P32==0)	   
	 {j=j+1;}
	  
	 
   else

     if (P33==0)
        {j=j-1;}
       else
     
  if (j<500) 
  { ;
   }
  else
  { j=250;
    }
  
	OutputPWM(); 
	goto loop;	//循环
  }
  
 //**********************
 OutputPWM(void)   
 { 	
   
	    
      P10=!P10; 
	   P11=!P11;
      delay(500-j);
      P10=!P10;
	   P11=!P11;
      delay(j);
      
  }
  //*********************

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?