Codigo para probar servos con pic 16f84a
Comprobado con servos modelo Hextronik de 5gr.
#INCLUDE <16F84A.h>
#FUSES XT,NOWDT
#USE delay (clock=4000000)
#USE fast_io(B)
#DEFINE INTS_PER_SECOND 250 // (4000000/(4*4*250))
int int_count,milisegundos,segundos;
#INT_RTCC
Interrupcion_RTCC() {
set_timer0(0);
if(--int_count==0) {
milisegundos++;
if(milisegundos==1000) {
segundos++;
milisegundos==0;
}
int_count=INTS_PER_SECOND;
}
}
void main() {
int_count=INTS_PER_SECOND;
milisegundos = 0;
segundos = 0;
setup_counters(RTCC_INTERNAL,RTCC_DIV_4);
enable_interrupts(INT_RTCC);
enable_interrupts(GLOBAL);
set_timer0(0);
while(1) {
if(segundos==2 || segundos==3) { // IR A 90°
output_high(PIN_B1);
delay_us(1500);
output_low(PIN_B1);
delay_us(18500);
}
if(segundos==4 || segundos==5) { // IR A 180°
output_high(PIN_B1);
delay_us(2100);
output_low(PIN_B1);
delay_us(17900);
}
if(segundos==6 || segundos==7) { // IR A 0°
output_high(PIN_B1);
delay_us(900);
output_low(PIN_B1);
delay_us(19100);
}
if(segundos==8) {
segundos = 0;
}
}
|
|
![]() | 25 julio 2010 en Electronica | tags: Electronica |









![img[1]](http://www.pesadillo.com/pesadillo/wp-content/uploads/2010/05/img1.jpg)










