void main()
{ unsigned short leer;
trisb=0x3f;
trisd=0x00;
pwm_init(1000);
pwm_change_duty(0);
pwm2_change_duty(1);
pwm_start();
pwm2_start();
portb.f7=0;
portb.f6=0;
portd.f0=0;
portd.f1=0;
x7:
leer=portb;
leer=leer & 0x3f;
if(leer==0x01) //activa bajo
goto x1;
if(leer==0x02) //activa medio
goto x2;
if(leer==0x04) //activa alto
goto x3;
if(leer==0x08) //activa stop
goto x4;
if(leer==0x10) //activa horario
goto x5;
if(leer==0x20) //activa antihorario
goto x6;
goto x7;
x1:
pwm_change_duty(51); pwm2_change_duty(51); //bajo
goto x7;
x2:
pwm_change_duty(128); pwm2_change_duty(128); //medio
goto x7;
x3:
pwm_change_duty(255); pwm2_change_duty(255); //alto
goto x7;
x4:
pwm_change_duty(0); pwm2_change_duty(0); //apagado
goto x7;
x5:
portb.f7=0;
portb.f6=1; //horario
portd.f0=0;
portd.f1=1;
goto x7;
x6:
portb.f7=1; //antihorario
portb.f6=0;
portd.f0=1;
portd.f1=0;
goto x7;
}
No hay comentarios.:
Publicar un comentario