Posted by : DanarDwi
Selasa, 30 Juli 2013
Mikrokontroler dan komputer dapat melakukan komunikasi dua arah dengan menggunakan port paralel komputer sebagai jalur input dan output antara komputer dan mikrokontroler.
Port paralel ialah port data di komputer untuk mentransmisi 8 bit data dalam sekali detak. Standar port paralel yang baru ialah IEEE 1284 dimana dikeluarkan tahun 1994. Standar ini mendefinisikan 5 mode operasi sebagai berikut :
- Mode kompatibilitas
- mode nibble
- mode byte
- mode EPP (enhanced parallel port)
- mode ECP (Extended capability port)
Tujuan dari standar yang baru tersebut ialah untuk mendesain driver dan peralatan yang baru yang kompatibel dengan peralatan lainnya serta standar paralel port sebelumnya (SPP) yangn diluncurkan tahun 1981. Mode Compatibilitas, nibble dan byte digunakan sebagai standar perangkat keras yang tersedia di port paralel orisinal dimana EPP dan ECP membutuhkan tambahan hardware dimana dapat berjalan dengan kecepatan yang lebih tinggi. Mode kompatibilitas atau (“Mode Centronics” ) hanya dapat mengirimkan data pada arah maju pada kecepatan 50 kbytes per detik hingga 150 kbytes per detik. Untuk menerima data, anda harus mengubah mode menjadi mode nibble atau byte. Mode nibble dapat menerima 4 bit (nibble) pada arah yang mundur, misalnya dari alat ke computer. Mode byte menggunakan fitur bi-directional parallel untuk menerima 1 byte (8 bit) data pada arah mundur. IRQ (Interrupt Request ) pada port paralel biasanya pada IRQ5 atau IRQ7.
Port paralel Extend dan Enhanced menggunakan hardware tambahan untuk membangkitkan dan mengatur handshaking. Untuk mengeluarkan 1 byte ke printer menggunakan mode kompatibilitas, software harus :
- menulis byte ke data port
- cek untuk melihat apakah printer sibuk, jika sibuk, ia tidak akan menerima data, sehingga data yang telah ditulis akan hilang.
- buat strobe (pin 1) rendah. Ini memberitahukan printer bahwa data yang benar telah berada di line data
- buat strobe tinggi lagi setelah menunggu sekitar 5 mikrodetik setelah membuat strobe low.
Hal ini membatasi kecepatan data. Sedangkan EPP dan ECP mengizinkan hardware mengecek jika printer sibuk dan mengeluarkan sinyal strobe atau handshaking lainnya. Ini berate hanya 1 instruksi I/O yang harus dilakukan yang akan meningkatkan kecepatan Port ECP juga mempunyai kelebihan menggunakan saluran DMA dan buffer FIFO, jadi data dapat digeser tanpa menggunakan instruksi I/O.
Protokol EPP mempunyai 4 macam siklus transfer dta yang berbeda yaitu :
- Siklus baca data (Data read)
- Siklus baca alamat (Address Read)
- Siklus tulis data (data write)
- siklus tulis alamat (address write)
Siklus data digunakan untuk mentrasfer data antara host dan peripheral. Siklus alamat digunakan untuk mengirimkan alamat, saluran (channel) atau informasi perintah dan control.
Berikut ialah tabel nama pin dari konekter DB25 dan Centronics dengan jumlah konektor 34. DB25 ialah konektor yang umum digunakan di computer sebagai port paralel , sedangkan konektor Centronics umum ditemukan di printer. IEEE 1284 ialah standar yang menentukan 3 konektor berbeda yang dapat digunakan dengan port paralel, yaitu1284 tipe A ialah konektor DB25 yang dapat ditemukan di hampir semua komputer, 1284 tipe B ialah konektor Centronics 36 pin yang umum ditemukan di printer, IEEE 1284 type C ialah konektor 36 pin seperti Centronics, tetapi ukurannya lebih kecil dan lebih memuaskan.
Tabel Nama pin dari konektor parallel port DB 25 dan Centronics
Pin DB25
|
Pin Centronics
|
SPP Signal
|
Arah In/out
|
Register
|
Hardware di invert
|
1
|
1
|
nStrobe
|
In/Out
|
Control
|
Ya
|
2
|
2
|
Data 0
|
Out
|
Data
| |
3
|
3
|
Data 1
|
Out
|
Data
| |
4
|
4
|
Data 2
|
Out
|
Data
| |
5
|
5
|
Data 3
|
Out
|
Data
| |
6
|
6
|
Data 4
|
Out
|
Data
| |
7
|
7
|
Data 5
|
Out
|
Data
| |
8
|
8
|
Data 6
|
Out
|
Data
| |
9
|
9
|
Data 7
|
Out
|
Data
| |
10
|
10
|
nAck
|
In
|
Status
| |
11
|
11
|
Busy
|
In
|
Status
|
Ya
|
12
|
12
|
Paper-Out / Paper-End
|
In
|
Status
| |
13
|
13
|
Select
|
In
|
Status
| |
14
|
14
|
nAuto-Linefeed
|
In/Out
|
Control
|
Ya
|
15
|
32
|
nError / nFault
|
In
|
Status
| |
16
|
31
|
nInitialize
|
In/Out
|
Control
| |
17
|
36
|
nSelect-Printer / nSelect-In
|
In/Out
|
Control
|
Ya
|
18 – 25
|
19-30
|
Ground
|
Gnd
|
Untuk mengeluluarkan data di port parallel, anda gunakan fungsi outport (8 bit ) dan outportb(16 bit) sebagai berikut :
//Program menggunakan bahasa C (Turbo C) untuk pengendali lampu led di port paralel
#include <conio.h>
#include <stdio.h>
#include <stdlib.h>
int main()
{
outport(0x378,0);//lampu led mati
sleep(1); //tunda 1 detik
outport(0x378,1); //lampu led hidup
sleep(1);
return
0;
}
Untuk mengaktifkan port paralel sebagai jalur data input - output terlebih dahulu anda harus mensetting bios pada mode EPP, ECP, atau pada beberapa komputer Bi-directional (standard).
Rangkaian antar muka antara mikrokontroler dan komputer adalah sebagai berikut :
Gambar Antarmuka Port Data Paralel Port dengan Mikrokontroler ATMEGA32
Related Posts :
- Back to Home »
- Instrumentation »
- Komunikasi Paralel Mikrokontroler – Komputer
Pages
Diberdayakan oleh Blogger.