Attualmente ho scritto il programma che scrive il tempo tra un passo e l'altro nella seriale e scrive errore nel caso vada in senso antiorario MA questo non accade e sembra che scrive valori errati.
- Codice: Seleziona tutto
volatile int valoreB = 0;
volatile int i =0, j=0;
volatile int k=0;
unsigned long inizio_A = 0;
unsigned long fine_A = 0;
unsigned long diff_A = 0;
void setup() {
pinMode(2, INPUT);
pinMode(4,INPUT);
Serial.begin(9600);
attachInterrupt(digitalPinToInterrupt(2), fronte, RISING);
}
void loop() {
if(k==0) {
if(j < i){
fine_A = inizio_A;
inizio_A = micros();
diff_A = inizio_A - fine_A;
j = i;
Serial.print(diff_A/100000);
Serial.print (" ");
Serial.println(i);
}
if(k==1){
Serial.print ("erroreeeeeeeeeeeeeeeeeeee ");
Serial.println (i);
inizio_A = 0;
fine_A = 0;
}
}
}
void fronte(){
valoreB= digitalRead(4);
if(valoreB==HIGH){
i ++;
k = 0;
}
if(valoreB==LOW){
k=1;
}
}
Chiedo aiuto

Elettrotecnica e non solo (admin)
Un gatto tra gli elettroni (IsidoroKZ)
Esperienza e simulazioni (g.schgor)
Moleskine di un idraulico (RenzoDF)
Il Blog di ElectroYou (webmaster)
Idee microcontrollate (TardoFreak)
PICcoli grandi PICMicro (Paolino)
Il blog elettrico di carloc (carloc)
DirtEYblooog (dirtydeeds)
Di tutto... un po' (jordan20)
AK47 (lillo)
Esperienze elettroniche (marco438)
Telecomunicazioni musicali (clavicordo)
Automazione ed Elettronica (gustavo)
Direttive per la sicurezza (ErnestoCappelletti)
EYnfo dall'Alaska (mir)
Apriamo il quadro! (attilio)
H7-25 (asdf)
Passione Elettrica (massimob)
Elettroni a spasso (guidob)
Bloguerra (guerra)




