Red de conocimiento informático - Descarga de software - Programación de fórmulas de aceleración y desaceleración de control de motores

Programación de fórmulas de aceleración y desaceleración de control de motores

#¿Incluir? " reg52.h "

¿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

}

}

}

/************** *****************************************

*

*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.