||
今天我们来学习低功耗4G模组Air780E快速入门之跟服务器之间的加密通信,伙伴们,一起学起来!
Air780E开发板购买
Air780E开发板设计资料
LuatOS-Air780E/网络加密通信程序源码demo
TCP/UDP 测试服务器
API介绍说明
1.2.1 首先配置联网配置
-- 测试网站 https://netlab.luatos.com/ 点击 打开TCP 获取测试端口号
-- 要按实际情况修改
local host = "112.125.89.8" -- 服务器ip或者域名, 都可以的
local port = 45186 -- 服务器端口号
local is_udp = false -- 如果是UDP, 要改成true, false就是TCP
local is_tls = true -- 加密与否, 要看服务器的实际情况
--=============================================================
1.2.2 联网后,创建联网成功后,对收发数据事件的处理函数
local function sockettest()
-- 等待联网
sys.waitUntil("IP_READY")
-- 时间同步
socket.sntp()
-- 开始正在的逻辑, 发起socket链接,等待数据/上报心跳
local taskName = "sc"
local topic = taskName .. "_txrx"
log.info("topic", topic)
local txqueue = {}
--[[创建一个任务线程
@param1 function 任务函数名,用于resume唤醒时调用
@param2 string 任务名称,用于唤醒任务id
@param3 function 接收到非目标消息时的回调函数
@param4 any 任务函数fun的可变参数
@return number 返回该任务的线程号
]]
sysplus.taskInitEx(sockettask, taskName, netCB, taskName, txqueue, topic)
while 1 do
local result, tp, data = sys.waitUntil(topic, 30000) log.info("event", result, tp, data) if not result then -- 等很久了,没数据上传/下发, 发个日期心跳包吧 table.insert(txqueue, os.date()) sys_send(taskName, socket.EVENT, 0) elseif tp == "uplink" then -- 上行数据, 主动上报的数据,那就发送呀 table.insert(txqueue, data) sys_send(taskName, socket.EVENT, 0) elseif tp == "downlink" then -- 下行数据,接收的数据, 从ipv6task来的 -- 其他代码可以通过 sys.publish() log.info("socket", "收到下发的数据了", #data,"data:",data) end
![]() 路过 |
![]() 鸡蛋 |
![]() 鲜花 |
![]() 握手 |
![]() 雷人 |