testUsbData.lua 1017 B

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748
  1. --- 模块功能:USB AT 口收发数据功能测试
  2. -- @author openLuat
  3. -- @module update.testUpdate1
  4. -- @license MIT
  5. -- @copyright openLuat
  6. -- @release 2019.05.9
  7. module(...,package.seeall)
  8. --[[
  9. 函数名:usbreader
  10. 功能 :向USB AT 口发送数据
  11. 参数 :无
  12. 返回值:无
  13. ]]
  14. local function usbwrite(s)
  15. log.info("usb send",s)
  16. uart.write(uart.USB, s)
  17. end
  18. --[[
  19. 函数名:usbreader
  20. 功能 :从USB AT 口接收数据
  21. 参数 :无
  22. 返回值:无
  23. ]]
  24. local function usbreader()
  25. local s
  26. --循环读取收到的数据
  27. while true do
  28. --每次读取一行
  29. s = uart.read(uart.USB, "*l", 0)
  30. if string.len(s) ~= 0 then
  31. log.info("usb rcv",s);
  32. usbwrite(s)
  33. else
  34. break
  35. end
  36. end
  37. end
  38. uart.setup(uart.USB, 0, 0, uart.PAR_NONE, uart.STOP_1)
  39. uart.on(uart.USB, "receive", usbreader)
  40. --1分钟后,关闭usb data功能,切换为usb at功能
  41. sys.timerStart(uart.close,60000,uart.USB)