hello sahabat anak kendali
pada kesempatan kali ini saya akan menuliskan tutorial tentang Arduino, Cara Parsing Data String Serial.
dimana kita akan menginputkan beberapa data melalui serial, bisa dari Bluetooth, Wifi, GSM atau device lainya yang menggunakan komunikasi serial dan datanya perlu kita gunakan untuk mengeksekusi suatu program,
keyword : |Parsing data serial| Parsing Data Arduino| Tutorial Parse Data Arduino| How To Parse Serial Data Arduino| Cara Parsing| Memecah Data| Membagi Data
misalkan kita mendapati data yang diterima dari modul GSM berupa SMS, yang kita perlukan mungkin hanya data nomer dan isi pesan sms nya saja, tapi data yang diterima sangat banyak, nomor sim, jam, tanggal, isi pesan.
nah kita perlu melakukan parsing sehingga data nya bisa di pecah, dan mengambil data yang kita perlukan saja.
disini saya mencontohkanya untuk memparsing data yang di inputkan dari Serial Monitor berupa data “|satu|dua|tiga|empat|lima” dan di serial monitor akan didapatkan data yang sudah dipecah dari kumpulan data diatas. seperti ini Data 1 = satu Data 2 = dua Data 3 = tiga Data 4 = empat Data 5 = lima baiklah langsung saja berikut adalah program arduino yang saya gunakan untuk melakukan Parsing Data Sring.
String myString;
char c;
int Index1,Index2,Index3,Index4,Index5,Index6;
String secondValue, thirdValue, fourthValue, fifthValue, firstValue;
void setup()
{
Serial.begin(9600);
}
void loop()
{
while (Serial.available()>0)
{
delay(10);
c = Serial.read();
myString += c;
}
if (myString.length()>0)
{
Index1 = myString.indexOf('|');
Index2 = myString.indexOf('|', Index1+1);
Index3 = myString.indexOf('|', Index2+1);
Index4 = myString.indexOf('|', Index3+1);
Index5 = myString.indexOf('|', Index4+1);
Index6 = myString.indexOf('|', Index5+1);
secondValue = myString.substring(Index1+1, Index2);
thirdValue = myString.substring(Index2+1, Index3);
fourthValue = myString.substring(Index3+1, Index4);
fifthValue = myString.substring(Index4+1, Index5);
firstValue = myString.substring(Index5+1, Index6);
//Serial.println(Index1);
Serial.print("data 1:");Serial.println(secondValue);
Serial.print("data 2:");Serial.println(thirdValue);
Serial.print("data 3:");Serial.println(fourthValue);
Serial.print("data 4:");Serial.println(fifthValue);
Serial.print("data 5:");Serial.println(firstValue);
myString="";
}
delay(1000);
}
 mungkin cukup sekian tutorial kali ini, untuk melihat hasil videonya silahkan tonton video berikut ini, dan jangan lupa untuk memberikan komentar dan membagikan artikel ini
gan punten itu di contoh kode yang agan tulis kurang variabel "my string".. thank's tutorialnya.. mantap..
kurang di bagian mananya gan? saya rasa sudah di paling atas String myString
terimakasih sudah memberi masukan 🙂
gan cara itu value nya kalau di ganti jadi |5|4|6|22|44 bisa di ubah ke int gk?
bisa.. tapi hasil yang tampil tetep tipenya string karena serial,, untuk rubah menjadi int nya cukup dengan fungso toInt()
myString fungsinya apa ya gan ?
penampungan data yang diterima
mau tanya apakah ada batasan untuk panjang string yang dibaca?
saya coba kirim string banyak hasilnya pasti kepotong ya, *sampai 22 value
kak, saya mau nanya. ketika data tersebut telah terpisah, kemudian ingin mengirimkan data yang telah terpisah tersebut ke database mysql bagaimana ya kak?