■server.println関数
Serverクラス※1のserver.println関数は、サーバーに接続されているすべてのクライアントにデータを出力し、最後に改行を加えます。
数字を一連の値として出力します。それぞれの数字はASCII文字です(たとえば、123は3文字 '1'、 '2'、 '3'として送信されます)。
■使用例
Arduino IDEで使用するserver.println関数の使い方は以下の通りです。
例えば「Arduino Leonardo Ethernet」をPCにUSB接続し、またネットワークに接続されたLANケーブル接続して、ArduinoIDEの「ツール」→「ボード」→「Arduino Ethernet」を選択した状態にします。
受信クライアントが接続していると確認した場合は、受信クライアントからバイトを読み込み、server.println関数によりサーバーに接続されているすべてのクライアントに読込んだ文字(ASCII文字)に改行を付けて送信します。
#include <Ethernet.h> #include <SPI.h> // シールドのメディアアクセス制御(イーサネットハードウェア)アドレス byte mac[] = { 0xDE, 0xAD, 0xBE, 0xEF, 0xFE, 0xED }; //シールドのIPアドレス byte ip[] = { 10, 0, 0, 177 }; // ルータのゲートウェイアドレス byte gateway[] = { 10, 0, 0, 1 }; // サブネット byte subnet[] = { 255, 255, 0, 0 }; // telnetはデフォルトでポート23になります EthernetServer server = EthernetServer(23); void setup() { // イーサネットデバイスを初期化する Ethernet.begin(mac, ip, gateway, subnet); // クライアントのリスニングを開始する server.begin(); } void loop() { // 受信クライアントが接続している場合は、読み込み可能なバイト数があります。 EthernetClient client = server.available(); if (client) { // 受信クライアントからバイトを読み込んで書き戻します // サーバーに接続されているすべてのクライアントに送信します。 server.println(client.read()); } }
■構文
server.println()
server.println(data)
server.println(data, BASE)
■パラメータ
data(オプション):出力するデータ(char、byte、int、long、またはstring)
BASE(オプション):数値を出力するベース
※ベース:2進数(BIN 2)、10進数(DEC)、OCT(8進数)、HEX(16進数)
■戻り値
byte(バイト)
println関数の読み取り値はオプションですが、書き込まれたバイト数を返します。