điều khiển rc servo dùng pic 16f877a
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; } } |
Múi giờ GMT. Hiện tại là 12:21 AM. |
Tên diễn đàn: vBulletin Version 3.8.11
Được sáng lập bởi Đoàn Hiệp.
Copyright © PIC Vietnam