-->

Mikrokontroler
Sebenarnya saya masih awam dalam pemahaman tentang Mikrokontroler. Tapi kali ini saya akan menuliskan sedikit tentang Mikrokontroler  yang saya ketahui.
Mikrokontroller secara harfiah merupakan pengatur berukuran mikro. Berbeda dengan mikroprosessor yang merupakan CPU (Central Processing Unit) chip tunggal yang digunakan dalam mikrokomputer, mikrokontroller memiliki sebuah CPU serta fitur rangkaian yang terdapat pada mikrokomputer yang terintegrasi dalam sebuah IC (Integrated Circuit), sehingga dalam satu IC mikrokontroller terdapat sebuah CPU, RAM (Random Access Memory), ROM (Read Only Memory), sebuah antarmuka serial, sebuah antarmuka parallel, timer, dan interrupt scheduling circuity (rangkaian penjadwalan interupsi).



 Blok diagram sistem mikrokomputer
Namun kapasitas on-chip RAM (RAM internal) tidak sebesar RAM pada mikrokomputer saat ini, oleh karenanya mikrokontroller hanya dipergunakan 5 untuk aplikasi tertentu. Gambar 2.1 memperlihatkan sebuah sistem mikrokomputer yang terintegrasi dalam sebuah IC mikrokontroller. Fitur penting lainnya dari mikrokontroller adalah sistem interrupt terintegrasi. Sebagai perangkat berorientasi kontrol, mikrokontroller sering digunakan untuk sebuah sistem yang merespon external stimuli (interupsi) secara real time. Mikrokontroller harus dapat melakukan tugas switching dengan cepat, menunda suatu proses sementara waktu mengeksekusi yang lain ketika merespon sebuah “event”. Misal pada produk microwave berbasis mikrokontroller, membuka pintu microwave merupakan contoh “event” yang mengakibatkan sebuah interrupt terhadap mikrokontroller. Mikroprosessor umumnya digunakan sebagai CPU dalam sistem mikrokomputer. Inilah tujuan utama mikroprosessor didesain, dan ini merupakan keutamaan yang mikroprosessor miliki. Sedangkan mikrokontroller didesain untuk mengakomodasi desain minumum yang memiliki ukuran kecil dan komponen minimal serta berorientasi ke aktivitas bersifat kontrol. Desain sistem dengan menggunakan ribuan IC dapat direduksi dengan penggunaan sebuah mikrokontroller. Yang dibutuhkan hanyalah sebuah mikrokontroller terprogram dalam ROM dan sejumlah kecil komponen pendukung. Mikrokontroller sangat cocok untuk mengontrol perangkat I/O dengan desain sistem minimalis, sedangkan mikroprosessor cenderung untuk penggunaan pemrosesan informasi dalam sistem komputer.

Semoga dapat membantu.

AT89s51

AT89S51 merupakan mikrokontroller CMOS 8 bit dengan kapasitas PEROM (Progrmmable Erasable Read Only Memory) sebesar 4 Kb yang memiliki performa tinggi serta konsumsu daya yang rendah. Komponen ini dimanufaktur dengan menggunakan teknologi memori high-density milik atmel serta kompatibel dalam hal instruksi set dan susunan pin standar industri MCS 51. Fitur flash on-chip memberikan kemampuan memori kode / program dapat diprogram berulang kali secara ISP (In System Programming) atau melalui programmer memori nonvolatile. Dengan mengkombinasikan sebuah CPU 8-bit dan chip flash monolithic, AT89S51 merupakan mikrokontroller yang kokoh, fleksibel dan biaya terjangkau untuk solusi aplikasi kontrol emebedded. AT89S51 hadir dalam bentuk PQFP / TQFP, PDIP dan PLCC. Berikut merupakan susunan pin AT89S51 dalam kemasan PDIP :


 Konfigurasi pin AT89S51
AT89S51 memiliki fitur standar, anatara lain : 4Kb Flash, 128 byte RAM, 32 jalur I/O, 2 buah timer / counter 16-bit, 5 vector interruptserial port full duplexon-chip oscillator dan rangkaian clock. Selain itu, AT89S51 didesain dengan static logic untuk operasi frekuensi sampai 0Hz dan mendukung mode operasi yang menghemat daya, yaitu Idle Mode dan Power Down Mode. Mode
idle akan memberhentikan proses CPU (sleep), namun tetap memfungsikan fitur on-chip lainnya, seperti : RAM, timer / counterserial port dan sistem interupsi. Pada mode idle, isi internal RAM tidak akan berubah. Untuk keluar dari mode idle dapat dilakukan melalui interupsi atau dengan reset. Mode power down akan menyimpan isi RAM dan SFR, namun menahan oskilator untuk mendisable fungsi chip lainnya sampai adanya reset. Karena oskilator berhenti maka instruksiterakhir yang dieksekusi adalah instruksi yang meng-invoke mode power down.

