⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 pwm.c

📁 定时器源代码. 定时器源代码.
💻 C
字号:
#include <reg51.h>
#define OSC  12000000
#define C_40us  (65536-OSC/(12000000/18))
#define uchar unsigned char 
#define uint unsigned int                                   
sbit pwm=P1^0;                                                                   
sbit key_add=P1^1;                                                               
sbit key_dec=P1^2;                                                               
uchar cpwm=50;
uchar cpwm_x;                                                       
uint i;
//

void  timer(cpwm_x)
{
	TMOD=0x10;
	TR1=1;
	while(cpwm_x--)
	{
		TH1=C_40us/256;
		TL1=C_40us%256;
		while(!TF1);
		TF1=0;
	}
	TR1=0;
}
//////////////////////

void  pwm_add(void)
{
	if(key_add==0)
	{
		cpwm+=10;
		if(cpwm>=100)
		cpwm=100;
		}
		while(key_add==0);
}
void  pwm_dec(void)
{
	if(key_dec==0)
	{
		cpwm-=10;
		if(cpwm<=0)
		cpwm=0;
		}
	while(key_dec==0);
}
void main(void)
{
	while(1)
	{
		pwm_dec();
		pwm_add();
		pwm=1;
		timer(cpwm);
		pwm=0;
		timer(100-cpwm);
	}
}

⌨️ 快捷键说明

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