NodeMCU - 在ESP32上启用UART1 / 2

问题描述 投票:0回答:1

我已按照此处所述构建固件:https://nodemcu.readthedocs.io/en/dev-esp32/build/

但我不能让硬件UART 1或2工作。是否有任何特定组件必须启用(并且默认情况下不启用)才能使其正常工作?

这是我的测试代码:

uart_id = 2

local function on_data(data)
    print("IN: ", tostring(data))
end

local function on_error(data)
    print("ERR: ", tostring(data))
end

local cnt = 0;
local function on_timer()
    print(". "..cnt)
    cnt = cnt + 1
    uart.write(uart_id, "# " .. cnt .. "\n")
end

local tmrObj = tmr.create()
tmrObj:register(5000, tmr.ALARM_AUTO, on_timer)
tmrObj:start()

uart.setup(uart_id, 115200, 8, uart.PARITY_NONE, uart.STOPBITS_1, 1)
uart.on(uart_id, "data", '\r', on_data)
uart.on(uart_id, "error", on_error)
uart.setmode(uart_id, uart.MODE_UART)
uart.start(uart_id)
nodemcu esp32
1个回答
0
投票

固件没问题,uart.setup不正确。 PIN码丢失,由于某些原因,默认PIN码不起作用,这个很好:

uart.setup(uart_id, 115200, 8, uart.PARITY_NONE, uart.STOPBITS_1, {rx = 16, tx = 17})
© www.soinside.com 2019 - 2024. All rights reserved.