Selasa, 14 Januari 2014

Mikroprosesor



MIKROKONTROLER
Mikrokontroler adalah salah satu dari bagian dasar dari suatu sistem komputer. Meskipun mempunyai bentuk yang jauh lebih kecil dari suatu komputer pribadi dan komputer mainframe, mikrokontroler dibangun dari elemen-elemen dasar yang sama. Secara sederhana, komputer akan menghasilkan output spesifik berdasarkan inputan yang diterima dan program yang dikerjakan.
Seperti umumnya komputer, mikrokontroler adalah alat yang mengerjakan instruksi-instruksi yang diberikan kepadanya. Artinya, bagian terpenting dan utama dari suatu sistem terkomputerisasi adalah program itu sendiri yang dibuat oleh seorang programmer. Program ini menginstruksikan komputer untuk melakukan jalinan yang panjang dari aksi-aksi sederhana untuk melakukan tugas yang lebih kompleks yang diinginkan oleh programmer.
Beberapa keluarga mikrokontroler adalah PIC dari Microchip, Intel MCS-51 dan Atmel 89CXX /89CXX51.
1. Mikrokontroler MCS-51 dan Atmel 89CXX, 89CXX51
Mikrokontroler MCS-51 dan Atmel 89CXX, 89CXX51 adalah mikrokontroler 8-bit. Atmel 89CXX dan 89CXX51 kompatibel dengan keluarga MCS-51. Oleh karena itu, ketika mempelajari MCS-51 seseorang juga dapat mempelajari mikrokontroler Atmel versi tersebut.
2. Keluarga MCS-51
MCS-51 merupakan keluarga mikrokontroler 8-bit, beroperasi pada frekuensi 12 MHz, dan mikrokontroler ini diperkenalkan sebagai pengganti generasi mikrokontroler sebelumnya, MCS-48. Desain mikrokontroler ini menggunakan dasar teknologi HMOS (High-Speed Metal Oxide Semiconductor).
Perangkat keluarga ini juga menyediakan versi CHMOS (Complementary High-Speed Metal Oxide Semiconductor) yang dipresentasikan dengan penambahan huruf ‘C’ pada nomer part serinya, contoh 80C51, 87C51, dsb. CHMOS merupakan nama yang diberikan untuk proses high-speed CMOS yang dimiliki intel.
Ada beberapa keuntungan menggunakan versi CHMOS dari mikrokontroler MCS-51 dibanding dengan versi HMOS. Konsumsi power versi CHMOS lebih rendah, ketahanan noise yang lebih tinggi dan kecepatan yang lebih tinggi pula. Dari segi arsitektur perangkat CHMOS kompatibel dengan HMOS.
Perbedaannya hanya pada perangkat CHMOS telah ditambahkan beberapa fitur seperti idle mode, power down dsb.

Kriteria pemilihan antara mikrokontroler ini hanya berdasarkan kebutuhan fungsional atas batasan power suply, ruang yang tersedia pada board untuk pencetakan sirkuit rangkaian, jumlah pin dan biaya produksinya.
Untuk produksi masal, desainer mikrokontroler dapat memilih versi ROM. Tetapi untuk produksi yang lebih sedikit lebih cocok menggunakan versi EPROM atau versi CPU dengan memori program eksternal. Banyak juga yang memilih versi EPROM/ROM untuk menghindari koneksi ke memori eksternal, yang menyajikan ukuran kode program lebih kecil dari ukuran memori program internal. Tetapi satu catatan yang harus diperhatikan bahwa EPROM memiliki daur tulis/hapus yang terbatas, biasanya 1000 kali tulis/hapus.
Dari sudut pandang perawatan seseorang lebih memilih versi EPROM atau ROM, karena hanya butuh menempatkan satu IC saja  dari board mikrokontroler tersebut untuk menggantikan IC yang rusak. Dan untuk menghindari pencurian atau penkopian software secara ilegal maka disarankan menggunakan fasilitas ‘securuty fuse’ yang terdapat pada mikrontroler.



3. Mikrokontroler Atmel
Beberapa perangkat dari keluarga mikrokontroler Atmel dapat dilihat pada tabel dibawah ini.


 Pembahasan utama pada artikel ini adalah tentang ‘reprogramable flash device’. Mikrokontroler Atmel ini mendukung penuh operasi statis mulai dari 0 sampai 24 MHz. Operasi frekuensi rendah sangat penting disaat pengkonsumsian power harus tetap terjaga untuk selalu minimum.
Sebagai contoh, dalam kasus penggunaan batrai pada operasi instrumentasi, pengkonsumsian power sangat krusial. Sebagai catatan, kecepatan eksekusi juga berkurang ketika frekuensinya menjadi rendah. Periode timer-clocking juga bergantung pada frekuensi saat beroperasi. Mode power-down dan mode idle dapat digunakan untuk menjaga konsumsi power untuk tetap pada jenjang yang minimum.
Beberapa device diantaranya dapat dipilih karena tegangan operasinya sangat  rendah, biasanya dalam jangkauan 2,7-6 V. Atmel 89C1051/2051 merupakan salah satunya. Untuk Atmel 89C4051 jangkauannya adalah 3-6 V.
Mikrokontroler Atmel dengan 20 pin sangat cocok ketika ruang PCB yang tersedia sangat kecil, dan membutuhkan saluran I/O terisi dengan 15 I/O.
Komparator analog yang presisi berhubungan dengan pewaktu dapat digunakan untuk membangun ADC type pencacah. Flash PEROM (Programable and Erasable Read Only Memory) adalah salah satu fitur yang sangat berguna lainnya. Device ini tidak memerlukan penghapus EPROM ultraviolet karena device ini dapat diprogram dan dihapus secara elektrik. Atmel 89LV52 adalah mikrokontroler low-voltage dengan 8K flash memori yang kompatibel dengan 8032. Jangkauan tegangan operasinya adalah 2,7 V-6 V.
Untuk lebih detil lagi kita dapat mengacu pada literatur mikrokontroler Atmel yang sudah banyak tersedia di internet. Selain itu menarik juga untuk menyimak Atmel keluarga AVR yang merupakan prosesor RICS.
4. Mikrokontroler PIC

 Mikrokontroler 8-bit PIC16CXX dan PIC17CXX dari Microchip menggunakan teknologi CMOS. Mikrokontroler PIC terkenal karena performanya yang tinggi, biaya yang rendah dan ukuran yang kecil. Mikrokontroler ini menggunakan arsitektur RICS. PIC16CXX hanya memiliki 33 single-word instruksi. Frekuensi operasi untuk 16CXX  berjarak dari DC hingga 20 MHz. Seri ini dapat ditambahkan program memori eksternal hingga 64K word. PIC 17C42 memiliki beberapa pencacah/pewaktu dan kemampuan penanganan I/O, dan 16C71 telah tedapat 4 kanal 8-bit ADC.
Untuk memperoleh 12 kanal 10-bit ADC kita dapat memperolehnya pada 17C752. Masih banyak lagi perangkat mikrokontroler PIC lainnya yang tidak tertulis pada tabel. Fitur-fitur umum termasuk pewaktu, watchdog, ADC, memori data tambahan, komunikasi serial, keluaran pulse width modulated (PWM), dan memori ROM, EPROM dan EEPROM.


Program Mikrokontroler AVR Untuk Sensor SRF04 Menggunakan CVAVR
SRF04 adalah sensor non-kontak pengukur jarak menggunakan ultrasonik. Prinsip kerja sensor ini adalah transmitter mengirimkan seberkas gelombang ultrasonik, lalu diukur waktu yang dibutuhkan hingga datangnya pantulan dari obyek. Lamanya waktu ini sebanding dengan dua kali jarak sensor dengan obyek, sehingga jarak sensor dengan obyek dapat ditentukan persamaan
jarak = kecepatan_suara × waktu_pantul/2
SRF04 dapat mengukur jarak dalam rentang antara 3 cm – 3 m dengan output panjang pulsa yang sebanding dengan jarak obyek. Sensor ini hanya memerlukan 2 pin I/O untuk berkomunikasi dengan mikrokontroler, yaitu TRIGGER dan ECHO. Untuk mengaktifkan SRF04 mikrokontroler mengirimkan pulsa positif melalui pin TRIGGER minimal 10 us, selanjutnya SRF04 akan mengirimkan pulsa positif melalui pin ECHO selama 100 us hingga 18 ms, yang sebanding dengan jarak obyek.

Dibandingkan dengan sensor ultrasonik lain, seperti PING, SRF04 mempunyai kemampuan yang setara, yaitu rentang pengukuran antara 3 cm – 3 m, dan output yang sama, yaitu panjang pulsa. Meski cara pengoperasiannya juga mirip, namun kedua sensor tersebut berbeda jumlah pin I/O-nya, yaitu 2 untuk SRF04 dan 1 untuk PING. Jika boleh memilih di antara keduanya, penulis cenderung untuk memilih PING dengan pertimbangan harga dan juga adanya lampu indikator yang menunjukkan kondisi PING sedang aktif, selain juga jumlah pin I/O yang lebih sedikit.
Selain SRF04 Devantech juga mengeluarkan beberapa macam sensor ultrasonik lain. Tidak seperti kebanyakan saudaranya yang mempunyai 2 transduser ultrasonik sebagai transmitter dan receiver, SRF02 hanya mempunyai 1 transduser ultrasonik yang berfungsi sekaligus sebagai transduser dan receiver dengan output I2C dan serial UART. SRF05 mirip dengan SRF04, hanya jangkauan maksimumnya 4 m dan terdapat 2 mode operasi menggunakan 1 atau 2 pin I/O. SRF08 mampu mengukur jarak dalam rentang 3 cm – 6 m dengan antarmuka I2C.
Inti program yang dibuat adalah fungsi baca_srf04 yang disesuaikan dengan timing diagram dari datasheet.
unsigned char baca_srf04(){
count=0;
//pemberian pemicu berupa pulsa positif minimal 10us utk aktivasi sensor
PORTA.1=1;
delay_us(15);
PORTA.1=0;
//menunggu hingga ECHO = 1
while(PINA.0==0){};
//mencacah untuk mengukur waktu lamanya pulsa 1 dari ECHO
while(PINA.0==1)
{count++;
};
//mengkonversikan hasil cacahan menjadi jarak dalam cm
jrk=count*10/232;
return jrk;
}
Berikut adalah program selengkapnya untuk membaca data dari SRF04 dan menampilkannya pada LCD menggunakan ATMEGA8535 dan kristal 4 MHz dengan penggunaan pin mikrokontroler sebagai beikut :
  • Echo – PINA.0 (sebagai input bagi mikrokontroler)
  • Trigger – PINA.1 (sebagai output bagi mikrokontroler)
  • LCD – PORTC (susunan pin disesuaikan dengan wizard LCD pada CVAVR)
Sumber :          Mikrokontroler Komersil - Mikrokontroler - ndoWare.htm
                        http://dores-exe.blogspot.com/2009/06/mikrokontroler.html
                       

Tidak ada komentar:

Posting Komentar