Pages: [1]   Go Down
Author Topic: Problemas com as portas do Arduino  (Read 532 times)
0 Members and 1 Guest are viewing this topic.
Joinville, SC, Brasil
Offline Offline
Newbie
*
Karma: 0
Posts: 12
View Profile
WWW
 Bigger Bigger  Smaller Smaller  Reset Reset

Olá pessoal!

Estou enfrentando um problema! Estava escrevendo um programa que ao ler uma entrada como RIGH fazia com que um led acendesse. Mas percebi que o led acendia e apagava sem seguir a lógica do programa. Segue um exemplo:

int ledPin = 13;
int input = 7;
int val;

void setup()
{

  pinMode(ledPin, OUTPUT);
  pinMode(input, INPUT);
  Serial.begin(9600);
}

void loop()  
{
  val = digitalRead(input);
  digitalWrite(ledPin, val);  
  Serial.println(val);
  delay(1000);              
}

Esse programa deveria fazer o led acender se o botão que está na porta 7 fosse pressionado, certo? Mas  não é o que acontece. Ele parece estar jogando valores aleatórios.
Então testei o programa usando a porta digital 2 para a leitura do botão. Nesse caso o que achei estranho foi que quando a chave esta solta o led acende e quando ela está pressionada o led apaga.

Alguém sabe o que está acontecendo? Estou começando a achar que estraguei alguma coisa  :-/
Logged


Joinville, SC, Brasil
Offline Offline
Newbie
*
Karma: 0
Posts: 12
View Profile
WWW
 Bigger Bigger  Smaller Smaller  Reset Reset

Solucionei o problema. Estava usando o botão sem um resistor para realizar o pull-down.
Logged


0
Offline Offline
Newbie
*
Karma: 0
Posts: 48
http://arduinors.net
View Profile
WWW
 Bigger Bigger  Smaller Smaller  Reset Reset

Amigo, sempre aconselha-se a usar um pull-up ao invés de um pull-down, assim testa-se invertido no sw, e vc estará usando o + da fonte, e usando apenas o terra d Arduino. Isso é importante pois o Arduino tem limite de corrente nos seus pinos..

Att
Logged


Pages: [1]   Go Up
Jump to: