INOVASI
TEKNOLOGI DASAR MIKROKONTROLER AT89S51 DENGAN DISPLAY SEVEN SEGMEN
MAKALAH
ALGORITMA DAN
PEMROGRAMAN KASUS TEKNIK ELEKTRO
![]() |
Oleh
:
EKO
BUDI SANTOSO
1A411130
Nama :
Eko Budi Santoso
Npm / Kelas :
1A411130 / 2IB01
PROGRAM STUDI TEKNIK
ELEKTRO/TELEKOMUNIKASI
UNIVERSITAS
GUNADARMA
DEPOK
2013
1. Konsep Dasar Mikrokontroler
Mikrokontroler, jika diterjemahkan secara harfiah, berarti pengendali
yang berukuran mikro. Sekilas mikrokontroler hampir sama dengan mikroprosesor.
Namun mikrokontroler memiliki banyak komponen yang terintegrasi di dalamnya,
misalnya timer/counter. Sedangkan
pada mikroprosesor, komponen tersebut tidak terintegrasi. Mikroprosesor umumnya
kita jumpai pada komputer dimana tugas dari mikroprosesor adalah untuk
memproses berbagai macam data input
maupun output dari berbagai sumber.
Mikrokontroler lebih sesuai untuk tugas-tugas yang lebih spesifik.
Ada kesamaan-kesamaan antara
mikrokontroler dengan komputer atau mikrokomputer, antara lain:
1)
Sama-sama
memiliki unit pengolah pusat atau yang lebih dikenal dengan CPU (Central Processing Unit).
2)
CPU
tersebut sama-sama menjalankan program dari suatu lokasi atau tempat, biasanya
dari ROM (Read Only Memory) atau RAM
(Random Access Memory).
3)
Sama-sama
memiliki RAM yang digunakan untuk menyimpan data-data sementara atau yang lebih
dikenal dengan variabel-variabel.
4)
Sama-sama
memiliki beberapa keluaran dan masukan yang digunakan untuk melakukan
komunikasi timbal-balik dengan dunia luar.
Berikut ini adalah daftar kesamaan yang pernah ditulis sebelumnya di
atas dengan menekankan pada perbedaan antara mikrokontroler dan mikrokomputer:
1) CPU pada mikrokomputer berada
eksternal dalam suatu sistem, sampai saat ini kecepatan operasionalnya sudah
mencapai tingkat lebih dari 2 GHz, sedangkan CPU pada mikrokontroler berada
internal dalam sebuah chip, kecepatan bekerja masih cukup rendah, dalam orde
MHz (misalnya, 24 MHz, 40 MHz dan lain sebagainya). Kecepatan yang relatif
rendah ini sudah mencukupi untuk aplikasi-aplikasi berbasis mikrokontroler.
2) Jika CPU pada mikrokomputer
menjalankan program dalam ROM atau yang lebih dikenal dengan BIOS pada saat
awal dihidupkan, kemudian mengambil atau menjalankan program yang tersimpan
dalam hard disk. Sedangkan mikrokontroler sejak awal menjalankan program yang
tersimpan dalam ROM internal-nya (bisa berupa Mask ROM atau Flash PEROM).
Sifat memori program ini non volatile,
artinya tetap akan tersimpan walaupun tidak diberi catu daya.
3) RAM pada mikrokomputer bisa mencapai
ukuran sekian Mbyte dan bisa
di-upgrade ke ukuran yang lebih besar dan berlokasi di luar chip CPU-nya,
sedangkan RAM pada mikrokontroler ada di dalam chip mikrokontroler yang bersangkutan dan ukurannya sangat minim,
misalnya 128 byte, 256 byte dan seterusnya dan ukuran yang
relatif kecil, ini pun dirasa cukup untuk aplikasi-aplikasi mikrokontroler.
4) Keluaran dan masukan pada
mikrokomputer lebih kompleks dibandingkan dengan mikrokontroler, yang lebih
sederhana, selain itu, pada mikrokontroler tingkat akses keluaran dan masukan
bisa dalam satuan bit.
5) Jika diamati lebih lanjut, bias
dikatakan bahwa mikrokomputer atau komputer merupakan komputer serbaguna atau general purpose computer, bisa
dimanfaatkan untuk berbagai macam aplikasi (atau perangkat lunak). Sedangkan
mikrokontroler adalah special purpose
computer atau komputer untuk tujuan khusus, hanya satu macam aplikasi saja.
· Ciri khas mikrokontroler lainnya,
antara lain:
1) “Tertanam”
(atau embedded) dalam beberapa
piranti (umumnya merupakan produk konsumen) atau yang dikenal dengan istilah embedded system atau embedded controller.
2) Terdedikasi untuk satu macam
aplikasi saja.
3) Hanya membutuhkan daya yang rendah (low power) sekitar 50 mwatt. Bisa bandingkan
dengan komputer yang bisa mencapai 50 watt lebih.
4) Memiliki beberapa keluaran maupun
masukan yang terdedikasi, untuk tujuan atau fungsi-fungsi khusus.
· Struktur
Mikrokontroler
Komputer digital umumnya
terdiri dari atas tiga unit utama, yaitu CPU, program dan memori data, dan input/output (I/O). Hampir semua
pemrosesan dilakukan di dalam Arithmetic
Logic Unit (ALU) di dalam CPU. Mikroprosesor merupakan merupakan CPU yang
dipaket menjadi satu chip sedangkan
mikrokontroler merupakan keseluruhan komputer yang dibuatkan dalam satu chip.
Mikrokontroler terdiri atas:
·
CPU
(Central Processing Unit)
CPU
merupakan bagian yang paling penting yang melakukan pemrosesan data.
·
RAM
(Random Access Memory)
RAM
digunakan untuk menyimpan data sementara.
·
EPROM/PROM/ROM
(Erasable Programmable Read Only Memory)
ROM
digunakan untuk menyimpan program yang bersifat permanen.
·
I/O
(input/output) Serial dan Paralel
Unit
ini berfungsi agar mikrokontroler dapat berkomunikasi dalam format serial atau
paralel sehingga dapat berkomunikasi dengan mudah pada PC dan perangkat standar
digital lainnya.
·
Timer
Timer
berguna untuk mengatur pewaktuan dari sistem yang berbasis mikrokontroler,
misalnya untuk delay atau pencacah.
·
Interrupt Controller
Berfungsi
menangani suatu permintaan interupsi pada saat mikrokontoler sedang running.
2.
IC Mikrokontroler
AT89S51
Terdapat ratusan jenis mikokontroler yang berbeda, yang tersedia di
pasaran, akan tetapi yang digunakan pada sistem antrian ini adalah salah satu
jenis mikrokontroler kelurga MCS-51 yaitu AT89S51. Mikrokontroler ini merupakan
salah satu keluarga mikrokontroler yang diproduksi oleh ATMEL. Dimana
mikrokontroler jenis ini sangat compatible
dalam hal proses dan penggunaannya dengan keluarga MCS-51 yang dikeluarkan oleh
Intel. AT89S51 mempunyai konsumsi daya rendah, mikrokontroller 8-bit CMOS dengan 4K byte memori Flash ISP (in system programmable/ dapat diprogram
di dalam sistem). Device ini dibuat
dengan teknologi memori nonvolatile
kerapatan tinggi dan compatible dengan
standar industri 8051, set instruksi
dan pin keluaran. Flash yang berada di dalam chip
memungkinkan memori program untuk diprogram ulang pada saat chip di dalam
sistem atau dengan menggunakan programmer memori nonvolatile konvensional. Dengan mengkombinasikan CPU 8 bit yang serbaguna dengan flash ISP pada chip, ATMEL 89S51 merupakan mikrokontroller yang luar biasa yang
memberikan fleksibelitas yang tinggi dan penyelesaian biaya yang efektif untuk
beberapa aplikasi kontrol. Konfigurasi yang dimiliki mikrokontroler AT89S51 di
antaranya adalah sebagai berikut :
·
Kompatibel dengan produk MCS-51
·
4K byte In
System Programmable Flash Memory, dapat dilakukan 1000 kali pemrograman
tulis dan hapus
·
Range catu
daya 4.0V sampai dengan 5.0V
·
Operasi
statis: 0 Hz sampai dengan 33 MHz
·
Tiga tingkat
program memory lock
·
128 x 8-bit RAM internal
·
32 programmable jalur I/O
·
Dua buah 16 bit Timer/
Counter
·
Enam sumber
interupsi
·
Full Duplex UART Channel Serial
·
Low Power Idle and Mode Power Down
·
Watch Dog Timer
·
Dua data pointer
·
Power off flag
·
Fast programming time
·
Fleksibel ISP programming

