本帖最后由 XUSHENG 于 2014-8-16 17:23 编辑
怎么这论坛上,很少有PWM-脉宽调制的说明的呢?很想多了解这一方面的信息,但是找了很久,都没有找到。请各位提供这方面的信息,谢谢~~下面这PWM程序,我如果改变占空比?这占空比是如何计算的?不知哪位能帮帮忙。
#include"reg51.h"
#include"intrins.h"
#define uchar unsigned char
#define uint unsigned int
sfr P_SW1=0xA2;
sfr CCON=0xD8;
sfr CMOD=0xD9;
sfr CL=0xE9;
sfr CH=0xF9;
sfr CCAPM0=0xDA;
sfr CCAP0L=0xEA;
sfr CCAP0H=0xFA;
sfr PCA_PWM0=0xF2;
sbit CR=CCON^6;
sbit LED=P3^3;
sbit key=P2^6;
unsigned int counter;
unsigned char flag;
unsigned char i=0;
//void Delay(uint x)
//{
// uint a,b;
// for(a=x;a>0;a--)
// for(b=110;b>0;b--);
//}
void main()
{
P_SW1=0x00;
CCON=0;
CL=0;
CH=0;
CMOD=0x00;//系统时钟,SYS/12,禁止中断//
PCA_PWM0=0x00;
CCAP0H=CCAP0L=0x20;//占空比是87。5%//
CCAPM0=0x42;
CR=1;
while(1);
}
|