Quiero hacer un incremento (++) a una variable inicialmente lentamente y luego acelerar de forma lineal. Por ejemplo, al utilizar una interrupción de temporizador (cada 1 segundo) para aumentar la variable x en 1.so, la primera variable se incrementa en 1 en 1 segundo. Luego debe incrementarse en 1 en 0.9 segundos, luego debe incrementarse en 1 en 0.8 segundos y así sucesivamente de manera lineal. ¿quién lo hace?
El hecho es que Tengo una función de bucle de caja de conmutador para el motor bldc.
switch(step)
{
case 0:
{
commutation 1
}
break;
case 1:
{
commutation 2
}
break;
case 2:
{
commutation 3
}
break;
case 3:
{
commutation 4
}
break;
case 4:
{
commutation 5
}
break;
case 5:
{
commutation 6
}
break;
}
}
Quiero que ejecute los pasos de conmutación uno por uno dentro de una interrupción de temporizador.
void Handle_T13()// every 10000ms
{
step++;
if(step==6)
{step=0;}
}
Funciona bien. Pero ahora quiero aumentar la velocidad gradualmente. Así que necesito aumentar el incremento de pasos gradualmente. !!!