Advertisement

Menghitung Perlunya Resistor Pull Up Pada Mikrokontroler

0 10.600

Istilah penggunaan resistor pull-up sangat umum dijumpai ketika menggunakan mikrokontroler atau perangkat logika digital yang lain. Artikel ini akan menjelaskan kapan dan dimana  resistor pull-up digunakan dan mengapa resistor pull -up itu penting

Misalkan, sebuah pin pada  mikrokontroler dikonfigurasi sebagai sebuah input. Jika tidak ada yang terhubung dengan pin, dan program mikrokontroler memerlukan data kondisi dari pin, apakah berada pada logika 1 atau 0. Kondisi tersebut akan sulit ditentukan, fenomena ini disebut sebagai kondisi mengambang (floating).  Untuk menghindari kondisi yang tidak diketahui seperti ini, sebuah resistor pull-up atau pull-down akan dipasangkan pada pin mikrokontroler tersebut untuk memastikan apakah kondisinya HIGH atau LOW dengan menggunakan sejumlah arus yang kecil

Untuk penyederhanaan, tulisan ini difokuskan pada pembahasan resistor pull-up dikarenakan pemakaiannya yang lebih sering ketimbang pull-down. Pull-up dan pull-down berkerja dengan konsep yang sama, yang membedakan hanyalah bahwa resistor pull-up terhubung ke  VCC, sedangkan pulldown terhubung ke ground

Adverstiment

Dengan resistor pull-up, pin input akan terbaca HIGH jika button tidak ditekan. Dengan kata lain, sejumlah kecil arus akan mengalir dari VCC ke pin input (bukan ke ground), sehingga pin input akan terbaca pada kondisi logika 1.

Namun jika push button ditekan, pin input akan terhubung langsung ke ground, sehingga arus dari VCC akan mengalir melewati resistor ke GND, sehingga pin input akan terbaca pada kondisi LOW. Yang perlu diperhatikan, jika tidak ada  resistor tersebut, maka VCC akan langsung terhubung dengan GND, yang menimbulkan kondisi hubung singkat yang tidak diinginkan. Disinilah pentingnya resistor pada rangkaian tersebut.

Namun berapa besaran resistor yang hendaknya dipilih? Jawaban yang paling mudah adalah resistor dengan nilai kisaran 10kΩ untuk resistor pull-up. Resistor dengan nilai resistansi yang kecil disebut strong pull-up karena semakin banyak arus yang dihantarkan, sedangkan resistor dengan hambatan yang besar disebut weak pull-up  yang berarti semakin sedikit aliran arus yang mengalir

Adverstiment

Nilai resistor pull-up yang dipilih harus memenuhi dua kriteria berikut

  1. Ketika button ditekan, pin input akan menjadi LOW. Nilai resistor R1 akan mengendalikan seberapa besar arus yang ingin dialirkan dari VCC, melalui button kemudian ke Ground
  2. Ketika button tidak ditekan, pin input akan menjadi HIGH. Nilai dari resistor pull-up akan mengendalikan tegangan ke pin input.

Untuk kondisi 1, seorang perancang tidak ingin nilai resistor terlalu kecil, karena semakin kecil resistansi, akan berdampak pada semakin banyak daya yang digunakan ketika button ditekan. Nilai yang dipilih biasanya  berkisar pada 10kΩ, namun nilai yang terlalu besar juga tidak baik karena akan bermasalah degan kondisi 2, dimana resistor pull-up (R1) harusnya dijaga berada pada kisaran 1/10 dari impedansi pin input (R2).

Biasanya pin input memiliki impedansi dapat bervariasi antara 100kΩ, – 1MΩ. Jadi ketika button tidak ditekan, sejumlah arus yang kecil akan mengalir dari VCC melewat R1 dan masuk ke pin input. Resistor pull-up R1 dan pin impendansi input R2 akan membagi tegangan dan tegangan tersebut haruslah cukup besar agar pin input terbaca pada kondisi HIGH

Sebagai contoh, jika digunakan resistor 1MΩ sebagai resistor pull-up R1 dan impendansi pin input R2  pada kisaran 1MΩ maka pembagi tegangan yang terbentuk akan membuat tegangan yang masuk ke pin input sekitar setengah dari VCC, dan dengan kondisi tersebut ada kemungkinan bahwa mikrokontroler tidak akan mencapai kondisi HIGH.

- Advertisement -

Pada mikrokontroler yang beroperasi dengan tegangan 5V, mikrokontroler dengan masukan tegangan 2.5V akan berada pada kondisi yang tidak diketahui. Karena itu adalah penting menggunakan resistor dengan nilai yang sesuai sebagai resistor pull-up yaitu pada kisaran 10k Ω hingga 100kΩ

Hal lain yang perlu dipertimbangkan dalam menentukan nilai resistor pull-up adalah semakin tinggi resistansi dari resistor pull-up, maka semakin rendah bagi pin untuk merespon perubahan kondisi tegangan. Hal ini dikarenakan sistem yang mengumpan ke pin input sebenarnya adalah kapasitor yang dirangkai dengan resistor pull-up, yang kemudian membentuk RC filter, filter RC akan membutuhkan sejumlah waktu untuk melalui proses charge dan discharge. Jika sinyal yang terhubung berubah dengan sangat cepat seperti USB, resistor pull up dengan nilai yang tinggi dapat membatasi kecepatan dari pin untuk membaca perubahan kondisi. Itu sebab mengapa dalam jalur sinyal USB, sering ditemui resistor  1k hingga 4.7KΩ.

Pada perkembangan selanjutnya, dikarenakan kebutuhan akan resistor pull-up semakin diperlukan, mikrokontroler mulai dari famili ATMega hingga STM32 telah menyertakan resistor pull-up internal yang bisa diaktifkan atau dimatikan melalui code program.

Diterjemahkan dengan beberapa perubahan dari https://learn.sparkfun.com/tutorials/pull-up-resistors/all
Baca juga tulisan menarik lainnya tentang #Mikrokontroler

 

Situs ini menggunakan Akismet untuk mengurangi spam. Pelajari bagaimana data komentar Anda diproses.

%d blogger menyukai ini: