collapse

* Links de Robótica

* Posts Recentes

Ideias para construir um quadrúpede simples por Njay
[Hoje às 03:04]


Ajuda com TRIAC por senso
[17 de Novembro de 2017, 18:00]


TV LG White Screen por almamater
[15 de Novembro de 2017, 08:37]


Pergunta sobre prototipagem ( Pesquisa ) por luisjustin
[14 de Novembro de 2017, 23:22]


Medir Agua que está no Poço por Njay
[14 de Novembro de 2017, 13:28]


Amplificador audio por beirao
[12 de Novembro de 2017, 23:43]


Power_OK Enermax por edeweld
[12 de Novembro de 2017, 17:15]


Driver motor por beirao
[11 de Novembro de 2017, 17:40]


Preciso de uma fonte de corrente constante ? por samc
[09 de Novembro de 2017, 14:18]


Pressoestato 0-10V por artur36
[07 de Novembro de 2017, 23:22]

Autor Tópico: ajuda no codigo  (Lida 973 vezes)

0 Membros e 1 Visitante estão a ver este tópico.

Offline clauiocbamt

  • Mini Robot
  • *
  • Mensagens: 18
ajuda no codigo
« em: 21 de Maio de 2011, 18:57 »
olá pessoal preciso de ajuda nesse codigo, por que não esta dando certo alguem me ajuda ai
é o seguite galera preciso atraves de duas entradas fotoacoplada ativar e desativar uma saida
#define rele1 8
#define fotoac1 2
#define fotoac2 3

void setup(){

pinMode ( rele1 , OUTPUT);
pinMode (fotoac1, INPUT);
pinMode (fotoac1, INPUT);
}


void loop(){

if ( fotoac1 == LOW){

rele1 = HIGH;

if (fotoac2 == LOW)

rele2 = LOW;
}
}
as entradas estao sempre em nivel alto, e para mudar o estado da saida a configuração do fotoacoplador esta para mandar nivel baixo para a entrada toda vez que é acionado, por um periodo de 100ms, e uma vez ativada a saida esta devera sem mantida até a chegada de um novo pulso em nivel baixo , preciso de ajuda , agradeço quem puder me ajudar (desenho em anexo)



Offline Njay

  • Mini Robot
  • *
  • Mensagens: 3.136
    • Tróniquices
Re: ajuda no codigo
« Responder #1 em: 21 de Maio de 2011, 19:20 »
Falta o circuito eléctrico...

Offline clauiocbamt

  • Mini Robot
  • *
  • Mensagens: 18
Re: ajuda no codigo
« Responder #2 em: 21 de Maio de 2011, 19:28 »
o circuito ta junto com o post


fiz essas aletarações e não funcionou ainda




int rele2 = 8;
#define fotoac1 2
#define fotoac2 3

void setup(){

pinMode ( rele2 , OUTPUT);
pinMode (fotoac1, INPUT);
pinMode (fotoac1, INPUT);
}


void loop(){

if (digitalRead(fotoac1 == LOW)){

digitalWrite (rele2 , HIGH);
}

if (digitalRead(fotoac2 == LOW)){

digitalWrite(rele2,LOW);
}
}

Offline senso

  • Global Moderator
  • Mini Robot
  • *****
  • Mensagens: 9.400
  • Helpdesk do sitio
Re: ajuda no codigo
« Responder #3 em: 21 de Maio de 2011, 22:07 »
Porque estás a compara o numero do pino com HIGH e não o valor do digitalRead do pino..
É assim:
Código: [Seleccione]
int rele2 = 8;
#define fotoac1 2
#define fotoac2 3

void setup(){

pinMode ( rele2 , OUTPUT);
pinMode (fotoac1, INPUT);
pinMode (fotoac1, INPUT);
}


void loop(){

if (digitalRead(fotoac1) == LOW){

digitalWrite (rele2 , HIGH);
}

if (digitalRead(fotoac2) == LOW){

digitalWrite(rele2,LOW);
}
}
[code]

E usa as tags [code ] e [/code ] sem espaços para meteres o teu código.
Avr fanboy

Offline clauiocbamt

  • Mini Robot
  • *
  • Mensagens: 18
Re: ajuda no codigo
« Responder #4 em: 21 de Maio de 2011, 23:00 »
obrigado senso , deu certo , muito obrigado pela dica

Offline clauiocbamt

  • Mini Robot
  • *
  • Mensagens: 18
Re: ajuda no codigo
« Responder #5 em: 21 de Maio de 2011, 23:02 »
depois que me liguei que  digitalRead() é uma função que recebe parametros do pino para leitura mais valeu

Offline Njay

  • Mini Robot
  • *
  • Mensagens: 3.136
    • Tróniquices
Re: ajuda no codigo
« Responder #6 em: 22 de Maio de 2011, 10:20 »
o circuito ta junto com o post

Ups, ok, peço desculpa então.