Komunikasi Paralel Mikrokontroler – Komputer

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 :

  1. Mode kompatibilitas
  2. mode nibble
  3. mode byte
  4. mode EPP (enhanced parallel port)
  5. 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 :

  1. menulis byte ke data port
  2. cek untuk melihat apakah printer sibuk, jika sibuk, ia tidak akan menerima data, sehingga data yang telah ditulis akan hilang.
  3. buat strobe (pin 1) rendah. Ini memberitahukan printer bahwa data yang benar telah berada di line data
  4. 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 :

  1. Siklus baca data (Data read)
  2. Siklus baca alamat (Address Read)
  3. Siklus tulis data (data write)
  4. 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 :

Paralel Port

 

Gambar Antarmuka Port Data Paralel Port dengan Mikrokontroler ATMEGA32

 

7 thoughts on “Komunikasi Paralel Mikrokontroler – Komputer

    • ya, belum ada alatnya, karena untuk komunikasi paralel sekarang ini sudah kurang populer dipergunakan.

  • pak mau nanya saya mau buat alat sistem keamanan parkir (buka tutup pintu) menggunakan interface delphi 7.0 dan RFID. saya ingin menggunakan USB sebagai port ke pc tapi kata temen tidak bisa karena harus menggunakan Mikrokontroller? karena kalau tidak menggunakan mikrokontroler maka tidak bisa memakai USB tapi bisanya menggunakan Paralel port. mohon penjelasan detail nya pak?? 😉

    • Jika menggunakan komunikasi paralel (Port Paralel), PC bisa langsung mengontrol motor penggerak dengan bantuan relay, akan tetapi jika menggunakan komunikasi serial (Port Serial atau USB) membutuhkan devais lainnya untuk mengubah data serial menjadi logika digital (0 atau 1) untuk mengaktifkan relay, salah satu devais yang bisa dipakai adalah mikrokontroler.

  • Pembahasan nya cukup jelas, tapi sayang sekarang ini di PC/Laptop sudah jarang dipasangi parallel port. Mungkin lain waktu bisa jelaskan tentang antarmuka PC/Laptop dengan USB.

    • Selamat siang bung Ricky, iya memang benar untuk saat sekarang ini sudah jarang dipergunakan port paralel, terima kasih atas sarannya, untuk komunikasi dengan port usb ada beberapa cara yang bisa dilakukan, salah satunya dengan menggukan usb-to-serial yang dihubungkan denan port UART dari mikrokontroler

Leave a Reply

Your email address will not be published. Required fields are marked *