2012-10-28 23 views
1

我買了一個以太網盾,我寫了一個代碼,但我看到有.available()方法。我不知道在哪裏使用它。所以,夥計們,你知道我應該在何時何地使用它嗎?這裏是我的示例代碼:當我應該在Arduino中使用client.available()時?

#include <Ethernet.h> 
#include <SPI.h> 

byte mac[] = {0xDE, 0xAD, 0xBE, 0xEF, 0xFE, 0xED}; 
IPAddress ip(192, 168, 1, 107); 

EthernetServer server = EthernetServer(80); 

void setup() { 
    Serial.begin(9600); 
    Ethernet.begin(mac, ip); 
    server.begin(); 
} 

void loop() { 
    EthernetClient client = server.available(); 

    if(client) { 
     if(client.available()) { 
      char c = client.read(); 
      Serial.print(c); 
     } 
    } 
} 

謝謝。

+0

您正在服務器和客戶端對象上使用'.available()',那麼問題是什麼?也許你可以解釋你想要做什麼。 –

回答

0

Client.available()返回客戶端(遠程客戶端)可能寫入的字節數。如果您正在編寫HTTP服務器,則第一個客戶端數據將爲:GET /URL HTTP/1.0

然後您使用Client.write()寫回該客戶端。例如:

c.write("HTTP/1.0 200 OK") 
+0

謝謝。 :)這是一個很好的例子,我明白了。 – Andrius

相關問題