-->

SETTING INPUT OUTPUT ARDUINO

Cara Setting Input Output Arduino;  Arduino mempunyai 13 pin (Digital I/O) yang dapat difungsikan sebagai input ataupun output. Dalam bahasa mikrokontroler pin ini disebut General Purpose Input Output (GPIO) atau dalam bahasa Indonesia bisa disebut pin dengan fungsi umum. Mode input ataupun output pada pin ini dapat dilakukan dengan memprogramnya pada void setup ().


Pin Mode Input
Pin pada arduino secara default telah difungsikan sebagai mode input, sehingga jika kita ingin menggunakan pin sebagai input tidak perlu menuliskan perintah pinMode (). Pin ini memiliki impedansi tinggi setara dengan pemasangan resistor 100 megaohm di depan pin. Dengan impedansi yang tinggi ini sangat memudahkan untuk mengubah dari satu keadaan ke keadaan lainnya. Hal ini sangat baik dalam membaca sensor seperti fotodioda, sensor sentuh kapasitif, atau sensor analog seperti RTC.


Jika pin sudah dikonfigurasikan sebagai mode input dengan perintah pinMode () dan pin tersebut tidak terhubung dengan apapun (terbuka) maka pin tersebut akan melaporkan keadaannya secara acak. Perubahan sedikit saja dari lingkungan dapat mempengaruhi keadaan pin.

Untuk menghindari keadaan pin input yang tidak menentu, maka perlu ditambahkan resistor pull up atau resistor pull down. Resistor pull up adalah resistor untuk menarik ke tegangan 5V, sedangkan resistor pull down untuk menarik ke tegangan 0V. Besarnya resistor ini sebaiknya menggunakan 10K.

Pin Mode Input Pull Up
Di dalam chip mikrokontroler yang ada pada Arduino board terdapat resistor pull up yang besarnya 20k. Resistor pull up ini tidak aktif secara otomatis saat kita mengatur pin untuk mode input. Pengaktifan resistor pull up ini dengan perintah pinMode (pin, INPUT_PULLUP);


Nilai dari resistor pull up ini tergantung dari mikrokontroler yang digunakan. Pada sebagian besar mikrokontroler berbasis AVR nilainya antara 20K dan 50K. Untuk lebih jelasnya bisa melihat data sheet mikrokontroler yang digunakan. Jika pin difungsikan sebagai Input Pullup, maka pin harus terhubung dengan 0V (GND). Sebagai contoh dalam menggunakan push button.


Saat menghubungkan sensor ke pin yang dikonfigurasi dengan INPUT_PULLUP, ujung lainnya harus terhubung ke ground. Dalam kasus sakelar sederhana, ini menyebabkan pin membaca HIGH saat sakelar terbuka dan LOW saat sakelar ditekan.

Penggunaan pin digital 13 akan ada masalah jika difungsikan sebagai input. Hal ini dikarenakan pin digital 13 terhubung dengan resistor dan LED yang terpasang secara permanen pada Arduino board. Jika pin digital 13 difungsikan sebagai inpur, resistor LED ini akan selalu menarik kebawah (pull down). Ini berarti pin akan selalu terbaca LOW. Jika terpaksa harus menggunakan pin 13 sebagai input, maka atur pin pada mode input saja. Jangan aktifkan resistor pull up internal, tetapi gunakan resistor eksternal sebagai pull down.

Pin Mode Output
Pin digital yang difungsikan sebagai output dengan perintah pinMode () mempunyai impedansi yang rendah. Hal ini berarti pin digital dapat mengeluarkan catu daya yang cukup besar ke komponen lain. Mikrokontroler tipe ATmega mampu mengeluarkan arus listrik hingga 40 mA. Dengan arus listrik yang sebesar itu dapat digunakan untuk menghidupkan LED, Relay daya kecil, ataupun buzzer.


Jika terjadi short (konslet) pada pin Arduino atau untuk mengendalikan komponen dengan arus yang tinggi dapat transistor output dalam pin bahkan dapat merusak seluruh chip mikrokontoler. Pin yang sudah rusak komponen internalnya tidak akan bisa digunakan lagi sebagai input ataupun output. Kalaupun bisa digunakan maka tidak akan berfungsi normal.

Iklan Atas Artikel

Iklan Tengah Artikel 1

Iklan Tengah Artikel 2

Iklan Bawah Artikel