物联网开发笔记(30)- 使用Micropython开发ESP32开发板之控制240x240的oled屏幕显示二维码(ST7789芯片)_esp32 mricopython st7789

https://github.com/JASchilz/uQR

三、代码

from uQR import QRCode  # 导入二维码模块
from machine import Pin, SPI
import st7789_new  # 导入屏幕驱动


tft = st7789_new.ST7889_Image(SPI(2, 80000000), dc=Pin(2), cs=Pin(5), rst=Pin(15))  #通过SPI来创建屏幕
tft.fill(st7789_new.color565(255, 255, 255))  # 背景设置为白色


qr = QRCode(border=2)  # 创建对象
qr.add_data('Hello World!')  # 这里是要生成的二维码,被扫码之后的得到的内容
matrix = qr.get_matrix()  # 得到的是一个25x25的列表

row_len = len(matrix)
col_len = len(matrix[0])

# 放大倍数
# 默认情况下输出的二维码太小25x25,可以按照你实际屏幕的大小进行缩放,当前我的240x240屏幕缩放8倍正合适
scale_rate = 8

for row in range(row_len * scale_rate):  # 原来默认的25行乘以8
    for col in range(col_len * scale_rate):  # 原来默认的25列乘以8
        if matrix[row//scale_rate][col//scale_rate]:  # 发送一个点的信息给屏幕
            tft.pixel(row, col, st7789_new.color565(0, 0, 0))
        else:
            
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值