Anda di halaman 1dari 15

4.

Programmable Interval Timer (PIT 8253 / 8254)


Kompatibel dengan semua mikroprosesor INTEL dan sebagian besar
mikroprosesor
Mempunyai status Read-Back
6 mode yang dapat diprogram
Mempunyai 3 counter 16 bit yang berdiri sendiri
Penghitungan secara biner dan BCD (Binary Coded Decimal)
Catu daya tunggal 5 volt

4.1 Diskripsi Fungsional 8253 / 8254


PIT banyak digunakan dalam sistem mikrokomputer karena time
delay (waktu tunda) yang dihasilkan sangat akurat dan mudah diatur
dengan software. Ada 2 jenis PIT keluaran INTEL yaitu 8253 dan 8254.

gambar 4.1. PIT 8253

Minimum sistem 8088

21

Perbedaan mendasar kedua tipe IC tersebut adalah:


Frekuensi clock (denyut) maksimum 8253 adalah 2.6 Mhz
sedangkan 8254 adalah 5 MHz untuk 8254-5, 8 Mhz untuk
8254 dan 10 Mhz untuk 8254-2.
8254 memiliki sarana readback (baca kembali) yang me-latch
(menyimpan) semua counter.

Beberapa fungsi timer (waktu) atau counter (cacah) yang dapat


diaplikasikan dengan 8254 adalah :
real time clock
event-counter
digital one-shot
generator yang dapat diprogram
generator gelombang lengkap
Pengali biner
pengendali motor

Minimum sistem 8088

22

Diagram blok
CLOCK0
D0-D7

RD
WR
A0
A1

DATA
BUFFER

COUNTER 0

READ/WRITE
LOGIC

COUNTER 1

GATE0
OUT0

CLOCK1
GATE1
OUT1

CS
CLOCK2

CONTROL
WORD
REGISTER

COUNTER 2

GATE2
OUT2

gambar 4.2 Diagram blok 8253

Dari blok diagram di atas, ada 6 buah blok yaitu :


Counter 0
Counter 1
Counter 2
Data Bus Buffer
Control Word Register
Read/Write Logic

Di antara ketiga counter, control word register dan data bus buffer
dihubungkan oleh suatu internal bus yang berfungsi untuk memasukkan
atau mengeluarkan data. Semuanya bidireksional kecuali yang menuju
control word register (hanya satu arah).

Minimum sistem 8088

23

4.2. Fungsi pin 8253 / 8254

PIN

TIPE

D0-D7

NOMER
PIN
1-8

CLK0
OUT0
GATE0
GND
VCC
WR

9
10
11
12
24
23

I
O
I

RD

22

CS

21

A0,A1

19,20

CLK2
OUT2
GATE2
CLK1
GATE1
OUT1

18
17
16
15
14
13

I
O
I
I
I
O

I/O

NAMA DAN FUNGSI


Data bus 3 state 2 arah yang
dihubungkan ke data bus
Input clock dari counter 0
Output dari counter 0
Input gate dari counter 0
Hubungan ke power supply
Power supply +5 volt
Input ini akan LOW selama CPU
menyuruh operasi
Input ini akan LOW selama CPU
membaca operasi
Input
LOW
dari
pin
ini
memungkinkan
CPU untuk
merespon sinyal RD dan WR
digunakan untuk memilih counter
dan control word untuk operasi
read/write
input clock counter 2
output dari counter 2
input gate dari counter 2
input clock counter 1
input gate dari counter 1
output dari counter 1

4.2 Data Bus Buffer


Untuk memindahkan data dari sistem atau sebaliknya, PIT
dilengkapi dengan data bus buffer. Data bus buffer ini tri state,
bidireksional dan terdiri dari 8 bit

Minimum sistem 8088

24

Data Bus mempunyai 3 fungi dasar:


1. Untuk pemrograman mode dari PIT
2. Untuk mengisi harga count register
3. Untuk membaca harga yang sedang dihitung

4.3. Logika Read/Write


Logika R/W menerima input dari sistem bus dan berfungsi untuk
mengontrol operasi dari PIT. Blok ini dikontrol oleh pin CS. Beberapa pin
yang dimiliki oleh blok ini adalah:
RD (Read) :
Logika 0 pada pin ini digunakan untuk membaca harga
counter
WR (Write) :
Logika 0 pada pin ini digunakan untuk mengisi harga counter.
A0,A1 :
Input ini biasanya dihubungkan dengan address bus. Pin ini
berfungsi untuk memilih satu dari ketiga counter untuk
dioperasikan dan memberi address pada control word register
untuk memilih mode.
CS (Chip Select) :
Logika 0 pada pin ini menyebabkan PIT enable. Sinyal CS
tidak berpengaruh pada counter yang sedang bekerja.

Minimum sistem 8088

25

4.4. Control Word Register


Control Word Register dipilih saat A0 dan A1 bernilai 1 1.
Register ini menerima informasi dari data bus buffer dan menyimpannya di
register. Informasi yang disimpan dalam register ini memilih mode tiap
counter dan memilih operasi hitung biner atau desimal. Control word ini
hanya dapat ditulis dan tidak dapat dibaca.

4.5. COUNTER
Counter yang digunakan adalah single, 16 bit, pre-settable, down
counter. Setiap counter dari PIT adalah independen dan dapat diprogram
secara terpisah.
Sinyal clock sinkron counter ini dapat beroperasi sebagai timer,
sedangkan sinyal clock asinkron counter ini berfungsi sebagai counter
biasa. Timer ini akan menghitung setiap kali terjadi perubahan state dari 1
ke 0.
Keistimewaan dari counter ini adalah harga counter dapat dibaca
setiap saat tanpa mengganggu kerja counter itu sendiri.

4.6. Mode Operasi PIT


Mode-mode dari counter PIT adalah:
Mode 0 : Interrupt on terminal count
Pada gambar input HIGH sehingga meng-enable counter.
Kondisi sinyal LOW WR yang pertama adalah penulisan
control word ke control register yang membuat pin OUT
menjadi LOW. Sinyal LOW kedua adalah jumlah N hitungan.
Pin OUT menjadi :
Minimum sistem 8088

26

CLOCK

WRITE = 4

GATE = HIGH

OUT

gambar 4.3 mode 0

HIGH saat clock transisi ke LOW dengan jumlah N+1.


Jika gate dibuat LOW, maka counter akan tetap pada kondisi
hitungan terakhir. Jika jumlah hitungan baru dimasukkan saat
menghitung, ia akan menunggu hitungan pertama sampai habis

Mode 1 : Hardware Retriggerable one shot


CLOCK

WRITE = 4

GATE

OUT

gambar 4.4 mode 1

Minimum sistem 8088

27

Mode ini menggunakan gate sebagai input trigger. Jika ada


trigger, maka pada clock berikutnya dia mulai menghitung
sampai satu (HIGH) dan ke 0 (LOW). Jika gate mentrigger
saat menghitung, begitu hitungan ke-1 usai, akan diteruskan
dengan hitungan ke-2 dengan hitungan yang sama. Jika
menulis LSB kedua saat OUT LOW, hitungan dimuat ke
count register, dan OUT menjadi LOW setelah ada pulsa
trigger.

Mode 2 : Time Interrupt


CLOCK

WRITE

N=2

GATE = HIGH

OUT

gambar 4.5 mode 2

Pada mode ini OUT HIGH, selama N-1 hitungan dan hitungan
terakhir OUT menjadi LOW. Baru jika gate LOW saat
menghitung, maka nilai hitungan terakhir akan dipertahankan.
Hitungan baru dimuat ke counter setelah hitungan pertama
selesai (LOW)

Minimum sistem 8088

28

Mode 3 : Square Wave Mode Generator

CLOCK

WRITE

N=4

GATE = HIGH

OUT

WRITE

N=5

OUT

gambar 4.6. Mode 3

Ada 2 kondisi, kondisi pertama jika count genap, perhitungan


berkurang setiap hitungan, naik setiap 2 hitungan. Kondisi
kedua jika count-nya ganjil. Naik turunnya setiap 2 hitungan,
tetapi untuk LOW hitungan sampai nol, unutk HIGH sampai
2. Jika gate menjadi LOW saat menghitung, nilai terakhir
dipertahankan.

Mode 4 : Software Trigger Strobe


Mode 4 dan 5 hampir sama dengan mode 1. Mode LOW
selama N+1 sesudah WR, sedang mode 4-5 LOW selama 1
clock setelah N clock. Jika gate LOW, nilai terakhir
dipertahankan. Jika nilai ke-2 dimasukkan saat menghitung,

Minimum sistem 8088

29

nilai pertama diteruskan dengan nilai kedua tanpa LOW,


sampai nilai kedua menjadi LOW.
CLOCK

WRITE

GATE = HIGH

OUT

gambar 4.7 mode 4

Mode 5 : Hardware Triger Strobe


CLOCK

WRITE

GATE

OUT

gambar 4.8 mode 5

Minimum sistem 8088

30

Mode 5 seperti mode 4 dengan input gate adalah strobe. Jika


ada strobe sebelum hitungan selesai, maka hitungan dimulai
dari awal lagi.

4.7. Pemrograman 8253


Fungsi lengkap dari PIT harus diprogram dalam software.
Sekumpulan control word harus dikirimkan dari CPU untuk memberi
harga awal setiap counter. Control word yang dikirimkan berisi program
untuk memilih MODE, urutan program dan pemilihan operasi hitung biner
atau desimal. Sekali diprogram, PIT siap untuk beroperasi sesuai dengan
yang diinginkan.
Inisialisasi:
Masing-masing counter dari PIT harus diinisialisasi sendiri-sendiri dengan
cara menuliskan control word ke control word register. Format dari
control word adalah sebagai berikut:

D7
SC1

D6
SC0

D5
RL1

D4
RL0

D3
M2

D2
M1

