Communication Protocols in Microcontroller
Dalam microcontroller, setidaknya terdapat 3 jenis protokol komunikasi, yaitu:
UART
I2C
SPI
UART (Universal Asynchronous Receiver/Transmitter)
UART adalah protokol komunikasi yang paling dasar di mikrokontroler.
UART membutuhkan 2 pin untuk komunikasi, yaitu pin RX dan TX. Cara menghubungkannya seperti gambar di bawah.

Komunikasi Mikrokontroler dengan Komputer
Sebenarnya mikrokontroler seperti Arduino Uno dan ESP32 berkomunikasi dengan komputer melalui UART. Tetapi karena komputer menggunakan protokol USB, diperlukan converter antara keduanya.
UART —> Converter UART to USB —> USB
Jadi ketika kita menghubungkan mikrokontroler dengan port USB itu kita berkomunikasi dengan mikrokontroler melalui protokol UART.
Contoh converter USB to UART adalah CP2102, CH340, dan FT232RL.
Program Arduino untuk Berkomunikasi dengan Komputer
Komunikasi menggunakan protokol UART pada Arduino dilakukan menggunakan object Serial.
Contoh:
void setup() {
Serial.begin(115200);
}
void loop() {
Serial.println("Hello from Arduino!");
delay(1000);
}
Serial.print() mengirim data dalam format ASCII yang merupakan format untuk string atau char.
Apabila mau mengirim data bool, int, float, atau double sebaiknya menggunakan Serial.print().
Contoh:
void setup() {
Serial.begin(115200);
}
void loop() {
float range = 12.34;
int varSize = sizeof(range); // variable size (float = 4)
uint8_t buffer[varSize];
memcpy(buffer, &range, varSize);
Serial.write(buffer, varSize);
delay(1000);
}
belum selesai ditulis hehe