大家好,我正在尝试通过 SPI 协议在 ESP32 和 RC522 rfid 读卡器之间建立连接,但不幸的是我失败了。
这是我的代码,请告诉我哪里出错了?
我尝试将值 0x25 写入寄存器 0x24,然后从该寄存器读取该值并“打印”它。
代码:
全选pin_sda = 15
pin_clk = 19
pin_miso = 25
pin_mosi = 23
_master = spi.master(spi.HSPI, {
sclk = pin_clk,
mosi = pin_mosi,
miso = pin_miso
}, 0)
_device = _master:device({
cs = pin_sda,
mode = 0,
freq = 5000000,
halfduplex = true
})
func
tion write(address, value)
local _addr = bit.band(bit.lshift(address,1), 0x7E)
_device:transfer(string.char(_addr))
_device:transfer(string.char(value))
end
function read(address)
local _addr = bit.bor(bit.band(bit.lshift(address, 1), 0x7E), 0x80)
_device:transfer(string.char(_addr))
return _device:transfer(string.char(0xFF)):byte(1)
end
write(0x24, 0x25)
print( read(0x24) )