说实话,很久没有登录 ICKEY 了,因为之前的贴子写好以后,好久都没有办法看到,然后审核用了很久,再加上工作内容繁重,就没有上来写一些文档造福群友.在群里看到大家天天都在申请板子,看到论坛上好多开箱教程,很少看到一些好玩儿的教程,既然是在玩儿板子,那么就要玩儿的 high 才有更多人加入啊~
好吧,闲话不多说,我来说说我为何要做一个流明测试仪呢?
话说我的屏幕我总觉得很亮,我的同事的屏幕调到最亮也是很暗, 但是他觉得他的比我的亮, 我们午饭争执了半天,都无法得出结论,心里想如果有个流明测试仪就好了,但是淘宝一搜就决定算了,太贵了,那能否自己做个流明测试仪呢?
想到这个就开始翻我的抽屉~
我记得很早以前买过一个GY-30的模块, 于是搜了一下它的芯片,看了一下 datasheet, 发现实现起来还是挺简单的,因为它这个模块是一个 I2c 的设备.
芯片说明:
芯片是bh1750fvi,名字好奇怪, 是数字光强度传感器. 该模块价格很低,而且是个廉价的环境光强度测量的模块, 光线强度可以从内置的16位 ADC读取出来进行转换.
这种装置通常用于移动电话、液晶电视和数码相机里面,看起来好像挺高大上的.
这货是这样的:
它是采用I2C接口的,对于树莓派来说,连接到树莓派只需要四根线.。
接线图:
如果不会连, 我也用 frizing 画了一个这个...请忽略里面的树莓派,那个树莓派是早先的 B 版本.
但是前面的 I2C 引脚没有变化,所以直接拿来用了.
好了,接好线,就是烧录系统和写代码测试了.
烧录系统版本: 2017-08-16-raspbian-stretch.img
烧录的方法: 我是 Mac book pro, 所以用了一个叫做 ethcher 的软件完成的烧录,具体大家自行百度一下.这个软件非常方便的.也有 windows 版本,大家可以自己下载试试.
#####################系统设置开始##############################
使用 pi 和 raspberry 登陆后,使用 gpio readall 读取所有引脚信息,发现 SDA 和 SCL,然后关机接好设备,
不要带电插拔是个好习惯...哈哈
然后启动后记得到树莓派上开启 I2C,两种方法:
1. 直接修改/boot/config.txt 文件
加入这个: dtparam=i2c_arm=on
如果已经有了这个,去掉前面的#号.让后重启系统.
2. 通过系统自带的 raspi-config 工具改,在系统上打开一个终端,然后输入:
$sudo raspi-config
选5 然后回车,继续:
然后 P5继续,按照提示选择 yes 就好了.
----------------------------------------------------------------------------
接下来,让我们检测一下是否检测到了i2c 设备:
在终端中输入:
$i2cdetect -y 1
效果如果如图显示,那么恭喜你,成功完成了一半儿了.
好了,说明设备已经被识别出来了, 0x23是这个 i2c 设备的地址.
接下来就是写代码,我是用 vim.tiny 这个编辑器来进行操作的,基本操作方法和 vim 一样.
$sudo vim.tiny gy-30.py
然后填入下面的代码,记得注意缩进哦.!
#!/usr/bin/python
import smbus
import time
#定义一些常量
DEVICE = 0x23 # 设别I2C 地址
POWER_DOWN = 0x00 # No active 的状态
POWER_ON = 0x01 # Power on 状态
RESET = 0x07 # Reset 数据寄存器的值
# 连续开始通过4lx 分辨率进行测量. 时间为 16ms.具体内容看手册.
CONTINUOUS_LOW_RES_MODE = 0x13
# 连续开始通过1流明分辨率进行测量. 时间为 120ms
然后保存退出后.通过:
$sudo python gy-30.py
然后就会看到如下内容:
现在就和同事去测量一下,后来比对的结果:
1. 同事的电脑开启状态:
他的电脑屏幕:
我的电脑屏幕:
妥妥的打他的脸啊..哈哈,下周午餐有着落了!
---------------
签名: 我是骑驴玩儿漂移~!转载请注明出处!谢谢!
码字不易,请大神们请喷~哈哈
---------------
说实话,很久没有登录 ICKEY 了,因为之前的贴子写好以后,好久都没有办法看到,然后审核用了很久,再加上工作内容繁重,就没有上来写一些文档造福群友.在群里看到大家天天都在申请板子,看到论坛上好多开箱教程,很少看到一些好玩儿的教程,既然是在玩儿板子,那么就要玩儿的 high 才有更多人加入啊~
好吧,闲话不多说,我来说说我为何要做一个流明测试仪呢?
话说我的屏幕我总觉得很亮,我的同事的屏幕调到最亮也是很暗, 但是他觉得他的比我的亮, 我们午饭争执了半天,都无法得出结论,心里想如果有个流明测试仪就好了,但是淘宝一搜就决定算了,太贵了,那能否自己做个流明测试仪呢?
想到这个就开始翻我的抽屉~
我记得很早以前买过一个GY-30的模块, 于是搜了一下它的芯片,看了一下 datasheet, 发现实现起来还是挺简单的,因为它这个模块是一个 I2c 的设备.
芯片说明:
芯片是bh1750fvi,名字好奇怪, 是数字光强度传感器. 该模块价格很低,而且是个廉价的环境光强度测量的模块, 光线强度可以从内置的16位 ADC读取出来进行转换.
这种装置通常用于移动电话、液晶电视和数码相机里面,看起来好像挺高大上的.
这货是这样的:
它是采用I2C接口的,对于树莓派来说,连接到树莓派只需要四根线.。
接线图:
如果不会连, 我也用 frizing 画了一个这个...请忽略里面的树莓派,那个树莓派是早先的 B 版本.
但是前面的 I2C 引脚没有变化,所以直接拿来用了.
好了,接好线,就是烧录系统和写代码测试了.
烧录系统版本: 2017-08-16-raspbian-stretch.img
烧录的方法: 我是 Mac book pro, 所以用了一个叫做 ethcher 的软件完成的烧录,具体大家自行百度一下.这个软件非常方便的.也有 windows 版本,大家可以自己下载试试.
#####################系统设置开始##############################
使用 pi 和 raspberry 登陆后,使用 gpio readall 读取所有引脚信息,发现 SDA 和 SCL,然后关机接好设备,
不要带电插拔是个好习惯...哈哈
然后启动后记得到树莓派上开启 I2C,两种方法:
1. 直接修改/boot/config.txt 文件
加入这个: dtparam=i2c_arm=on
如果已经有了这个,去掉前面的#号.让后重启系统.
2. 通过系统自带的 raspi-config 工具改,在系统上打开一个终端,然后输入:
$sudo raspi-config
选5 然后回车,继续:
然后 P5继续,按照提示选择 yes 就好了.
----------------------------------------------------------------------------
接下来,让我们检测一下是否检测到了i2c 设备:
在终端中输入:
$i2cdetect -y 1
效果如果如图显示,那么恭喜你,成功完成了一半儿了.
好了,说明设备已经被识别出来了, 0x23是这个 i2c 设备的地址.
接下来就是写代码,我是用 vim.tiny 这个编辑器来进行操作的,基本操作方法和 vim 一样.
$sudo vim.tiny gy-30.py
然后填入下面的代码,记得注意缩进哦.!
#!/usr/bin/python
import smbus
import time
#定义一些常量
DEVICE = 0x23 # 设别I2C 地址
POWER_DOWN = 0x00 # No active 的状态
POWER_ON = 0x01 # Power on 状态
RESET = 0x07 # Reset 数据寄存器的值
# 连续开始通过4lx 分辨率进行测量. 时间为 16ms.具体内容看手册.
CONTINUOUS_LOW_RES_MODE = 0x13
# 连续开始通过1流明分辨率进行测量. 时间为 120ms
然后保存退出后.通过:
$sudo python gy-30.py
然后就会看到如下内容:
现在就和同事去测量一下,后来比对的结果:
1. 同事的电脑开启状态:
他的电脑屏幕:
我的电脑屏幕:
妥妥的打他的脸啊..哈哈,下周午餐有着落了!
---------------
签名: 我是骑驴玩儿漂移~!转载请注明出处!谢谢!
码字不易,请大神们请喷~哈哈
---------------