Lompat ke konten Lompat ke sidebar Lompat ke footer

Cara Serial Print Satu Baris Gabung Banyak Variabel

Multi Variabel Didalam Serial Print

Bismillahirrahmanirrahim. Dalam melakukan debug, kita biasanya akan mencetak berbagai karakter atau teks ke serial monitor, baik itu dari teks biasa atau variable yang nilainya akan berubah setiap waktu.  Pada artikel ini saya akan membagikan cara print data dari banyak atau gabungan variabel dan teks dalam satu baris.

Secara default, untuk mencetak sesuatu di Serial Monitor, kita akan membuat itu baris demi baris, seperti pada kode berikut:

//dibuat oleh arduinokode.blogspot.com

bool   a = true;
int    b = 10;
float  c = 20.34;
char   d = '%';
String e = "Final";

void setup() {
  Serial.begin(9600);

  Serial.print("A=");
  Serial.print(a);
  Serial.print(" B=");
  Serial.print(b);
  Serial.print(" C=");
  Serial.print(c);
  Serial.print(" D=");
  Serial.print(d);
  Serial.print(" E=");
  Serial.print(e);
  Serial.println();
}

void loop() {
  // put your main code here, to run repeatedly:

}

Kode diatas akan menghasilkan seperti gambar berikut:

Cara Serial Print Satu Baris Dari Banyak Variabel

Sekarang, bayangkan jika terdapat banyak variabel yang akan kita debug, tentunya akan banyak baris yang akan kita buat.

Untuk mempersingkat hal tersebut, kita dapat meringkat beberapa baris serial print menjadi satu baris saja.

Ada 2 beberapa metode untuk melakukan tersebut berdasarkan pengalaman saya yaitu ubah semua data menjadi string atau menggunakan printf.


Cara 1: Merubah Semua Variabel Ke String

Ini adalah cara termudah dan tersimple yang dapat anda gunakan. Agar dapat menampilkan semua variabel dengan tipe data yang berbeda dalam satu baris, maka semua tipe data harus kita ubah manjadi string.

Caranya dengan menambahkan "(String)" sebelum variabel didalam Serial.print. Format penulisannya ditunjukkan pada kode arduino berikut ini:

//dibuat oleh arduinokode.blogspot.com

bool   a = true;
int    b = 10;
float  c = 20.34;
char   d = '%';
String e = "Final";

void setup() {
  Serial.begin(9600);
  Serial.println((String)"A=" + a + " B=" + b + " C=" + c + " D=" + d + " E=" + e);
}

void loop() {
  // put your main code here, to run repeatedly:

}

Maka hasilnya sama seperti pada gambar diatas.


Cara 2: Menggunakan printf

Selain cara diatas, salah satu perintah dari C++ yang dapat kita gunakan adalah printf. 

Ini tidak dapat digunakan pada board Arduno Uno, Mega atau Nano. Jika di compile akan menghasilkan error:

class HardwareSerial' has no member named 'printf

Namun bekerja dengan baik untuk ESP8266, NodeMCU atau ESP lainnya. Contoh kode arduino serial monitor satu baris menggunakan printf adalah sebagai berikut:

//dibuat oleh arduinokode.blogspot.com

bool   a = true;
int    b = 10;
float  c = 20.34;
char   d = '%';
String e = "Final";

void setup() {
  Serial.begin(9600);
  Serial.printf("A=%d B=%d C=%f D=%c E=%s \n",a,b,c,d,e);
}

void loop() {
  // put your main code here, to run repeatedly:

}

Hasilnya sama seperti pada gambar di atas. Untuk mengetahui lebih lanjut cara menggunakan printf, baca artikel printf format string.

Semoga artikel ini bermanfaat untuk anda.

Posting Komentar untuk "Cara Serial Print Satu Baris Gabung Banyak Variabel "