Komunikasi serial merupakan komunikasi data antara satu peripheral ke peripheral lainnya, ada perangkat yang bertindak sebagai pengirim (transmisi data) dan yang lainnya sebagai penerima (receiver). selain komunikasi serial sebenarnya ada komunikasi paralel, pengiriman data lebih cepat dengan cara ini tetapi memerlukan koneksi/kabel yang lebih banyak dibanding komunikasi serial. pengiriman data dengan konsep serial yaitu data ditarnsfer tiap bit, data-data bit tersebut dapat dianalogi seperti manusia yang antri masuk ke bisokop satu persatu. pada arduino terdapat pin RX dan TX artinya kita difasilitasi untuk mengirim data dan menerimanya dengan konsep serial ini.
jika kita ingin mengirim data ke database atau mengirim data secara wireless melalui koneksi wifi maka arduino saja tidak cukup, kita memerlukan perangkat lain yang dapat melakukan hal tersebut, salah satunya adalah NodeMCU ESP8266. Nodemcu ESP8266 sudah dilengkapi modul WiFi bernama ESP-12E yang tertanam pada nodemcu tersebut.
Arduino dan NodeMCU ESP8266 dapat berkomunikasi satu sama lain dengan konsep komunikasi serial karena NodeMCU ESP8266 juga memiliki pin RX TX yang merupakan fasilitas untuk komunikasi serial. kita bisa mengirim data dari arduino ke nodemcu esp8266 atau sebaliknya dari nodemcu ke Ardunio. supaya hal tersebut dapat dilakukan, kita membuat koneksi antara kedua komponennya, adapun koneksinya dapat dilihat pada tabel 1:
Adapun koding arduinonya dapat dilihat pada sintaks di bawah ini:
//RX arduino ke TX Nodemcu //TX Arduino ke RX Nodemcu //saat mau upload, lepas koneksi kabel antara arduino dengan nodemcu void setup() { // put your setup code here, to run once: Serial.begin(9600); } void loop() { // put your main code here, to run repeatedly: long data = 3231292; Serial.println(data); delay(1000); }
sedangkan koding untuk nodemcu dapat dilihat pada sintaks berikut ini:
//RX Nodemcu ke TX Arduino //TX Nodemcu ke RX Arduino //saat mau upload, lepas koneksi kabel antara arduino dengan nodemcu void setup() { // put your setup code here, to run once: Serial.begin(9600); } void loop() { // put your main code here, to run repeatedly: char buffer[20]=""; if(Serial.available()>0){ Serial.readBytesUntil('\n',buffer,20); Serial.println(buffer); } }
Bagaimana, apakah anda sudah berhasil membaca data di nodemcu esp8266? kalau iya, selamat!