[Risolto] Blink con millis() lettura PPM con pulseIn() Ritardi e Problemi

grazie GINGARDU della tua disponibilità (ma ti avevo scritto ieri di dare una letta prima sul forum che magari riuscivo a risolvere) e infatti ho già risolto tutte le rotture

cmq ti ringrazio nuovamente per avermi regalato la conoscienza dell'istruzione micros()
ma piccolo appunto (mo me a tiro)

hai sbagliatoooooooooooooooooooooo!!!!!!!!!!!!!!!!!!!!!!!!

if (millis() - previousMillis > interval) {

previousMillis = micros(); // modifica GINGARDU sostituito il timer millis com micros
//per evitare che dia fastiadio al timer timer0_millis = 0; o voceversa

if (val5 == LOW)
val5 = HIGH;
else
val5 = LOW;

digitalWrite(frecceOut, val5);
}

nell'if hai lasciato millis() cmq sarà sicuramente utilissimo nei prossimi progetti

intanto per studiare il millis ho scritto uno spezzone di codice per far accendere e spegnere un led in modo proporzionale utilizzando millis() e sono veramente molto soddisfatto!!!

int value = 0;
int value2;
long previousMillis = 0;
long interval = 10;
 
void setup()
{
  pinMode(ledPin, OUTPUT);
}
 
void loop()
{
  if (value == 150) value2 = 1;
  if (value == 0) value2 = 2;

  if (millis() - previousMillis > interval) {
    previousMillis = millis();
 
    if (value2 == 2) value = value+1;


    analogWrite(ledPin, value);
  }
  if (millis() - previousMillis > interval) {
    previousMillis = millis();
 
    if (value2 == 1) value = value-1;


    analogWrite(ledPin, value);
  }
}