Port Paralel
Mikrokontroler ATMEL Keluarga 51
Mikrokontroler AT89C51/52 atau AT89S51/52
(keluarga 51) mempunyai 40 kaki, 32 diantaranya digunakan sebagai Port
Paralel. Satu port paralel terdiri dari 8 kaki, dengan demikian 32
kaki tersebut membentuk 4 buah port paralel, yang masing-masing dikenal sebagai
Port 0, Port 1, Port 2, dan Port 3. Nomor dari masing-masing jalur (kaki) dari
Port paralel mulai dari 0 sampai 7, jalur (kaki) pertama Port 0 disebut
sebagai P0.0 dan jalur terakhir untuk Port 3 adalah P3.7.
KONFIGURASI
PIN
Image: Port
Paralel Mikrokontroler ATMEL Keluarga 51
Fungsi dari masing-masing PIN :
- Pin 1 sampai 8 (Port 1) merupakan port paralel 8 bit dua arah (bidirectional) yang dapat digunakan untuk berbagai keperluan (general purpose)
- Pin 9 merupakan pin reset, reset aktif jika mendapat catuan tinggi
- Pin 10 sampai 17 (Port 3) adalah port paralel 8 bit dua arah yang memiliki fungsi pengganti sebagai berikut:
- P3.0 (10) : RXD (port serial penerima data)
- P3.1 (11) : TXD (port serial pengirim data)
- P3.2 (12) : INT0 (input interupsi eksternal 0, aktif low)
- P3.3 (13) : INT1 (input interupsi ekstrernal 1, aktif low)
- P3.4 (14) : T0 (eksternal input timer / counter 0)
- P3.5 (15) : T1 (eksternal input timer / counter 1)
- P3.6 (16) : WR (Write, aktif low) Sinyal kontrol penulisan data dari port 0 ke memori data dan input-output eksternal
- P3.7 (17) : RD (Read, aktif low) Sinyal kontrol pembacaan memori data input-output eksternal ke port 0
- Pin 18 sebagai XTAL 2, keluaran osilator yang terhubung pada kristal
- Pin 19 sebagai XTAL 1, masukan ke osilator berpenguatan tinggi, terhubung pada kristal
- Pin 20 sebagai GND, Ground atau pentanahan
- Pin 21 sampai 28 (Port 2) adalah port paralel 8 bit dua arah. Port ini mengirim byte alamat bila pengaksesan dilakukan pada memori eksternal
- Pin 29 sebagai PSEN (Program Store Enable) adalah sinyal yang digunakan untuk membaca, memindahkan program memori eksternal (ROM / EPROM) ke mikrokontroler (aktif low)
- Pin 30 sebagai ALE (Address Latch Enable) untuk menahan alamat bawah selama mengakses memori eksternal. Pin ini juga berfungsi sebagai PROG (aktif low) yang diaktifkan saat memprogram internal flashmemori pada mikrokontroler (on chip)
- Pin 31 sebagai EA (External Accesss) untuk memilih memori yang akan digunakan, memori program internal (EA = Vcc) atau memori program eksternal (EA = Vss), juga berfungsi sebagai Vpp (programming supply voltage) pada saat memprogram internal flash memori pada mikrokontroler
- Pin 32 sampai 39 (Port 0) merupakan port paralel 8 bit dua arah. Berfungsi sebagai alamat bawah yang dimultipleks dengan data untuk mengakses program dan data memori eksternal
- Pin 40 sebagai Vcc, terhubung ke +5 V sebagai catuan untuk mikrokontroler
Spesifikasi
Masing-Masing Port Paralel
- PORT 0 : Port 0 merupakan port keluaran/masukan (I/O) bertipe open drain bidirectional. Sebagai port keluaran, masing-masing kaki dapat menyerap arus (sink) delapan masukan TTL (sekitar 3,8 mA). Pada saat ’1′ ditulisakan ke kaki-kaki Port 0 ini, maka kaki-kaki Port 0 dapat digunakan sebagai masukan-masukan berimpedansi tinggi. Port 0 juga dapat dikonfigurasikan sebagai bus alamat/data bagian rendah (low byte) selama proses pengaksesan memori data dan program eksternal. Jika digunakan dalam mode ini port 0 memiliki pull up internal (tapi lemah). Port 0 juga menerima kode-kode yang dikirimkan kepadanya selama proses pengisian program dan mengeluarkan kode-kode selama proses verifikasi program yang telah tersimpan dalam flash. Dalam hal ini dibutuhkan pullup eksternal selama proses verifikasi program
- PORT 1 : Port 1 merupakan port I/O dwi-arah yang dilengkapi dengan pullup internal. Penyangga keluaran Port 1 mampu memberikan/menyerap arus empat masukan TTL (sekitar 1,6 mA). Jika ’1′ dituliskan ke kaki-kaki Port 1, maka masing-masing kaki akan di pulled high dengan pullup internal sehingga dapat digunakan sebagai masukan. Sebagai masukan, jika kaki-kaki Port 1 dihubungkan ke ground (di-pulled low), maka masing-masing kaki akan memberikan arus (source) karena di-pulled high secara internal. Port 1 juga menerima alamat bagian rendah (low byte) selama pengisian program dan verifikasi flash
- PORT 2 : Port 2 merupakan port I/O dwi-arah yang dilengkapi dengan pullup internal. Penyangga keluaran Port 2 mampu memberikan/menyerap arus empat masukan TTL (sekitar 1,6 mA). Jika ’1′ dituliskan ke kaki-kaki Port 2, maka masing-masing kaki akan di pulled high dengan pullup internal sehingga dapat digunakan sebagai masukan. Sebagai masukan, jika kaki-kaki Port 2 dihubungkan ke ground (di-pulled low), maka masing-masing kaki akan memberikan arus (source) karena di-pulled high secara internal. Port 2 akan memberikan byte alamat bagian tinggi (high byte) selama pengambilan instruksi dari memori program eksternal dan selama pengaksesan memori data eksternal yang menggunakan perintah dengan alamat 16-bit (misalnya: MOVX @DPTR). Dalam aplikasi ini, jika ingin mengirimkan ’1′, maka digunakan pullupinternal yang sudah disediakan. Selama pengaksesan memori data eksternal yang menggunakan perintah dengan alamat 8-bit (misalnya: MOVX @Ri), Port 2 akan mengirimkan isi dari SFR P2. Port 2 juga menerima alamat bagian tinggi selama pemrograman dan verifikasi flash
- PORT 3 : Port 3 merupakan port I/O dwi-arah yang dilengkapi dengan pullup internal. Penyangga keluaran Port 3 mampu memberikan/menyerap arus empat masukan TTL (sekitar 1,6 mA). Jika ’1′ dituliskan ke kaki-kaki Port 3, maka masing-masing kaki akan di pulled high dengan pullup internal sehingga dapat digunakan sebagai masukan. Sebagai masukan, jika kaki-kaki Port 3 dihubungkan ke ground (di-pulled low), maka masing-masing kaki akan memberikan arus (source) karena di-pulled high secara internal. Port 3 sebagaimana Port 1 memiliki fungsi-fungsi alternatif sebagaimana telah ditunjukkan pada bagian sebelumnya.