D1
M0

D0
BCD

Pemilihan counter ditentukan oleh:


SC1
0
0
1
1

Minimum sistem 8088

SC0
0
1
0
1

KETERANGAN
Pilih counter 0
Pilih counter 1
Pilih counter 2
Illegal

31

Read/Load ditentukan oleh


RL1
0
0
1
1

RL2
0
1
0
1

KETERANGAN
counter latching operation
Read/Load hanya MSB
Read/Load hanya LSB
Read/Load LSB dulu baru kemudian MSB

Operasi mode ditentukan oleh


M2
0
0
x
x
1
1

M1
0
0
1
1
0
0

M0
0
1
0
1
0
1

Keterangan
mode 0
mode 1
mode 2
mode 3
mode 4
mode 5

Operasi hitung ditentukan oleh :


BCD
0
1

KETERANGAN
Binary counter 16 bit
BCD counter

4.8. Prosedur Read/Write


- Operasi write
Setiap counter harus diinisialisasi terlebih dahulu untuk
mengaktifkannya. Setelah diinisialisasi, baru jumlah
hitungannya dikirimkan ke count register.
Untuk memilih mode dari setiap counter mutlak
diperlukan sistem software. Timer ini dapat diprogram
dengan sangat fleksibel. Urutan penulisan program
MODE control word pada masing-masing counter bebas,

Minimum sistem 8088

32

artinya counter 0 tidak harus ditulis mendahului counter


1 dan 2. Setiap mode yang dituliskan pada masingmasing counter mempunyai address yang terpisah
sehingga pengisian (load) mempunyai urutan yang benarbenar independen (SC0, SC1).

Pengisian harga count register harus dilakukan dengan


urutan yang tepat dalam mode control word (RL0,RL1).
Urutan pengisian counter register pada tiap counter juga
independen seperti pengisian mode control word, tetapi
jika sebuah count register telah dipilih untuk diisi, maka
dia harus diisi dengan sejumlah byte yang telah
diprogram dalam mode control word (RL0,RL1). Satu
atau dua byte yang diisikan dalam count register tidak
harus diikuti dengan MODE control word yang
bersesuaian. Counter-counter ini dapat diprogram setiap
waktu mengikuti mode control word yang telah diisikan.

Semua counter adalah down counter, sehingga harga


yang telah diisikan dalam count register akan turun pada
saat beroperasi. Hitungan maksimum yang dapat
dilakukan oleh counter ini sebesar 216 untuk operasi
biner dan 104 untuk operasi BCD.
Dalam mode 0 harga count baru tidak akan di-restart
sampai harga yang lama selesai dihitung.

Minimum sistem 8088

33

- Operasi read
Ada 2 cara membaca jumlah hitungan dari 2 counter.
Cara pertama adalah simple I/O yaitu dengan
menggunakan operasi baca I/O counter yang dipilih.
Agar didapatkan pembacaan yang stabil pada operasi ini,
syarat utama yang harus dipenuhi adalah counter yang
akan dibaca harus dihalangi atau dibebaskan dengan
pengontrolan gate input maupun logika eksternal yang
menghalangi input clock.
Hasil pembacaan counter yang dapat diperoleh dengan
cara ini adalah:
Operasi pertama diperoleh LSB
Operasi kedua diperoleh MSB
Sesuai dengan logika internal yang dibuat oleh pabrik
pembuatnya, maka pembacaan harga I harus dilakukan
dengan cara yang lengkap seperti di atas. Sebelum
pengisian harga baru dapat dilakukan pada counter yang
sama. Operasi baca dapat dilakukan seperti berikut:
A1
A0
RD
OPERASI
0
0
0
Baca counter 0
0
1
0
Baca counter 1
1
0
0
baca counter 2
1
1
0
illegal
Cara kedua adalah latching, yaitu metode pembacaan
counter pada saat counter bekerja. Pada metode ini
operasi pembacaan tidak akan mempengaruhi atau
mengganggu operasi yang sedang

Minimum sistem 8088

berlangsung. Pada

34

dasarnya jika programmer menginginkan pembacaan isi


dari sebuah counter yang dipilih pada saat sebuah
counter sedang bekerja, maka programmer harus
mengisikan mode register dengan kode khusus yang
dapat mengunci harga hitung yang sedang berlangsung
ke dalam sebuah storage register sehingga menjadi
akurat

dan

stabil.

Kemudian

programmer

dapat

melanjutkan dengan perintah baca yang normal pada


counter yang dipilih dan isi dari register yang telah
dikunci telah siap diambil

Mode storage yang diperlukan untuk penguncian ini


dapat dinyatakan sebagai berikut:
syarat : A0 = A1 = 1

D7
SC1

D6
SC0

D5
0

D4
0

D3
x

D2
x

D1
x

D0
x

SC1,SC0 : untuk memilih counter yang dikunci


D5,D4

: 0 0 menunjukkan operasi penguncian

: diabaikan

Minimum sistem 8088

35

Anda mungkin juga menyukai