Berikut spesifikasi dari AT89S51:
1. Kompatibel dengan dengan mikrokontroler MCS 51
2. 8 K byte In-system Programmable (ISP) flash memori dengan kemampuan
1000 kali baca/tulis
3. 128 × 8-bit RAM internal
4. 32 jalur I/O yang dapat deprogram.
5. Dua buah 16 bit Timer/Counter
6. Enam sumber interupsi
7. Saluran Full Duplex Serial UART
8. Mode pemogramman ISP yang fleksibel (byte dan page mode)






Mikrokontroler AT89S51 hanya memerlukan tambahan 3 kapasitor, 1 resistor dan 1 kristal serta catu daya 5 Volt. Kapasitor 10 mikro-Farad dan resistor 10 Kilo Ohm dipakai untuk membentuk rangkaian reset. Dengan adanya rangkaian reset ini AT89S51otomatis direset begitu rangkaian menerima catu daya. Kristal dengan frekuensi maksimum 12 MHz dan kapasitor 30 piko-Farad dipakai untuk melengkapi rangkaian oscilator pembentuk clock yang menentukan kecepatan kerja mikrokontroler. Memori merupakan bagian yang sangat penting pada mikrokontroler.Jenis memori yang dipakai untuk memori program AT89S51 adalah Flash .
Sarana Input/Ouput yang disediakan cukup banyak dan bervariasi AT89S51 mempunyai 32 jalur Input/Ouput. Jalur Input/Ouput paralel dikenal sebagai Port 1 (P1.0..P1.7) dan Port 3 (P3.0..P3.5 dan P3.7).

Deskripsi pin-pin pada mikrokontroler AT89S51 :
Pin 1 sampai 8
Pin 1-8 merupakan port 1 yang menjadi saluran (bus) dua arah input/output 8 bit. Dengan internal pull-up yang dapat digunakan untuk berbagai keperluan dan dapat mengendalikan empat input TTL. Port ini juga digunakan sebagai saluran alamat pada saat pemrograman dan verifikasi.
Pin 9 (RST)
Merupakan masukan reset (aktif tinggi). Pulsa transisi dari rendah ke tingggi akan mereset mikrokontroler ini.
Pin 10 – pin 17 (Port 3)
Port 3 merupakan 8 bit port I/O dua arah dengan internal pullup. Port 3 juga mempunyai
fungsi pin masing-masing, yaitu sebagai berikut :
ma pin Fungsi
P3.0 (pin 10) RXD (Port input serial)
P3.1 (pin 11) TXD (Port output serial)
P3.2 (pin 12) INTO (interrupt 0 eksternal)
P3.3 (pin 13) INT1 (interrupt 1 eksternal)
P3.4 (pin 14) T0 (input eksternal timer 0)
P3.5 (pin 15) T1 (input eksternal timer 1)
P3.6 (pin 16) WR (menulis untuk eksternal data memori)
P3.7 (pin 17) RD (untuk membaca eksternal data memori)
Pin 18 dan 19
Jalur ini merupakan masukan ke penguat isolator berpenguatan tinggi. Mikrokontroler ini memiliki seluruh rangkaian osilator yang diperlukan pada chip, kecuali rangkaian kristral yang mengendalikan frekuensi osilator. Oleh karena itu, pin 18 dan 19 sangat diperlukan untuk dihubungkan dengan kristal. Selain itu, XTAL 1 juga dapat digunakan sebagai input untuk inverting osilator amplifier dan input ke rangkaian internal clock sedangkan XTAL 2 merupakan output dari inverting osilator amplifier.
Pin 20 (GND)
Merupakan ground sumber tegangan yang diberi simbol GND.
Pin 21 – pin 28 (Port 2)
Port 2 berfungsi sebagai I/O biasa atau high order address, pada saat mengakes memori  secara 16 bit. Pada saat mengakses memori 8 bit, port ini akan mengeluarkan isi dari P2 special function register. Port ini mempunyai internal pull up dan berfungsi sebagai input  dengan memberikan logika 1. Sebagai output, port ini dapat memberikan output sink keempat buah input TTL.
Pin 29 (PSEN)
Progam store enable (PSEN) merupakan sinyal pengontrol untuk mengakses program memori eksternal yang masuk ke dalam saluran (bus) selama proses pemberian atau pengambilan instruksi (fetching).
ALE/PROG (pin 30)
Address latch Enable (ALE/PROG) merupakan penahan alamat memori eksternal (pada port 1) selama mengakses ke memori eksternal. Pin ini juga berfungsi sebagai pulsa (sinyal) input program (PROG) selama proses pemograman.
Pin 31 (EA)
Pada kondisi low, pin ini akan berfungsi sebagai EA yaitu mikrokontroler akan menjalankan progam yang ada pada memori eksternal setelah sistem direset. Jika kondisi high, pin ini akan berfungsi untuk menjalankan progam yang ada pada memori internal. Pada saat flash progamming, pin ini akan mendapat tegangan 12 Volt.
Pin 39-Pin 32 (Port 0)
Port 0 dapat berfungsi sebagai I/O biasa, low order multiplex address/data ataupun penerima kode byte pada saat flash progamming Pada fungsi sebagai I/O biasa port ini dapat memberikan output sink ke delapan buah TTL input atau dapat diubah sebagai input dengan memberikan logika 1 pada port tersebut. Pada fungsi sebagai low order multiplex address/data, port ini akan mempunyai internal pull up. Pada saat flash progamming diperlukan eksternal pull up, terutama pada saat verifikasi program.
Pin 40 (VCC)
Merupakan sumber tegangan positif yang diberi simbol Vcc.

