MODUL 07 (SPESIALIS IOT): PROTOKOL SERIAL BUS (UART, SPI, I2C)
๐ META MODUL & PRASYARAT
- Bidang Spesialisasi: Low-Level Hardware Communication Protocols.
- Target Pembaca: Pembelajar yang sudah memahami Interfacing Aktuator (Modul 06).
- Learning Outcome:
- Memahami perbedaan mendasar komunikasi Parallel vs Serial.
- Menguasai arsitektur dan prinsip kerja UART (Asynchronous Serial), I2C (2-Wire Bus), dan SPI (4-Wire High-Speed Bus).
- Mampu melakukan debugging sinyal bus serial menggunakan Serial Monitor / Logic Analyzer.
- Mampu mengatasi masalah bentrokan alamat I2C (I2C Address Collision).
- Estimasi Waktu Belajar: 120 Menit.
- Tingkat Kesulitan: ๐ก Menengah (Level 7 / 40).
- Prasyarat: Modul 06 (Pengkabelan & Interface Aktuator).
๐ TABEL COMPREHENSIVE PERBANDINGAN PROTOKOL BUS SERIAL
| Karakteristik | UART (Asynchronous) | I2C (Inter-Integrated Circuit) | SPI (Serial Peripheral Interface) |
| Jumlah Kabel Data | 2 Kabel (TX dan RX) | 2 Kabel (SDA dan SCL) | 4+ Kabel (MOSI, MISO, SCK, CS) |
| Sinyal Clock | Tidak Ada (Asinkron / Pakai Baud Rate) | Sinkron (Dikontrol kabel SCL) | Sinkron (Dikontrol kabel SCK) |
| Kecepatan Transfer | 9600 bps - 921.600 bps | 100 kbps (Standard) - 400 kbps (Fast) | Sangat Cepat (10 Mbps - 80 Mbps) |
| Topologi Jaringan | Point-to-Point (1 Master - 1 Slave) | Multi-Master & Multi-Slave (sd 127 Perangkat) | Multi-Slave (Menggunakan Pin CS khusus) |
| Jarak Jangkauan | Pendek (< 3 meter) | Sangat Pendek (< 1 meter) | Sangat Pendek (< 0.5 meter) |
| Penggunaan Utama | Modul GSM/GPS, Serial Monitor PC | Layar OLED, Sensor BME280/RTC | SD Card Module, Layar TFT Warna |
๐ง PENJELASAN TOPOLOGI BUS SERIAL
=======================================================================
DIAGRAM TOPOLOGI PERBANDINGAN BUS SERIAL
=======================================================================
A. UART (Point-to-Point 2-Wire):
[ ESP32 MCU ] โโโโ TX โโโโโโโโโโโโโโโโโโบ RX โโโโ [ Modul GPS / GSM ]
โโโโ RX โโโโโโโโโโโโโโโโโโ TX โโโโ
B. I2C BUS (Multi-Device 2-Wire dengan Pull-up Resistor):
3.3V โโ[ 4.7k ]โโโฌโโโโโโโโโโโ SCL (Clock Bus)
3.3V โโ[ 4.7k ]โโโผโโฌโโโโโโโโโ SDA (Data Bus)
โ โ
โโโโโโโโโโโโโโโผโโผโโโโโโโโโโโโโโโฌโโโโโโโโโโโโโโโผโโผโโโโโโโโโโโโโโโ
โ โ โ โ โ โ โ
[ ESP32 MASTER ] โ โ [ OLED Display 0x3C ] โ โ [ Sensor BME280 0x76 ]
(SCL) โโโโโโโโโโโโ โ (SCL) โ โ (SCL)
(SDA) โโโโโโโโโโโโโโ (SDA) โโโโโโโโโโโโโโโโโโโโ โ (SDA) โโโโโโโโโโโโโโโโโโ
C. SPI BUS (High-Speed 4-Wire Master-Slave):
[ ESP32 MASTER ] โโโโ MOSI โโโโโโโโโโโโโโโฌโโโโโโโโโโโโโโโบ [ SD Card Module ]
โโโโ MISO โโโโโโโโโโโโโโโผโโโโโโโโโโโโโโโ
โโโโ SCK โโโโโโโโโโโโโโโผโโโโโโโโโโโโโโโบ
โโโโ CS1 โโโโโโโโโโโโโโโ (Chip Select 1)
โโโโ CS2 โโโโโโโโโโโโโโโโโโโโโโโโโโโโโโบ [ Layar TFT Display ]
โก CHEAT SHEET I2C SCANNER CODE
#include <Wire.h>
void setup() {
Serial.begin(115200);
Wire.begin(21, 22); // ESP32 I2C Pin (SDA=21, SCL=22)
Serial.println("\n--- Memindai Alamat I2C Bus... ---");
byte count = 0;
for (byte address = 1; address < 127; address++) {
Wire.beginTransmission(address);
if (Wire.endTransmission() == 0) {
Serial.printf("Ditemukan perangkat I2C pada Alamat: 0x%02X\n", address);
count++;
}
}
if (count == 0) Serial.println("Tidak ada perangkat I2C ditemukan.");
}
void loop() {}
Latihan & Quiz Evaluasi Modul
Progres Quiz: 0 / 2 Soal
SOAL #1
Manakah protokol serial yang menawarkan **kecepatan transfer data paling tinggi** (hingga puluhan Mbps) untuk layar TFT dan SD Card?
SOAL #2
Komponen apa yang wajib dipasang pada kabel SDA dan SCL pada sirkuit bus I2C?
Kunci Jawaban & Pembahasan
Kunci Jawaban: 1. c. SPI, 2. b. Resistor Pull-up (4.7k Ohm).
Apakah Anda siap lanjut ke Modul 08: Konektivitas WiFi & Network Stack ESP32 (STA & AP Mode)?
Apakah Anda siap lanjut ke Modul 08: Konektivitas WiFi & Network Stack ESP32 (STA & AP Mode)?