Anda di halaman 1dari 25

MIKROKONTROLER

AT89S52
BAB VII
SISTEM MIKROPROSESOR
& MIKROKONTROLER
PENGERTIANDASAR
Mikrokontroler adalah mikroprosessor yang
dirancang khusus untuk aplikasi kontrol,dan
kontrol dan
dilengkapi dengan Prosesor,Memori,dan fasilitas I/O
pada satu chip.
AT89S52adalah salah satu anggota dari keluarga
MCS51/52yangdilengkapi dengan internal8Kbyte
Flash PEROM (Programmable and Erasable Read
FlashPEROM(ProgrammableandErasableRead
OnlyMemory),yangmemungkinkan memori
programuntukdapatdeprogramkembali.
AT89S52dirancang oleh Atmelsesuai dengan
instruksi standar dan susunan pin80C5.
SPESIFIKASITEKNIS
Mikrokontroler AT89S52memiliki spesifikasi teknis :
Sebuah CPU(CentralProcessingUnit)8Bit
CPU (Central Processing Unit) 8 Bit
256byteRAM(RandomAcces Memory)internal
4buah
4 b h portI/O,yangmasing
t I/O i masingi terdiri
t di i dari
d i 8bit
8 bit
Osilatorinternaldanrangkaianpewaktu
Dua buah
b h timer/counter16bit
/ b
5jalur interupsi (2buah interupsi eksternal dan 3
i t
interupsi i internal)
i t l)
Sebuah portserialdengan fullduplexUART(Universal
Asynchronous Receiver Transmitter)
AsynchronousReceiverTransmitter)
SPESIFIKASITEKNIS
Mampu melaksanakan proses perkalian,pembagian,
d Boolean
dan B l
EPROMyangbesarnya 8KByte untuk memori
program
Kecepatan maksimum pelaksanaan instruksi per
siklus adalah 0,5spada
0 5 s pada frekuensi clock24MHz.
clock 24 MHz
Apabila frekuensi clockmikrokontroler yang
digunakan adalah 12MHz,makakecepatan
12 MHz, maka kecepatan
pelaksanaaninstruksiadalah1s
CPU AT89S52
Bagian ini berfungsi mengendalikan seluruh operasi pada
mikrokontroler.Unitini terbagi atas dua bagian,yaitu unit
pengendali atau CU(ControlUnit)dan unitaritmatika dan
logika atau ALU(ArithmeticandLogicUnit).
Fungsi utama UnitPengendali adalah mengambil instruksi
dari memori kemudian menterjemahkan susunan instruksi
tersebut menjadi kumpulan proses kerja sederhana
(decode),dan melaksanakan urutan instruksi sesuai dengan
langkahlangkah yangtelah ditentukan program(execute).
Unitaritmatika dan logika merupakan bagian yang
berurusan dengan operasi aritmatika seperti penjumlahan,
pengurangan serta manipulasi datasecara
pengurangan,serta data secara logika seperti
operasi AND,OR,dan perbandingan.
ORGANISASIMEMORI
Semua mikrokontroler dalam keluarga MCS51memiliki
pembagian ruang alamat untuk programdan
program dan data.
data
Pemisahanmemoriprogramdanmemoridata
memperbolehkan memori datauntuk
memperbolehkanmemori data untuk diakses oleh
alamat 8bit.Sekalipun demikian,alamat datamemori
16bitdapat
p dihasilkan melalui registerDPTR(DataPoint
g (
Register).
Memori programhanya bisa dibaca,tidak bisa ditulis
karena disimpan dalam EPROM.Dalam hal ini EPROM
yangtersediadidalammikrokontrolerAT89S52sebesar
8Kbyte.
b
ORGANISASIMEMORI
ORGANISASIMEMORI
1.Memori Program
Pada EPROM8Kbyte,jika
EPROM 8 Kbyte jika EA(ExternalAccess)
EA (External Access)
bernilai tinggi,maka programakan menempati
alamat 0000Hsampai 0FFFHsecara internal.Jika
EAbernilai rendah maka programakan
menempatialamat1000HsampaiFFFFHkepr
ogram eksternal
ogrameksternal.
2.MemoriData
Memoridatainternaldipetakansepertipada
Memori data internal dipetakan seperti pada
gambardibawahini.Ruangmemorinyadibagi
menjadi tiga blok yaitu bagian 128bawah,128
atas,dan
d ruang SFR(SpecialFunctionRegister)
( l )
ORGANISASIMEMORI
Pemetaan Memori datainternal:
ORGANISASIMEMORI
AT89S52mempunyai struktur memori yangterdiri dari :
RAMInternal,memori
RAM Internal memori sebesar 256byteyang
256 byte yang
biasanya digunakan untuk menyimpan variabel atau
datayangbersifat temporary(sementara).
FlashPEROM,memori sebesar 8KByangdigunakan
untuk menyimpan instruksiinstruksi MCS51.
SpecialFunctionRegister(SFR),memori yangberisi
registerregisteryangmemiliki fungsi khusus yang
disediakan oleh Mikrokontroler AT89S52,seperti
AT89S52 seperti
timer,counter,serialdata,dan lainlain.
ORGANISASIMEMORI
AT89S52mempunyai struktur memori yangterpisah
antara RAMInternaldan
RAM Internal dan FlashPEROM.
Flash PEROM
RAMInternaldialamatkan oleh RAMAddressRegister
(Register Alamat RAM),sedangkan
(RegisterAlamat RAM) sedangkan FlashPEROMyang
Flash PEROM yang
menyimpan perintahperintah MCS51dialamati oleh
ProgramAddressRegister(RegisterAlamat
g g ( g Program).
g )
Dengan adanya struktur memori yangterpisah,
walaupun RAMInternaldan FlashPEROMmempunyai
alamat awal yangsama,namun secara fisik kedua
memori tidak saling berhubungan.
Alamat RAMInternal dan FlashPEROM
PIRANTII/OAT89S52
/
Bagian ini berfungsi sebagai alat komunikasi
Mikrokontroler AT89S52dengan
AT89S52 dengan piranti di luar
sistem.Sesuai dengan namanya,perangkat I/Odapat
menerima maupun p memberi datadari/ke /
mikrokontroler.
Ada dua macam p piranti I/Oyangdigunakan,yaitu
y g g y
piranti untuk hubungan serialUART(Universal
AsynchronousReceiverTransmitter)dan piranti
untuk hubungan pararel yangdisebut dengan PIO
(Pararel InputOutput).Kedua jenis I/Otersebut
telah tersedia di dalam mikrokontroler AT89S52.
AT89S52
ARSITEKTUR AT89S52
KONFIGURASIPINAT89S52

Mikrokontroler
AT89S52
AT89S52
mempunyai 40
pin dengan catu
pindengan
daya tunggal 5
Volt.Ke40pin
p
tersebut
digambarkan
sebagai berikut :
KONFIGURASIPINAT89S52
Pin1sampai 8(Port1)merupakan portpararel 8bitdua arah
(bidirectional)yangdapat digunakan untuk berbagai keperluan
(g
(generalpurpose).
p p )
Pin9merupakan pinreset,resetaktif jika mendapat catuan
tinggi.
Pin10sampai
Pin 10 sampai 17(Port3)adalah
17 (Port 3) adalah portpararel
port pararel 8bitdua
8 bit dua arah
a rah
yangmemiliki fungsi pengganti sebagai berikut :
P3.0(10):RXD(portserialpenerimadata)
( ) (p p g
P3.1(11):TXD(portserialpengirim data))
P3.2(12):INT0(inputinterupsieksternal0,aktiflow)
P3.3(13):INT1(inputinterupsi ekstrernal 1,aktif low)
P3.4 (14) : T0 (eksternal inputtimer/counter0)
P3.4(14):T0(eksternal input timer/counter 0)
P3.5(15):T1(eksternal inputtimer/counter1)
P3.6(16):WR(Write,aktif low)Sinyal kontrol penulisan datadari
port0ke memori datadan inputoutputeksternal.
p p p
P3.7(17):RD(Read,aktif low)Sinyal kontrol pembacaan memori
datainputoutputeksternal ke port0.
KONFIGURASIPINAT89S52
Pin18sebagaiXTAL2,keluaranosilatoryangterhubungpada
kristal.
Pin19sebagaiXTAL1,masukankeosilatorberpenguatantinggi,
Pi 19 b i XTAL 1 k k il t b t ti i
terhubungpadakristal.
Pin20sebagai
g Vss,terhubung
, g ke 0atau g
groundpada
p rangkaian.
g
Pin21sampai 28(Port2)adalah portpararel 8bitdua arah.Port
ini mengirim bytealamat bila pengaksesan dilakukan pada
memorii eksternal.
k l
Pin29sebagai PSEN(ProgramStoreEnable)adalah sinyal yang
digunakan untuk membaca,memindahkan
membaca, memindahkan programmemori
program memori
eksternal (ROM/PEROM)ke mikrokontroler (aktif low).
KONFIGURASIPINAT89S52
Pi
Pin30sebagai
30 b i ALE(AddressLatchEnable)untuk
ALE (Add L h E bl ) k menahanh
alamat bawah selama mengakses memori eksternal.Pinini juga
berfungsi sebagai PROG(aktif low)yangdiaktifkan saat
memprogram internalflashmemori pada mikrokontroler (on
chip).
Pin31sebagai
Pin 31 sebagai EA(ExternalAccesss)untuk
EA (External Accesss) untuk memilih memori yang
yang
akan digunakan,memori programinternal(EA=Vcc)atau
memori programeksternal (EA=Vss),juga berfungsi sebagai
Vpp (programmingsupplyvoltage)pada saat memprogram
internalflashmemori pada mikrokontroler.
Pin32sampai
Pin 32 sampai 39(Port0)merupakan
39 (Port 0) merupakan portpararel
port pararel 8bitdua
8 bit dua arah.
arah
Berfungsi sebagai alamat bawah yangdimultiplex dengan data
untuk mengakses programdan datamemori eksternal.
Pin40sebagai Vcc,terhubung ke +5Vsebagai catuan untuk
mikrokontroler.
SISTEMRESET AT89S52
Resetpada AT89S52dapat dilakukan secara manual
maupun otomatis saat powerdiaktifkan (Poweron
Reset).Saat terjadi reset,isi dari registerakan berubah
sesuai dengan tabel di bawah ini :
Register Isi Register
Program Counter 0000H
Accumulator 00H
Register B 00H
PSW 00H
Stack Pointer (A) 07H
DPTR 0000H
Port 0 3 FFH
Interrupt Priority (IP) XXX00000B
Interrupt Enable (IE) 0XX00000B
Register Timer 00H
SCON 00H
SBUF 00H
PCON (HMOS) 0XXXXXXXB
PCON (CMOS) 0XXX0000B
SISTEMRESET AT89S52
Skema RangkaianReset:

Vcc Vcc

R1 C1
100 10uF/16V
S1
RST

R2
8,2K
SISTEMRESET AT89S52
Resetterjadi dengan adanya logika 1selama minimal2
cyclepada pinRST.Setelah kondisi pinRSTkembali low,
mikrokontroler
ik k l akan
k mulail i menjalankan
j l k programdarid i
alamat 0000H.Kondisi pada InternalRAMtidak terjadi
perubahan selama Reset.
Reset
Carakerja RESETsecara otomatis :
Pada saat sumber daya diaktifkan,maka
diaktifkan maka kapasitor C1
akan terhubung singkat.Arus mengalir dari VCC langsung
ke kakiRSTsehingga RSTberlogika 1.Kemudian C1 terisi
hingga tegangan kapasitor (VC)yaitu tegangan antara VCC
dan titik antara C1 dan R2 mencapai VCC,otomatis
t
tegangan RST k turun
RSTakan t menjadi
j di 0sehingga
0 hi RST k
RSTakan
berlogika 0dan proses Resetselesai.
SISTEMRESET AT89S52
CaraKerja RESETsecara manual:
Jika saklar SS1ditekan
ditekan (kondisi terhubung),
terhubung),aliran
aliran arus
akan mengalir dari VCC melalui R1 menuju kakiRST.
Tegangan pada kakiRSTakan berubah menjadi :
R 2 x Vcc
V RST =
R1 + R 2
yaitu 4,94voltdengan nilai VCC =5volt.Tegangan 4,94
voltpada kakiRSTmenyebabkan RSTberlogika 1.Pada
saat saklar S1 dilepas,aliran arus dari VCC melalui R1
akan terhenti dan tegangan RSTakan turun menjadi 0
sehingga
hi k ki RST b l ik 0dan
kakiRSTberlogika 0 d proses Resetselesai.
R t l i
PERANGKATLUNAKAT89S52
Mikrokontroler keluarga MCS51memiliki bahasa
pemrograman
p g khusus yyangtidak
g dipahami
p oleh jjenis
mikrokontroler yanglain.Bahasa pemrograman ini
dikenal dengan nama bahasa assembleryangmemiliki
256perangkat instruksi.Namun saat ini pemrograman
mikrokontroler dapat dilakukan dengan menggunakan
bahasa C.Dengan
C Dengan bahasa C,pemrograman
C pemrograman
mikrokontroler menjadi lebih mudah,hal ini karena
dengan formatbahasa
format bahasa Cakan
C akan secara otomatis diubah
menjadi bahasa assemblerdengan formatfilehexa.
PERANGKATLUNAKAT89S52
Perangkat lunak pada mikrokontroler keluarga MCS51
dapat dibagi menjadi limakelompok sebagai berikut :
1. Instruksi TransferData:Instruksi ini berfungsi
memindahkan data,yaitu antar register,dari memori
ke memori,dari
memori dari registerke
register ke memori dan lainlain.
lain lain
2. Instruksi Aritmatika :Instruksi ini melaksanakan
operasi aritmatika yangmeliputi
yang meliputi penjuml ahan,
ahan,
pengurangan,penambahan satu (increment),
pengurangan satu (decrement),perkalian dan
pembagian.
b i
3. Instruksi Logika dan Manipulasi Bit:Berfungsi
melaksanakan operasi logika AND,OR,XOR,
AND OR XOR
perbandingan,penggeseran dan komplemen data.
PERANGKATLUNAKAT89S52
4. Instruksi Percabangan :Berfungsi untuk mengubah
urutan normalpelaksanaan
normal pelaksanaan suatu program.Dengan
program. Dengan
instruksi ini,programyangsedang dilaksanakan akan
meloncat ke suatu alamat tertentu.
5. Instruksi Stack,I/O,dan Kontrol :Instruksi ini
mengatur penggunaan stack,memba ca/menulis port
I/O,serta pengontrolan.

Anda mungkin juga menyukai