main.lua 2.0 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667
  1. -- LuaTools需要PROJECT和VERSION这两个信息
  2. PROJECT = "tcpserver"
  3. VERSION = "1.0.0"
  4. -- sys库是标配
  5. _G.sys = require("sys")
  6. _G.sysplus = require("sysplus")
  7. srv = require("tcpsrv")
  8. -- 因为这是通用demo, air101/air103跑满速才不至于太慢-_-
  9. if mcu then
  10. mcu.setClk(240)
  11. end
  12. -- 统一联网函数
  13. sys.taskInit(function()
  14. -----------------------------
  15. -- 统一联网函数, 可自行删减
  16. ----------------------------
  17. if wlan and wlan.connect then
  18. -- wifi 联网, ESP32系列均支持, 要根据实际情况修改ssid和password!!
  19. local ssid = "luatos1234"
  20. local password = "12341234"
  21. log.info("wifi", ssid, password)
  22. -- TODO 改成自动配网
  23. wlan.init()
  24. -- wlan.setMode(wlan.STATION) -- 默认也是这个模式,不调用也可以
  25. wlan.connect(ssid, password, 1)
  26. elseif mobile then
  27. -- EC618系列, 如Air780E/Air600E/Air700E
  28. -- mobile.simid(2) -- 自动切换SIM卡, 按需启用
  29. -- 模块默认会自动联网, 无需额外的操作
  30. elseif w5500 then
  31. -- w5500 以太网
  32. w5500.init(spi.HSPI_0, 24000000, pin.PC14, pin.PC01, pin.PC00)
  33. w5500.config() --默认是DHCP模式
  34. w5500.bind(socket.ETH0)
  35. elseif socket then
  36. -- 适配了socket库也OK, 就当1秒联网吧
  37. sys.timerStart(sys.publish, 1000, "IP_READY")
  38. else
  39. -- 其他不认识的bsp, 循环提示一下吧
  40. while 1 do
  41. sys.wait(1000)
  42. log.info("bsp", "本bsp可能未适配网络层, 请查证")
  43. end
  44. end
  45. -- 默认都等到联网成功
  46. sys.waitUntil("IP_READY")
  47. sys.publish("net_ready")
  48. end)
  49. sys.taskInit(function()
  50. sys.waitUntil("net_ready")
  51. log.info("联网完成", "准备启动tcp server")
  52. sys.wait(1000)
  53. SerDemo(80)
  54. end)
  55. -- 用户代码已结束---------------------------------------------
  56. -- 结尾总是这一句
  57. sys.run()
  58. -- sys.run()之后后面不要加任何语句!!!!!