Я строю библиотеку для извлечения данных от датчика adafruit (sht31d)Ошибка датчика. Проблема с заменой библиотеки Arduino's Wire
Показание температуры кажется точным, но влажность не изменяется.
Мой отлаживать:
temp: 23.36 humid: 0.39
Следующий метод вызывается в main.c
(метод из sht31.c):
bool readTempHum(void)
{
uint8_t readbuffer[6];
writeCommand(SHT31_MEAS_HIGHREP);
_delay_ms(500);
for (uint8_t i=0; i<6; i++)
{
readbuffer[i] = read8(SHT31_DEFAULT_ADDR);
}
uint16_t ST, SRH;
ST = readbuffer[0];
ST <<= 8;
ST |= readbuffer[1];
SRH = readbuffer[3];
SRH <<= 8;
SRH |= readbuffer[4];
double stemp = ST;
stemp *= 175;
stemp /= 0xffff;
stemp = -45 + stemp;
temp = stemp;
double shum = SRH;
shum *= 100;
shum /= 0xFFFF;
humidity = shum;
return true;
}
To view the full implementation please click here
Благодаря
«_far, чтобы соответствовать правильному», каков ожидаемый результат? – Linus
Является ли контакт 2 из 'sht31' связан с' VSS'? – LPs
@ Linus Просто больше вариаций со временем. Если я положу палец на датчик, чтобы сделать его более теплым, он резко изменит значение, а не привяжется к значению. Это необычно для моего опыта работы с датчиками. – SensationSama