。。。。。。 // 左電機調速 void pwm_out_left_moto(void) { if(Left_moto_stop) { if(pwm_val_left<=push_val_left) { Left_moto_pwm=1; // Left_moto_pwm1=1; } else { Left_moto_pwm=0; // Left_moto_pwm1=0; } if(pwm_val_left>=20) pwm_val_left=0; } else { Left_moto_pwm=0; // Left_moto_pwm1=0; } } // 右電機調速 void pwm_out_right_moto(void) { if(Right_moto_stop) { if(pwm_val_right<=push_val_right) { Right_moto_pwm=1; // Right_moto_pwm1=1; } else { Right_moto_pwm=0; // Right_moto_pwm1=0; } if(pwm_val_right>=20) pwm_val_right=0; } else { Right_moto_pwm=0; // Right_moto_pwm1=0; } }
///*TIMER2中斷服務子函數產生PWM信號*/ void timer0()interrupt 5 { TF2=0; TH2=0XFc; (65536-1000)/256 //1M定時 TL2=0X18; (65536-1000)%256 time++; pwm_val_left++; pwm_val_right++; pwm_out_left_moto(); pwm_out_right_moto(); EA=1; ET2=1; RT2=1; }
|