void retardo(int i);
int x,i;
void main()
{
ADCON1=7;
TRISA=15; //ENTRADAS
TRISC=0; //SALIDA
PORTC=0;
while(1)
{
x=PORTA&0b0011; //filtro para secuencias
i=PORTA&0b1100; //filtro para velocidad
switch(x) //las secuencias pueden modificarse dependiendo del valor
{ // asignado
case 0:
PORTC=1;
retardo(i);
PORTC=18;
retardo(i);
PORTC=8;
retardo(i);
PORTC=50;
retardo(i);
PORTC=10;
retardo(i);
break;
case 1:
PORTC=255;
retardo(i);
PORTC=200;
retardo(i);
PORTC=100;
retardo(i);
PORTC=98;
retardo(i);
PORTC=5;
retardo(i);
break;
case 2:
PORTC=10;
retardo(i);
PORTC=38;
retardo(i);
PORTC=88;
retardo(i);
PORTC=155;
retardo(i);
PORTC=215;
retardo(i);
break;
case 3:
PORTC=4;
retardo(i);
PORTC=15;
retardo(i);
PORTC=107;
retardo(i);
PORTC=0;
retardo(i);
PORTC=245;
retardo(i);
break;
}
}
}
void retardo(int i)
{
if(i==0)
{
Delay_ms(300);
}
if(i==4) //filtro para 01
{
Delay_ms(900);
}
if(i==8) //filtro para 10
{
Delay_ms(1500);
}
if(i==12) //filtro para 11
{
Delay_ms(3000);
}
}
archivos de simulacion y compilacion.
http://www.mediafire.com/?9kn30vekc3id3md
No hay comentarios.:
Publicar un comentario