Salve a tutti!
Mi trovo in difficoltà riguardo il cronometrare il tempo di ricezione di un segnale analogico.
In pratica, indipendentemente dal valore effettivo del segnale in A0 ho bisogno di sapere per quanto tempo arduino riceve questo segnale partendo appunto dall'istante in cui comincia a riceverlo.
Nella mia ignoranza da neofita ho utilizzato uno spunto preesistente e cercato di modificarlo per la mia esigenza.
long point;
long timepoint = 2000;
void setup() {
// initialize serial communication at 9600 bits per second:
pinMode (13, OUTPUT);
Serial.begin(9600);
digitalWrite (13, LOW);
point = millis();
}
// the loop routine runs over and over again forever:
void loop() {
// read the input on analog pin 0:
int sensorValue = analogRead(A0);
// Convert the analog reading (which goes from 0 - 1023) to a voltage (0 - 5V):
float voltage = sensorValue * (9.0 / 1023.0);
// print out the value you read:
Serial.println(voltage);
delay (1000);
while ( sensorValue <= 1.30) and millis()- point>= timepoint);
{digitalWrite (13, HIGH);
point = millis();
}
}
Come potete vedere ho sbagliato qualcosa per non dire tutto.
Potreste gentilmente aiutarmi, per favore?
Vi ringrazio in anticipo.`