cái này tính toán xung sai thì không đúng rồi, vì mình viết đơn giản set_pwm2_duty(125) hoặc set_pwm2_duty(0) thì ok. nhưng mình đưa vào chương trình con rồi gọi nó ra thì có vấn đề.
VOID MOTO( INT16 TD_BT,INT16 TD_BP)
{
SET_PWM2_DUTY(125-TD_BT);
SET_PWM1_DUTY(125-TD_BP);
}
mình dùng 2 chân này để điều khiển động cơ. sau khi có chương trình con mình gọi ra thì không ok.
VOID RE_TRAI()
{
MOTO(0,100);
}
VOID RE_PHAI()
{
MOTO(125,0);
}
chỉ cần 1 chân có xung là 2 chân điều có xung. mình đang đau đầu đây.
nhưng mình tìm ra cách này giải quyết thì lại ok
VOID RE_TRAI()
{
//MOTO(0,100);
SET_PWM2_DUTY(0);
SET_PWM1_DUTY(100);
}
VOID RE_PHAI()
{
//MOTO(125,0);
SET_PWM2_DUTY(125);
SET_PWM1_DUTY(0);
}
mọi người vào giúp đở vấn đề này với
|