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: