Depok Instruments

We Present Technologies As Arts

1. Berkenalan dengan Mikrokontroler

1.1. Asal-Usul Komputer

Perkembangan generasi komputer dari awal sampai dengan saat ini selalu ditandai dengan teknologi global yang saat itu menjadi landasan operasi kerja dari komputer. Sampai saat ini telah tercatat 5 generasi komputer:

1. Tabung Vakum

2. Transistor

3. Integrated Circuits (IC)

4. Mikroprosesor

5. Artificial Intelegent (AI)

 

1.2. Mikroprosesor VS Mikrokontroler

Seperti sudah dijelaskan sekilas di bab sebelumnya, bahwa Mikroprosesor adalah termasuk ke dalam generasi baru (ke-4) dari perkembangan komputer secara keseluruhan. Lalu bagaimana dengan Mikrokontroler? Secara sederhana, kita dapat katakan bahwa Mikrokontroler adalah saudara dari Mikroprosesor. Seperti juga Mikroprosesor, Mikrokontroler dapat melakukan pengolahan data, walaupun dalam taraf yang lebih sederhana. Lalu apakah perbedaan mendasar antara Mikroprosesor dan Mikrokontroler selain tingkat kerumitan dari data yang diolahnya? Sebuah pengendali, baik Mikroprosesor maupun Mikrokontroler, memerlukan ROM (Read Only Memory) untuk menyimpan program yang akan dieksekusinya dan RAM (Random Access Memory) untuk menyimpan sementara data-data yang diolahnya. Tetapi perbedaannya, sebuah Mikroprosesor tidak memiliki fasilitas ROM dan RAM dalam chip-nya, sehingga memerlukan komponen-komponen lain yang bertugas sebagai ROM dan RAM untuk dapat bekerja, sedangkan sebuah Mikrokontroler memiliki fasilitas-fasilitas tersebut dalam chip-nya, sehingga dapat bekerja secara single-chip. Jadi untuk mengendalikan sebuah sistem yang tingkat kerumitannya tidak terlalu tinggi, sangatlah cocok menggunakan Mikrokontroler sebagai pengendalinya.

 

1.3. Aplikasi dari Mikrokontroler

Baca selebihnya »

September 21, 2007 Ditulis oleh depokinstruments | 2. Mikrokontroler I | | & Komentar

2. Hubungan Lanjut dengan Sang “Idol”

2.1. Huruf dan Angka Penuh Arti

AT89S51. Itu adalah nomer seri yang dimiliki oleh sang “Idol” kita. Untuk lebih menikmati pembuatan proyek yang menggunakan mikrokontroler “Idol” kita ini, tentu kita perlu menyenangi “Idol” kita terlebih dahulu, seperti pepatah “Tak Kenal Maka Tak Sayang” J

Jika kita kelompokkan huruf dan angka tersebut, maka akan menjadi seperti berikut:

AT89S51 = AT + 8951 + S

Dengan arti: AT = ATMEL sebagai produsen dari IC ini

8951 = 8051 + 9 = IC ber-arsitektur 8051 dengan tipe memory Flash ROM (9 = Flash ROM, 8 = EEPROM, 7 = EPROM).

S = ISP programming = Sudah dapat diprogram secara ISP.

 

2.2. Kemampuan AT89S51

Tiap IC mikrokontroler memiliki kemampuan yang berbeda-beda atau biasa disebut sebagai fitur dari suatu mikrokontroler. Adapun fitur yang dimiliki oleh AT89S51 adalah sebagai berikut:

·4K bytes Flash ROM

·128 bytes RAM

·4 buah 8-bit I/O (Input /Output) port

·2 buah 16 bit timer

·Interface komunikasi serial (TX dan RX)

·210 lokasi bit-addressable

·5 sumber interupt (2 interupt timer, 2 external interupt, 1 serial interupt)

·Tampilan Fisik dari AT89S51:

AT89S51

Gambar 1.1. Tampilan Fisik AT89S51

 

2.3. Kerabat AT89S51