Gambar
Diagram Blok Mikrokontroler AT89S51
Penjelasan dari diagram blok mikrokontroler AT89S51 adalah sebagai
berikut (Danny Christanto dan Kris Pusporini, 2004) :
a) Accumulator (ACC)
Register
Accumulator (ACC) banyak
digunakan dalam berbagai instruksi. ACC bersama dengan register B dalam proses perkalian dan pembagian. ACC akan menyimpan
hasil perkalian 8 bit terbawah (low byte) dan hasil bagi. Selain itu register ACC juga merupakan general purpose register selebar 8 bit yang dapat digunakan untuk aplikasi user.
b) Register B
Register B digunakan bersama dengan ACC dalam proses
perkalian dan pembagian. Register B
akan menyimpan hasil perkalian 8 bit
teratas (high byte) dan sisa
pembagian. Selain itu register B juga
merupakan general purpose register
selebar 8 bit yang dapat digunakan
untuk aplikasi user.
c) Program
Status Word (PSW)
Register ini berisi beberapa status yang penting seperti
adanya carry pada proses perhitungan,
adanya overflow pada proses
perhitungan, pemeriksaan bit pada
transfer data, adanya polaritas (+/-) dan status untuk pemilikan bank dari register (R0-R7). PSW ini mempunyai
lebar 1 byte dan mencakup status bit dengan konfigurasi dari Most Significant Bit (MSB) hingga Least Significant Bit (LSB).
MSB LSB
CY
|
AC
|
F0
|
RS1
|
RS0
|
OV
|
-
|
P
|
Gambar
Alokasi Bit PSW
Tabel Program
Status Word
Bit
|
Alamat Bit
|
Simbol
|
Deskripsi
|
PSW.7
|
0D7H
|
CY
|
Carry Flag
|
PSW.6
|
0D6H
|
AC
|
Auxiliary Carry Flag
|
Tabel
Program Status Word (sambungan)
Bit
|
Alamat Bit
|
Simbol
|
Deskripsi
|
PSW.5
|
0D5H
|
F0
|
Flag 0
|
PSW.4
|
0D4H
|
RS1
|
Register Bank Select 1
|
PSW.3
|
0D3H
|
RS0
|
Register Bank Select 0
|
PSW.2
|
0D2H
|
OV
|
Overflow Flag
|
PSW.1
|
0D1H
|
-
|
Reserved
|
PSW.0
|
0D0H
|
P
|
Parity Flag Genap
|
d) Stack
Pointer (SP)
Stack Pointer merupakan register
8 bit yang berisi lokasi di mana data
alamat stack teratas disimpan.
Instruksi PUSH, LCALL, proses interrupt
dan sejenisnya akan menambahkan nilai pada SP. Sedangkan instruksi POP, RET,
RETI dan sejenisnya akan mengurangi nilai pada SP.
e)
Data
Pointer (DPTR)
Data
Pointer (DPTR) merupakan register 16 bit yang terdiri atas 8 bit
Data Pointer High (DPH) dan 8 bit
Data Pointer Low (DPL). DPTR umumnya
digunakan untuk mengakses alamat pada memori eksternal.
f) Port
0 – 3 atau Port Register
Port
register merupakan register yang mewakili alamat port. Register input/output ini
meliputi Port 0 (P0), Port 1 (P1), Port 2 (P2) dan Port 3 (P3).
g)
Serial
Data Buffer
Serial
Data Buffer terdiri dari
dua register yang terpisah, transmit buffer dan receive buffer. Ketika data dipindahkan ke SBUF, maka data akan menuju
ke transmit buffer untuk dikirim. Memindahkan
data ke SBUF berarti menginisialisasi/memulai transmisi data secara serial.
Sebaliknya bila data dipindahkan dari SBUF, data tersebut berasal dari receive buffer.
h)
Timer
Registers
Timer Register merupakan register
yang digunakan untuk mengatur operasi timer.
Register ini meliputi Timer 1 High byte (TH1), Timer 0 High byte (TH0), Timer 1 Low byte (TL1), Timer 0 Low byte (TL0), Timer Mode (TMOD),
dan Timer Control (TCON).
i) Serial
Port Registers
Serial
Port Register merupakan register yang digunakan dalam proses
komunikasi serial. Register ini
meliputi Serial Data Buffer (SBUF)
dan Serial Port Control (SCON).
j) Interrupt Registers
Interrupt
register merupakan register yang digunakan untuk mengatur
proses interrupt. Register ini meliputi Interrupt Enable (IE) dan Interrupt Priority (IP).
k)
Power
Control Registers
Power Control Registers (PCON) mengandung beberapa macam bit control dengan konfigurasi seperti
terdapat pada Gambar Alokasi Bit PCON
MSB LSB
SMOD
|
-
|
-
|
-
|
GF1
|
GF0
|
PD
|
IDL
|
Gambar
3.3.Alokasi Bit PCON
Tabel Power Control Register
Simbol
|
Deskripsi
|
Keterangan
|
SMOD
|
Double Band Rate
|
‘1’ melipatgandakan baud rate
|
-
|
Reserved
|
-
|
-
|
Reserved
|
-
|
-
|
Reserved
|
-
|
GF1
|
General Purpose Flag
|
Untuk aplikasi user
|
GF0
|
General Purpose Flag
|
Untuk aplikasi user
|
PD
|
Power Down
|
‘1’ mengaktifkan power down
|
IDL
|
Idle Mode
|
‘1’ mengaktifkan mode idle
|
3.
Konfigurasi
Pin AT89S51
Pin adalah kaki fisik dari sebuah IC MCS-51dan masing-masing pin memiliki fungsi dan karakteristik
tersendiri.

