我正在尝试将霍尼韦尔气流传感器(型号 HAFBSS0200C4AX3 - 具有 I2C 3.3V 输出)与我的 Raspberry Pi3 连接,但我无法从传感器接收真实值(即使我强烈呼吸,这些值总是太低)传感器..)
这里是传感器数据表(https://www.mouser.com/ds/2/187/honeywell-sensing-airflow-zephyr-haf-series-digita-740409.pdf)。
我尝试运行以下脚本:
#include <stdio.h>
#include <wiringPi.h>
#include <wiringPiI2C.h>
int main (int argc, char *argv[])
{
int fd;
float data;
wiringPiSetup () ;
fd=wiringPiI2CSetup (0x49) ;
if(fd==-1)
{
printf("Can't setup the I2C device\n");
return -1;
}
else
{
for (;;)
{
data=wiringPiI2CRead(fd);
if(data==-1)
{
printf("No data\n");
//return -1;
delay(1000);
}
else
{
//print data
printf("data=%f\n", 200*(
((data/16383)-0.5)/0.4));
delay(1000);
}
}
}
return 0;
}
输出值太低...数据表说我应该读取 2 个字节(第一个 LSB,然后是 MSB),但我不知道我的脚本是否这样做..(我不是 I2C 专家)..
请问你能帮帮我吗?提前致谢!!