Selasa, 02 April 2013


INOVASI TEKNOLOGI DASAR MIKROKONTROLER AT89S51 DENGAN DISPLAY SEVEN SEGMEN

MAKALAH
ALGORITMA DAN PEMROGRAMAN KASUS TEKNIK ELEKTRO
https://encrypted-tbn1.gstatic.com/images?q=tbn:ANd9GcSuuCnmpGjSIR_HcelocnCthvFDgN4IoxJJBm80FzV5qiZqz60C
 


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.
Organisasi 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.
Pembagian Register Banks 
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).
Pembagian SFR
 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.
http://upload.wikimedia.org/wikipedia/commons/thumb/1/11/Tactile_switches.jpg/220px-Tactile_switches.jpg
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.