IC AT89C51 mempunyai 40 pin yang sesuai dengan mikrokontroler 8031, dengan susunan kaki seperti Gambar 1 .
Gambar 1 Nama Pin-pin AT89C51
Jika kita lihat diagram blok mikrokontroler ini, terlihat jelas kesempurnaan dari fasilitas yang diberikannya. Gambar 2 merupakan diagram blok IC tersebut :
Gambar 2 Diagram blok AT89C51
Pada Gambar 2 terlihat bahwa terdapat 4 port untuk input output data, serta tersedia pula akumulator, register, RAM, stack pointer , Arithmetic Logic Unit (ALU), pengunci (latch) dan rangkaian osilasi yang membuat 89C51 dapat beroperasi hanya dengan 1 keping IC.
Adapun fungsi Pin pada mikrokontroler 8951:
1) Pin 1 sampai 8 (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.
Kaki-kaki Port 1 akan di pulled high dengan pullup internal sehingga dapat digunakan sebagai masukan. Sebagai masukan, jika kaki-kaki Port 1 dihubungkan ke ground (pull low), maka masing-masing kaki akan memberikan arus karena di-pulled high secara internal. Port 1 juga menerima alamat bagian rendah (low byte) selama pengisian program dan verifikasi flash (Agfianto Eko Putra, 2004 : 90).
2) Pin 9 (RST)
Reset akan aktif dengan memberikan input high selama 2 cycle.
3) Pin 10 sampai 17 (Port 3)
Port 3 merupakan port I/O dwi arah dengan dilengkapi pullup internal. Penyangga keluaran Port 3 mampu memberikan/menyerap arus empat masukan TTL.
Kaki-kaki Port 3 akan di pulled high dengan pullup internal sehingga dapat digunakan sebagai masukan. Sebagai masukan, jika kaki-kaki Port 3 dihubungkan ke ground (di-pull low), maka masing-masing kaki akan memberikan arus karena di-pulled high secara internal.
Tabel 1. Fungsi-fungsi Khusus Kaki-kaki Port 3
Kaki Port | Fungsi Alternatif |
P3.0 | RXD (port input serial) |
P3.1 | TXD (port output serial) |
P3.2 | INT0 (interupsi 0 eksternal) |
P3.3 | INT1 (interupsi 1 eksternal) |
P3.4 | T0 (input timer 0 eksternal) |
P3.5 | T1 (input timer 1 eksternal) |
P3.6 | WR (tulis ke memori data eksternal) |
P3.7 | RD (baca dari memori data eksternal) |
4) Pin 18 (XTAL 2)
Pin ini merupakan output oscillator.
5) Pin 19 (XTAL 1)
Pin ini merupakan input oscillator.
6) Pin 20 (GND) dihubungkan ke Ground.
7) Pin 21 sampai 28 (Port 2)
Port 2 merupakan Port I/O dwi-arah dengan dilengkapi pullup internal. Penyangga keluaran Port 2 mampu memberikan/menyerap arus empat masukan TTL.
Kaki-kaki Port 2 akan di pulled high dengan pullup internal sehingga dapat digunakan sebagai masukan. Sebagai masukan, jika kaki-kaki Port 2 dihubungkan ke ground (di-pull low), maka masing-masing kaki akan memberikan arus 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 pullup internal yang sudah disediakan. Selama pengaksesan memori data eksternal yang menggunakan perintah dengan alamat 8 bit (misalnya : MOVX @R1), Port 2 akan mengirimkan isi dari Shift Function Register Port 2. Port 2 juga menerima alamat bagian tinggi selama pemrograman dan verifikasi (Agfianto Eko Putra, 2004 : 90).
8) Pin 29 (PSEN)
Program Store Enable (PSEN) merupakan pin yang berfungsi pada saat mengeksekusi program yang terletak pada memori eksternal. PSEN akan aktif dua kali setiap cycle.
9) Pin 30 (ALE)
Pin ini dapat berfungsi sebagai Addres Latch Enable yang me-latch low byte address pada saat mengakses memori eksternal. ALE akan aktif pada saat mengakses memori eksternal.
10) Pin 31 (EA)
Pada kondisi low, pin ini akan berfungsi sebagai External Acces Enable (EA) yaitu mikrokontroler akan menjalankan program yang ada pada memori eksternal setelah sistem di reset. Jika berkondisi high, pin ini akan berfungsi untuk menjalankan program yang ada pada memori internal.
11) Pin 32 sampai 39 (Port 0)
Port 0 merupakan Port keluaran/masukan (I/0) bertipe open drain bidirectional. Sebagai Port keluaran, masing-masing kaki dapat menyerap arus delapan masukan TTL. 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 pullup internal tetapi 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 (Agfianto Eko Putra, 2004 : 89).
12) Pin 40 (Vcc) dihubungkan dengan Vcc (+5 Volt).
0 komentar:
Posting Komentar