Gambar
Konfigurasi Pin pada Mikrokontroler AT89S51
Penjelasan dari susunan pin-pin
AT89S51 adalah sebagai berikut :
a) VCC
Pin VCC dihubungkan ke sumber tegangan +5V sebagai supply tegangan.
b) Ground
(GND)
Pin GND dihubungkan ke Vss atau ground.
c) Port
0
Port 0, merupakan port I/O 8 bit open drain dua arah. Sebagai sebuah port, setiap pin dapat mengendalikan 8 input
TTL. Ketika logika “1” dituliskan ke port
0, maka port dapat digunakan sebagai input dengan high impedansi. Port 0
dapat juga dikonfigurasikan untuk multipleksing dengan address/ data bus selama mengakses memori program atau data
eksternal. Pada mode ini P0 harus mempunyai pull
up.
d) Port
1
Port 1 merupakan port I/0 8 bit dua arah dengan internal pull up. Buffer output port 1 dapat mengendalikan empat TTL input. Ketika logika “1” dituliskan ke port 1, maka port ini akan mendapatkan
internal pull up dan dapat digunakan
sebagai input. Port 1 juga menerima
alamat byte rendah selama pemrograman
dan verifikasi flash.
Tabel
Fungsi Alternatif Port 1
Port
Pin
|
Fungsi Alternatif
|
P1.5
|
MOSI
(digunakan untuk In-System Programming)
|
Tabel
Fungsi Alternatif Port 1 (sambungan)
Port Pin
|
Fungsi Alternatif
|
P1.6
|
MISO
(digunakan untuk In-System Programming)
|
P1.7
|
SCK
(digunakan untuk In-System Programming)
|
e) Port
2
Port 2 merupakan port I/O 8 bit dua arah dengan internal pull up. Buffer output port 2 dapat mengendalikan empat TTL input. Ketika logika “1” dituliskan ke port 2, maka port ini akan mendapatkan internal pull up dan dapat digunakan sebagai input. Selain sebagai jalur
I/O, port 2 juga berfungsi sebagai high byte address bus.
f) Port
3
Port 3 merupakan port I/O 8 bit dua arah dengan internal pull up. Buffer output port 3 dapat mengendalikan empat TTL input. Ketika logika “1” dituliskan ke port 3, maka port ini akan mendapatkan internal pull up dan dapat digunakan sebagai input. Port 3 juga melayani
berbagai macam fitur khusus,
Tabel
Fungsi Alternatif Port 3
Bit
|
Alamat Bit
|
Nama
|
Fungsi Lain
|
P3.0
|
0B0H
|
RXD
|
Jalur penerimaan data pada komunikasi serial
|
P3.1
|
0B1H
|
TXD
|
Jalur
pengiriman data pada komunikasi serial
|
P3.2
|
0B2H
|
INT0
|
External Interrupt 0
|
P3.3
|
0B3H
|
INT1
|
External Interrupt 1
|
P3.4
|
0B4H
|
T0
|
Timer/Counter 0 external input
|
P3.5
|
0B5H
|
T1
|
Timer/Counter 1 external input
|
Tabel
Fungsi Alternatif Port 3 (sambungan)
Bit
|
Alamat Bit
|
Nama
|
Fungsi
Lain
|
P3.6
|
0B6H
|
WR
|
External data memory write strobe
|
P3.7
|
0B7H
|
RD
|
External data memory read strobe
|
g) Reset
(RST)
Input Reset. Logika high “1” pada pin ini
untuk dua siklus mesin ketika oscillator
bekerja maka akan mereset mikroprossesor.
f) ALE/PROG
Address Latch Enale (ALE) merupakan suatu pulsa output untuk mengunci low
byte dari address selama
mengakses memori eksternal.
g) PSEN
Program Store Enable (PSEN) merupakan strobe read untuk memori program eksternal.
h) EA/VPP
Eksternal Access Enable (EA) harus di hubungkan ke GND untuk enable device, untuk memasuki memori
program eksternal mulai alamat 0000H sampai dengan FFFFH. EA harus dihubungkan
ke VCC untuk akses memori program internal. Pin
ini juga menerima tegangan pemrogramman (VPP) selama pemrograman Flash.
i) XTAL1
Input untuk oscillator inverting
amplifier dan input untuk
rangkaian internal clock.
j) XTAL2
Output dari oscillator inverting
amplifier.
3.2.3.
Memori
Memori pada intinya berfungsi untuk ‘mengingat’ atau menyimpan suatu
informasi. Memori penting bagi sistem MCS-51 karena semua program dan data
tersimpan dalam memori. Makin besar kapasitas memori yang dimiliki, sistem
dapat mengakomodasi program yang lebih kompleks dan data yang lebih banyak.
a) Tipe
Memori
Pada dasarnya dalam dunia mikrokontroler ada dua
tipe memori yaitu data memory dan program memory.
1) DATA MEMORY
Data memory, seperti namanya, berfungsi untuk menyimpan data. Berdasarkan
lokasinya, data memory dibagi menjadi
dua: internal data memory yang
terdapat dalam IC MCS-51 dan eksternal
data memory yang berada di luar IC MCS-51. Kapasitas internal data memory yang dimiliki MCS-51 sebesar 128 bytes ditambah dengan SFR sehingga
jumlahnya mencapai 256 bytes.
Pembagian ruang internal data memory
terdapat pada Gambar 2.5.

