RS-232, Sumber. |
Berabad-abad lalu, kita mengenal komunikasi Serial / RS-232 (Recommended Standard 232) untuk menampilkan pesan debug atau troubleshooting antara suatu perangkat (switch, router, PC, server, dll) dan laptop yang menjalankan terminal emulator. Cara ini terbukti efektif dan efisien untuk mempermudah penyelesaian masalah suatu perangkat tanpa harus menyediakan physical terminal seperti keyboard, mouse, monitor pada perangkat yang hendak ditroubleshoot.
Di masa kini saat perangkat mikrokontroler (arduino, raspberry pi, dll) mulai naik daun, kita mengenal teknik komunikasi baru yaitu UARTs (universally asynchronous receiver/transmitter) yang juga bisa mengirimkan dan menerima data secara serial. Teknik ini dikenal juga dengan TTL (Transistor-Transistor Logic). Walau kita baru mengenal teknik ini, tapi percayalah teknik ini bahkan lebih jadul dibanding RS-232. Lho?!
Baik RS-232 dan TTL sama-sama beroperasi dengan mengirim/menerima bit-bit sinyal dalam satu waktu yang umum dikenal dengan bitrate (9600 bps, 34800 bps, 115200 bps, dst).
Komunikasi ini dimungkinkan karena bit-bit sinyal saling ditransmisikan dengan logic tegangan tinggi ('1') dan logic tegangan rendah ('0').
Namun, bagaimana logic tegangan tinggi dan logic tegangan rendah dipergunakan oleh TTL dan RS-232 sangat jauh berbeda!
- TTL menggunakan logic tegangan tinggi ('1') dengan referensi sinyal 3.3V atau 5V, dan logic tegangan rendah ('0') dengan sinyal 0V.
- Sedangkan RS-232 menggunakan logic tegangan tinggi ('1') dengan sinyal NEGATIF range -3V sampai -25V, dan logic tegangan rendah ('0') dengan sinyal POSITIF rentang +3V sampai +25V. Pada umumnya PC dan Laptop menggunakan rentang tegangan -13V sampai +13V.
Timing sinyal RS-232 (ATAS) dan sinyal TTL (BAWAH). |
Jadi, jangan sekali-kali menancapkan port serial RS-232 dari PC ke Microcontroller yang menggunakan TTL ya! Awas board microcontroller bisa saja terbakar karena over voltage!!!
Solusi jika masih ingin menggunakan port RS-232 ke TTL microcontroller adalah buat rangkaian signal voltage reducer/pump dan pengubah polaritas sinyal ('1' ke '0' dan sebaliknya).
- TX RS-232 ke RX TTL --> voltage reducer (+13V ke 3.3V/5V dan -13V ke 0V) dan signal flipping
- TX TTL ke RX RS-232 --> voltage pump (+3.3V/5V ke +13V dan 0V ke -13V) dan signal flipping
RS-232 ke TTL Converter. Sumber |
Untungnya ada cara raw, ada cara instan. Saat ini di pasaran sudah tersedia chipset converter RS-232 ke TTL, yaitu MAX232. jadi ga perlu repot lagi!
Selamat berburu!