我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();
我看不到目的,包括草圖的其餘部分。我非常感謝你的幫助。
我註釋掉了 - Serial.begin(9600); - 以及所有後續的連續打印輸出,並且它再次始終如一地工作。我對此沒有任何解釋。 – cmac 2012-04-09 03:15:17