thansaulove
11-08-2011, 11:56 PM
Mình có 2 đoạn code điều khiển servo như sau :
CODE 1:
void main()
{
TRISB = 0x00;
PORTB = 0xFF;
int16 pulse = 1200
while(1)
{
PORTB = 0xFF;
delay_us(pulse);
PORTB = 0x00;
delay_us(17000);
}
}
CODE 2:
void main()
{
TRISB = 0x00;
PORTB = 0xFF;
while(1)
{
PORTB = 0xFF;
delay_us(1200);
PORTB = 0x00;
delay_us(17000);
}
}
Mình thấy 2 đoạn code này giống nhau(chỉ khác là mình dùng biến pulse truyền vào hàm delay ở Code1,còn code 2 mình truyền thẳng tham số vào hàm delay) nhưng điều khiển servo lại cho ra 2 góc quay khác nhau. Bạn nào giải thích giúp mình với.
CODE 1:
void main()
{
TRISB = 0x00;
PORTB = 0xFF;
int16 pulse = 1200
while(1)
{
PORTB = 0xFF;
delay_us(pulse);
PORTB = 0x00;
delay_us(17000);
}
}
CODE 2:
void main()
{
TRISB = 0x00;
PORTB = 0xFF;
while(1)
{
PORTB = 0xFF;
delay_us(1200);
PORTB = 0x00;
delay_us(17000);
}
}
Mình thấy 2 đoạn code này giống nhau(chỉ khác là mình dùng biến pulse truyền vào hàm delay ở Code1,còn code 2 mình truyền thẳng tham số vào hàm delay) nhưng điều khiển servo lại cho ra 2 góc quay khác nhau. Bạn nào giải thích giúp mình với.