wan.lua 1.8 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758
  1. -- 引入必要的库文件(lua编写), 内部库不需要require
  2. sys = require("sys")
  3. sysplus = require("sysplus")
  4. sys.taskInit(function()
  5. sys.wait(3000)
  6. local result = spi.setup(0, -- 串口id
  7. nil, 0, -- CPHA
  8. 0, -- CPOL
  9. 8, -- 数据宽度
  10. 25600000 -- ,--频率
  11. -- spi.MSB,--高低位顺序 可选,默认高位在前
  12. -- spi.master,--主模式 可选,默认主
  13. -- spi.full--全双工 可选,默认全双工
  14. )
  15. log.info("main", "open", result)
  16. if result ~= 0 then -- 返回值为0,表示打开成功
  17. log.info("main", "spi open error", result)
  18. return
  19. end
  20. netdrv.setup(socket.LWIP_ETH, netdrv.CH390, {
  21. spiid = 0,
  22. cs = 8
  23. })
  24. netdrv.dhcp(socket.LWIP_ETH, true)
  25. -- sys.wait(3000)
  26. while 1 do
  27. local ipv4ip, aaa, bbb = netdrv.ipv4(socket.LWIP_ETH, "", "", "")
  28. log.info("ipv4地址,掩码,网关为", ipv4ip, aaa, bbb)
  29. local netdrv_start = netdrv.ready(socket.LWIP_ETH)
  30. if netdrv_start and ipv4ip and ipv4ip ~= "0.0.0.0" then
  31. log.info("条件都满足")
  32. sys.publish("CH390_IP_READY")
  33. return
  34. end
  35. sys.wait(1000)
  36. end
  37. end)
  38. -- sys.taskInit(function()
  39. -- sys.waitUntil("CH390_IP_READY")
  40. -- log.info("CH390 联网成功,开始测试")
  41. -- -- 如果自带的DNS不好用,可以用下面的公用DNS,但是一定是要在CH390联网成功后使用
  42. -- -- socket.setDNS(socket.LWIP_ETH,1,"223.5.5.5")
  43. -- -- socket.setDNS(nil,1,"114.114.114.114")
  44. -- while 1 do
  45. -- sys.wait(6000)
  46. -- log.info("http", http.request("GET", "https://wiki.luatos.com/api/index.html", nil, nil, {
  47. -- adapter = socket.LWIP_ETH
  48. -- }).wait())
  49. -- log.info("lua", rtos.meminfo())
  50. -- log.info("sys", rtos.meminfo("sys"))
  51. -- end
  52. -- end)