Official StoreTekan tombol di atas untuk membeli semua alat dan bahan eksperimen di web ini

Mengemulasi Pin Digital menjadi Pin Serial dengan SoftwareSerial

Komunikasi serial digunakan untuk bertukar data antar device menggunakan protokol serial. Sebenarnya ada dua macam tipe komunikasi serial yang dapat dibangun dengan Arduino, yakni serial sinkron (SPI, I2C/IIC dan TWI) dan serial asinkron melalui pin 0 dan 1. Pada tutorial kali ini yang akan dibahas adalah serial asinkron, karena tipe komunikasi ini dapat diemulasi dari pin digital biasa (pin 2 – 13). Sedangkan pin 0 dan 1 adalah pin yang secara native dirancang sebagai pin serial (asinkron).

Dengan pengemulasian pin digital menjadi pin serial, maka dalam satu papan Arduino Anda akan memiliki lebih dari satu pin serial. Satu pin serial dapat Anda gunakan untuk monitoring/debugging ke arah komputer (via kabel USB), pin serial yang lain dapat digunakan untuk berinteraksi dengan device lain untuk bertukar data. Contoh aplikasi yang menggunakan model seperti ini dapat Anda baca di artikel saya terdahulu, “Arduino Bluetooth Module HC-05 Sketch Handler

Bagaimana cara mengemulasi pin digital menjadi pin serial? Jawabannya adalah menggunakan library SofwareSerial.h. Anda perlu mendeklarasikan library di sketch Anda jika akan mengemulasi pin digital menjadi pin serial. Sebagai contoh, dapat Anda buka program/sketch ‘SoftwareSerialExample’ melalui menu File | Examples | SoftwareSerial | SoftwareSerialExample. Secara global program ini akan menjadikan/mengemulasikan pin 10 dan 11 menjadi pin serial, kemudian melempar/meneruskan semua data yang keluar masuk ke pin ini ke pin serial hardware di pin 0 dan 1. Karena pin 0 dan 1 terhubung dengan atmega16u2 yang bertugas melakukan komunikasi ke port USB, maka otomatis semua data yg masuk ke pin serial (software) 10 dan 11 akan dapat dimonitor komputer melalui jendela Serial Monitor via kabel USB.

2015-07-15 09_48_26-SoftwareSerialExample _ Arduino 1.6.5

Terakhir, berkat adanya library SoftwareSerial.h, fungsionalitas papan Arduino menjadi lebih maksimal karena Anda bisa memiliki lebih dari satu port serial yang dapat digunakan untuk berbagai keperluan. Namun library ini juga punya sedikit keterbatasan (terkait kemampuan hardware Arduino juga), yakni :

– maksimal baudrate yang dapat digunakan adalah 115200 bps

– jika Anda mengemulasi lebih dari satu pin serial pada pin digital, maka dalam satu waktu hanya satu pin serial yang dapat menerima data

– pada beberapa tipe papan Arduino yang lain seperti Arduino Mega, Mega ADK, Leonardo dan Micro, tidak semua pin digital dapat diemulasi menjadi pin serial. Silahkan melihat datasheet papan Arduino terkait untuk lebih detailnya.

Tetapi, walaupun memiliki keterbatasan, tetaplah library SoftwareSerial ini sangat membantu jika kita membutuhkan pin serial tambahan. Dan enaknya lagi, cara menambahkannya pun tidaklah sulit, karena semua function-nya disamakan dengan function serial bawaan Arduino. Silahkan dilihat kembali contoh program di atas, maka Anda akan mengerti maksud saya. Selamat mencoba ….

Incoming search terms:

cara burning boot loader atmega16u2, menggunakan software serial arduino, perbedaan hardware serial dengan software serial, cara membuat pin biasa menjadi serial, kegunaan sofware serial h dan permasalahanya, cara simulasi arduino di isis sketch sofwareserial h, softserial mega adk support gsm, cara mengkomunikasikan serial monitor dengan bluetooth pada proteus, cara menggunakan library softserial arduino, cara membuat pin menjadi serial
Tags:

Leave a Reply

11 Comments on "Mengemulasi Pin Digital menjadi Pin Serial dengan SoftwareSerial"

avatar
  Subscribe  
newest oldest most voted
Notify of
di2c
Guest

Gan Aji, maksudnya dalam satu waktu hanya satu pin serial yang bisa menerima data itu gimana ya?
karna saya rencana pake uno + modul bluetooth & gsm shield.
pin 0, 1, dengan bluetooth, pin 10, 11, dengan gsm shield. apakah komunikasi data 2 modul tersebut bisa di ekseksi dalam satu loop() ??
dan apakah klo pake 2 pin serial seperti itu pin 0, 1, harus di deklarasikan juga dgn Softwareserial atau tidak??

Durotul
Guest

Maaf mau menanyakan.
Saya ada modul laser yang kalau mau digunakan ke device lain katanya pakai komunikasi UART.
Nah, ketika melihat di serial monitor arduino harus send comment misal dengan ketik “D”, “S”, dll.
Bagaimana untuk mengambil dan mengolah data yang seperti itu ke arduino, karena rencananya mau digabungkan dengan sensor-sensor lainnya?
Terimakasih.
durotul.muntafiah@gmail.com

joko
Guest

Mas Aji, apakah arduino mega bisa difungsikan sebagai PPI, dengan bi-directional port yang bisa dibaca komputer dan tiap port bisa diaktifkan maupun dinonaktifkan dari program komputer?
Terimakasih.

wibi
Guest

Jika memanfaatkan Sofware serial dan Hardware serial dalam satu program bersamaan apakah bisa?
Software serial digunakan untuk komunikasi serial dan Hardware serial digunakan hanya untuk mengirim serial monitor untuk device Bluetooth, RF 433 mhz, dll.?

error: Content is protected !!