NOBのArduino日記!

NOBのArduino日記!

趣味は車・バイク・自転車・ラジコン・電子工作です。

Arduino IDE(SoftwareSerial: print関数の使い方)

■SoftwareSerial: print関数
 SoftwareSerial: print関数は、ソフトウェアシリアルポートの送信ピンにデータを出力します。
 これはSerial.print関数と同じ働きをします。

■使用例
 ArduinoIDEで使用するSoftwareSerial: print関数の使い方は以下の通りです。
 試しにこのプログラムをArduinoUNOで実行すると、最初にSoftwareSerial関数でシリアルポートオブジェクトを名前を付けて作成します。
 次にSoftwareSerialライブラリの.begin関数で作成したオブジェクトを指定してソフトウェアシリアルの初期化(通信速度の設定)を行います。
 最後にSoftwareSerialライブラリの.print関数によってA0ピンから読み込んだ電圧を様々な形式にしてシリアルモニターに出力します。

#include <SoftwareSerial.h>
SoftwareSerial serial(10, 11);
int analogValue;

void setup() {
   serial.begin(9600);
}

void loop() {
   // ピン0のアナログ入力を読み取ります。
   analogValue = analogRead(A0);
   // 様々な形式で出力します
   serial.print(analogValue);                 // ASCIIでエンコードされた10進数として出力する
   serial.print("\t");                               // タブ文字を印刷する
   serial.print(analogValue, DEC);       // ASCIIでエンコードされた10進数として出力する
   serial.print("\t");                               // タブ文字を印刷する
   serial.print(analogValue, HEX);       // ASCIIでエンコードされた16進数として出力する
   serial.print("\t");                               // タブ文字を印刷する
   serial.print(analogValue, OCT);       // ASCIIでエンコードされた8進数として出力する
   serial.print("\t");                               // タブ文字を印刷する
   serial.print(analogValue, BIN);       // ASCIIでエンコードされたバイナリとして出力する
   serial.print("\t");                               // タブ文字を印刷する
   serial.println();                                   // 改行文字を出力します
   delay(10);// 次の読み取りの前に10ミリ秒待つ
}
イメージ 1
図1:プログラム例

■構文
 mySerial.print(data,format)

■パラメータ
 data     : 出力するデータ(全ての型)を指定します
 format : 基数または有効桁数(浮動小数点数の場合) を指定します。
      参考に命令文とその出力結果を表1に示します。

表1:命令と出力結果
命令 出力 備考
Serial.print(78) 78 整数はそのまま出力
Serial.print(1.23456)     1.23 小数点以下2桁まで出力
Serial.print('N') N 一文字単位で出力
Serial.print("Helloworld")  Helloworld 一文字単位で出力
Serial.print(78, BIN) 1001110 2進数で出力
Serial.print(78, OCT) 116 8進数で出力
Serial.print(78, DEC) 78 10進数で出力
Serial.print(78, HEX) 4E 16進数で出力
Serial.print(1.23456, 0)  1 少数点以下0桁まで出力
Serial.print(1.23456, 2) 1.23 少数点以下2桁まで出力
Serial.print(1.23456, 4) 1.2346 少数点以下4桁まで出力
 

■戻り値
 バイト数。
 print関数は書き込まれたバイト数を返しますが、その数値を読み取ることはオプションです。 

イメージ 1 イメージ 3
励みになりますのでよければクリック下さい(^o^)/

↩【ArduinoIDE reference】目次に戻る