OpenEdv-开源电子网

 找回密码
 立即注册

扫一扫,访问微社区

正点原子新作:阿波罗STM32F767&F429&探索者STM32F4开发板&赶快来下载资料哦。

查看: 326|回复: 0

【JSDuino】WIFI TCP客户端

[复制链接]

  离线 

45

主题

115

帖子

1

精华

版主

Rank: 7Rank: 7Rank: 7

积分
612
金钱
612
注册时间
2013-9-23
在线时间
80 小时
发表于 2017-6-24 10:47:15 | 显示全部楼层 |阅读模式
正点原子公众号
    通过本节的学习,您将了解到如何使用JavaScript代码来实现基于WIFITCP的客户端例子。

      wifi模块封装了如下几个API可供使用:
connect(ip, port)
发起一个socket连接
参数
描述
Ip
字符串型,远程ip地址
Port
数字型,远程端口。

close()
关闭一个socket连接
参数
描述

write(data, size)
已连接的socket发送数据
参数
描述
Data
Buffer或者string数据,当为string类型时,不需要指明size
Size
发送数据大小。

on(event, function)
注册一个socket事件的回调函数
参数
描述
Event
注册的事件类型,字符串型,connected事件表示已经连接、data事件表示有数据接收到
function
回调函数参数包括2个参数:Buffer或者string数据, 数据长度
[JavaScript] 纯文本查看 复制代码
var wifi = require("wifi");
var key = require("key");

//初始化并连接wifi到路由器
print(wifi.init("TP-LINK_B957FD", "87654321"));

function key_cb(name){
        print(name);
        if(name == "key0") //按下key0,连接到server(可以下载tcpip调试助手)
        {
                //wifi连接到服务器地址
                if(wifi.connect("192.168.0.104", 8080)){
                        print("connected successfully!");
                }
        }
        if(name == "key1") //当连接成功之后,按下key1,发送数据到server
                if(wifi.write("hello world")){
                        print("write ok");
                }
        if(name == "wkup") //按下wkup,关闭连接
                if(wifi.close){
                        print("close ok");
                }        
}

key.on(key_cb);

//客户端获取到数据的回调函数
function data_callback(data, size){
        print(data.toString());
}

//注册回调函数
wifi.on("data", data_callback);

function loop(){
        while(true){

        }
}

loop();

实验结果
当程序开始运行之后,大约35秒时间,wifi连接上路由器,并且打印连接是否成功的结果。按下key0,开发板连接服务器。当连接成功后,按下key1发送数据到服务器。如果连接成功,按下wkup断开连接。如果服务器端发送数据,则打印发送的内容。



回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则




QQ|联系我们|手机版|官方淘宝店|新浪微博|微信公众平台|OpenEdv-开源电子网 ( 粤ICP备12000418号-1 )

GMT+8, 2017-11-19 16:27

Powered by OpenEdv-开源电子网

© 2001-2030 OpenEdv-开源电子网

快速回复 返回顶部 返回列表
/* */