合宙LuatOS AIR700 IPV6 TCP 客户端向NodeRed发送数据

embedded/2024/10/18 10:26:57/

为了验证 AIR700 IPV6 ,特别新建向NodeRed Tcp发送的工程。

Air700发送TCP数据源码如下:

--[[
IPv6客户端演示, 仅EC618系列支持, 例如Air780E/Air600E/Air780UG/Air700E
]]-- LuaTools需要PROJECT和VERSION这两个信息
PROJECT = "IPV6_SendDate_Nodered_TCP"
VERSION = "1.0.0"log.info("main", PROJECT, VERSION)-- 一定要添加sys.lua !!!!
sys = require("sys")
libnet = require "libnet"
local netc-- 演示task
sys.taskInit(function()-- 仅EC618系列支持, 例如Air780E/Air600E/Air780UG/Air700Eif rtos.bsp() ~= "EC618" thenwhile 1 dolog.info("ipv6", "only Air780E/Air600E/Air780UG/Air700E supported")sys.wait(1000)endend-- 启用IPv6, 默认关闭状态,必须在驻网前开启-- 注意, 启用IPv6, 联网速度会慢2~3秒mobile.ipv6(true)log.info("ipv6", "等待联网")sys.waitUntil("IP_READY")log.info("ipv6", "联网完成")sys.wait(100)socket.setDNS(nil, 1, "119.29.29.29")socket.setDNS(nil, 2, "114.114.114.114")
end)sys.taskInit(function()sys.waitUntil("IP_READY")local dName = "D2_TASK"netc = socket.create(nil, dName)local succ=socket.config(netc)log.info("socket.congfig",succ )local succ1, result = socket.connect(netc, "www.yourUrl.top",12300,true)log.info("socket.connect",succ1) log.info("IPV6", "ip", socket.localIP())sys.wait(2000)local cnt=0local strCntwhile true docnt=cnt+1strCnt="From Air700 No."..cnt.." Messages."local succ1, full, result1 = socket.tx(netc, strCnt)-- local succ1, full, result1 = socket.tx(netc, strCnt, "www.yourUrl.top",       12300       )  --TCP应用则忽略      --端口--TCP应用则忽略log.info("socket.SEND",strCnt) sys.wait(6000)endend)-- 用户代码已结束---------------------------------------------
-- 结尾总是这一句
sys.run()
-- sys.run()之后后面不要加任何语句!!!!!

代码中注意点:

1       socket.connect(netc, "www.yourUrl.top",12300,true)

  socket.connect函数的need_ipv6_dns必须设置成true,以便开启IPV6.

2  socket.tx(netc, strCnt, "www.yourUrl.top",12300 )  函数中的域名和端口号可以忽略。
                                                         

3 行号52 sys.wait(2000)延时不能少,可保证NodeRed收到第一条数据

NodeRed代码

 

[{"id": "f6f2187d.f17ca8","type": "tab","label": "Flow 1","disabled": false,"info": ""},{"id": "4ba8347f531551e7","type": "debug","z": "f6f2187d.f17ca8","name": "debug 2","active": true,"tosidebar": true,"console": false,"tostatus": false,"complete": "false","statusVal": "","statusType": "auto","x": 480,"y": 240,"wires": []},{"id": "5d8b8559cac5fb20","type": "tcp in","z": "f6f2187d.f17ca8","name": "","server": "server","host": "","port": "2300","datamode": "stream","datatype": "utf8","newline": "","topic": "","trim": false,"base64": false,"tls": "","x": 280,"y": 240,"wires": [["4ba8347f531551e7"]]}
]

NodeRed接收数据

 Air700发送的数据

注意:NodeRed是基于Docker运行的

 外部TCP端口号是12300,Docker内部是2300

注意上述问题,即可验证AIR700是支持IPV6的。


http://www.ppmy.cn/embedded/99370.html

相关文章

bug----jdk17使用JOL无法输出java对象的存储布局

项目场景: 提示:这里简述项目相关背景: 在idea中以jdk17为开发环境,使用 jol-core.016 版本没办法输出java 对象的存储结构信息,会让程序崩溃。 问题描述 提示:这里描述项目中遇到的问题: 这…

在Uni-app中实现计时器效果

<template><div class"timer"><p>{{ formatTime }}</p><button click"startTimer" v-if"!isTiming">开始计时</button><button click"stopTimer" v-else>停止计时</button></div&…

appium下载及安装

下载地址&#xff1a;https://github.com/appium/appium-desktop/releases 双击安装就可以

基于矢量控制器的PMSM永磁同步电机速度控制系统simulink建模与仿真

目录 1.课题概述 2.系统仿真结果 3.核心程序与模型 4.系统原理简介 5.完整工程文件 1.课题概述 基于矢量控制器的PMSM永磁同步电机速度控制系统simulink建模与仿真&#xff0c;仿真输出电机转速跟踪曲线&#xff0c;PID控制器输出曲线以及Te输出曲线。 2.系统仿真结果 &…

【C++ 面试 - 面向对象】每日 3 题(六)

✍个人博客&#xff1a;Pandaconda-CSDN博客 &#x1f4e3;专栏地址&#xff1a;http://t.csdnimg.cn/fYaBd &#x1f4da;专栏简介&#xff1a;在这个专栏中&#xff0c;我将会分享 C 面试中常见的面试题给大家~ ❤️如果有收获的话&#xff0c;欢迎点赞&#x1f44d;收藏&…

Prometheus Alertmanager告警之邮件、钉钉群、企业微信群机器人报警

文章目录 一、部署alertmanager相关组件1.alertmanager-config2.alertmanager-message-tmpl3.alertmanager 二、调试邮件告警三、钉钉群/企业微信群 报警3.1添加钉钉群机器人3.2添加企业微信群机器人3.3部署alertmanager-webhook-adaptermessage-tmplalertmanager-webhook-adap…

Prometheus 服务发现

目录 1.基于文件的服务发现 2.基于 Consul 的服务发现 3.基于 Kubernetes API 的服务发现 1.基于文件的服务发现 基于文件的服务发现是仅仅略优于静态配置的服务发现方式&#xff0c;它不依赖于任何平台或第三方服务&#xff0c;因而也是最为简单和通用的实现方式。 Prometh…

继Ollama之后,Go在AI领域再下一城

AI isnt a thing; its a magnifier of a thing. And that thing is human creativity. 在AI领域&#xff0c;最火的使用Go开发的项目莫过于Ollama项目了&#xff0c;但近期有一个项目也吸引了Gopher眼球&#xff0c;它就是fabric。叫fabric的项目太多&#xff0c;这个fabric又是…