|

楼主 |
发表于 2024-7-5 23:23:27
|
显示全部楼层
-- LuaTools需要PROJECT和VERSION这两个信息
PROJECT = "gnsstest"
VERSION = "1.0.1"
PRODUCT_KEY = "" -- 基站定位需要用到
--[[
本demo需要很多流量!!!
注意: 室内无信号!! 无法定位!!!
]]
-- sys库是标配
_G.sys = require("sys")
require("sysplus")
mobile.simid(1) --用SIM1 内置卡
_G.lat,_G.lng="0","0"
_G.gps_uart_id = 2
-- LED和ADC初始化
LED_GNSS = 27
gpio.setup(LED_GNSS, 0) -- GNSS定位成功灯
-- Air780E的AT固件默认会为开机键防抖, 导致部分用户刷机很麻烦
if rtos.bsp() == "EC618" and pm and pm.PWK_MODE then
pm.power(pm.PWK_MODE, false)
end
-- 启动时对rtc进行判断和初始化
local reason, slp_state = pm.lastReson()
log.info("wakeup state", pm.lastReson())
if reason > 0 then
pm.request(pm.IDLE)
mobile.flymode(0, false)
mobile.flymode(1, false)
log.info("已经从深度休眠唤醒")
end
-- 演示GNSS定位, 含AGPS
require "testGnss"
-- 本TCP演示是连接到 gps.nutz.cn 19002 端口, irtu的自定义包格式
-- 网页是 https://gps.nutz.cn/ 输入IMEI号可参考当前位置
-- 微信小程序是 irtu寻物, 点击IMEI号, 扫描模块的二维码可查看当前位置和历史轨迹
-- 服务器源码地址: https://gitee.com/wendal/irtu-gps
require "testTcp"
sys.taskInit(function()
for i=1,3 do
gpio.set(LED_GNSS, 1)
sys.wait(200)
gpio.set(LED_GNSS, 0)
sys.wait(200)
end
log.info("工作60秒后进入深度休眠")
sys.wait(60*1000)
mobile.simid(0) --用SIM0 否则无法休眠
mobile.flymode(0, true)
log.info("深度休眠300s,用DTIMER来唤醒")
for i=1,2 do
gpio.set(LED_GNSS, 1)
sys.wait(500)
gpio.set(LED_GNSS, 0)
sys.wait(500)
end
sys.wait(100)
pm.power(pm.USB, false) -- 如果是插着USB测试,需要关闭USB
pm.force(pm.HIB)
pm.dtimerStart(0, 300*1000)
sys.wait(5000)
log.info("pm_usb on")
pm.power(pm.USB, true) -- 如果是插着USB测试,需要关闭USB
end)
-- 用户代码已结束---------------------------------------------
-- 结尾总是这一句
sys.run()
-- sys.run()之后后面不要加任何语句!!!!! |
|