Mikrokontroler AT89S51merupakan suatu komponen elektronika yang di dalamnya terdapat rangkaian mikroprosesor, memori (RAM/ROM) dan I/O, rangkaian tersebut terdapat dalam level chip atau biasa disebut single chip microcomputer. Pada mikrokontroler sudah terdapat komponen-komponen mikroprosesor, dengan bus-bus internal yang saling berhubungan. Komponen-komponen tersebut adalah RAM, ROM, Timer, I/O pararel dan serial, serta interrupt control. Adapun keunggulan dari mikrokontroler adalah adanya system interupsi. Mikrokontroler digunakan untuk keperluan control, atau kendali, biasa disebut dengan MCS, dan yang digunakan dalam robot pengikut garis.
Mikrokontroler AT89S51 mempunyai 40 kaki, 32 kaki diantaranya digunakan sebagai port pararel. Satu Port pararel terdiri 8 kaki, dengan demikian 32 kaki tersebut membentuk 4 buah Port pararel, yang masing-masing dikenal sebagai Port 0, Port 1, Port 2, dan Port 3. Nomor dari masing-masing jalur (kaki) dari Port pararel mulai dari 0 sampai 7, jalur (kaki) pertama Port 0 disebut sebagai P0.0 dan jalur terakhir untuk Port 3 adalah P3.7 (Gambar 1).
Gambar 1. Konfigurasi Pin Mikrokontroler AT89S51
a. Port 1
Merupakan salah satu port yang berfungsi sebagai general purpose I/O dengan lebar 8bit.
b. RST
Pin ini berfungsi sebagai input untuk melakukan reset terhadap mikro, dan jika RST high selama minimal 2 machine cycle, maka nilai internal register akan kembali seperti awal muali bekerja.
c. Port 3
Selain berfungsi sebagai masukkan dan keluaran, port 3 juga mempunyai fungsi khusus yang lain.
d. XTAL 1 DAN XTAL 2
Merupakan pin inputan untuk kristal osilator.
e. GND
Pin ini berfungsi sebagai pentanahan.
f. Port 2
Merupakan salah satu port yang berfungsi sebagai general purpose I/O dengan lebar 8bit. Fungsi lainnya adalah sebagai high byte address bus (pada penggunaan memori eksternal).
g. PSEN
PSEN (Program Memory Enable) adalah pulsa pengaktif untuk membaca program memori luar.
h. ALE
Berfungsi untuk demultiplexer pada saat port 0 bekerja sebagai multiplexed address/data bus (pengaksesan memori eksternal).
i. EA
EA (External Access) harus dihubungkan dengan ground jika menggunakan program memori luar. Jika menggunakan program memori internal maka EA dihubungkan dengan VCC.
j. Port 0
Merupakan salah satu port yang berfungsi sebagai general purpose I/O dengan lebar 8bit. Fungsi lainnya adalah sebagai multiplexed address/data bus (pada saat mengakses memori eksternal).
k. VCC
Pin ini berfungsi ssebagai tempat sumber tegangan yang sebesar 5 volt DC.