【试用测评】pinpong板——oled屏用二维码显示传感器信息
【pinpong板】
PinPong Board是一款专为学习Python语言而设计的课堂类教学主板,可以满足用户所有需求,不仅可以用来制作智能检测设备,还可以制作成无线通讯设备,实现智能家居以及人工智能等。
一、产品特点
1、PinPong Board完全兼容传统的Arduino,还在Arduino原有功能的基础上集成了2路电机驱动、OLED显示、红外接收/发射、光线传感器、声音传感器、温湿度传感器、陀螺仪等新型传感器等硬件功能。
2、WiFi与局域网相连接可以实现无线下载程序功能,让你摆脱USB线的束缚。远距离的更新程序,同一个局域网内的设备可以进行无线传输,主从机设置,甚至一个PC端同时控制局域网内的所有设备。
3、基于Python编程,提供PinPong使用教程及大量的example,方便学习使用Python驱动硬件。
4、多元化编程方式和编程平台,可依据学习情况选择Python图形化编程、Python语言编程不同的编程方式;Mind+、Python等编程平台为开发者提供了极大的自由度和支持准备。
【qrcode】
qrcode 是一个二维码库,他可以生成二维码,支持设置二维码图像的尺寸等信息。
【程序代码】
import qrcode,time
from pinpong.board import Board,Board,Pin,ADC
from pinpong.libs.dfrobot_ssd1306 import SSD1306_I2C #导入ssd1306库
import numpy as np
from PIL import Image
from pinpong.libs.dfrobot_aht20 import AHT20
Board("PinPong board").begin()#初始化,选择板型和端口号,不输入端口号则进行自动识别
adc3 = ADC(Pin(Pin.A3)) #将Pin传入ADC中实现模拟输入(电位器)
adc1 = ADC(Pin(Pin.A1)) #将Pin传入ADC中实现模拟输入(光线)
adc2 = ADC(Pin(Pin.A2)) #将Pin传入ADC中实现模拟输入(声音)
aht = AHT20()#读取温湿度传感器检测的温度和湿度
oled=SSD1306_I2C(width=128, height=64) #初始化屏幕,传入屏幕像素点数
img_file = r'image1.png'
while True:
# 实例化QRCode生成qr对象
qr = qrcode.QRCode(
version=1,
error_correction=qrcode.constants.ERROR_CORRECT_H,
box_size=1,
border=1
)
if not aht.wait_flag:
aht.measure_template_humidity()
buf = aht.get_template_humidity()
if buf == -1:
data = '未获取到温湿度信息'
else:
data ='湿度:'+str(buf)+'%RH;温度信息:'+str(buf)+'℃;'
data=data+ '环境声音响度:'+str(adc2.read())+';环境光线强度:'+str(adc1.read())+';电位器值:'+str(adc3.read())
# 传入数据
qr.add_data(data)
qr.make(fit=True)
# 生成二维码
img = qr.make_image()
# 保存二维码
img.save(img_file)
img = Image.open(img_file)
img_width, img_height = img.size #获取img的尺寸
pixels = np.array(img.convert('L')) #转成灰度值喂给array,pixels是个存灰度值的数组
# 展示二维码
for i in range(img_height):
for j in range(img_width):
print(pixels)
if pixels==255:
oled.pixel(i,j,1)
oled.show() #显示生效
time.sleep(3)
oled.fill(0)
【生成二维码】
【微信-扫一扫】
云天老师测试128*64图片是否可以显示成功?我测试没法失败
页:
[1]