Modul 2 Pembacaan Port Mikrokontroler
Modul 2 Pembacaan Port Mikrokontroler
MODUL 2
Pembacaan dan Penulisan Port
Tujuan :
Praktikan dapat membaca Port masukan/keluaran dan melakukan
pemrosesan pada level bit atau byte.
Teori
Mikrokontroler 8051 mempunyai 4 buah port yang dapat difungsikan sebagai port
masukan atau keluaran. Pengubahan fungsi keluaran dan masukan pada port tidak
perlu ada proses inisialisasi. Keempat port berada di Special Function Register (SFR)
dengan nama dan alamat seperti pada Tabel 1 berikut ini.
Tabel 1
No Nama Alamat
1 P0 0x80
2 P1 0x90
3 P2 0x0A
4 P3 0x0B
Semua port dilengkapi dengan resistor Pull-Up, kecuali P0 yang open drain. Oleh
karena itu P0 membutuhkan resistor Pull-Up secara eksternal.
Port dapat diakses (baca atau tulis) secara byte atau bit. Operasi yang berhubungan
dengan operasi baca dan tulis port dapat berupa operasi Bitwise atau operasi logika.
Operasi Bitwise diperlihatkan seperti Tabel 2.
No Operator Keterangan
1 & Bitwise AND
2 | Bitwise OR
3 ^ Bitwise XOR
4 << Geser kiri
5 >> Geser kanan
6 ~ Bitwise NOT
{ pernyataan1}
else if
{ pernyataan2}
else
{ pernyataan3}
Alat
a. Software : MIDE-51
b. Komputer
Praktik
#include <at89x51.h>
void main()
{
unsigned char bufer;
while(1)
{
bufer=P1;
P2=bufer;
}
}
2. Beri nama, simpan dan kompail.
3. Jalankan simulator Dscope-51, pilih 8051.dll, dan load file hex hasil kompilasi.
4. Tampilkan P1 dan P2
5. Ubah nilai P1 dan catat perubahan pada P2, lakukan hal sebailknya. Catat
informasinya.
C. Mengkondisikan Masukan
1. Tulis listing program berikut ini.
#include <at89x51.h>
void main(void)
{
unsigned char tampung;
while(1)
{
tampung=P1&0x07;
P2=tampung;
}
}
D. Pengambilan Keputusan
1. Tulis listing program berikut ini.
#include <at89x51.h>
void main(void)
{
bit A,B,C;
A=P1_0;
B=P1_1;
C=P1_2;
if(A&B)
{P2=5;}
if((A&B)|(B&C)
{P2=2;}
}
2. Simulasikan dan catat kapan P2 bernilai 5 dan 2.
Tugas
Suatu sistem berbasis mikrokontroler 8051 mempunyai 3 buah masukan sensor
yang digunakan untuk mendeteksi keberadaan orang disekitar pintu otomatis. Sensor
mengeluarkan logika 1 jika ada orang dan 0 jika tidak ada orang. Sensor diletakkan
didepan pintu (sensor depan), tengah pintu (sensor tengah) dan di belakang pintu
(sensor belakang). Koneksi sensor dengan masukan mikrokontroler 8051 adalah
sebagai berikut.
Sensor depan = P1.0
Sensor tengah=P1.1
Sensor belakang=P1.2
Pembuka pintu dihubungkan dengan P2.0 dan akan membuka jika berlogika 1,
menutup jika berlogika 0. Pintu akan membuka jika sensor depan =1, sensor
tengah =1 kemudian akan menutup jika sensor belakang 1 atau sensor belakang
=1, sensor tengah=1 kemudian akan menutup jika sensor depan =1.
a. Buat diagram blok rangkaiannya.
b. Buat program untuk sistem di atas.