Gambar
Pembagian Ruang Internal Data Memory
Jika diperlukan, external data
memory berupa IC RAM atau ROM dapat ditambahkan dan digunakan untuk
menyimpan variable yang ditentukan oleh user.
Penambahan ini dapat dilakukan hingga kapasitas total external data memory mencapai 64 KB.

Gambar
Konfigurasi Internal dan Eksternal Data
Memory
2)
PROGRAM MEMORY
Program Memory berfungsi untuk menyimpan kode program user yang akan dijalankan. User
dapat menggunakan internal program memory
yang tertanam dalam IC MCS-51 dan external
program memory. Kapasitas internal
program memory bervariasi antara satu tipe IC MCS-51 dengan tipe yang lain,
misalnya 89C2051 yang memiliki kapasitas 2 KB dan dan 89C51 yang memiliki
kapasitas 4 KB. Internal program memory,
selain berisi instruksi user, juga
memiliki beberapa alamat khusus yang ditujukan untuk reset address (alamat yang dituju pada saat pertama kali
mikrokontroler bekerja) dan interrupt
vector address.

Gambar
3.7. Alamat Reset dan Interrupt Vector Address
Jika diperlukan, user dapat
menambahkan IC RAM atau ROM tambahan sebagai external program memory. Penambahan ini juga dapat dilakukan hingga
kapasitas total program memory
mencapai 64 KB.

Gambar
Konfigurasi Internal dan External Program Memory
b) Organisasi Internal Data Memory
Internal data memory meliputi: Register
Banks, Bit-addressable RAM, General
Purpose RAM (Scratch Pad Area)
dan Special Function Registers (SFR).
Bagan pembagian internal data memory.

Gambar
Organisasi Internal Data Memory
1) General Purpose RAM
General
Purpose RAM atau sering disebut
juga adalah ruang data memory yang
bebas digunakan user sebagai tempat
penyimpanan variabel atau sebagai alamat inisialisasi Stack Pointer. General
Purpose RAM hanya dapat diakses per byte.
2) Bit-Addressable RAM
Bit-Addressable
RAM memiliki fungsi yang sama dengan General Purpose RAM. User juga dapat menggunakan ruang ini
untuk menyimpan variabel atau alamat inisialisasi Stack Pointer. Bit-Addressable
RAM tidak hanya dapat diakses per byte
namun juga dapat diakses per bit.
3) Registers Banks
Internal
data memory memuat 4 register banks: Register Bank 0, Register
Bank 1, Register Bank 2, dan Register Bank 3. Register banks ini digunakan sebagai alamat untuk menampung delapan
register selebar 1 byte yang diberi nama R0, R1, dan
seterusnya hingga R7. Secara default,
kedelapan register ini akan menempati
Register Banks 0. Alokasi alamat Register Bank.

Gambar Pembagian Register Banks
c) Special
Function Registers
Sesuai namanya, Special Function
Registers (SFR) merupakan sejumlah register
khusus yang mencakup: alamat port, Accumulator, register B, timer dan sejumlah register kontrol. Pembahasan register-register
yang termasuk di dalam SFR telah dibahas di atas pada bagian Bab 2.2.1 tentang Diagram
Blok AT89S51. Beberapa dari SFR hanya dapat diakses per byte namun beberapa SFR juga dapat diakses per bit (bit-addressable).

Gambar Pembagian SFR
4.
Interrupt
Interrupt bila diterjemahkan secara harfiah berarti menyela. Pada prakteknya, interrupt pada mikrokontroler memang
akan menyela program yang sedang diproses. Proses interrupt dapat dianalogikan sebagai seorang atasan memanggil
pegawainya yang sedang bekerja. Seorang pegawai tidak tahu kapan atasan akan
memanggilnya. Namun jika dia dipanggil, pegawai tersebut harus menghentikan
pekerjaannya untuk sementara waktu dan memenuhi perintah atasannya. Setelah
pegawai tersebut menyelesaikan perintah atasannya, dia dapat kembali ke
pekerjaannya semula (Danny Christanto dan Kris Pusporini, 2004).
a) Organisasi
Interrupt
MCS-51 mengenal lima sumber interrupt.
Berikut ini kelima sumber interrupt
tersebut yang disusun berdasarkan polling
CPU MCS-51:
1) External
Interrupt 0
2) Timer/Counter
0
3) External
Interrupt 1
4) Timer/Counter
1
5) Serial
Port (Transmit/Receive)
User dapat mengaktifkan interrupt
melalui SFR Interrupt Enable (IE).
MSB LSB
EA
|
-
|
-
|
ES
|
ET1
|
EX1
|
ET0
|
EX0
|
Gambar
Alokasi Bit IE
Tabel
Interrupt Enable
Bit
|
Alamat Bit
|
Simbol
|
Deskripsi
|
|||
IE.7
|
0AFH
|
EA
|
Enable All
|
|||
-
|
-
|
-
|
Reserved
|
|||
-
|
-
|
-
|
Reserved
|
|||
IE.4
|
0ACH
|
ES
|
Serial Interrupt Enable Bit
|
|||
IE.3
|
0ABH
|
ET1
|
Timer/Counter 1 Enable Bit
|
|||
IE.2
|
0AAH
|
EX1
|
External Interrupt 1 Enable Bit
|
|||
IE.1
|
0A9H
|
ET0
|
Timer/Counter 0 Enable Bit
|
|||
IE.0
|
0A8H
|
EX0
|
External Interrupt 0 Enable Bit
|
|||
b) Interrupt Priority
Interrupt juga memiliki prioritas yang diatur dengan SFR Interrupt Priority (IP).
MSB LSB
-
|
-
|
-
|
PS
|
PT1
|
PX1
|
PT0
|
PX0
|
Gambar
Alokasi Bit IP
Tabel
Interrupt Priority
Bit
|
Alamat Bit
|
Simbol
|
Deskripsi
|
-
|
-
|
-
|
Reserved
|
-
|
-
|
-
|
Reserved
|
-
|
-
|
-
|
Reserved
|
IP.4
|
0BCH
|
PS
|
Serial Interrupt Priority Bit
|
Tabel Interrupt Priority
(sambungan)
Bit
|
Alamat Bit
|
Simbol
|
Deskripsi
|
IP.3
|
0BBH
|
PT1
|
Timer/Counter 1 Priority Bit
|
IP.2
|
0BAH
|
PX1
|
External Interrupt 1 Priority Bit
|
IP.1
|
0B9H
|
PT0
|
Timer/Counter 0 Priority Bit
|
IP.0
|
0B8H
|
PX0
|
External Interrupt 0 Priority Bit
|
5. Timer/Counter
MCS-51 menyediakan dua buah Timer/Counter
yang dapat digunakan sebagai timer
ataupun sebagai counter.
a) Konsep
Timer dan Counter
Pada dasarnya timer dan counter merupakan sistem yang sama-sama
menambahkan diri hingga overflow. Timer memanfaatkan frekuensi osilator
untuk menambahkan tiap machine cycle.
Counter memanfaatkan sumber dari luar
IC MCS-51. Counter akan bertambah
jika terdapat transisi dari nilai ‘1’ ke nilai ‘0’ pada pin T0 (P3.4) atau T1 (P3.5). Timer
dapat digunakan untuk menghitung suatu periode waktu antara kejadian, sebagai
jarak antara kejadian, dan menghasilkan baud
rate untuk komunikasi serial. Counter
dapat digunakan untuk menghitung jumlah munculnya suatu kejadian.
b) Timer Register
Register yang digunakan untuk mengatur timer/counter
terdapat pada Timer Mode (TMOD) dan Timer Control (TCON).
MSB LSB
GATE
|
C/T
|
M1
|
M0
|
GATE
|
C/T
|
M1
|
M0
|
Gambar.
Alokasi Bit TMOD
Tabel
Timer Mode
Simbol
|
Deskripsi
|
GATE
|
Pemilih external
atau internal control
|
C/T
|
Pemilih Timer
atau Counter
|
M1
|
Pemilih Mode Timer/Counter
|
M0
|
Pemilih Mode Timer/Counter
|
MSB LSB
TF1
|
TR1
|
TF0
|
TR0
|
IE1
|
IT1
|
IE0
|
IT0
|
Gambar
Alokasi Bit TCON
Tabel
Timer Control
Bit
|
Alamat Bit
|
Simbol
|
Deskripsi
|
TCON.7
|
8FH
|
TF1
|
Timer/Counter 1 Overflow Flag
|
TCON.6
|
8EH
|
TR1
|
Timer 1 Run Control Bit
|
TCON.5
|
8DH
|
TF0
|
Timer/Counter 0 Overflow Flag
|
TCON.4
|
8CH
|
TR0
|
Timer 0 Run Control Bit
|
TCON.3
|
8BH
|
IE1
|
External Interrupt 1 Edge Flag
|
TCON.2
|
8AH
|
IT1
|
External Interrupt 1 Type Control Bit
|
TCON.1
|
89H
|
IE0
|
External Interrupt 0 Edge Flag
|
Tabel
Timer Control (sambungan)
TCON.0
|
88H
|
IT0
|
External Interrupt 0 Type Control Bit
|
c) Inisialisasi
sebuah Timer
Proses inisialisasi adalah proses menentukan nilai semua register yang berkaitan dengan Timer/Counter yang akan digunakan agar Timer/Counter dapat berfungsi
sebagaimana yang dikehendaki. Register
yang harus diatur terlebih dahulu meliputi:
1. TMOD dan TCON
2. THx dan/atau TLx
3. IE dan/atau IP
6.
Seven Segment Display
Seven
Segment adalah suatu
segmen-segmen yang digunakan untuk menampilkan angka. Seven segmen ini tersusun atas LED-LED yang disusun membentuk angka
0 sampai dengan angka 8.
Seven segment ada dua jenis, yaitu common anoda dan common katoda. Pada common anoda,
semua anoda dari diode disatukan secara paralel dan
dihubungkan ke VCC. Segment dapat menyala apabila mendapat logika 0 pada bagian
katoda. Sedangkan pada commom katoda, semua katoda disatukan secara paralel dan
dihubungkan ke ground.

Gambar
Seven Segment Display
5.
Teori
Push Button
Push Button adalah sebuah perangkat yang digunakan untuk
memutuskan jaringan listrik, atau
untuk menghubungkannya. Jadi push button pada dasarnya adalah alat penyambung atau
pemutus aliran listrik. Selain untuk jaringan listrik arus kuat, Push button berbentuk kecil juga dipakai
untuk alat komponen elektronika arus lemah.
Gambar
Push Button
Secara sederhana, push
button terdiri dari dua buah logam yang menempel
pada suatu rangkaian, dan bisa terhubung atau terpisah sesuai dengan keadaan
sambung (on) atau putus (off) dalam rangkaian itu. Pada dasarnya push button bisa diaplikasikan
untuk sensor mekanik,
karena alat ini bisa dipakai pada mikrokontroller untuk pengaturan rangkaian
pengontrolan.
PENUTUP
Mikrokontroler merupakan
satu keping alat elektronik digital yang dapat diprogram dengan fasilitas
Input/output dan memori yang terintegrasi didalamnya sehingga mikrokontroler
terkadang disebut juga komputer dalam keping. Mikrokontroler dapat digunakan
untuk berbagai tujuan, pengendali robot, otomatisasi berbagai peralatan, dan
masih banyak lagi penggunaannya. mikrokontroler banyak digunakan dalam berbagai
ide-ide kreatif.
Melalui mikrokontroler kita dapat merealisasikan
ide dan alur berpikir untuk diimplementasikan kedalam program yang dapat
dimengerti dan dilakukan oleh mikrokontroler, kemudahan dan kecepatan proses
pembuatannya membuat komponen ini menjadi pilihan untuk berbagai rancangan.
Waktu yang dibutuhkan mulai dari ide sampai realisasi alat menjadi sangat
cepat. Cakupan penerapannya sangat luas mulai dari rancangan sederhana seperti
alarm sampai yang cukup rumit seperti pengendali gerakan robot.
Pendidikan sekolah menegah
kejuruan khususnya bidang elektronika sangat membutuhkan berbagai perangkat
yang menjelaskan tentang elektroika digital dan elektronika digital dalam
proses belajar, sehingga pemanfaatan mikrokontroler untuk proses belajar
mengajar sangat di butuhkan. Secara umum beberapa sekolah diperkenalkan dalam
mata pelajaran elektronika khususnya mikrokontroler kepada para siswa mengenai
penggunaan dan aplikasianya sehari-hari.
TUJUAN & MANFAAT
Tujuan makalah ini adalah belajar membuat perangkat
mikrokontroler dan seven segmen.
Manfaatnya
adalah mendapat pengetahuan untuk dapat mengembangkan fungsi dari
mikrokontroler.
Sumber : Christanto, Danny dan Pusporini, Kris,
Panduan Dasar Mikrokontroler Keluarga
MCS-51, Surabaya: Innovative Electronics, 2004.
Tanuta, Lukas, Pengantar Komunikasi Data, Jakarta: PT Elex Media Komputindo, 1989.