Bahasa Assembly MCS-51
Bahasa yang digunakan untuk memprogram IC mikrokontroler AT89S51 adalah bahasa assembly untuk MCS-51. MCS-51 merupakan salah satu keluaran mikrokontroler yang menggunakan teknologi CMOS.

Downloader  AT89s51
Seri AT89Sxx ni rangkaianny lbh sederhana,praktis,murah tp ngga kalah sm kakakny seri AT89Cxx coz mnganut aliran ISP (In System Programming). Gmn ngga sderhana,wong rangkaianny Cuma uC,kristal,kapasitor, resistor sm kabel dsolder dikit jd deh downloader.
Rangkaian ini dibuat didalam casing konektor male db 25
Kabel paralel ( 6 kabel ) sepanjang 1/2 meter
Rangkaian ini mengambil Power supply dari rangkaian Target

6 header kemudian dihubungkan ke rangkaian sismin AT89s51 melalui  Pin 6s/d Pin 8,Vcc dan Ground.
Sismin AT89s51

Sistem minimum ini dapat digunakan dengan mudah karena di sistem minimum ini menggunakan pin header yang penggunaanya tinggal di hubungkan saja tanpa perlu di solder lagi..

ROUTINE DELAY 1 DETIK Bahasa Assembly


Kita akan memulai membuat program yang nantinya akan kita downloadkan ke mikrokontroler AT89S51. Caranya buka notepad atau program text editor lain yang anda miliki kemudian ketikan listing program berikut.

$MOD51
$TITLE(LED)
          ORG     0000H
          MOV     A,#1        ; BERIKAN NILAI AWAL 1 PADA ACC
LOOP    :
        MOV     P1,A        ;NYALAKAN LED DI PORT1
        RR     A        ;GESER A KEKANAN SATU BIT

        MOV    R1,#2        ; 1 SIKLUS MESIN
DEL1    :    MOV    R2,#244    ; 1 SIKLUS MESIN
DEL2    :    MOV    R3,#255    ; 1 SIKLUS MESIN
DEL3    :    DJNZ R3,DEL3    ; 2 SIKLUS MESIN X 255
        DJNZ R2,DEL2    ; 2 SIKLUS MESIN X 244
        DJNZ R1,DEL    ; 2 SIKLUS MESIN X 2

        SJMP     LOOP

    Simpan dengan nama led.asm dan kompile menggunakan program ASM51. Kemudian downloadkan ke Mikrokontroler anda. Lihat yang terjadi dengan sistem anda. Led akan menyala satu-satu dari kiri kekanan dengan delay satu detik.


{ 2 komentar... read them below or Comment }

  1. kita juga punya nih artikel mengenai 'Ic mikrokontroler', silahkan dikunjungi dan dibaca , berikut linknya
    http://repository.gunadarma.ac.id/bitstream/123456789/865/1/10407912.pdf
    trimakasih
    semoga bermanfaat

    BalasHapus

Popular Post

All right reserved by khoirul muhlisin. Diberdayakan oleh Blogger.

- Copyright © 2013 blogger amatir -Metrominimalist- Powered by Blogger - Designed by Johanes Djogan -