goleklayangan


CONTOH UNTUK MENGATASI GETARAN SAKLAR(BOUNCING EFFECT)
April 30, 2009, 5:39 am
Diarsipkan di bawah: kuliah

CONTOH UNTUK MENGATASI GETARAN SAKLAR(BOUNCING EFFECT)

menggunakan at89s51

berikut listing programnya
BACATOMBOL:
mov TMOD,#01010000B; TEMER 1, MODE 1
JNB T1,$ ; TUNGGU DISINI SAMPAI TOMBOL DI TEKAN
MOV TL1,#LOW(-50000) ; SIAPKAN WAKTU TUNDA 50MILIDKT
MOV TH1,#HIGH(-50000)
CLR TF1  ;MENOLKAN BIT LIMPAHAN
SETB TR1 ; TIMER MULAI BEKERJA
JNB TF1,$ ; TUNGGU DISINI SAMPAI MELIMPAH
CLR TR1 ; TEMER BERHENTI BEKERJA
RET

dengan progrm tersebut, saklar dipasangkan pada kaki t1(P3.5) dengan konfigurasi aktif rendah, pencacah biner yang dipakai adalah pencacah biner 16 bit yang sudah ditentukan dengan intruksi MOV TMOD,#00010000B. Pada baris berikutnya program menunggu saklar yang terhubung pada T1 ditekan, selama saklar belum ditekan mikrokontroler akan tertahan pada instruksi JB T1,$.

dua baris berikutnya adalah cara mengisikan nilai -50000 yang terdiri dari 2byte ke register tl1 dan th1. bit TF1 di nolkan (baris 6),dan akan kembali menjadi 1 setelah TL1/TH1 mencacah dari -50000 kembali menjadi 0000h(terjadi limpahan pada Timer 1). Eaktu tunda dimuali segera setelah instruksi SETB TR1(baris 7) dan selesainya waktu tunda ditunggu dengan instruksi JNB TF1,$ (baris8). jika AT89C51/52/55 bekerja dengan kristal 12Mhz, waktu tunda selama 50.000 siklus sama dengan 50.000 X 1mikrodtik= 50mili detk.

setelah menunggu selama 50mili-detik, pencacah biner kembali di nonaktifkan dengan CLR TR1(baris9) dan berikutnya meninggalkan sub rutin ini dengan intruksi RET(baris10).Dengan demikian Mikrokontroler akan menunggu saklar stabil, selam saklar masih bergetar mikro kontroler masih tertahan di dalam sub-rutin BACATOMBOL.


No Comments Yet sejauh ini
Tinggalkan komentar



Tinggalkan komentar
Baris dan paragraf terpisah secara otomatis, alamat email tidak akan ditampilkan, kode HTML diperbolehkan: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <pre> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>