Autor Tema: Ayuda con dht11  (Leído 1166 veces)

0 Usuarios y 1 Visitante están viendo este tema.

Desconectado eloysn

  • PIC10
  • *
  • Mensajes: 16
Ayuda con dht11
« en: 23 de Mayo de 2012, 10:48:03 »
Hola he estado revisando este post     http://www.todopic.com.ar/foros/index.php?topic=35680.0  en que muestran el codigo para manejar este sensor y mi duda es cuando el sensor captura los byte ,esto lo hace bit a bit ,un 0 mantiene la linea en alto durante 28 microseg y un 1 en alto durante 70 microseg y se capturan con esta rutina:

byte leer_dht_dat()
{
byte i = 0;
 byte result=0;
 for (i=0; i< 8; i++) {
  //We enter this during the first start bit (low for 50uS) of the byte
  //Next: wait until pin goes high
  while(input(dht11)==0);
  delay_us(30);
  if (input(dht11)==1)//Was: if(PINC & _BV(dht_PIN))
  {
  result |=(1<<(7-i));
  }
  while (input(dht11)==1);
  //Was: while((PINC & _BV(dht_PIN)));
 }
 //end of "for.."
 return result;
}

Lo que no entiendo, es como sabemos que es lo que manda el sensor,si tanto el valor  1 o  0 consiste en mantener la linea en alto un determinado tiempo ,gracias


 

anything