最終更新:2009-12-18 (金) 11:10:32 (5235d)
Arduino Ethernet Shield
Top / Arduino Ethernet Shield
- Arduino/Ethernet?
通販
接続
- SPI - デジタルI/Oピンの、10番、11番、12番、13番を使用
サンプル
//イーサネットライブラリを取り入れる #include <Ethernet.h> //MAC ID(各シールドに記載) byte mac[] = { 0x00, 0x50, 0xC2, 0x97, 0x20, 0x11 }; //サーバ用IPアドレスの設定 byte ip[] = { 192, 168, 3, 100 }; //ポート設定(80:HTTPプロトコル) Server server(80); void setup(){ //イーサネット通信開始 Ethernet.begin(mac, ip); //サーバ開始 server.begin(); } void loop(){ //クライアントからのデータ受信 Client client = server.available(); //クライアントからの受信がある場合 if (client) { //ブラウザからのHTTPリクエストの空白行の有無のフラグ boolean current_line_is_blank = true; //クライアントとの接続中の処理 while (client.connected()) { //クライアントから受信データがあるとき if (client.available()) { //HTTPリクエスト(受信データ)を一つずつ読み込む char c = client.read(); //HTTPリクエストにラインフィード(改行)があり、 //現在空白行である場合 if (c == '\n' && current_line_is_blank) { //HTTPレスポンス(返信) server.println("HTTP/1.1 200 OK");//リクエスト成功 server.println("Content-Type: text/html");//HTML文書形式 server.println();//空白行を入れる //タイトルバー表示 server.println("<title>KOUSAKU WEB SITE</title>"); server.print("ANALOG INPUT: ");//文字表示 server.print(analogRead(0));//アナログ入力値 server.println("<br/>");//改行 //リンク画像表示 server.println("<img src=\"http://2.bp.blogspot.com/_7uyXRm_coS4/SQeoW-PJB2I/AAAAAAAAAbA/0Go85aRfLDY/s400/ethernet.png\">"); server.println("<br/>");//改行 //このブログへのリンク server.println("<a href=\"http://kousaku-kousaku.blogspot.com\">GO TO: KOUSAKU BLOG PAGE<a>"); break; } if (c == '\n') {//読み込んだ文字がラインフィードの場合 //現在の行を空白行とみなす current_line_is_blank = true; } else if (c != '\r') {//読み込んだ文字がキャリッジリターン以外の場合 //現在の行を空白行としない current_line_is_blank = false; } } } delay(1); client.stop(); } }