Analisa mikro adheln

download Analisa mikro adheln

of 3

description

jkjk

Transcript of Analisa mikro adheln

Analisa :Pada praktikum ini melakukan percobaan TIMER/COUNTER, dimana pada percobaan ini Timer/Counter digunakan sebagai pengatur waktu yang systemnya menambahkan diri hingga overflow. Timer memanfaatkan frekuensi osilator untuk bertambah tiap machine cycle. Timer juga bisa digunakan untuk menghitung suatu periode waktu antara kejadian, sebagai jarak waktu antara kejadian. Sedangkan Counter dapat digunakan untuk menghitung jumlah unculnya suatu kejadian.Berikut hasil percobaan penggunaan Timer/Counter :1. Program Timer/Counter 0 sebagai timer mode 0/1 untuk LED bit 5 pada port 1 berkedip.$MOD51CSEGORG 4000HLJMP Start

ORG 400BHCOUNT: INC R0CJNE R0,#10H,OUT1SETB P1.5MOV R7,#0FFHLUP: MOV R6,#0FFHDJNZ R6,$DJNZ R7,LUPCLR P1.5MOV R0,#00HOUT1: MOV TH0,#2CHMOV TL0,#00HRETI;inisialisasiORG 4200HStart: MOV SP,#30HMOV R0,#00HMOV TMOD,#01HMOV TH0,#2CHMOV TL0,#00HMOV TCON,#10HMOV P1,#00HMOV IE,#82HSJMP $END

Dari program diatas dapat dihasilkan output yaitu pada LED bit ke lima akan muncul secara berkedip dengan delay yang dapat diatur.COUNT: INC R0CJNE R0,#10H,OUT1SETB P1.5MOV R7,#0FFH

Berikut ini merupaka pengaturan dari variable R0 dibuat increment yang artinya nilai dari variable R0 akan bertambah 1 step sampai dengan nilai yang ditentukan kemudian akan kembali ke awal lagi. Selanjutnya saat nilai dari R0 ini adalah 10H maka port 1 bit ke 5 akan menampilkan output led dengan nyala berkedip sesuai dengan nilai batas untuk R0 ini . Saat nilai R0 ini dibatasi 10H delay dari nyala lampu LED selama 1,64 s sedangkan saat diberi nilai 20H delay selama 2,23 s. Jadi nilai batasan ini akan menentukan seberapa lama delay yang digunakan.

CLR P1.5MOV R0,#00H

Perintah ini untuk mengatur nilai R0 kembali ke 00H dan mematikan LED yang berada pada port 1 bit ke 5.

OUT1: MOV TH0,#2CHMOV TL0,#00HRETI

Perintah ini digunakan untuk mengisi nilai register/counter 0 dengan nilai 2C00H.

Jadi untuk program yang pertama ini dimulai dengan penambahan nilai variable R0 secara otomatis sampai batas yang ditentukan sebagai jeda waktu/ delay sehingga nilai batas tersebut sebagai penentu selang waktu nyala lampu led selanjutnya. Setelah nilai sampai batasnya maka variable tersebut diatur ulang ke nilai 00H untuk kembali lagi ke proses awal.

2. Program Timer/Counter 1 sebagai Timer mode 2 untuk nyala LED pada Port 1 bergantian , jika ada interrupt LED bit 5 nyala.

$MOD51CSEGORG 4000HLJMP StartORG 401BHCOUNT: INC R1CJNE R1,#0FFH,OUT1INC R0CJNE R0,#44H,OUT1MOV P1,#00HSETB P1.5LCALL SDELAYLCALL SDELAYMOV R1,#00HMOV R0,#00HOUT1: RETIORG 4100HSDELAY: PUSH 7PUSH 6MOV R7,#0FFHLUP: MOV R6,#0FFHDJNZ R6,$DJNZ R7,LUPPOP 6POP 7RETDELAY: MOV R7,#04HLUP1: MOV R6,#0FFHLUP2: MOV R5,#0FFHDJNZ R5,$DJNZ R6,LUP2DJNZ R7,LUP1RET;inisialisasiStart: MOV SP,#30HMOV R1,#00HMOV R0,#00HMOV TMOD,#20HMOV TH1,#01HMOV TL1,#02HSETB TR1MOV IE,#88H;main programLOOP1: MOV P1,#00110011BLCALL DELAYMOV P1,#11001100BLCALL DELAYSJMP LOOP1ENDUntuk program ini