netready.lua 1.5 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344
  1. sys.taskInit(function()
  2. -----------------------------
  3. -- 统一联网函数, 可自行删减
  4. ----------------------------
  5. if wlan and wlan.connect then
  6. -- wifi 联网, ESP32系列均支持
  7. local ssid = "uiot"
  8. local password = "czcjhp1985cbm"
  9. log.info("wifi", ssid, password)
  10. -- TODO 改成esptouch配网
  11. -- LED = gpio.setup(12, 0, gpio.PULLUP)
  12. wlan.init()
  13. wlan.setMode(wlan.STATION)
  14. wlan.connect(ssid, password, 1)
  15. local result, data = sys.waitUntil("IP_READY", 30000)
  16. log.info("wlan", "IP_READY", result, data)
  17. device_id = wlan.getMac()
  18. elseif rtos.bsp() == "AIR105" then
  19. -- w5500 以太网, 当前仅Air105支持
  20. w5500.init(spi.HSPI_0, 24000000, pin.PC14, pin.PC01, pin.PC00)
  21. w5500.config() --默认是DHCP模式
  22. w5500.bind(socket.ETH0)
  23. -- LED = gpio.setup(62, 0, gpio.PULLUP)
  24. sys.wait(1000)
  25. -- TODO 获取mac地址作为device_id
  26. elseif mobile then
  27. -- Air780E/Air600E系列
  28. --mobile.simid(2)
  29. -- LED = gpio.setup(27, 0, gpio.PULLUP)
  30. device_id = mobile.imei()
  31. log.info("ipv6", mobile.ipv6(true))
  32. sys.waitUntil("IP_READY", 30000)
  33. elseif http then
  34. sys.waitUntil("IP_READY")
  35. else
  36. while 1 do
  37. sys.wait(1000)
  38. log.info("http", "当前固件未包含http库")
  39. end
  40. end
  41. log.info("已联网")
  42. sys.publish("net_ready")
  43. end)