Categories
Mikrokontroler

Mikrokontroler Atmel AT89

Merupakan produk populer di Indonesia, murah-meriah:

  • Terdapat berbagai macam jenis atau varian, AT89C dan AT89S (beberapa produk AT89C dikatakan sebagai not recommended for new design, karena sudah digantikan dengan varian baru yang lebih baik);
  • Harganya relatif murah dan terjangkau – selera bos harga anak kost;
  • Perbandingan fitur menunjukkan adanya beberapa perbedaan antar varian AT89, mulai dari ukuran Flash PEROM, ada tidaknya komparator, jumlah port, kecepatan operasional dan lain sebagainya.

Saran belajar pemrograman Mikrokontroler AT89:

  • Menggunakan perangkat lunak terpadu atau IDE (Integrated Development Environment), misalnya MIDE Studio for MCS-51 dari Innovative Experiment, Thailand yang bisa juga Anda download disini. Perangkat lunak ini sudah terpadu dengan dua macam kompiler, yaitu ASEM-51 untuk penulisan program dalam Bahasa Assembly dan SDCC untuk Bahasa C.
  • Rekomendasi buku bacaan untuk pembelajaran yang relatif mudah dipahami: Belajar Mikrokontroler AT89C51/52/55: Teori dan Praktek, Edisi 2 oleh Agfianto Eko Putra (Best Seller).
  • Membuat sendiri S52 Learning Board (berbasis AT89S52 atau AT89S8252), sebuah rangkaian downloader sekaligus papan pengembang untuk berbagai macam aplikasi:
  • Beberapa pemrogram yang saya sarankan, selain S52 Learning Board:
    • ISP Flash Programmer V3.0 (info)
    • Cheap Loader Cable for ASIM’s ISP for 89S51 (info)
    • M Asim Khan’s Programmer Ver 3.1 (info)
    • Atmel 89 Series Device Programmer (info)
    • Dan lain sebagainya…
  • Gunakan simulator gratis seperti TopView Simulator atau Dscope-51 atau menggunakan simulator komersial (yang sangat mahal), Proteus VSM v7.0 (versi evaluasi atau demo bisa didownload dari http://www.labcenter.co.uk).

Informasi lebih lengkap bisa diunduh di ebook saya…

Categories
Mikrokontroler

Mikrokontroler CISC vs RISC

Mikrokontroler yang beredar saat ini dibedakan menjadi dua macam, berdasarkan arsitekturnya:

  • Tipe CISC atau Complex Instruction Set Computing yang lebih kaya instruksi tetapi fasilitas internal secukupnya saja (seri AT89 memiliki 255 instruksi);
  • Tipe RISC atau Reduced Instruction Set Computing yang justru lebih kaya fasilitas internalnya tetapi jumlah instruksi secukupnya (seri PIC16F hanya ada sekitar 30-an instruksi).

Fasilitas internal yang saya maksudkan di sini antara lain: jumlah dan macam register internal, pewaktu dan/atau pencacah, ADC atau DAC, unit komparator, interupsi eksternal maupun internal dan lain sebagainya.

Yang mana sesuai dengan Anda? Sesuaikan dengan kebutuhan dan fitur-fitur yang ditawarkan oleh masing-masing mikrokontroler. Tidak ada ukuran secara pasti suatu jenis mikrokontroler lebih baik dibandingkan mikrokontroler lainnya.

Informasi lebih lengkap bisa diunduh di ebook saya…

Categories
Mikrokontroler

Pengetahuan Dasar Mikrokontroler AVR

Pendahuluan

Keluarga Mikrokontroler AVR merupakan mikrokontroler dengan arsitektur modern (emang selama ini ada yang kuno kali??). Terdapat 3 macam atau jenis mikrokontroler AVR, yaitu:

  • TinyAVR (tidak ada kaitannya ama mbak Tini yang jualan gudeg…)
  • AVR atau Classic AVR, dan
  • megaAVR (nah yang ini sudah mulai banyak yang nulis bukunya…)

Perbedaan jenis-jenis tersebut terletak dari fasilitas, atau lebih dikenal dengan fitur-fiturnya. Jenis TinyAVR merupakan mikrokontroler dengan jumlah pin yang terbatas (sedikit maksudnya) dan sekaligus fitur-fiturnya juga terbatas dibandingkan yang megaAVR. Semua mikrokontroler AVR memiliki set instruksi (assembly) dan organisasi memori yang sama, dengan demikian berpindah-pindah (walaupun tidak disarankan) antar mikrokontroler AVR gak masalah dan mudah!

Beberapa mikrokontroler AVR memiliki SRAM, EEPROM, antarmuka SRAM eksternal, ADC, pengali perangkat keras, UART, USART dan lain sebagainya. Bayangkan saja Anda punya TinyAVR dan MegaAVR, kemudian telanjangi (maksudnya copotin) semua periferal-nya, nah Anda akan memiliki AVR Core yang sama! Kayak membuang semua isi hamburger, maka Anda akan mendapatkan rotinya doang yang sama…

Memilih AVR “yang benar”

Moralnya…  tidak peduli tinyAVR, AVR (Classic AVR) atau megaAVR semuanya memiliki unjuk-kerja yang sama saja, tetapi dengan “kompleksitas” atau fasilitas yang berbeda-beda, ibaratnya begini: banyak fasilitas dan fitur = megaAVR, fitur atau fasilitas terbatas = TinyAVR. Gitu aja kok repot…

Nah AVR (Classic AVR) ada di antara kedua jenis tersebut dan perbedaan antara kelompok-kelompok ini semakin menjadi tidakjelas. Nah untuk aplikasi yang ingin Anda buat, sebaiknya Anda memilih mikrokontroler AVR dengan fitur-fitur yang Anda butuhkan, apalagi sekarang mikrokontroler AVR dijual dengan harga yang relatif terjangkau (nb: harga di Yogyakarta).

Belajar pemrograman mikrokontroler AVR??

Jawabannya ada di Ebook gratis Tutorial/workshop AVR bisa diunduh disini

Categories
Mikrokontroler

Belajar Mikrokontroler itu Mudah!

Sebenarnya, siapa saja yang perlu belajar mikrokontroler? Apakah hanya monopoli rekan-rekan di ELINS atau Teknik Elektro saja? Tidak, sama sekali tidak. Beberapa pembaca buku saya “Belajar Mikrokontroler AT89C51/52/55: Teori dan Praktek” berasal dari (berdasar email yang masuk dari seluruh Indonesia):

  • Para peminat atau hobyis dengan berbagai latar belakang pendidikan;
  • Pelajar SMA dan STM, bahkan tidak menutup kemungkinan pelajar SMP-pun berhak mendapatkan ilmu mikrokontroler, jika mereka berminat;
  • Mahasiswa teknik (khususnya Elektro, Industri dan Fisika), MIPA (khususnya ELINS dan Ilmu Komputer) maupun dari beberapa disiplin ilmu lainnya.

Kenapa mudah? Karena modalnya (1) Tekad dan (2) Menguasai atau minimal memahami logika dan algoritma. Hal ini disebabkan pemrograman mikrokontroler banyak membutuhkan cara berpikir yang logis dan terstruktur.

Untuk pemula saya sarankan menggunakan BASIC Stamp atau mikrokontroler dengan pendekatan bahasa BASIC atau yang sudah dipahami sebelumnya seperti Bahasa C, karena banyak kemudahan yang ditawarkan, mulai dari pembuatan rangkaian aplikasi hingga pemrogramannya. Lantas sarana belajar apa saja yang perlu disiapkan?

  • Buku-buku bacaan Mikrokontroler yang mudah dipahami, tidak hanya menggunakan bahasa yang Anda pahami (Indonesia) tetapi dituliskan atau disampaikan dengan cara yang relatif mudah dipahami.
  • Perangkat lunak kompiler atau cross assembler yang berkaitan dengan mikrokontroler yang dipelajari, ini digunakan untuk mengubah program kita menjadi siap untuk dieksekusi atau dijalankan oleh mikrokontroler yang bersangkutan. Bagaimana cara mendapatkan kompiler tersebut? Download saja dari website mikrokontroler yang bersangkutan (biasanya mereka menyediakan secara gratis).
  • Penting juga untuk menyediakan sebuah perangkat lunak lengkap yang bisa melakukan penggambaran rangkaian dan simulasi program mikrokontroler secara internal maupun visual secara real-time.
  • Perlu juga membuat rangkaian pemrogram (donwloader) atau papan pengembang atau langsung rangkaian aplikasi untuk melihat langsung hasil pemrograman mikrokontroler yang dilakukan.

Adakah perangkat lunak yang bisa untuk melakukan simulasi secara internal maupun visual? Tentu saja ada, hanya saja komersil dan harganya mahal sekali. Akan saya jelaskan ebook gratis saya yang bisa diunduh disini… monggo…

Categories
Mikrokontroler

Apakah Mikrokontroler itu?

Jika kita bicara tentang Mikrokontroler, maka tidak terlepas dengan pengertian atau definisi tentang Komputer itu sendiri, mengapa? Ada kesamaan-kesamaan antara Mikrokontroler dengan Komputer (atau Mikrokomputer), antara lain:

  • Sama-sama memiliki unit pengolah pusat atau yang lebih dikenal dengan CPU (Central Processing Unit);
  • CPU tersebut sama-sama menjalankan program dari suatu lokasi atau tempat, biasanya dari ROM (Read Only Memory) atau RAM (Random Access Memory);
  • Sama-sama memiliki RAM yang digunakan untuk menyimpan data-data sementara atau yang lebih dikenal dengan variabel-variabel;Sama-sama memiliki beberapa keluaran dan masukan yang digunakan untuk melakukan komunikasi timbal-balik dengan dunia luar.

Lantas apa yang membedakan antara Mikrokontroler dengan Komputer atau Mikrokomputer? Begitu mungkin pertanyaan yang ada di benak kita, saat kita membaca beberapa daftar kesamaan yang sudah saya tuliskan tersebut. Sama sekali berbeda, itu jawaban yang saya berikan kepada Anda:

Mikrokontroler adalah versi mini dan untuk aplikasi khusus dari Mikrokomputer atau Komputer!

Berikut saya berikan kembali daftar kesamaan yang pernah ditulis sebelumnya dengan menekankan pada perbedaan antara Mikrokontroler dan Mikrokomputer:

  • 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.
  • 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.
  • 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 inipun dirasa cukup untuk aplikasi-aplikasi mikrokontroler.
  • Keluaran dan masukan pada mikrokomputer jauh lebih kompleks dibandingkan dengan mikrokontroler, yang jauh lebih sederhana, selain itu, pada mikrokontroler tingkat akses keluaran dan masukan bisa dalam satuan per bit.
  • Jika diamati lebih lanjut, bisa saya katakan 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.

Perhatikan gambar berikut agar Anda mendapatkan gambaran tentang mikrokontroler…

ALU, Instruction Decoder, Accumulator dan Control merupakan Otak-nya mikrokontroler yang bersangkutan. Jantungnya berasal dari detak OSC (lihat gambar sebelah kiri atas). Sedangkan di sekeliling ‘Otak’ terdapat berbagai macam periferal seperti SFR (Special Function Register yang bertugas menyimpan data-data sementara selama proses berlangsung), Memori RAM (tugas hampir sama seperti SFR hanya saja tidak berhubungan langsung selama proses operasional mikrokontroler), ADC (untuk mengubah data-data analog menjadi digital untuk diolah atau diproses lebih lanjut), EEPROM (sama seperti RAM hanya saja tetap akan menyimpan data walaupun tidak mendapatkan sumber listrik/daya) dan port-port I/O untuk masukan/luaran, untuk melakukan komunikasi dengan pihak-pihak eksternal mikrokontroler (sensor dan aktuator).

Ciri khas mikrokontroler lainnya, antara lain:

  • ‘Tertanam’ (atau embedded) dalam beberapa piranti (umumnya merupakan produk konsumen) atau yang dikenal dengan istilah embedded system atau embedded controller;
  • Terdedikasi untuk satu macam aplikasi saja (lihat contoh-contoh yang akan saya terangkan pada bagian berikutnya);
  • Hanya membutuhkan daya yang rendah (low power) sekitar 50 mWatt (Anda bandingkan dengan komputer yang bisa mencapai 50 Watt lebih);
  • Memiliki beberapa keluaran maupun masukan yang terdedikasi, untuk tujuan atau fungsi-fungsi khusus;
  • Kecil dan relatif lebih murah (seri AT89 di pasaran serendah-rendahnya bisa mencapai Rp. 15.000,00 sedangkan Basic Stamp bisa mencapai Rp. 500.000,00);
  • Seringkali tahan-banting, terutama untuk aplikasi-aplikasi yang berhubungan dengan mesin atau otomotif atau militer.

Dapatkan informasi lengkapnya dengan mengunduh ebook gratisnya disini