da
WALTERmwp » 29 set 2014, 0:47
Davide90, a prescindere dalla questione dei tempi, tieni presente che in pratica il tempo dello stato off in teoria (poi in pratica si vedrà) non corrisponde a 780 microsecondi come da te ipotizzato.
I valori assoluti delle variabili "tempoon" e "tempooff" assumono, rispettivamente, 170 e 178.
Questi rappresentano di fatto, nei due loop "while", delle soglie ma, in questi controlli, ti sfugge il fatto che il secondo statement
- Codice: Seleziona tutto
while(tempooff>tempo && tempo>tempoon)
non contempla la condizione per la quale la variabile tempo supera quello di "tempooff".
E accade perché l'incremento della variabile "tempo" prosegue sino al limite da te previsto (248) però all'interno del while in causa non ci passi più.
In pratica non ti cambia nulla perché non perpetui più l'assegnazione di zero a MOTORE1OUT e MOTORE2OUT che, nei fatti, rimangono a quel valore (zero) ma non credo proprio sia stato intenzionale da parte; ma potrei sbagliarmi e se invece dovesse essere come scrivo ti suggerisco di "irrobustire" quei controlli.
Saluti
W - U.H.F.