Programación de fórmulas de aceleración y desaceleración de control de motores
¿No es válido? retraso(unsigned?int?t);
//motor
sbit? ¿F1? =?p1^0;
bit? ¿F2? =?p1^1;
un poco? ¿F3? =?p1^2;
un poco? ¿F4? =?p1^3;
¿Sin firmar? ¿Ciel? ¿Código? AFFW[8]={0xfe, 0xfc, 0xfd, 0xf9, 0xfb, 0xf3, 0xf7, 0x F6};? //Revertir
¿Sin firmar? ¿Ciel? ¿Código? FFZ[8]={0xf6, 0xf7, 0xf3, 0xfb, 0xf9, 0xfd, 0xfc, 0x Fe};? //Girar hacia adelante
¿Sin firmar? intK
/****************************************** *****************************
*?*
*? Motor paso a paso*
*?*
***************************** * *****************************************/
voidmotor_ffw ()
{
¿No está firmado? ¿Ciel? Yo;
¿No firmado? intj
¿Para qué? (j = 0;?j lt12;?j)? //Gira 1*n círculos
{
¿Para qué? (I = 0;?i lt8;?i)? //Gira 30 grados en un ciclo.
{
si(K==1)? ¿P1? =?FFW[I] amp; 0x 1f; //Obtener datos
if(K==2)? ¿P1? =?FFZ[I] amp;0x 1f;
Retraso(15);? //Ajustar velocidad
}
}
}
/************** *****************************************
* p>
*Programa de retraso
*
*************************** ***** *******************************/
¿Anulado? retraso(unsigned?int?t)
{
¿Sin firmar? int? k;
mientras(t -)
{
for(k = 0;?k lt100;?k)
{ ?}
}
}
principal()
{
mientras(1)
{
k = 1;
motor _ ffw();
k = 2
motor _ ffw ();
}
}
Te doy un ejemplo. Esto tiene aspectos tanto positivos como negativos. Puedes usarlo para modificar programas de aceleración y desaceleración.