【Follow me第二季第1期】基础任务二:监测环境温度和光线
[复制链接]
本帖最后由 nemon 于 2024-8-31 19:06 编辑
基础任务二的要求是“监测环境温度和光线,通过板载LED展示舒适程度”。
依旧使用adafruit_circuitplayground库,通过temperature和light可以读到温度和亮度,然后转换一下。
我的想法是,用炫彩led的亮度来表示环境亮度、用点亮的数量来表示温度。
代码也简单:
import time,math
from adafruit_circuitplayground import cp as my_cp
def task_2_temperature_light():
LED_CNT = 10
t = my_cp.temperature
l = my_cp.light
b = ( 1-min(255,l)/255 )*0.5
b = 0.3 * min( math.log(l)/math.log(10) ,2 )/2
n = min(LED_CNT, int( LED_CNT*t/50 ) )
my_cp.pixels.brightness = b
for i in range(LED_CNT):
if i>n:
my_cp.pixels[i+(10-LED_CNT)]=( 0,0,0 )
else:
my_cp.pixels[i+(10-LED_CNT)]=( 25*n,0,255-10*n )
time.sleep(0.1)
#print( ','.join([str(x) for x in [t,l,b,n]]))
print( {'t':t,'l':l,'b':b,'n':n})
while True:
task_2_temperature_light()
但是效果不太明显,于是把数据打出来看了下,发现温度亮度变化不大,所以现象不够明显。
|