boas

estou num projecto escolar, estou com um problema, ao usar dois sensores ao mesmo tempo. 

Enquanto separados funcionam correctamente, juntos não.
Crio código para cada um, e funcionam, mas depois ao juntar os códigos já não.
Que devo de fazer? é o sensor de pressao e temperatura
Ai vai o código que criei

Tags: sensores

Exibições: 138

Anexos

Responder esta

Respostas a este tópico

Bom, ajuda se dizer qual são os tipos dos sensores, ou link para alguma informação para eles...

Você deve também dar um intervalo para o AD do ATMEGA entre as leituras, pois se ler duas portas em sequência, o AD pode dar valores incorretos. põe um delay de 1 delay(1), entre as leituras.

nao sei o nome do sensor de pressão, mas sei de temperatura lm35

fazerei o tal delay

Não experimentei  mas tente assim: /*

Programa criado por João Miguel Correia
2013

Projecto Escolar - CanSat


*/


#define kpa2atm 0.00986923267
 

// definição dos pinos
int pressurePin = 1; //dizer que o sensor de pressão estará no pino Analógico, com o valor dado à variável
int SENSOR = 0;
 
// variáveis

//temp
float S = 0;
float T = 0;

//pressão
int valordepressao;

float pkPa; // pressão em kPa
float pAtm; // pressão em Atm

// float -> a variável contém um valor décimal (normalmente usado para as entradas analógicas)


void setup(){
 
Serial.begin(9600); //Configurando taxa de transferência porta serial
Serial.println("Lendo Temperatura e Pressão...");//imprime na tela


}
void loop () {
 
//temp
S = analogRead(SENSOR);//Lê porta analógica e armazena em S
delay(200);
T = (S * 500)/1023;//Conversão do sinal lido em Temperatura
 


Serial.print(T);//Imprime o valor de T (temperatura)
Serial.println(" ºC");
delay(200);
//pressão

  /* get the pressure */
  valordepressao = analogRead(pressurePin); // dar o valor da pressão à variável
  delay(200);
  pkPa = ((float)valordepressao/(float)1023+0.095)/0.009;
  pAtm = kpa2atm*pkPa;
 

 
  // enviar o valor da varíavel, para o ecrã
 
Serial.print(pkPa);
Serial.println(" kPa ");
  Serial.print(pAtm);
  Serial.println(" Atm ");

Serial.println(" ");

delay(200);


}

RSS

Publicidade

Convide um amigo para o Lab!

 Loja Lab de Garagem

curso gratis de arduino

Base à vácuo

De: R$ 163,20

Por: R$ 149,00

Ou em até 18x de

R$ 9,93

Programador USB AVR - Pololu

De: R$ 95,00

Por: R$ 89,00

Ou em até 18x de

R$ 5,93

Protoboard - 1890 pinos

De: R$ 89,00

Por: R$ 79,00

Ou em até 18x de

R$ 5,26

GPS Receptor

De: R$ 180,00

Por: R$ 154,00

Ou em até 18x de

R$ 10,26

© 2014   Criado por Marcelo Rodrigues.

Badges  |  Relatar um incidente  |  Termos de serviço