BAB02 - Keluarga Mikrokontroler MCS51
Transcript of BAB02 - Keluarga Mikrokontroler MCS51
-
8/9/2019 BAB02 - Keluarga Mikrokontroler MCS51
1/9
Mikrokontroler MCS51 6
2. Keluarga Mikrokontroler MCS-51
2.1. Gambaran Umum
Keluarga Mikrokontroler MCS-51 terdiri dari 8051, 8031, 8751, 8052,
8032, dan 8752. Masing-masing berbeda dalam konfigurasi internalnya.
Perbedaan pokok adalah bahwa 8031 dan 8032 tidak memiliki internal
ROM, sedangkan 8751 dan 8752 jenis internal ROM-nya adalah EPROM
( Erasable & Programmable ROM ).
Keluarga Mikrokontroler MCS-51 memiliki konfigurasi dasar sebagai
berikut :
Parallel I/O Port 8 bit (P0-P3)
Serial Full-Duplex Asynchronous I/O Port
Internal Random Access Memory (RAM) sejumlah 128 byte (8051,
8031, 8751) atau 256 byte (8052, 8032, 8752) Internal Read Only Memory (ROM) sejumlah 4 kilobyte (8051, 8751)
atau 8 kilobyte (8052, 8752)
Programmable Timer/Counter sejumlah 2 (8051, 8031, 8751) atau 3
(8052, 8032, 8752)
System Interrupt dengan 2 sumber interrupt eksternal dan 4
sumber interrupt internal
Dengan fasilitas yang cukup lengkap semacam itu, maka dimungkinkan
penggunaan mikrokontroler ini dalam konfigurasi single chip , dimana
hanya dibutuhkan satu chip untuk menjalankan seluruh sistem rangkaian.
-
8/9/2019 BAB02 - Keluarga Mikrokontroler MCS51
2/9
Mikrokontroler MCS51 7
2.2. Arsitektur MCS-51
2.2.1. Diagram blok MCS-51
Diagram blok arsitektur MCS-51 dapat dilihat pada gambar 2.1. Pada
diagram blok tersebut dapat disimpulkan bahwa untuk aplikasi yang tidak
membutuhkan adanya RAM dan/atau ROM dengan skala besar, maka
MCS-51 telah dapat dipergunakan dalam konfigurasi single chip. Fasilitas
Parallel Port yang dimiliki dapat dipergunakan untuk mengendalikan
peralatan eksternal atau menginputkan data yang diperlukan. Port serial
dapat dipergunakan untuk mengakses sistem komunikasi data dengan dunialuar, misalnya dengan komputer IBM PC, atau peralatan lainnya baik
langsung lewat kabel ataupun melalui modem dengan saluran telepon,
radio, atau bahkan serat optik. Timer/counter yang ada dapat dipergunakan
untuk mencacah pulsa, menghitung lama pulsa, atau sebagai pewaktu
umum. Sedangkan sistem interrupt membuat MCS-51 dapat dipakai pada
aplikasi-aplikasi yang mendekati sistem dengan proses real-time.
Rangkaian clock internal yang dimiliki MCS-51 menjadikan cukup hanya
ditambahkan sebuah kristal osilator dan dua buah kapasitor untuk
menghasilkan clock bagi seluruh sistem rangkaian. Untuk kebutuhan ROM
dan RAM yang besar, sistem MCS-51 mengijinkan penggunaan RAM dan
ROM masing-masing sebesar maksimal 64 Kilo byte, cukup besar untuk
aplikasi-aplikasi umum mikrokontroler.
-
8/9/2019 BAB02 - Keluarga Mikrokontroler MCS51
3/9
Mikrokontroler MCS51 8
B REGISTER
RAM ADDRESSREGISTER
RAM
ACC
TEMP2
PORT 0LATCH
PORT 2LATCH
EPROM/RO M
PORT 0DRIVER
PORT 2DRIVER
STACKPOINTER
TEMP1
ALU
PSW
I N S T R U C T
I O N
R E G I S T
E R
TIMING
&CONTROL
-PSEN
ALE
-EA
RST
T2CON TH0 TL0 TH1
PCON SCON TMOD TCON
TL1 TH2 TL2 R2CAPH
R2CAPL SBUF IE IP
INTER RUPT, SERIAL PORT& TIMER
DPTR
PROGRAMCOUNTER
PCINCRE-MENTER
BUFFER
PROGRAM ADDRESSREGISTER
PORT 3DRIVERS
PORT 3LATCH
PORT 1DRIVERS
PORT 1LATCH
OSC
XT AL1 XT AL2
VCC
VSS
P 0. 0 - P 0. 7 P 2. 0 - P 2. 7
P3.0 - P3.7P1.0 - P1.7
Gambar 2.1. Diagram blok MCS-51
2.2.2. Fungsi kaki-kaki ( pin out ) MCS-51
Pin Out MCS-51 dapat dilihat pada gambar di bawah ini :
-
8/9/2019 BAB02 - Keluarga Mikrokontroler MCS51
4/9
Mikrokontroler MCS51 9
Gambar 2..2. Pin-out 8031
Fungsi kaki-kaki 8031 :
VSS : dihubungkan dengan ground rangkaian
VCC : dihubungkan dengan tegangan catu +5 V
Port 0 : merupakan Port I/O 8 bit dua-arah. Port ini digunakan
sebagai multipleks bus alamat rendah dan bus data
selama pengaksesan ke eksternal memori. Setiap pin-nya
dapat mengendalikan langsung 4 beban TTL. Port 0 juga
menerima dan mengeluarkan code byte selama proses pemrograman dan verifikasi ROM/EPROM internal.
Port 1 : merupakan Port I/O 8 bit dua-arah, yang dapat
mengendalikan beban 4 TTL secara langsung. Setiap pin
dapat diakses secara operasi tiap bit atau byte
bergantung pemrogram. Port 1 juga menerima address
rendah selama proses pemrograman dan verifikasiROM/EPROM internal.
Port 2 : merupakan Port I/O 8 bit dua-arah, yang dapat
mengendalikan beban 4 TTL secara langsung. Port ini
digunakan sebagai bus alamat tinggi selama
pengaksesan ke eksternal memori. Port 2 juga menerima
address tinggi selama proses pemrograman dan
verifikasi ROM/EPROM internal.
Port 3 : merupakan Port I/O 8 bit dua-arah, yang dapat
mengendalikan beban 4 TTL secara langsung. Setiap pin
dapat diakses secara operasi tiap bit atau byte
-
8/9/2019 BAB02 - Keluarga Mikrokontroler MCS51
5/9
Mikrokontroler MCS51 10
bergantung pemrogram. Masing-masing pin pada Port ini
memiliki fungsi khusus sebagai berikut :
Tabel 2.1.Fungsi Pin-pin Port 3Port Pin Fungsi alternatif
P3.0 RXD ( serial input port )P3.1 TXD ( serial output port )P3.2 -INT0 ( external interrupt 0 )P3.3. -INT1 ( external interrupt 1 )P3.4 T0 ( timer/counter 0 external input )P3.5 T1 ( timer/counter 1 external input )
P3.6 -WR ( external data memory write strobe )P3.7 -RD ( external data memory read strobe )
RST : merupakan input untuk RESET.
ALE : Address Latch Enable, digunakan untuk memberikan
sinyal latch pada alamat rendah pada multipleks bus
adress dan data.
-PSEN : merupakan sinyal read strobe untuk eksternal programmemori.
-EA/VPP : merupakan input untuk mode program memori.
jika dihubungkan ke ground , program memori adalah
eksternal, jika dihubungkan ke VCC, program memori
adalah internal, jika dihubungkan ke VPP, diperlukan
untuk proses pemrograman ROM.XTAL1, XTAL2
: merupakan input untuk kristal clock.
-
8/9/2019 BAB02 - Keluarga Mikrokontroler MCS51
6/9
Mikrokontroler MCS51 11
2.3. Organisasi memori
Pada keluarga MCS-51 ini pengalamatan memori dibedakan atas dua yaitu
untuk program memori dan untuk data memori. Pemisahan antara program
memori dan data memori merupakan ciri khas MCS-51. Masing-masing
program memori dan data memori dapat mengalamati sampai 64 Kilobyte ,
dengan masing-masing byte lebar datanya 8 bit.
2.3.1. Program memori
Program memori hanya dapat dibaca, tidak dapat ditulis. Di sini tersimpan program yang akan dijalankan oleh MCS-51 dan data-data konstanta.
Sinyal pembacaan EPROM eksternal adalah dari pin -PSEN. Pada MCS-
51 ada dua tipe organisasi memori dari program memori, yaitu :
Pengaksesan program memori sebagian berasal dari internal EPROM
yang menempati alamat terendah dan alamat berikutnya dari EPROM
eksternal. Sebagai contoh untuk MCS-51 dengan model EPROM
internal seperti 8051, 8051AH, 8751, alamat 4 Kbyte program memori
terendah adalah ROM internal dan alamat berikutnya adalah pada
EPROM eksternal.
Pengaksesan program memori yang semuanya dari eksternal EPROM.
Secara diagram blok digambarkan sebagai berikut :
-
8/9/2019 BAB02 - Keluarga Mikrokontroler MCS51
7/9
Mikrokontroler MCS51 12
4K BYTE
INTERNAL
60 K BYTEEKSTERNAL
64 K BYTEEKSTERNAL
ATAU
0000H
0FFFH
1000H
FFFFH
PROGRAM
MEMORY
0000H
FFFFH
Gambar 2.3. Organisasi Program Memori
Pemetaan Program Memori
Pemetaan program memori ditunjukkan sebagai berikut :
Alamat 0000H merupakan awal program. Setelah reset, CPU akan
loncat pada alamat ini dan mengerjakan instruksi di dalamnya.
Pada fungsi khusus alamat 3H dan seterusnya dengan interval 8 byte
dipakai sebagai alamat dari vektor interupsi. Bila interupsi tidakdipakai, maka alamat tersebut dapat dipakai untuk program biasa.
-
8/9/2019 BAB02 - Keluarga Mikrokontroler MCS51
8/9
Mikrokontroler MCS51 13
2.3.2. Data memori
Data memori menempati alamat yang terpisah dari program memori. Data
memori merupakan tempat penyimpanan data variabel, operasi stack dan
sebagainya. Data memori dapat dibaca dan ditulis. Sinyal pembacaan
untuk eksternal RAM berasal dari pin -RD dan untuk penulisan berasal
dari pin-WR. Peta data memori digambarkan sebagai berikut :
DIRECT ANDINDIRECT
ADDRESSING
DIRECT ADDRESSING
ONLY
64 K BYTEEKSTERNAL
DAN
00 H
7FH80 H
FFH
D ATA MEMORY
0000H
FFFFH
Gambar 2.4. Organisasi data memori
Alamat 00H-FFH (untuk 8051) merupakan alamat dari internal RAM yang
dapat dialamati dalam dua mode. Pada alamat 00H - 7FH dapat dialamati
dalam mode direct maupun indirect addressing . Alamat 80H - FFH hanya
-
8/9/2019 BAB02 - Keluarga Mikrokontroler MCS51
9/9
Mikrokontroler MCS51 14
dapat dialamati dalam mode direct addressing . Di luar alamat tersebut
merupakan alamat eksternal RAM.
32 byte terendah data memori terbagi atas 4 buah bank yang masing-
masing terdiri atas 8 buah register. Kombinasi dari bank ini ditentukan
oleh register PSW (pembahasan mengenai ini bisa dilihat pada bab
berikutnya). Register- register tersebut adalah R0 sampai R7 yang
menempati alamat 00H - 1FH. Di atasnya merupakan segmen bit
addresable yang besarnya 16 byte, menempati alamat 20H sampai 2FH.Alamat berikutnya yaitu mulai 30H sampai 7FH dapat dibagai sebagai data
RAM.
Setelah kondisi reset, kondisi baku register SP ( stack pointer ) akan menuju
alamat 07H dan begitu program dijalankan isi register SP akan ditambah 1
(menunjuk ke alamat 08h). Dan ini merupakan register bank 1 register R0.
Bila memakai lebih dari satu bank register maka SP harus diinisialisasi ke
lokasi yang lain.