uart3_setup.lua 1.0 KB

1234567891011121314151617181920212223242526272829
  1. uart3_setup = {}
  2. -- 设置uart3的函数
  3. local function setup_uart3(baud_rate, data_bit, stop_bit, parity, bit_order, buff)
  4. -- -- 每次设置前先关闭uart一次
  5. -- uart.close(3)
  6. local result1 = uart.setup(3, baud_rate, data_bit, stop_bit, parity, bit_order, buff)
  7. print(string.format(
  8. "uart3.setup(uartid %d, 波特率 %d, 数据位 %d, 停止位 %s, 校验位 %s, 大小端 %s, 缓冲区大小 %d) = 设置结果%d",
  9. 3, baud_rate, data_bit, stop_bit, tostring(parity), tostring(bit_order), buff, result1))
  10. return result1
  11. end
  12. local test_data = "Hello UART Loopback!\r\n"
  13. -- 注册uart3事件的函数
  14. uart.on(3, "receive", function(id, len)
  15. local received_data = uart.read(id, len)
  16. print("uart3接收到的是", received_data)
  17. if received_data == test_data then
  18. print("回环的数据没有问题")
  19. else
  20. print("回环的数据有问题应该是 " .. test_data .. ", 结果是: " .. received_data)
  21. end
  22. end)
  23. return {
  24. setup_uart3 = setup_uart3
  25. }