“数字光线”的版本间的差异

来自Labplus盛思维基百科
跳转至: 导航搜索
技术参数
MicroPython示例
第31行: 第31行:
 
<pre style="color:blue">
 
<pre style="color:blue">
 
from microbit import *
 
from microbit import *
 +
import math
 +
display.off()
  
def Distance():
+
def getAmbientLight():
    i2c.write(0x0b, bytearray([1]))
+
  i2c.write(0x23, bytearray([0x10]))
    sleep(2)
+
  sleep(120)
    temp=i2c.read(0x0b,2)
+
  t=i2c.read(0x23, 2)
    distanceCM=(temp[0]+temp[1]*256)/10
+
  sleep(10)
    return distanceCM
+
  return t[0]*256 + t[1]
  
# test code
+
 
 +
 
while True:
 
while True:
     print(Distance())
+
     print('Light:',getAmbientLight())
     sleep(100)
+
     sleep(500)
 
+
 
 
</pre>
 
</pre>
  
 
=== 图形化示例 ===
 
=== 图形化示例 ===

2017年12月19日 (二) 14:20的版本

概述

基于BH1750数字型光照度传感器集成IC。用于检测环境光线的强度,可对广泛的亮度进行1勒克斯的高精度测定。采用I2C通讯方式,操作简便。

技术参数

  • 工作电压:3.3V~5V
  • 接口方式:I2C接口
  • 光照度范围:0-65535 lx
  • 直接输出对应亮度的数字值
  • 光源依赖性弱(白炽灯,荧光灯,卤素灯,白光LED,日光灯)
  • 受红外线影响很小
  • 最小变动在±20%
  • 模块尺寸:

引脚定义

VCC 电源
SDA I2C数据
SCL I2C时钟
GND

使用教程

连接示意图

Arduino示例

MicroPython示例

from microbit import *
import math
display.off()

def getAmbientLight():
  i2c.write(0x23, bytearray([0x10]))
  sleep(120)
  t=i2c.read(0x23, 2)
  sleep(10)
  return t[0]*256 + t[1]

  
 
while True:
    print('Light:',getAmbientLight())
    sleep(500)
  

图形化示例