2016-09-16 122 views
0

我正在開發一個需要在客戶端和服務器之間建立Websockets的系統。我跟着這個例子:帶有PHP WebSockets服務器的Arduino WebSockets客戶端

https://github.com/krohling/ArduinoWebsocketClient

回聲服務器不回答了。這是我的代碼:

#include "Arduino.h" 
#include <Ethernet.h> 
#include <SPI.h> 
#include <WebSocketClient.h> 

byte mac[] = { 0xDE, 0xAD, 0xBE, 0xEF, 0xFE, 0xED }; 
char server[] = "echo.websocket.org"; 
WebSocketClient client; 

void setup() { 
    Serial.begin(9600); 
    Ethernet.begin(mac); 
    client.connect(server); 
    client.setDataArrivedDelegate(dataArrived); 
    client.send("Hello World!"); 
} 

void loop() { 
    client.monitor(); 
} 

void dataArrived(WebSocketClient client, String data) { 
    Serial.println("Data Arrived: " + data); 
} 

有人可以告訴我爲什麼這不起作用嗎?

+0

什麼有這個做PHP? –

+0

websocket服務器是基於PHP的 –

+0

Plesae描述了你已經嘗試了什麼,以及它發生了什麼錯誤。 – Julien

回答

0

根據您使用的以太網屏蔽,您應該用#include <Ethernet2.h>替換#include <Ethernet.h>

Ethernet

Ethernet2

上ethernet2的圖書館只有從arduino.org Arduino的IDE,而不是從arduino.cc

+0

看到與以太網2有關的鏈接後,我想我需要這個屏蔽連接到互聯網。以太網僅用於專用LAN。我對嗎? –

+0

@OthmanMohammad這取決於你打算做什麼,但是當然如果你想回應一臺互聯網服務器,你需要將電路板連接到互聯網。由於您是客戶端,不需要特定的盒子配置,只需將電纜插入Arduino和盒子即可。 – Julien