YoReparoProgramación → Control de giro Motor paso a paso

Control de giro Motor paso a paso

Que tal soy nuevo en la programacion de PIC y pues tengo este problema, me dejaron elaborar y simular un programa de controlar el giro de un motor a pasos.
La combinacio es al siguete:

A B C D
0 0 1 1
0 1 1 0
1 1 0 0
1 0 0 1

Con esta combinacion debe girar a la deerecha.

A B C D
1 0 0 1
1 1 0 0
0 1 1 0
0 0 1 1

Con esta combinacion debe girar a la izquierda.

Tengo este codigo,esta en lenguaje C, utilizo Mplab para compilar, bueno ustedes entienden de esto.

#include <p18f2550.h>
#include <delays.h>
#include <timers.h>

#pragma config FOSC = HS, LVP = OFF, WDT = OFF, BOR = OFF, PWRT = OFF, PBADEN = OFF, MCLRE = ON

void ISRTimer0(void);

#pragma code Interrupcion = 0x0008
void VectorInterrupcion(void)
{
_asm goto ISRTimer0 _endasm
}
#pragma code

#pragma interrupt ISRTimer0
void ISRTimer0(void)
{
if(INTCONbits.TMR0IF==1)
{
WriteTimer0(6036);
LATB ^= 0b00000010; // Intercambia la salida en RB1
INTCONbits.TMR0IF=0;
}
}

void main(void)
{
TRISB = 0b11111001; // RB1 y RB2 son salidas

OpenTimer0(TIMER_INT_ON & T0_16BIT & T0_SOURCE_INT & T0_PS_1_16);

WriteTimer0(6036);

RCONbits.IPEN=0;
INTCONbits.PEIE=1;
INTCONbits.GIE=1;

while(1)
{
LATB ^= 0b00000100; // Intercambia la salida en RB2
Delay10KTCYx( 1 ); // espera el tiempo de retardo

}
}




No esta comleto ya el codigo, me pueden decir que le falata al programa?

Me pueden ayudar con el programa para que hago las combinaciones que tengo arriba. Gracias!!
   
04/2/2012 03:45PM
ff3rmin
¿Sabes la respuesta?

Bienvenido/a!

YoReparo es la mayor comunidad sobre tecnología. Colaboramos y compartimos información para solucionar todo tipo de problemas técnicos.

Para participar solo hace falta que te registres gratis aquí

Miembros / Expertos