2012-04-06 79 views
1

我Arduino的Web服務器偶爾草圖上失敗:我的Arduino +以太網盾WebServer草圖有時無法連接到客戶端。原因是什麼?

EthernetClient client = server.available(); 
if (client) 

今天上午,它連接在第一次運行就好了。現在,它無法再連接到客戶端。幾天前,它工作了好幾次,但也失敗了好幾次。我通過以太網電纜將屏蔽層連接到我的家庭路由器。我已驗證分配給Arduino的IP地址。我試過端口80和8080.什麼可能會出錯,我還可以嘗試什麼?我的ISP可以在這裏阻塞什麼嗎?請不要害怕提出明顯的,因爲我幾乎不瞭解網絡。

如果相關,這裏是一塊較大的代碼,其中循環上

Serial.println("Listening"); 

代碼:

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

// Enter a MAC address and IP address for your controller below. 
// The IP address will be dependent on your local network: 

byte mac[] = { 0x90, 0xA2, 0xDA, 0x00, 0xF7, 0x99 }; 
IPAddress ip(192,168,2,5); 

// Initialize the Ethernet server library 
// with the IP address and port you want to use 
// (port 80 is default for HTTP): 
EthernetServer server(80); 

String roundOpenTag = ""; 
String roundCloseTag = ""; 

void setup() 
{ 
    // Start the Ethernet connection and the server: 
    Ethernet.begin(mac, ip); 
    server.begin(); 

    int ledPin = 8; 
    // Initialize the digital pin as an output. 
    pinMode(ledPin, OUTPUT); 
    Serial.begin(9600); 
    Serial.println("Setting up"); 
} 

void loop() 
{ 
    // Listen for incoming clients 
    EthernetClient client = server.available(); 
    Serial.println("Listening"); 
    if (client) 
    { 
     Serial.println("Server available"); 
     // An HTTP request ends with a blank line 
     boolean currentLineIsBlank = true; 
     while (client.connected()) { 
      Serial.println("Client connected"); 
      if (client.available()) 
      { 
       char c = client.read(); 

我看不到目的,包括草圖的其餘部分。我非常感謝你的幫助。

+0

我註釋掉了 - Serial.begin(9600); - 以及所有後續的連續打印輸出,並且它再次始終如一地工作。我對此沒有任何解釋。 – cmac 2012-04-09 03:15:17

回答

1

你的setup()函數中有一個空的Seiral.begin()。嘗試刪除它。

編輯

當你調用Serial.begin(),你必須提供在要傳達的baut率(速度)。您可以在Arduino library page閱讀更多關於該功能的信息。

你必須在你的代碼

  • 兩個問題你有一個空Serial.begin()函數調用,不帶任何參數
  • 你不得不重複Serial.begin()函數。您已經在setup()函數的開頭指定了它。
+0

就是這樣。但是,'空'是什麼意思?我希望能夠打印出來以便調試我的代碼,但無法做到這一點,並保持我的草圖工作。 – cmac 2012-04-25 19:05:41

+0

更新了答案,以回答您的查詢。 – Sudar 2012-04-26 06:41:42

+0

我注意到這個問題已經被觀察了很多。我想說明的是,我從未能夠連接到我的客戶端並一起執行連續打印輸出。令我感到沮喪的是,我從來沒有解決過這個問題,所以如果有人知道答案,請分享。 – cmac 2012-12-07 16:15:47

相關問題