51 El microordenador de un solo chip impulsa el motor paso a paso, puede girar hacia adelante y hacia atrás, la velocidad del teclado se puede ajustar y el tubo digital puede mostrar la velocidad.
retraso nulo (unsigned int t);
sbit F1 = P1^0;
sbit F2 = P1^1; p>
p>
sbit F3 = P1^2;
sbit F4 = P1^3;
Código de carácter sin firmar FFW[8]={0xf1, 0xf3 , 0xf2, 0xf6 , 0xf4, 0xfc, 0xf8, 0xf9}; //Invertir
Código de carácter sin firmar FFZ[8]={0xf9, 0xf8, 0xfc, 0xf4, 0xf6, 0xf2, 0xf3, 0xf1}; // Rotación hacia adelante
Unsigned int K;
void motor_ffw()
{
unsigned char i;
unsigned int j;
for (j=0; jlt ; 12; j ) //giro 1*n revoluciones
{
for (i =0; ilt; 8; i ) //Gira 30 grados en un ciclo
{
if(K==1) P1 = FFW[i]amp; /Leer datos
if(K==2) P1 = FFZ[i]amp; 0x1f;
delay(20); //Ajustar velocidad
}
}
}
}
retraso nulo (unsigned int t)
{
unsigned int k;
while(t- -)
{
for(k=0; klt; 80; k ) p>
{ }
}
}
principal()
{
mientras( 1)
{
K=1;
motor_ ffw();
K=2
motor_ffw();
}
}
}
}