PDA

View Full Version : điều khiển rc servo dùng pic 16f877a


dungcdt190502
14-09-2014, 07:12 PM
mọi người cho mình hỏi đoạn code sau mình dùng để dk rc servo sai chỗ nào ko ạ.
#include <def_16f877a.h>
#device *=16 ADC=10
#FUSES NOWDT, HS, NOPUT,NOPROTECT
#use delay(clock=16000000)
int8 dem;
int8 value,value1,value2,value3;
#INT_TIMER0
void set_servo()
{
set_timer0(156);
dem++; //bi?n d?m tang thêm 1 giá tr? m?i 0,1ms
if (dem >= 200) // 200*0,1=20ms (xung 50Hz)
{
dem=0; // reset bi?n d?m
output_bit(pin_c1,1);
output_bit(pin_c2,1);
}
if (dem >= value)
{ output_bit(pin_c1,0);
}
if (dem >= value1)
{ output_bit(pin_c2,0);
}
}
main()
{
set_tris_c(0x00); //set các chân ? port C di?u là chân xu?t
portC = 0x00;
enable_interrupts(int_timer0); //cho phép ng?t timer0
enable_interrupts(global);
setup_timer_0(RTCC_INTERNAL|RTCC_DIV_4); //chon t?n s? cho timer0 t? clock chính (16MHz)
set_timer0(156);//cài d?t timer d? timer0 tràn m?i 0,1ms
while(true) //vòng l?p
{
value=8; //giá tr? gán cho các bi?n d? di?u khi?n d? r?ng xung
value1=13;
value2=10;
value3=11;
}
}