Serial.print vs Serial.write
Perbedaan Serial print dan Serial write Pada Pemrograman Arduino – Pada pemrograman Arduino, kita akan menggunakan komunikasi serial untuk dapat mengirim dan menerima data antar perangkat.
Ada dua perintah dasar pengiriman data pada pemrograman platform arduino yaitu Serial.print dan Serial.write. Keduanya dapat berperan penting pada proses pengiriman data.
Dalam proses debugging, serial.print dan serial.write sangat sering dipakai karena untuk memberi tahu proses alur kerja dari program yang kita buat, pada blok program yang mana yang masih bermasalah.
lalu apa sebenarnya yang membuat beda antara serial print dan serial write?
Serial.print vs Serial.write
Merujuk ke halaman arduino referense, proses pengiriman data serial berbeda dalam proses keluarannya.
Serial.print akan mengirimkan data ke port serial dalam teks ASCII yang dapat dibaca manusia. Sedangkan Serial.write akan mengirimkan data dalam bentuk biner.
Contoh Serial Print:
- Serial.print(98)
Ini akan menampilkan “98” - Serial.print(1.2345)
Ini akan menampilkan “1.23” - Serial.print(1.234567, 5)
Ini akan menampilkan “1.23456”. angka 5 setelah koma bertujuan untuk menampilkan berapa angka setelah titik yang ingin ditampilkan. - Serial.print(‘X’)
Ini akan menampilkan “X” - Serial.print(“Arduino32”
Ini akan menampilkan “Arduino32”
Contoh Serial Write:
- Serial.write(1)
Ini akan menampilkan “0001” - Serial.write(98)
Ini akan menampilkan “01100010” - Serial.write(1.2345)
Ini akan mengirimkan data “1.23450005054473876953125E0” dan menampilkan data biner “00111111 10011110 00000100 00011001” - Serial.write(‘X’)
Ini akan menampilkan data biner “01011000” - Serial.write(“Arduino32”)
Ini akan menampilkan data biner “010000010111001001100100011101010110100101101110011011110011001100110010”
Parameter lain Serial Print
Selain contoh yang disebutkan diatas, terdapat satu fitur lagi jika menggunakan perintah Serial.print yaitu mengkonversi dan menampilkan data dalam bentuk format tertentu.
Format tersebut di antaranya adalah Biner, Hexadesimal, Oktal, Desimal, menampilkan seberapa banyak data setelah koma dan menyimpan data dalam memori flash.
Berikut Contohnya:
- Serial.print(98, DEC)
Maka akan memberikan nilai desimal “98” - Serial.print(98, BIN)
Ini akan memberikan nilai biner “1100010” - Serial.print(98, HEX)
Ini akan memberikan nilai heksadesimal “62” - Serial.print(98, OCT)
Ini akan memberikan nilai Oktal “142” - Serial.print(98.87898, 3)
Ini akan memberikan nilai float “98.878” - Serial.print(98.87898, 5)
Ini akan memberikan nilai float “98.87898” - Serial.print(F(“Arduino32”))
Ini akan mengirimkan string “Arduin32” ke memori flash.
Semoga dapat menambah wawasan anda dalam pemrograman berbasis platform Arduino.
Jika artikel ini bermanfaat, silahkan share menggunakan tombol berbagi yang ada dibawah.