Pages: [1]   Go Down
Author Topic: Problema con interrupt hard.  (Read 283 times)
0 Members and 1 Guest are viewing this topic.
Offline Offline
Jr. Member
**
Karma: 0
Posts: 86
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

sto usando arduino one.
In setup()
//pinMode(2, INPUT);
  digitalWrite(2, HIGH);  // pull up
  attachInterrupt(0, call_int_0, FALLING);
  interrupts();

In call_int_0
n++;
// e visualizzo n

Funziona solo che non capisco come mai la call_int_0 viene sempre "chiamata" almeno una volta, cioe' senza mai abbassare il pin 2
 non so perche' esegue una chiamata alla routine. Grazie Giorgio
Logged

BZ (I)
Online Online
Brattain Member
*****
Karma: 234
Posts: 20218
+39 349 2158303
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

scegli tu:
Ci dai un sfera di cristallo,
Ti colleghi in via telepatica con uno di noi,
ci dai l' intero Sketch compreso il circuito elettrico di quello che hai collegato a Arduino oppure non vuoi ricevere risposta e aiuto.
Ciao Uwe
Logged

Global Moderator
Italy
Offline Offline
Brattain Member
*****
Karma: 313
Posts: 21624
Logic is my way
View Profile
WWW
 Bigger Bigger  Smaller Smaller  Reset Reset

Prova con:
1) inserendo un piccolo delay fra l'attivazione della pull-up e l'attivazione dell'interrupt (a proposito, l'attivazione del pin con pull-up sulle ultime versioni dell'IDE si fa così):
Code:
pinMode(2, INPUT_PULLUP);
delay(50);
attachInterrupt(ecc...
2) prova sostituendo LOW a FALLING.

Un'altra cosa. Non mettere interrupts() dopo aver attivato l'interrupt. Non serve a niente. La funzione attachInterrupt attiva l'interrupt per te.
Logged


Offline Offline
Jr. Member
**
Karma: 0
Posts: 86
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

Il colmo, c'era della pasta salda tra il pin 2 e massa, inpratica entrava del rumore.
Devo cambiare tipo di stagno, non e' la prima volta che osservo una conduttivita',
Grazie cmq Giorgio
Logged

Pages: [1]   Go Up
Jump to: