云天 发表于 2021-5-1 15:36:24

【试用测评】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)
【生成二维码】



【微信-扫一扫】


gray6666 发表于 2021-5-5 22:15:53

云天老师测试128*64图片是否可以显示成功?我测试没法失败
页: [1]
查看完整版本: 【试用测评】pinpong板——oled屏用二维码显示传感器信息