PWM的程序讲解:
通过控制正电平的脉冲所占的时间比来控制小灯的亮暗程度或者电机转速的快慢 等等很多需要调速的地方都可以使用PWM
以小灯为例占空比越大(即高电平所占的时间更长)就越亮
源码:
#include<reg52.h>
/*
产生周期为1ms(1kHZ)的PWM,设置中断的时间基准为0.01ms
然后中断100次即为1ms。
1、当time>=100时,time清零(此语句保证频率为1kHZ);
2、当time>n时(n应该在0-100之间变化开),让单片相应的I/O口输出低电平;
3、当time<=n时,让单片相应的I/O口输出高电平,此时占空比就为%
下面程序产生50%占空比的pwm:
*/
#define u16 unsigned int
#define u8 unsigned char
sbit PWM=P2^0