📄 drv_pwm.c
字号:
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 + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -