Problema HC-05 e DC motor

Salve a tutti sono Luca, chiedo scusa in anticipo in caso avessi sbagliato sezione ma è il mio primo topic.
Sto cercando di pilotare 2 motori DC (con un ponte H) tramite bluetooth con un app che ho creato;
il funzionamento è molto semplice, il pulsante Avanti invia ‘220’ ad Arduino, il pulsante Indietro invia ‘210’ mentre lo Stop invia ‘230’.
Il problema è il medesimo, tramite il monitor seriale ho verificato la corretta comunicazione tra Arduino e Android solo che i motori si muovono ad impulsi. Mi spiego meglio, clicco il pulsante Avanti dell’app e mi muove il motore per un brevissimo tempo poi si ferma, clicco di nuovo stessa cosa.
Vorrei riuscire a cliccare Avanti e fermarlo con il pulsante Stop, dovrebbe quindi continuare a girare e non ad andare a impulsi. Dove sbaglio?
Di seguito il codice allegato.
Vi ringrazio dell’aiuto

Ciao

Ti invitiamo a presentarti (dicci quali conoscenze hai di elettronica e di programmazione) qui: Presentazioni e a leggere il regolamento: Regolamento - qui una serie di schede by xxxPighi per i collegamenti elettronici vari: ABC - Arduino Basic Connections - qui le pinout delle varie schede by xxxPighi: Pinout - qui una serie di link [u]generali[/u] utili: Link Utili

il codice copia e incollalo utilizzando il tag code (il primo in altro a sinistra, sopra le faccine)

Ciao, spero di poter aiutare. Quello che ti manca in teoria è un istruzione come quella come questa…

void loop() 
{ 
  if (Serial.available())
  {
    int speed = Serial.parseInt();
    if (speed >= 0 && speed <= 255)
    {
      analogWrite(motorPin, speed);
    }
  }
}

Altrimenti ogni volta che il loop() rinizia vai a sovrascrivere il valore con il Serial.parseInt(), facendo sì che i motori funzionino solo per i 50ms che hai scritto del delay.
Se scrivi tutto all’interno dell’ if(Serial.avaiable()) {} in teoria i valori del motore cambiano solo quando un nuovo valore è presente sulla seriale, mantenendo altrimenti quello che avevi già dato in memoria (e quindi i motori dovrebbero continuare a girare).

Spero il problema fosse questo.

Ringrazio entrambi di aver risposto farò presto la presentazione. Ipleo, ho provato con l'istruzione che mi hai fornito ed anche se la situazione è migliorata il problema persiste. Adesso funziona correttamente se non che a volte i motori si fermano, e lo fanno a intervalli non regolari perciò non capisco.