Luat 功能开发教程(十三) 生成二维码

二维码

二维条码/二维码(2-dimensional bar code)是用某种特定的几何图形按一定规律在平面(二维方向上)分布的、黑白相间的、记录数据符号信息的图形;在代码编制上巧妙地利用构成计算机内部逻辑基础的“0”、“1”比特流的概念,使用若干个与二进制相对应的几何形体来表示文字数值信息,通过图象输入设备或光电扫描设备自动识读以实现信息自动处理:它具有条码技术的一些共性:每种码制有其特定的字符集;每个字符占有一定的宽度;具有一定的校验功能等。同时还具有对不同行的信息自动识别功能、及处理图形旋转变化点。 协议簇来进行通信。


API说明

下方接口用于生成二维码信息与屏幕显示

API接口描述
qrencode.encode()二维码编码,返回生成的二维码宽度和数据
disp.clear()清除屏幕显示的内容
disp.update()将数据显示在屏幕
disp.putqrcode()放置二维码

详细的API介绍见[disp(ui)与qrencode]API章节
disp API章节
qrencode API章节

实现流程

  • 生成二维码
    通过qrencode.encode() 生成二维码信息。
  • 显示二维码
    通过disp.putqrcode()将二维码显示在屏幕上
  • 扫码
    利用扫码软件扫描二维码

示例

相关实例程序在脚本库的demo\qrencode文件夹下

生成二维码

以\script_LuaTask_V2.3.8\demo\qrencode\ 为例

str = "http://doc.openluat.com/home"
local width, data = qrencode.encode(str) --width,二维码实际宽度;data,二维码数据

以上代码就可以生成doc社区的二维码,width表示生成的二维码信息的宽度,data表示生成的二维码数据

显示二维码

接下来我们用disp.putqrcode()这个接口将刚才生成的二维码数据显示在屏幕上

local WIDTH, HEIGHT = 128,160 --屏幕分辨率
local displayWidth = 100 --二维码显示宽度
local x, y =(WIDTH-displayWidth)/2, (HEIGHT-displayWidth)/2 --屏上放置二维码坐标,居中显示
disp.clear()             --清除屏幕上的内容屏幕
disp.putqrcode(data,width,displayWidth,x,y)--将二维码放置在屏幕上
disp.update() --刷新屏幕,将二维码显示出来,只有调用此接口后,放置的二维码才可以显示在屏幕上面

扫码

后面就可以使用扫码软件来扫描生成的二维码,如图所示
微信图片_20210410154400.jpg

常见问题

为什么烧录了生成二维码的demo以后运行会报错

固件不同,支持的功能也不同,有些固件不支持生成二维码,需要换用支持生成二维码的固件来使用,具体固件说明请点击下方链接进行查看
https://doc.openluat.com/wiki/21?wiki_page_id=2067

相关资料以及购买链接

相关开发板购买链接
Air724UG开发板购买链接
Air724 开发板使用说明

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值