Let's Do 第3期任务提交
很开心能够参加这次的Let's Do 第3期活动,
这次我选择的开发板是
基础任务:
1 编程实现按键状态的采集
import board import digitalio import time led = digitalio.DigitalInOut(board.LED) led.direction = digitalio.Direction.OUTPUT button = digitalio.DigitalInOut(board.D0) button.switch_to_input(pull=digitalio.Pull.UP) while True: print(button.value) time.sleep(0.1) if not button.value: led.value = True else: led.value = False
这里的button = digitalio.DigitalInOut(board.D5)
修改括号中的引脚到自己需要的就可以,比如如果用板子上的按键D0,就把D5改成D0就可以。
2 编程实现数字光传感器BH1750的数据读取
import time import board import adafruit_bh1750 i2c = board.I2C() sensor = adafruit_bh1750.BH1750(i2c) while True: print("%.2f Lux" % sensor.lux) time.sleep(1)
这个就很简单,把传感器接到板子的IIC接口,运行文档里的示例就可以。
3 基于屏幕驱动函数实现字符的显示,例如显示Hello EEPW & DigiKey;也可显示自己喜欢的名言警句
这里我选择的是显示“Hello EEPW & DigiKey”。一行显示不开,分两行显示。
import board import terminalio from adafruit_display_text import outlined_label text = "Hello EEPW\n & DigiKey!" text_area = outlined_label.OutlinedLabel( terminalio.FONT, text=text, color=0xFF0000, outline_color=0x00FFff, outline_size=1, padding_left=2, padding_right=2, padding_top=2, padding_bottom=2, scale=3, ) text_area.anchor_point = (0, 0) text_area.anchored_position = (10, 24) board.DISPLAY.root_group = text_area while True: pass
这里注意要先下载adafruit_display_text库
4 实现光强信息的屏幕显示
任务4就是对前面的综合运用。
import time import board import adafruit_bh1750 import terminalio from adafruit_display_text import outlined_label import math i2c = board.I2C() sensor = adafruit_bh1750.BH1750(i2c) text = "Hello EEPW\n & DigiKey!" text_lux = outlined_label.OutlinedLabel( terminalio.FONT, text=text, color=0xFF0000, outline_color=0x00FFff, outline_size=1, padding_left=2, padding_right=2, padding_top=2, padding_bottom=2, scale=3, ) text_lux.anchor_point = (0, 0) text_lux.anchored_position = (10, 10) board.DISPLAY.root_group = text_lux while True: print("%.2f Lux" % sensor.lux) lux="%.2f Lux\n" % sensor.lux ev="%.2f Evhj" %(2 + math.log(float(sensor.lux) / 10, 2)) text_lux.text= lux + ev time.sleep(1)
感谢EEPW和得捷联合举办这次活动,通过这次活动我又加深了对circuitPython的了解和喜爱,学习了bh1750光线传感器的使用和使用circuitPython驱动ST7789屏幕显示的方法,收益良多。