fbpx

Expresate

Si además quieres enviarnos un Artículo para el Blog y redes sociales, pulsa el siguiente botón:

Avisos
Vaciar todo

Futuro seguidor de linea

7 Respuestas
3 Usuarios
0 Reactions
3,164 Visitas
freire
Respuestas: 12
Topic starter
(@freire)
Active Member
Registrado: hace 19 años

Hola, estoy haciendo un cutre-seguidor de linea, el problema es que no se como hacer para que cada vez k se llama a la funcion esta empiece de nuevo y siempre me da un valor alto (5v) sea cual sea el valor del pwm, nose si me explico... si le coloco un delay dentro de cada if, tonces si me funciona bien, pero no quisiera que el programa se quedara esperando en el delay. Graciass!!

void main()
{

setup_adc_ports(NO_ANALOGS);
setup_adc(ADC_CLOCK_DIV_2);
setup_spi(SPI_SS_DISABLED);
setup_timer_0(RTCC_INTERNAL|RTCC_DIV_1);
setup_timer_1(T1_DISABLED);
setup_timer_2(T2_DIV_BY_4,124,1);
setup_ccp1(CCP_PWM);
setup_ccp2(CCP_PWM);
set_pwm1_duty(0);
set_pwm2_duty(0);
setup_comparator(NC_NC_NC_NC);

while(1){
// LINEA NEGRA
lectura=input_d(); // D7 D6 D5 D4 ///// D3 D2 D1 D0

if(lectura==0x01){ //D0 +derecha
MD_AVANZA (0);
MI_AVANZA (511);

}
else if(lectura==0x80){ //D7 +izquierda
MD_AVANZA (511);
MI_AVANZA (0);

}
else{
MD_AVANZA (1023);
MI_AVANZA (1023);

}

}

}

void MD_AVANZA (int pwm1){
output_high(IN1);
output_low(IN2);
set_pwm1_duty(pwm1);
}

void MI_AVANZA (int pwm2){
output_high(IN3);
output_low(IN4);
set_pwm2_duty(pwm2);
}

Responder
6 respuestas
freire
Respuestas: 12
Topic starter
(@freire)
Active Member
Registrado: hace 19 años

Pues utilizo un 16f877 y un cristal de 20 Mhz, lo he probado con un controlador P y bueno... para ser la primera prueba, sin tocar nada d nada, no va muy mal, aun keda muxo trabajo!!!, mañana me lio con el PD, abe si mejora algo...

Dejo el enlace a youtube, pa que lo veais!! http://www.youtube.com/watch?v=SPyg3SrpFaA " onclick="window.open(this.href);return false;

Responder
Pedro C. W.
Respuestas: 409
Admin
(@weeberp)
Reputable Member
Registrado: hace 5 años

Hola, ¿fuiste tu quien me llamo el otro día?

yo he utilizado un pulso hace poco y para calcular las frecuencias que se podía, prescaler, dutycicle... e utilizado estas paginas:

http://eng-serve.com/pic/pic_pwm.html " onclick="window.open(this.href);return false;

http://www.micro-examples.com/public/microex-navig/doc/097-pwm-calculator.html " onclick="window.open(this.href);return false;

saludos

Responder
Página 2 / 2
Compartir: