Hallo, selamat datang kembali. Pernahkah kita bertanya-tanya tentang bagaimana sensor mengirim data kemudian arduino menerima data terebut dan memprosesnya menjadi infomasi yang bisa kita mengerti atau bagaimana arduino mengirim data sensor pada perangkat display sehingga kita bisa menampilkan informasi hasil pengukuran sensor pada display tersebut. Untuk melakukan kegiatan-kegiatan semacam itu kita memerlukan protokol komunikasi, Protokol komunikasi adalah sebuah cara atau metode, agar mikrokontroller bisa bisa berkomunikasi dengan perangkat/modul lain sehingga memungkinkan untuk bisa saling mengirim dan menerima data dari satu sama lain. Data yang dikirim/diterima adalah data digital dalam bentuk bit-bit, data tersebut bisa dikirim secara parallel atau secara seri.
Transmisi data parallel
Transmisi data parallel adalah metode transmisi data dimana data berupa bit-bit data dikirim secara bersamaan melalui beberapa jalur secara paralel. Pada Arduino, ini dapat dilakukan dengan menggunakan beberapa pin digital untuk mewakili bit-bit data yang dikirimkan secara paralel.
Transmisi Data Serial
Transmisi data serial adalah suatu metode transfer data yang pengiriman data nya dilakukan bit per bit secara berurutan melalui satu jalur komunikasi. Arduino menggunakan protokol komunikasi serial asynchronous, yang menggunakan beberapa kabel seperti TX (Transmit) dan RX (Receive) untuk mengirim dan menerima data secara serial dengan komputer melalui kabel USB. Komunikasi serial memungkinkan pengiriman data satu arah atau dua arah antara Arduino dan perangkat lain, seperti sensor, layar LCD, komputer, atau perangkat mikrokontroler lainnya.
Keuntungan komunikasi serial adalah penggunaan kabel yang lebih sedikit, efisiensi penggunaan pin pada Arduino, dan kemampuan mentransfer data dalam jarak yang lebih jauh. Transmisi data serial diatur menggunakan protokol komunikasi, Protokol komunikasi serial yang umum digunakan pada Arduino adalah UART (Universal Asynchronous Receiver/Transmitter), I2C dan SPI.
Protokol Komunikasi Serial pada Arduino
Seperti yang sudah disebutkan sebelumnya, arduino memiliki 3 protokol komunikasi yaitu UART (Universal Asynchronous Receiver/Transmitter), SPI (Serial Peripheral Interface) dan I2C (Inter-Integrated Circuit).
Sebelum membahas tentang masing-masing protocol komunikasi serial, kita perlu mengetahui bahwa protokol komunikasi serial dikategorikan dalam dua tipe, yaitu synchronous dan asynchronous. Komunikasi Serial Synchronous adalah tipe komunikasi serial dimana pengiriman data terjadi secara teratur dan tersinkronasi dengan sinyal clock yang ditentukan. Transmitter dan reciever menggunakan sinyal clock yang sama untuk memastikan sinkronisasi terjadi secara akurat. Keuntungan dari komunikasi serial synchronous adalah akurasi dan kemampuannya untuk mentransfer data dengan kecepatan tinggi. Karena sinkronisasi yang ketat, data dapat dikirim dengan akurasi tinggi dan risiko kesalahan data dapat dikurangi. Contoh protokol komunikasi serial synchronous termasuk SPI (Serial Peripheral Interface) dan I2C (Inter-Integrated Circuit), yang digunakan untuk komunikasi antara mikrokontroler, sensor, dan perangkat lainnya.
Komunikasi Serial Asynchronous adalah tipe komunikasi serial dimana pengiriman data dilakukan tanpa menggunakan sinyalclock. Setiap karakter data dikemas dalam paket atau byte yang dilengkapi dengan bit pembatas awal (start bit) dan bit pembatas akhir (stop bit). Startbit menandai awal karakter, sementara stop bit menandakan akhir karakter. Waktu antara karakter dan kecepatan transfer data dapat bervariasi tergantung dari baudrate yang digunakan. Keuntungan dari komunikasi serial asynchronous adalah fleksibilitasnya dan kemampuan untuk mentransfer data melalui jarak yang lebih jauh. Tidak adanya ketergantungan pada sinyal clock eksternal memungkinkan perangkat dengan kecepatan transfer yang berbeda untuk berkomunikasi secara efisien. Namun, protokol ini memiliki tingkat akurasi yang lebih rendah dibandingkan dengan komunikasi synchronous. Contoh protokol komunikasi serial asynchronous yang umum digunakan adalah UART (Universal Asynchronous Receiver/Transmitter), yang sering digunakan dalam komunikasi serial pada arduino melalui pin Rx dan Tx.
Pemilihan protokol komunikasi serial synchronous atau asynchronous tergantung pada persyaratan komunikasi, kompleksitas perangkat keras, dan karakteristik data yang akan ditransmisikan. Komunikasi serial synchronous lebih cocok untuk transfer data yang memerlukan sinkronisasi yang ketat dan keakuratan tinggi, sementara komunikasi serial asynchronous lebih cocok untuk transfer data yang fleksibel dan jarak yang lebih jauh tanpa memerlukan sinyal clock eksternal. Pada Artikel selanjutnya kita akan membahas lebih detil tentang protokol komunikasi serial dan bagaimana memprogramnya menggunakan arduino.