drv_pwm.c

来自「自己设计的pic单片机开发板源程序和说明书(内有原理图)支持pic16系列28脚」· C语言 代码 · 共 46 行

C
46
字号
void set_pwm1(int16 fpwm,int16 duty)
{
int16	pr2_val,t2div=4;
	pr2_val = (MCLK/fpwm/t2div)>>2 - 1;
	setup_timer_2(T2_DIV_BY_4, pr2_val, 1);
	set_pwm1_duty(duty);
	
}

void pwm1_init()
{
	set_pwm1(2000,100); 
	setup_ccp1(CCP_PWM);
	output_low(drv2);		//rc2
}
void drv_pwm()
{
int16 i;
    puts("Now test the drv2 pwm function\n");
    puts("adjust the ad0 to change pulse width\n");
	adc_init();
	pwm1_init();
	while(TRUE)
	{
		if(kbhit())
		{
			if(getc()==ESC_KEY)
			{
				
				setup_ccp1(CCP_OFF);
				setup_adc( ADC_OFF );
				output_high(drv2);
			//	input(drv2);
				return;
			}
		}
		i = read_adc();
		delay_ms(20);
	//	putc(i);
	//	i = i >>2;
		set_pwm1_duty(i);
	//	delay_ms(200);
	}
}
	

⌨️ 快捷键说明

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