ESP32C3 LuatOS RC522①写入数据并读取M1卡

LuatOS RC522官方示例

官方示例没有针对具体开发板,现以ESP32C3开发板为例。

选用的RC522模块

ESP32C3-CORE开发板

注意ESP32C3的 SPI引脚位置,SPI的id=2

示例代码

Lua 复制代码
-- LuaTools需要PROJECT和VERSION这两个信息
PROJECT = "helloworld"
VERSION = "1.0.0"

-- 引入必要的库文件(lua编写), 内部库不需要require
sys = require("sys")
local rc522 = require "rc522"
log.info("main", "hello world")

print(_VERSION)

sys.taskInit(function()
    spi_rc522 = spi.setup(2,nil,0,0,8,100000,spi.MSB,1,1)
    -- spi_rc522 = spi.setup(0,nil,0,0,8,100000)
    rc522.init(2,6,7)
    wdata={0x01,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00}
    while 1 do
        rc522.write_datablock(8,wdata)
        for i=0,63 do
            local a,b = rc522.read_datablock(i)
             if a then
                 print("read",i,b:toHex())
             end
         end
     sys.wait(500)
     

    end
end)
 
-- 用户代码已结束---------------------------------------------
-- 结尾总是这一句
sys.run()
-- sys.run()之后后面不要加任何语句!!!!!

项目文件

点击"重启串口"运行程序。程序串口输出。

程序在数据块8中写入数据{0x01,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00}

以上代码用于验证模块连接及代码可用性。

相关推荐
Rain的Java大神之路1 天前
高并发下的热点账户余额扣减:Redis+Lua脚本实现无锁记账
java·spring boot·redis·后端·spring cloud·缓存·lua
qq_322762753 天前
一个接口从能用到稳定,中间差的到底是什么
服务器·开发语言·lua·接口·fastapi·请求
呆呆敲代码的小Y5 天前
【游戏开发】Lua 与 C# 交互原理解析
c#·lua·交互·热更新·lua与c#交互·游戏热更新
呆呆敲代码的小Y5 天前
Lua 上值(UpValue)
开发语言·junit·lua·lua上值·upvalue
呆呆敲代码的小Y5 天前
【游戏开发】xLua 性能优化技巧
junit·性能优化·lua·xlua
曼巴UE55 天前
Unlua UE5.3 调试
ue5·lua·unlua
nvd115 天前
实战:用 Lua 手写 Kong 安全鉴权插件并通过 ArgoCD GitOps 零编译部署到 DbGate 服务
安全·lua·kong
攻城有术7 天前
专项攻克——redis分布式锁-用LUA脚本解决setNX锁不释放问题
redis·分布式·lua
肠畔码农13 天前
底层视角拆解:Redis Lua脚本原子性、主线程阻塞与主从不一致全解析
java·redis·lua
小的~~14 天前
面试被问懵了?为什么 Redis 单线程还能保证 Lua 脚本原子性,却偏偏选了 Lua?
redis·面试·lua