Seperti yang kita ketahui bahwa AT89S51 adalah mikrokontroler yang menggunakan 8051 sebagai arsitekturnya dan tergolong ke dalam MCS-51. Nah, ternyata ATMEL tidak hanya memproduksi satu jenis IC mikrokontroler yang ber-arsitektur 8051, ATMEL pun mengeluarkan kerabatnya AT89S51 dengan fitur-fitur yang telah dikembangkan:

AT89S52 = Memiliki kapasitas flash ROM dan RAM 2x dari AT89S51

AT89S54 = Memiliki kapasitas flash ROM 4x dan RAM 2x dari AT89S51

AT89S2051 = Hanya memiliki 2 port I/O sehingga hanya memiliki 20 pin dengan kapasitas 2K bytes flash ROM dan 256 bytes RAM. Sangat cocok untuk menghemat ruang di PCB.

AT89S4051 = Sama dengan AT89S2051 tetapi memiliki kapasitas flash ROM yang lebih besar, yaitu 4K bytes.

AT89S8252 = Memiliki kapasitas ROM dan RAM yang sama dengan AT89S52, tetapi memiliki tambahan memory EEPROM untuk penyimpanan data non-volatile sebesar 2K bytes.

 

2.4. Lingkungan Pendukung / Minimum Sistem Baca selebihnya »

September 21, 2007 Ditulis oleh depokinstruments | 2. Mikrokontroler I | | & Komentar

3. AT89S51 dan Permainan Nyala LED

3.1. Sekilas Tentang LED

Sering kali kita mendengar tentang komponen LED, yaitu sebutan untuk komponen yang dapat menyala. Tetapi apakah sebenarnya LED itu, LED adalah singkatan untuk “Light Emitting Diode” atau dalam bahasa indonesia berarti Dioda yang Memancarkan Cahaya. LED seperti dioda yang lain juga memiliki 2 kutub, Anoda atau Anode (A) dan Katoda atau Cathode (C), seperti yang terlihat pada gambar 3.1. Ketika ada arus listrik mengalir dari Anoda ke Katoda (A = ‘+’ dan C = ‘-‘), maka LED akan memancarkan cahaya. Namun ketika arus listrik dibalik (A = ‘-‘ dan C = ‘+’), maka LED akan mem-blok arus listrik seperti pada dioda yang lainnya.

LED
Gambar 3.1. Komponen LED

3.2. Merangkai AT89S51 dan LED

Ada 2 cara merangkai LED pada sistem minimum AT89S51:

  • Common Anode (CA)
    • Seperti yang terlihat pada gambar 3.2.a, koneksi CA akan menghubungkan anoda pada LED dengan supply (+) dan katoda dihubungkan pada pin AT89S51, sehingga LED akan menyala ketika pin AT89S51 diberi logika “0” atau “Low”. Itu sebabnya jenis aktivasi CA tergolong “active low”.

 

  • Common Cathode (CC)
    • Sedangkan aktivasi CC tergolong “active high” karena katoda dari LED dihubungkan ke supply (-) dan anodanya dihubungkan pada pin AT89S51, sehingga LED akan menyala ketika diberi logika “1” atau “High” di pin AT89S51-nya.

 

Jenis Koneksi
Gambar 3.2. Koneksi LED dengan mikrokontroler: a. Common Anode (CA), b. Common Anode (CC).

 

3.3. Program Permainan Nyala LED

Sebelum memrogram permainan nyala LED, terlebih dahulu kita harus tentukan jumlah LED yang akan digunakan dan jenis koneksi yang akan kita gunakan. Pada tutorial ini, kita akan merangkai 8 buah LED sesuai dengan jumlah bit dalam 1 port AT89S51 (8 bit) dengan menggunakan jenis koneksi CA. Kelebihan dari koneksi ini adalah nyala LED akan lebih terang dari CC karena arus yang mengalir pada LED langsung dari supply (+) rangkaian. Kemudian setelah kita tentukan jenis koneksi, kita pun perlu menentukan port atau pin mana yang akan kita gunakan untuk menyalakan LED tersebut. Pada tutorial ini, port yang kita gunakan untuk mengendalikan LED adalah PORT-0 (P0.0-P0.7) seperti yang terlihat pada gambar 3.3.

