Problema entrate digitali Mega


buongiorno tutti,

il progetto che sto portando avanti è l'integrazione della scheda arduino mega 2560 in una macchina automatizzata che sfrutti tutti 54 i/o digitali della scheda in modo da sostituire il "classico" plc.
dopo aver realizzato una prima versione del software, mi sono anccorao che il processo non era corretto, allora ho comunciato togliere parti di programma e cavi i/o fino ad ottenere l'anomalia anche con il seguente codice:
quote
const int e_pulsante_arresto = 39;
int var;

void setup() {
  pinmode(e_pulsante_arresto, input);
  pinmode(13, output);
  serial.begin(9600);
}

void loop() {
  var = digitalread(e_pulsante_arresto);
  if (var == high) {
    serial.print("e_pulsante_arresto -> ");
    serial.print(var);
    serial.println(" premuto");
    digitalwrite(13, high);
  } else {
    serial.print("e_pulsante_arresto -> ");
    serial.print(var);
    serial.println(" rilasciato");
    digitalwrite(13, low);
  }
}
senza collegare alcun cavo, il led integrato rimane correttamente spento.
nel momento in cui vado ad inserire un cavo (anche non collegato niente) nel pin 39, il led inizia lampeggiare. utilizzando il monitor seriale vedo inoltre che viene stampato "premuto" e "rilasciato" in maniera casuale.
pensando fosse un difetto della scheda ho provato caricare il lo sketch su un'altra scheda uguale ma ho ottenuto lo stesso comportamento, quindi penso sia un problema del codice.

qualcuno può auitarmi per favore?

grazie mille
ciao
fabio

cosa c'è collegato quel cavo? un pulsante che chiude vcc? hai messo una resistenza pull-down?


Arduino Forum > International > Italiano > Generale (Moderator: leo72) > Problema entrate digitali Mega


arduino

Comments

Popular posts from this blog

Error: ‘for’ loop initial declarations are only allowed in C99 or C11 mode - Raspberry Pi Forums

class MPU6050 has no member named begin

missing filename after '-o'