357
chk = DHT22_IN();
delay_us(2);
if(chk == TRUE)
{
return 1;
}
delay_us(80);
chk = DHT22_IN();
if(chk == FALSE)
{
return 2;
}
delay_us(80);
for(s = 0; s <= 4; s += 1)
{
values[s] = DHT22_get_byte();
}
DHT22_DIR_OUT();
DHT22_OUT_HIGH();
for(s = 0; s < 4; s++)
{
check_sum += values[s];
}
if(check_sum != values[4])
{
return 3;
}
else
{
return 0;
}
}
main.c
#include <msp430.h>
#include "delay.h"
#include "SW_I2C.h"
#include "PCF8574.h"
#include "lcd.h"
#include "DHT22.h"
const unsigned char symbol[8] =
{
0x00, 0x06, 0x09, 0x09, 0x06, 0x00, 0x00, 0x00
};