BH1750FVI是一款IIC接口的数字型光强度传感器集成电路。下面介绍一下其在树莓派下的用法。
1、环境要求GY30模块(BH1750FVI传感器)树莓派Raspbian系统python-smbusIIC开启
启动IIC驱动的方法:运行sudoraspi-config进入InterfacingOptions高级设置,将SPI与I2C设置为Enable后重启系统。
2、安装python-smbus这个安装会附带安装i2c-tools,省的单独安装了
1、创建代码文件bh1750.c
#include#include#include#include#defineI2C_ADDR0x23intmain(void){intfd;charbuf[3];charval,value;floatflight;fd=open("/dev/i2c-1",O_RDWR);if(fd<0){printf("打开文件错误:%s\r\n",strerror(errno));return1;}if(ioctl(fd,I2C_SLAVE,I2C_ADDR)<0){printf("ioctl错误:%s\r\n",strerror(errno));return1;}val=0x01;if(write(fd,&val,1)<0){printf("上电失败\r\n");}val=0x11;if(write(fd,&val,1)<0){printf("开启高分辨率模式2\r\n");}usleep(200000);if(read(fd,&buf,3)){flight=(buf[0]*256+buf[1])*0.5/1.2;printf("光照度:%6.2flx\r\n",flight);}else{printf("读取错误\r\n");}}