AT89S51+LED
Gambar 3.3. Koneksi 8 buah LED pada Port-0 AT89S51.

 

Karena jenis koneksi yang kita gunakan adalah CA, maka untuk menyalakan LED kita perlu memberikan logika “0” ke pin dari port-0. Program pertama akan membuat seluruh LED di Port-0 berkedip-kedip. Sedangkan program ke-2 akan membuat LED menyala dari kiri ke kanan, kemudian kembali ke kiri dan seterusnya. Lama waktu tunda dapat disesuaikan dengan merubah isi dari register-register r5, r6, dan r7. Selamat BERMAIN!

Baca selebihnya »

September 21, 2007 Ditulis oleh depokinstruments | 2. Mikrokontroler I | | & Komentar

4. AT89S51 dan Input Push-Button

4.1. Sekilas tentang Push-Button

Pada dasarnya, terdapat 2 jenis Push-Button di pasaran: Push-On dan Push-Off. Tetapi yang kita gunakan pada tutorial ini adalah yang berjenis Push-On, yaitu komponen yang terdiri atas dua kutub yang saling terpisah / tidak terhubung, dan sebuah tombol yang ketika ditekan akan menghubungkan kedua kutub tersebut sehingga akan mengalirkan arus listrik dari satu sisi kutub ke sisi kutub berikutnya (Lihat gambar 4.1).

PB

Gambar 4.1. Komponen Push-Button .

 

4.2. Merangkai AT89S51 dan Push-Button

Seperti juga pada LED, setelah kita mengetahui cara kerja dari komponen yang kita gunakan, Push-Button , kita perlu mengetahui cara merangkainya dengan Mikrokontroler kita, AT89S51. Dapat dilihat pada gambar 4.2, ada 2 cara perangkaian Push-Button: (1) Active-Low, yang berarti ketika Push-Button ditekan, ia akan memberikan data “Low” atau logika “0”. (2) Active-High, yang berarti kebalikan dari yang pertama. Lalu mengapa pada gambar ada perbedaan rangkaian antara 2 jenis koneksi. Mengapa yang pertama, Active-Low, tidak perlu adanya resistor? Hal tersebut dikarenakan pin Mikrokontroler favorit kita, AT89S51, ini memiliki Default-High, yang artinya ketika tidak terkoneksi dengan divais apapun dan tidak dikondisikan oleh suatu program apapun atau dalam keadaan Reset, ia akan berkondisi “High” atau logika “1”. Itulah sebabnya pada tutorial ini kita akan menggunakan jenis koneksi yang pertama, Active-Low.

koneksi PB

Gambar 4.2. Koneksi Push-Button dengan Mikrokontroler: a. Active-Low, b. Active-High.

4.3. Program Interaksi Nyala LED terhadap Rangsangan Input Push-Button

Setelah mengetahui cara merangkai Push-Button, maka selanjutnya adalah menentukan jumlah komponen yang akan kita gunakan dan pada Port AT89S51 mana akan kita rangkai Push-Button tersebut. Seperti dapat dilihat pada gambar 4.3, jumlah Push-Button yang kita gunakan adalah 8 buah dan dirangkaikan pada Port-3 dari AT89S51. Lalu mengapa pada gambar kita juga dapat melihat adanya rangkaian LED yang telah kita gunakan pada bab sebelumnya? Hal ini dikarenakan untuk mengetahui suatu program pengecekkan input tentu kita memerlukan suatu kondisi output yang ber-interaksi terhadap perubahan input. Dan untuk memudahkan perangkaian, maka kita gunakan rangkaian LED yang sebelumnya telah kita pelajari.

mikro led pb

Gambar 4.3. Koneksi 8 buah Push-Button pada Port-3 dan 8 buah LED pada Port-0 AT89S51.

Oleh karena data yang diberikan oleh push-button ketika ditekan adalah logika “0”, maka program pengecekkan yang dibuat adalah program yang akan memeriksa kondisi logika “0” di Port-3 AT89S51.

Baca selebihnya »

September 19, 2007 Ditulis oleh depokinstruments | 2. Mikrokontroler I | | & Komentar