0°

(三)Arduino – Telnet服务器-PHPoC

简介

本教程介绍如何使用Arduino Uno / Mega和PHPoC [WiFi] Shield创建一个可同时连接多达4个Telnet客户端的Telnet服务器。

它将任何传入消息分发到所有连接的客户端 。

传入的消息也会打印到串行监视器上。

步骤一 材料准备

硬件准备:

  • Arduino Uno或Mega
  • PHPoC Shield(P4S-347)或PHPoC WiFi Shield(P4S-348)

软件准备:

  • Arduino IDE

步骤二 电路搭建

将PHPoC Shield或PHPoC WiFi Shield连接到在Arduino Uno或Mega上

(二)Arduino - TCP IPv6聊天服务器

注意: Arduino通过Uno上的引脚10,11,12和13以及Mega上的引脚10,50,51和52与PHPoC [WiFi] Shield通信。因此,这些引脚不能用于通用I / O.

步骤三 安装Arduino IDE

如果您还没有安装Arduino IDE,请下载并安装Arduino IDE:点击进入下载

安装库

运行Arduino IDE

点击项目>加载库>管理库:

(一)Arduino - TCP聊天服务器

在搜索栏上搜索“Phpoc”:

(一)Arduino - TCP聊天服务器

选择PHPoC库并按[Install]按钮:

(一)Arduino - TCP聊天服务器

重新启动Arduino IDE以进行下一步

步骤四 设置网络信息

仅在首次使用时才需要此部分。

1.如果使用以太网

使用PHPoC Shield(P4S-348),您有两种连接网络的选项:以太网或WiFi。

如果使用以太网,请按照此说明将开发板连接到以太网:点击查看

2.如果使用WiFi,则P4S-347和P4S-348均提供WiFi

请按照:

  • 该步骤用于访问设置页面。
  • 这说明,如果你想开发板连接到WLAN路由器或接入点(AP)
  • 如果您想将开发板作为接入点(AP)操作此步骤

步骤五 编写程序

在Arduino IDE上打开“TelnetServer”示例:

(三)Arduino - Telnet服务器

程序:

#include <Phpoc.h>

PhpocServer server(23);
boolean alreadyConnected = false; // 是否客户端先前已连接

void setup() {
  Serial.begin(9600);
  while (!Serial)
    ;

  // 初始化PHPoC [WiFi] Shield:
  Phpoc.begin(PF_LOG_SPI | PF_LOG_NET);
  //Phpoc.begin();

  // beginTelnet()启用telnet选项协商和“一次一个字符”。  
  //在“一次一个字符”模式下,键入的文本会立即发送到服务器。
  server.beginTelnet();

  // 打印PHPoC [WiFi] Shield到串口监视器的IP地址:
  Serial.print("Telnet server address : ");
  Serial.println(Phpoc.localIP());
}

void loop() {
  // 等待新客户:
  PhpocClient client = server.available();

  // 当客户端发送第一个字节时,请打个招呼:
  if (client) {
    if (!alreadyConnected) {
      // 清除传输缓冲区:
      client.flush();
      Serial.println("We have a new client");
      client.println("Hello, client!");
      alreadyConnected = true;
    }

    if (client.available() > 0) {
      // 读取从客户端传入的字节:
      char thisChar = client.read();
      // 将字节回显给所有连接的客户端:
      server.write(thisChar);
      // 将字节回显到服务器:
      Serial.write(thisChar);
    }
  }
}

  • 编译示例代码并通过单击Arduino IDE上的“上传”按钮上传到Arduino
  • 在Arduino IDE上打开串行监视器工具以查看输出日志。
  • 复制PHPoC Shield的IP地址。
(三)Arduino - Telnet服务器

步骤六 测试和结果

在此示例中,Arduino充当Telnet服务器。它需要使用Telnet客户端进行测试。Telnet客户端可以是PC或智能手机上的任何类型的Telnet客户端软件/程序。

在本教程中,需要使用一个名为 Tera Term的基于Windows的软件:

下载地址:

当前内容已被隐藏,您需要登录才能查看

打开四个Tera Term窗口

输入PHPoC Shield的IP地址和端口号(23)

(三)Arduino - Telnet服务器
  • 单击“OK”按钮。
  • 从第1个Tera Term窗口向Arduino发送“Hello 1”消息。
  • 从第2个Tera Term窗口向Arduino发送“Hello 2”消息。
  • 从第3个Tera Term窗口向Arduino发送“Hello 3”消息。
  • 从第4个Tera Term窗口向Arduino发送“Hello 4”消息。

我们可以在每个Tera Term的接收区域看到echo消息:

(三)Arduino - Telnet服务器

查看串行监视器中的消息:

(三)Arduino - Telnet服务器

「点点赞赏,手留余香」

    还没有人赞赏,快来当第一个赞赏的人吧!
0 条回复 A 作者 M 管理员
    所有的伟大,都源于一个勇敢的开始!
欢迎您,新朋友,感谢参与互动!欢迎您 {{author}},您在本站有{{commentsCount}}条评论