Gambar 5.2 Diagram blok pengukuran port paralel AT89S51
Cuplikan potongan program untuk menguji kondisi awal
port
paralel mikrokontroler AT89S51 adalah sebagai berikut:
Setb P0 ;Set Port 0 ke kondisi high bit 1
Call Delay ;Panggil delay
Clr P0
;Set Port 0 ke kondisi low bit 0 Call
Delay ;Panggil delay Setb
P1 ;Set Port 1 ke kondisi high bit 1 Call
Delay ;Panggil delay Clr
P1 ;Set Port 1 ke kondisi low bit 0
Call Delay ;Panggil delay
Setb P2 ;Set Port 2 ke kondisi high bit 1
Call Delay ;Panggil delay
Clr P2
;Set Port 2 ke kondisi low bit 0 Call
Delay ;Panggil delay Setb
P3 ;Set Port 3 ke kondisi high bit 1 Call
Delay ;Panggil delay Clr
P3 ;Set Port 3 ke kondisi low bit 0
Call Delay ;Panggil delay
End ;selesai
Hasil pengukuran pada masing-masing
port
mulai dari
port
0 hingga
port
3 pada mikrokontroler AT89S51 dapat dilihat pada tabel 5.1.
Tabel 5.1 Kondisi awal port paralel
PORT NO PIN
LOGIKA TEGANGAN 32 sd 39
High 4,36 V
Low 0,00 V
1 1 sd 8
High 4,36 V
Low 0,00 V
2 21 sd 28
High 4,36 V
Low 0,00 V
3 10 sd 17
High 4,36 V
Low 0,00 V
Voltmeter
Mikrokontroler AT89S51
Port 0 Port 1
Port 2 Port 3
Gambar 5.3 Pengukuran kondisi awal port paralel AT89S51
Dari hasil pengukuran yang dilakukan, kondisi
output
setiap
port
paralel dari minimum sistem mikrokontroler AT89S51 sesuai dengan program yang
dimasukkan. Hal ini menandakan sistem minimum yang dirancang telah dapat digunakan sebagai IO. Pengukuran kondisi awal
port
paralel dari minimum sistem mikrokontroler AT89S51 dapat dilihat pada gambar 5.3
5.2.2 Pengujian Sensor Arah Angin dengan Tampilan LCD
Sesuai dengan perancangan alat pada bab III, sensor arah dihubungkan dengan
port
2 mikrokontroler AT89S51 dan LCD dihubungkan dengan
port
dan
port
3. Diagram blok pengukuran sensor dapat dilihat pada gambar 5.4. Pengujian sensor dilakukan dengan memutar
flap
sensor arah angin dengan tangan ke 8 buah sensor secara bergantian.
Sensor arah angin berupa
switch
yang terdiri atas bagian yang dapat berputar bersama
flap
dan bagian yang diam
fix
. Sensor yang dapat berputar berupa tangkai yang diberi tegangan ± 5 Volt. Bagian lainnya yaitu terdiri atas 8
buah lempeng plat yang masing-masing terhubung dengan port 2 mikrokontroler AT89S51.Plat yang sejajar dengan
flap
akan mendapat tegangan sebesar + 5V sehingga salah satu dari delapan buah
port
2 mikrokontroler AT89S51 yang terhubung dengan sensor itu akan berlogika 1.
Mikrokontroler AT89S51 akan mengenali
port
yang mendapat bit 1 dan mengirim tulisan ke LCD arah angin pada saat tersebut.
4,36 Volt
Gambar 5.4 Blok diagram pengujian sensor arah angin
Realisasi
switch
yang digunakan sebagai sensor arah angin dapat dilihat pada gambar 5.5
Gambar 5.5 Switch pada sensor arah
Bahasa yang digunakan untuk membuat program pembacaan sensor arah angin adalah bahasa
assembly
.Cuplikan program untuk sensor arah angin adalah sebagai berikut:
Startarah: Jnb
SensorUtara,BukanUtara ;Jika SensorUtara bit 0 lompat ke BukanUtara
Mov DPTR,PesanUtara
;Copy data PesanUtara ke DPTR Lcall
Posisi2 ;panggil subrutin Posisi2
Ljmp baca ;lompat ke baca
BukanUtara: Jnb
SensorTimurLaut,BukanTimurLaut; Jika SensorTimurLaut bit 0 lompat ke BukanTimurLaut
Mov DPTR,PesanTimurLaut
;Copy PesanTimurLaut ke DPTR Lcall
Posisi2 ;panggil subrutin posisi2
Ljmp baca ;lompat ke baca
BukanTimurLaut: Jnb
SensorTimur,BukanTimur ;Jika SensorTimur
bit lompat ke BukanTimur
Mov DPTR,PesanTimur
;Copy PesanTimur ke DPTR Lcall
Posisi2 ;panggil subrutin posisi2
Ljmp baca ;lompat ke baca
AT89S51 LCD
Sensor Arah
Voltmeter
Port 2 Port 0
Bagian switch yang dapat
berputar