Sabtu, 30 Januari 2010

AVR : Pin RESET AVR

.
Setiap mikrokontroller memiliki pin reset, mikrokontroller MCS51 maupun AVR juga memiliki pin reset. Jika pada MCS51 pin reset aktif HIGH, maka pada AVR pin reset aktif LOW. Saya akan mencoba membahas pin reset pada AVR, karena setelah membaca tentang "Hardware Design Consideration", ternyata pin reset pun harus dirancang sebaik mungkin.

Pin RESET pada AVR aktif low yang maksudnya reset mikrokontroller akan terjadi jika pin RESET diberi logika 0. RESET memiliki 2 fungsi atau tujuan antara lain :
  1. Membuat semua pin dalam kondisi tri-state (High Impedance) kecuali pin XTAL, menginisialisasi register I/O, dan meng-set counter program kembali ke NOL.
  2. Memasuki mode program (beberapa IC lain juga menggunakan pin PEN untuk memasuki mode program). Selain itu memungkinkan untuk menggunakan mode memprogram chip paralel/tegangan tinggi dengan memberikan pin RESET tegangan 11,5 Vdc - 12 Vdc (lihat datasheet chip).
Pin Reset AVR memiliki resistor pull-up internal agar mikro tidak reset sendiri tetapi resistor pull-up internal ini tidak cukup jika lingkungan memiliki ganguan-ganguan dan mikro dapat reset yang terjadi secara sporadis. Resistor pull-up eksternal dapat digunakan untuk menjaga agar pin RESET tidak berlogika 0 secara tidak disengaja. Besarnya nilai resistor ini secara teori bisa bernilai berapa saja tetapi untuk aplikasinya gunakan nilai resistor yang tepat agar pin RESET dapat diubah logikanya menjadi LOW sehingga dapat diprogram. Nilai pada umumnya dan yang direkomendasikan adalah 10Kohm dan untuk keperluan debugWIRE tidak boleh lebih kecil dari 10Kohm.

Untuk melindungi pin RESET dari noise, kapasitor dapat ditambahkan yang terhubung dengan pin Reset dan Ground. Kapasitor tidak begitu dianjurkan penggunaannya karena AVR telah memiliki low-pass filter internal untuk mengurangi efek bounching pada pin Reset, tetapi penggunaan kapasitor eksternal lebih kepada proteksi tambahan pada pin reset.
Penggunaan kapasitor eksternal tidak diperbolehkan apabila menggunakan debugWIRE.

Beberapa mikrokontroller dapat ditambahkan eksternal rangkaian Brown-out (drop tegangan / penurunan tegangan) tetapi AVR memiliki rangkaian Brown-out internal sehingga lebih aman dan merupakan solusi sederhana untuk mengontrol kondisi pin RESET.

Jika tidak menggunakan mode memprogram tegangan tinggi, disarankan dioda pelindung ESD (Electrostatic Discharge) antara pin RESET dengan VCC karena tidak terdapat pelindung internal untuk mode memprogram tegangan tinggi. Dioda Zener dapat digunakan untuk membatasi tegangan pada pin Reset terhadap Ground. Dioda Zener ini sangat disarankan apabila mikrokontroller digunakan pada lingkungan yang memiliki noise tinggi.

Komponen-komponen ini (Resistor pull-up eksternal, kapasitor eksternal, dan Dioda Zener) letakkan sedekat mungkin dengan pin Reset Mikrokontroller AVR.

Semoga bermanfaat ;).

Topik yang Populer