1 В избранное 0 Ответвления 0

OSCHINA-MIRROR/openLuat-LuatOS

Присоединиться к Gitlife
Откройте для себя и примите участие в публичных проектах с открытым исходным кодом с участием более 10 миллионов разработчиков. Приватные репозитории также полностью бесплатны :)
Присоединиться бесплатно
Клонировать/Скачать
main.lua 3.8 КБ
Копировать Редактировать Web IDE Исходные данные Просмотреть построчно История
Wendal Chen Отправлено 2 лет назад f6c859b
-- LuaTools需要PROJECT和VERSION这两个信息
PROJECT = "my_test"
VERSION = "1.2"
PRODUCT_KEY = " " --自己iot平台下的PRODUCT_KEY
-- sys库是标配
_G.sys = require("sys")
_G.sysplus = require("sysplus")
--[[本demo实现了jt808协议的基本框架,可以通过tcp上报位置信息和心跳包,后续功能可按照此框架添加即可;
使用前需修改下tcp的ip地址和端口;
如果是780eg模块,可以直接烧录,如果是780e外挂定位模块,需要注意串口号!]]--
----------------------------------------
-- 报错信息自动上报到平台,默认是iot.openluat.com
-- 支持自定义, 详细配置请查阅API手册
-- 开启后会上报开机原因, 这需要消耗流量,请留意
if errDump then
errDump.config(true, 600)
end
----------------------------------------
-- Air780E的AT固件默认会为开机键防抖, 导致部分用户刷机很麻烦
if rtos.bsp() == "EC618" and pm and pm.PWK_MODE then
pm.power(pm.PWK_MODE, false)
end
-- 如果运营商自带的DNS不好用,可以用下面的公用DNS
-- socket.setDNS(nil,1,"223.5.5.5")
-- socket.setDNS(nil,2,"114.114.114.114")
-- socket.sntp()
--socket.sntp("ntp.aliyun.com") --自定义sntp服务器地址
--socket.sntp({"ntp.aliyun.com","ntp1.aliyun.com","ntp2.aliyun.com"}) --sntp自定义服务器地址
-- sys.subscribe("NTP_UPDATE", function()
-- log.info("sntp", "time", os.date())
-- end)
-- sys.subscribe("NTP_ERROR", function()
-- log.info("socket", "sntp error")
-- socket.sntp()
-- end)
-----------------------------------------------------------------------------------------------------------------
sys.taskInit(function()
-- 检查一下当前固件是否支持fskv
if not fskv then
while true do
log.info("fskv", "this demo need fskv")
sys.wait(1000)
end
end
-- 初始化kv数据库
fskv.init()
fskv.set("authCode", " ") --注册成功后的鉴权码
fskv.set("heartFreq",60) --心跳上报间隔,单位秒
fskv.set("tcpSndTimeout",10) --TCP等待应答超时时间,单位秒
fskv.set("tcpResendMaxCnt", 3) --TCP重传次数
fskv.set("locRptStrategy", 0) --位置汇报策略,0:定时汇报;1:定距汇报;2:定时和定距汇报
fskv.set("locRptMode",0) --位置汇报方案,0:根据 ACC 状态; 1:根据登录状态和 ACC 状态,先判断登录状态,若登录再根据 ACC 状态
fskv.set("sleepLocRptFreq", 60) --休眠时位置汇报时间间隔,单位为秒
fskv.set("alarmLocRptFreq",5) --紧急报警时位置汇报时间间隔,单位为秒
fskv.set("wakeLocRptFreq", 20) --缺省位置汇报时间间隔,单位为秒
fskv.set("sleepLocRptDistance", 500) --休眠时汇报距离间隔,单位为米
fskv.set("alarmLocRptDistance", 5) --紧急报警时位置汇报时间间隔,单位为米
fskv.set("wakeLocRptDistance", 50) --缺省位置汇报时间间隔,单位为米
fskv.set("fenceRadis", 100) --电子围栏半径,单位为米
fskv.set("alarmFilter",0) --报警屏蔽字,与位置汇报消息中的报警标志相对应,相应位为 1,则相应报警被屏蔽
fskv.set("keyFlag", 0) --关键标志,与位置信息汇报消息中的报警标志相对应,相应位为 1 则对相应报警为关键报警
fskv.set("speedLimit", 100) --最高速度,单位为公里每小时(km/h)
fskv.set("speedExceedTime", 60) --超速持续时间,单位为秒(s)
end)
-------------------------------------------------------------------------------------------------------------
local gpsMng = require "gpsMng"
require "JT808Prot"
require "socket_demo"
-- dtuDemo("112.125.89.8",35960)
-- 用户代码已结束---------------------------------------------
-- 结尾总是这一句
sys.run()
-- sys.run()之后后面不要加任何语句!!!!!
1
https://gitlife.ru/oschina-mirror/openLuat-LuatOS.git
git@gitlife.ru:oschina-mirror/openLuat-LuatOS.git
oschina-mirror
openLuat-LuatOS
openLuat-LuatOS
master