<?xml version="1.0" encoding="UTF-8" standalone="no"?><?xml-stylesheet href="http://www.blogger.com/styles/atom.css" type="text/css"?><rss xmlns:itunes="http://www.itunes.com/dtds/podcast-1.0.dtd" version="2.0"><channel><title>IDRUS IYENG</title><description>MICROCONTROLLER</description><managingEditor>noreply@blogger.com (IDRUS IYENG)</managingEditor><pubDate>Wed, 6 Nov 2024 10:07:43 +0700</pubDate><generator>Blogger http://www.blogger.com</generator><openSearch:totalResults xmlns:openSearch="http://a9.com/-/spec/opensearchrss/1.0/">7</openSearch:totalResults><openSearch:startIndex xmlns:openSearch="http://a9.com/-/spec/opensearchrss/1.0/">1</openSearch:startIndex><openSearch:itemsPerPage xmlns:openSearch="http://a9.com/-/spec/opensearchrss/1.0/">25</openSearch:itemsPerPage><link>http://idrusiyeng83.blogspot.com/</link><language>en-us</language><itunes:explicit>no</itunes:explicit><itunes:subtitle>MICROCONTROLLER</itunes:subtitle><itunes:owner><itunes:email>noreply@blogger.com</itunes:email></itunes:owner><item><title>Iomega 500GB eGo Portable Hard Drive, SuperSpeed USB 3.0/USB 2.0 Midnight Blue - 35313</title><link>http://idrusiyeng83.blogspot.com/2011/03/blog-post.html</link><author>noreply@blogger.com (IDRUS IYENG)</author><pubDate>Sat, 26 Mar 2011 00:00:00 +0700</pubDate><guid isPermaLink="false">tag:blogger.com,1999:blog-569594418372177110.post-8931881769554006984</guid><description>&lt;iframe src="http://rcm.amazon.com/e/cm?t=i09e64-20&amp;o=1&amp;p=8&amp;l=as1&amp;asins=B0041RSI0C&amp;ref=tf_til&amp;fc1=000000&amp;IS2=1&amp;lt1=_blank&amp;m=amazon&amp;lc1=0000FF&amp;bc1=000000&amp;bg1=FFFFFF&amp;f=ifr" style="width:120px;height:240px;" scrolling="no" marginwidth="0" marginheight="0" frameborder="0"&gt;&lt;/iframe&gt;</description><thr:total xmlns:thr="http://purl.org/syndication/thread/1.0">0</thr:total></item><item><title>Mikrokontroler Komersil</title><link>http://idrusiyeng83.blogspot.com/2011/03/mikrokontroler-komersil.html</link><author>noreply@blogger.com (IDRUS IYENG)</author><pubDate>Fri, 25 Mar 2011 03:27:00 +0700</pubDate><guid isPermaLink="false">tag:blogger.com,1999:blog-569594418372177110.post-5177521753695324927</guid><description>&lt;div style="text-align: justify;"&gt;Dalam aplikasi mikrokontroler, penting bagi user untuk mengetahui kebutuhan fungsional dan memilih mikrokontroler yang sesuai dengan kebutuhan aplikasi itu sendiri. Saat ini sudah banyak sekali bermunculan seri mikrokontroler komersial di pasaran, dan pada artikel ini akan dibahas beberapa diantaranya. Beberapa keluarga mikrokontroler yang akan dibahas pada artikel ini adalah PIC dari Microchip, Intel MCS-51 dan Atmel 89CXX /89CXX51.&lt;/div&gt;&lt;div&gt;&lt;/div&gt;&lt;div style="text-align: justify;"&gt;&lt;b&gt;1. Mikrokontroler MCS-51 dan Atmel 89CXX, 89CXX51&lt;/b&gt;&lt;br /&gt;
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.&lt;/div&gt;&lt;div style="text-align: justify;"&gt;&lt;/div&gt;&lt;div style="text-align: justify;"&gt;&lt;b&gt;2. Keluarga MCS-51&lt;/b&gt;&lt;br /&gt;
&lt;img alt="80511" class="alignleft size-medium wp-image-394" height="160" src="http://ndoware.com/wp-content/uploads/2009/05/80511-300x160.jpg" title="80511" width="300" /&gt;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.&lt;br /&gt;
&lt;img alt="tabel_keluarga_mcs51" class="aligncenter size-full wp-image-379" height="180" src="http://ndoware.com/wp-content/uploads/2009/05/tabel_keluarga_mcs51.jpg" title="tabel_keluarga_mcs51" width="400" /&gt;&lt;/div&gt;&lt;div style="text-align: justify;"&gt;&lt;/div&gt;&lt;div class="MsoNormal" style="text-align: justify;"&gt;&lt;a name='more'&gt;&lt;/a&gt;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&amp;nbsp; 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.&lt;/div&gt;&lt;div style="text-align: justify;"&gt;&lt;/div&gt;&lt;div class="MsoNormal" style="text-align: justify;"&gt;&lt;b&gt;3. Mikrokontroler Atmel&lt;/b&gt;&lt;br /&gt;
Beberapa perangkat dari keluarga mikrokontroler Atmel dapat dilihat pada tabel dibawah ini.&lt;br /&gt;
&lt;img alt="tabel_keluarga_atmel" class="aligncenter size-full wp-image-380" height="217" src="http://ndoware.com/wp-content/uploads/2009/05/tabel_keluarga_atmel.jpg" title="tabel_keluarga_atmel" width="400" /&gt;&lt;/div&gt;&lt;div style="text-align: justify;"&gt;&lt;/div&gt;&lt;div class="MsoNormal" style="text-align: justify;"&gt;&lt;img alt="atmel89c2051" class="alignright size-medium wp-image-392" height="177" src="http://ndoware.com/wp-content/uploads/2009/05/atmel89c2051-300x177.jpg" title="atmel89c2051" width="300" /&gt;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 &amp;nbsp;rendah, biasanya dalam jangkauan 2,7-6 V. Atmel 89C1051/2051 merupakan salah satunya. Untuk Atmel 89C4051 jangkauannya adalah 3-6 V.&lt;/div&gt;&lt;div style="text-align: justify;"&gt;&lt;/div&gt;&lt;div class="MsoNormal" style="text-align: justify;"&gt;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.&lt;/div&gt;&lt;div style="text-align: justify;"&gt;&lt;/div&gt;&lt;div class="MsoNormal" style="text-align: justify;"&gt;&lt;b&gt;4. Mikrokontroler PIC&lt;/b&gt;&lt;br /&gt;
&lt;img alt="pic17c421" class="alignleft size-medium wp-image-395" height="215" src="http://ndoware.com/wp-content/uploads/2009/05/pic17c421-300x215.jpg" title="pic17c421" width="300" /&gt;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&amp;nbsp; 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.&lt;/div&gt;&lt;div style="text-align: justify;"&gt;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.&lt;br /&gt;
&lt;img alt="tabel_keluarga_pic" class="aligncenter size-full wp-image-381" height="230" src="http://ndoware.com/wp-content/uploads/2009/05/tabel_keluarga_pic.jpg" title="tabel_keluarga_pic" width="400" /&gt;&lt;/div&gt;</description><thr:total xmlns:thr="http://purl.org/syndication/thread/1.0">0</thr:total></item><item><title>Pengendalian Motor DC dengan Mikrokontroler ATmega8535</title><link>http://idrusiyeng83.blogspot.com/2011/03/pengendalian-motor-dc-dengan.html</link><author>noreply@blogger.com (IDRUS IYENG)</author><pubDate>Fri, 25 Mar 2011 03:22:00 +0700</pubDate><guid isPermaLink="false">tag:blogger.com,1999:blog-569594418372177110.post-7965561830953503557</guid><description>&lt;div class="separator" style="clear: both; text-align: justify;"&gt;&lt;a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhLUwcMcv6O_YXRYXmd21k6B_dsKiqcRt3SwC31-hxkMAk5TrM8QR_9M4YbrJjH6xIMPzyXJJwPlZj9VNe_qET5qWKTNmAdC-Y74zspLOakG-kjWTG-19KZcgH3F6Ny0CrwNT-iVBt_GoA/s1600/motor+dc2.jpg" imageanchor="1" style="clear: left; float: left; margin-bottom: 1em; margin-right: 1em;"&gt;&lt;img border="0" height="148" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhLUwcMcv6O_YXRYXmd21k6B_dsKiqcRt3SwC31-hxkMAk5TrM8QR_9M4YbrJjH6xIMPzyXJJwPlZj9VNe_qET5qWKTNmAdC-Y74zspLOakG-kjWTG-19KZcgH3F6Ny0CrwNT-iVBt_GoA/s200/motor+dc2.jpg" width="200" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;div style="text-align: justify;"&gt;&amp;nbsp;Setelah sebelumnya saya posting cara membuat sistem minimum ATmega8535, sekarang saatnya kita bereksperimen menggunakan sistem minimum ini. Dipostingan ini saya mencoba berbagi ilmu yang sesungguhnya masih sangat sedikit ilmu tentang mikrokontroler yang saya ketahui, yaitu kita akan mengontrol motor DC dengan mikrokontroler ATmega8535. Pengontrolan disini maksudnya kita akan mengontrol motor DC antara lain arah putarannya dan kecepatan berputar motor DC tersebut. &lt;/div&gt;&lt;div style="text-align: justify;"&gt; &lt;a href="" name="more"&gt;&lt;/a&gt;&lt;/div&gt;&lt;div style="text-align: justify;"&gt;&lt;br /&gt;
Motor DC dapat berputar karena adanya induksi ketika motor tersebut dihubungkan ke sumber tegangan DC. Pengontrolan motor DC jika dilakukan dengan mikrokontroler lebih mudah dibandingkan tanpa mikrokontroler. Kita dapat merubah arah putaran motor DC secara langsung dengan mengubah polaritas sumber tegangan. Untuk mengubah kecepatan motor DC dapat dilakukan dengan merubah-rubah besarnya sumber tegangan. Pengontrolan dengan mikrokontroler juga berprinsip seperti tersebut, tetapi dengan sistem yang otomatis. Kita tidak perlu merubah kabel dari motor ke baterai jika ingin merubah arah putarannya, kita cukup memberikan logika 0 atau 1 ke mikrokontroler yang dilakukan pada program di mikrokontroler tersebut. Untuk merubah kecepatannya juga lebih mudah karena kita cukup menggunakan fitur PWM yang ada pada mikrokontroler tersebut. Mungkin masih banyak yang belum tahu apa itu PWM&lt;br /&gt;
PWM (Pulse Width Modulation) adalah teknik mendapatkan efek sinyal analog dari sebuah sinyal digital yang terputus-putus. PWM dapat dibangkitkan hanya dengan menggunakan digital i/o yang difungsikan sebagai output.&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: justify;"&gt;&lt;a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjcyCvxa_mppp-272uYat4qs8n-IX2vmw78GNsObXkQHkzex7oGNb3AA0PF_SU1q6meJNaT2IHzMjLRjzKidDoCAASxkJVmuZ-GgeSnuJDuR1dn1esb3Dhy_sBXu_bXDzI5YmX_L9iz680/s1600/pwm.JPG" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjcyCvxa_mppp-272uYat4qs8n-IX2vmw78GNsObXkQHkzex7oGNb3AA0PF_SU1q6meJNaT2IHzMjLRjzKidDoCAASxkJVmuZ-GgeSnuJDuR1dn1esb3Dhy_sBXu_bXDzI5YmX_L9iz680/s320/pwm.JPG" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: justify;"&gt;&lt;a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgWZmyEv_gtrmuBK9C_oBI0d6EV-SaPFqeZeiy6M0eSPOQ_sYSgJDvnPFJ1Wp8Rg20aaKobyY80DNYkQT1g2qDdhW1IXRXTl29knDb0zpAQ0_ih2d5na-GmL9sAhanNyMpo2l4ZdBBEAo0/s1600/pwm2.JPG" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;br /&gt;
&lt;/a&gt;&lt;/div&gt;&lt;div style="text-align: justify;"&gt;Pada contoh gelombang diatas, perbandingan waktu antara sinyal high (1) dan sinyal low (0) adalah sama. Gelombang diatas dikatakan memiliki duty cycle 50%. Duty cycle adalah perbandingan antara lebar sinyal high (1) dengan lebar keseluruhan siklus (cycle). Jika amplitudo gelombang PWM adalah 5 volt, maka tegangan rata rata (seolah olah analog) yang kita dapatkan adalah 2,5 volt. Berikut contoh gelombang PWM dengan duty cycle 10%, jika amplitudo gelombang 5 volt maka akan didapatkan tegangan rata rata analog 0,5 volt.&lt;br /&gt;
&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: justify;"&gt;&lt;a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgWZmyEv_gtrmuBK9C_oBI0d6EV-SaPFqeZeiy6M0eSPOQ_sYSgJDvnPFJ1Wp8Rg20aaKobyY80DNYkQT1g2qDdhW1IXRXTl29knDb0zpAQ0_ih2d5na-GmL9sAhanNyMpo2l4ZdBBEAo0/s1600/pwm2.JPG" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgWZmyEv_gtrmuBK9C_oBI0d6EV-SaPFqeZeiy6M0eSPOQ_sYSgJDvnPFJ1Wp8Rg20aaKobyY80DNYkQT1g2qDdhW1IXRXTl29knDb0zpAQ0_ih2d5na-GmL9sAhanNyMpo2l4ZdBBEAo0/s320/pwm2.JPG" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;div style="text-align: justify;"&gt;Pada ATMEGA8535 ada 2 cara membangkitkan PWM, yang pertama PWM dapat dibangkitkan dari port input/outputnya yang difungsikan sebagai output. Yang kedua adalah dengan memanfaatkan fasilitas PWM dari fungsi timer/counter yang telah disediakan. Dengan adanya fasilitas ini proses pengaturan waktu high/low sinyal digital tidak akan mengganggu urutan program lain yang sedang dieksekusi oleh processor. Selain itu, dengan menggunakan fasilitas ini kita tinggal memasukkan berapa porsi periode waktu on dan off gelombang PWM pada sebuah register. OCR1A, OCR1B dan OCR2 adalah register tempat mengatur duty cycle PWM.&lt;a name='more'&gt;&lt;/a&gt;&lt;br /&gt;
&lt;br /&gt;
Berikut ini skematik Pengendalian Motor DC dengan Mikrokontroler ATmega8535 yang saya buat sendiri, silahkan trace sendiri, atau jika ingin saya buatkan silahkan request di bagian komen dibawah ini.Klik gambar untuk memperbesar&lt;br /&gt;
&lt;br /&gt;
&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: justify;"&gt;&lt;a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEj-ApK1PtHwYtQhWKHsrGaa-juPgEYMfER7tsxtZiFZMDl7m-17bfMEoOiSGq7g69nl-g-7qlnmw4WYOo4Gj6pLhKnKDE5ajqINLLMQarc8l6SNIGPFxfBSCFh4XF8i7oRyIpqg_kdpwJo/s1600/Motor+DC+dengan+Ic+drive+L298.jpg" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEj-ApK1PtHwYtQhWKHsrGaa-juPgEYMfER7tsxtZiFZMDl7m-17bfMEoOiSGq7g69nl-g-7qlnmw4WYOo4Gj6pLhKnKDE5ajqINLLMQarc8l6SNIGPFxfBSCFh4XF8i7oRyIpqg_kdpwJo/s320/Motor+DC+dengan+Ic+drive+L298.jpg" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;div style="text-align: justify;"&gt;&lt;br /&gt;
Rangkaian saya pisahkan menjadi tiga bagian utama agar kita mudah dalam memahami serta menganalisi rangkaian kita ini, yaitu bagian sistem minimum, Driver motor, dan motor (sebagai beban utama). Sistem minimum sama seperti pada postingan saya &lt;a href="http://etekno.blogspot.com/2010/06/proyek-1-membuat-sistem-minimum.html"&gt;sebelumnya&lt;/a&gt;, bagian selanjutnya yaitu driver. sebenarnya kita dapat langsung menghubungkan mikrokontroler ke motor tanpa driver, hal ini bisa dilakukan jika motor yang kita gunakan merupakan motor kecil. untuk motor besar kita memerlukan&amp;nbsp; driver, driver ini bisa dibuat juga dengan mosfet (sering disebut H-Bridge), kita gunakan saja yang lebih praktis yaitu ic driver L298, driver ijenis ni mampu mengendalikan 2 buah motor dan juga dilengkapi kaki-kaki untuk mengendalikan PWM.&lt;br /&gt;
&lt;br /&gt;
Untuk percobaan kita ini kita hanya menggunakan satu motor dc saja, berikut ini foto dari rangkaian yang saya buat.&lt;br /&gt;
&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: justify;"&gt;&lt;a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhMoHeGTww3THnQcxAL3oDlpQc1tvF3KXYveLGPpeErq5VN5h0BCIatj5QPUDgSLlJ77Y3euH3yfZhnqYHOlt4KrLITJcZ-chhxAYvg5ZsM5vjD26yRE-MD96K0gKwFXUnpfM2kjBr-Fqo/s1600/kendali+motor+dc+dengan+L298+copy.jpg" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhMoHeGTww3THnQcxAL3oDlpQc1tvF3KXYveLGPpeErq5VN5h0BCIatj5QPUDgSLlJ77Y3euH3yfZhnqYHOlt4KrLITJcZ-chhxAYvg5ZsM5vjD26yRE-MD96K0gKwFXUnpfM2kjBr-Fqo/s320/kendali+motor+dc+dengan+L298+copy.jpg" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;div style="text-align: justify;"&gt;Untuk programnya anda bisa lihat di bawah ini. Gunakan software AVR studio (setelah AVR studio terinstal instal juga WinAVR agar AVRstudio-nya mendukung bahasa C, sebab AVRstudio standarnya menggunakan bahasa assembly). Untuk mendownload program anda bisa menggunakan &lt;a href="http://etekno.blogspot.com/2010/01/buat-sendiri-downloader-avr-atmega8535_28.html"&gt;downloader serial&lt;/a&gt; atapun &lt;a href="http://etekno.blogspot.com/2010/06/membuat-usb-downloader-untuk-avr.html"&gt;downloader USB&lt;/a&gt; yang juga sudah saya posting. Berikut programnya&lt;br /&gt;
&lt;br /&gt;
&lt;/div&gt;#include &amp;lt;avr/io.h&amp;gt;&lt;br /&gt;
#include &amp;lt;util/delay.h&amp;gt;&lt;br /&gt;
#include &amp;lt;avr/interrupt.h&amp;gt;&lt;br /&gt;
&lt;br /&gt;
#define&amp;nbsp;&amp;nbsp;&amp;nbsp; DDR_motor&amp;nbsp;&amp;nbsp;&amp;nbsp; DDRD&amp;nbsp;&amp;nbsp;&amp;nbsp; //DDR untuk Motor&lt;br /&gt;
#define&amp;nbsp;&amp;nbsp;&amp;nbsp; PORT_motor&amp;nbsp;&amp;nbsp;&amp;nbsp; PORTD&amp;nbsp;&amp;nbsp;&amp;nbsp; //PORT untuk Motor&lt;br /&gt;
&lt;br /&gt;
#define en_ka &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; 5&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; // Enable L298 untuk motor kanan&lt;br /&gt;
#define dirA_ka &amp;nbsp;&amp;nbsp;&amp;nbsp; 2&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; // Direction A untuk motor kanan&lt;br /&gt;
#define dirB_ka &amp;nbsp;&amp;nbsp;&amp;nbsp; 3&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; // Direction B untuk motor kanan&lt;br /&gt;
#define pwm_kanan&amp;nbsp;&amp;nbsp;&amp;nbsp; OCR1A&lt;br /&gt;
&lt;br /&gt;
void delay_ms(int ms)&lt;br /&gt;
{for (int i=0;i&amp;lt;ms;i++){_delay_ms(1);}}&lt;br /&gt;
&lt;br /&gt;
void maju(unsigned int pwm)&lt;br /&gt;
{&lt;br /&gt;
PORT_motor |=(1&amp;lt;&amp;lt;dirA_ka);&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; //motor maju&lt;br /&gt;
PORT_motor &amp;amp;=~(1&amp;lt;&amp;lt;dirB_ka);&lt;br /&gt;
pwm_kanan=pwm;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; //pwm motor kanan&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
void mundur(unsigned int pwm)&lt;br /&gt;
{&lt;br /&gt;
PORT_motor |=(1&amp;lt;&amp;lt;dirB_ka);&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; //motor maju&lt;br /&gt;
PORT_motor &amp;amp;=~(1&amp;lt;&amp;lt;dirA_ka);&lt;br /&gt;
pwm_kanan=pwm;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; //pwm motor kanan&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
int main (void)&lt;br /&gt;
{&lt;br /&gt;
&lt;br /&gt;
DDR_motor=0xFF;&lt;br /&gt;
PORT_motor=0x00;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp; TCCR1A= (1&amp;lt;&amp;lt;WGM11)|(1&amp;lt;&amp;lt;WGM10)|&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; (1&amp;lt;&amp;lt;COM1A1)|(0&amp;lt;&amp;lt;COM1A0)|&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; (1&amp;lt;&amp;lt;COM1B1)|(0&amp;lt;&amp;lt;COM1B0);&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp; TCCR1B= (0&amp;lt;&amp;lt;WGM13)|(1&amp;lt;&amp;lt;WGM12)|&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; (0&amp;lt;&amp;lt;CS12)|(0&amp;lt;&amp;lt;CS11)|(1&amp;lt;&amp;lt;CS10);&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp; TCNT1=0x0000;&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp; OCR1A=0;&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp; OCR1B=0;&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp; sei( );&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
while(1)&lt;br /&gt;
{&lt;br /&gt;
mundur(1000);&lt;br /&gt;
delay_ms(5000);&lt;br /&gt;
maju(700);&lt;br /&gt;
delay_ms(3000);&lt;br /&gt;
&lt;br /&gt;
}&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
&lt;div style="text-align: justify;"&gt;&lt;br /&gt;
&lt;br /&gt;
lihat program utama, motor akan mundur dengan PWM 1000 selama 5000ms (5 detik) kemudian motor akan maju denan PWM 700 selama 3000ms (3 detik). dan program akan berulang-ulang.Kecepatan maksimal dari motor terjadi jika kita beri nilai PWM 1000 dan minimum (motor berhenti) jika nilai PWM 0, lihat di program utama, yaitu mundur(1000) maksudnya motor akan berputar mundur dengan kecepatan maksimal karena PWM nya1000&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: justify;"&gt;&lt;a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgWZmyEv_gtrmuBK9C_oBI0d6EV-SaPFqeZeiy6M0eSPOQ_sYSgJDvnPFJ1Wp8Rg20aaKobyY80DNYkQT1g2qDdhW1IXRXTl29knDb0zpAQ0_ih2d5na-GmL9sAhanNyMpo2l4ZdBBEAo0/s1600/pwm2.JPG" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;br /&gt;
&lt;/a&gt;&lt;/div&gt;</description><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" height="72" url="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhLUwcMcv6O_YXRYXmd21k6B_dsKiqcRt3SwC31-hxkMAk5TrM8QR_9M4YbrJjH6xIMPzyXJJwPlZj9VNe_qET5qWKTNmAdC-Y74zspLOakG-kjWTG-19KZcgH3F6Ny0CrwNT-iVBt_GoA/s72-c/motor+dc2.jpg" width="72"/><thr:total xmlns:thr="http://purl.org/syndication/thread/1.0">1</thr:total></item><item><title>Pengendali Lampu Melalui Antarmuka USB Berbasis Mikrokontroler AVR AT90S2313</title><link>http://idrusiyeng83.blogspot.com/2011/03/pengendali-lampu-melalui-antarmuka-usb.html</link><author>noreply@blogger.com (IDRUS IYENG)</author><pubDate>Fri, 25 Mar 2011 03:14:00 +0700</pubDate><guid isPermaLink="false">tag:blogger.com,1999:blog-569594418372177110.post-5593343585571853060</guid><description>&lt;div style="text-align: justify;"&gt;Pemanfaatan port USB (Universal Serial Bus) pada komputer saat ini telah berkembang luas seiring perkembangan teknologi perangkat keras I/O computer seperti printer, scanner dan memory disk. Selain itu peralatan elektronika seperti telepon genggam, kamera digital, proyektor digital dan perangkat keras berbasis mikrokontroler juga telah memanfaatkan port USB untuk berkomunikasi data secara serial dengan komputer. Saat ini, USB telah menjadi salah satu standar interkoneksi antara komputer dengan peralatan eksternal. &lt;/div&gt;&lt;div style="text-align: justify;"&gt;Begitu populernya USB saat ini hingga mendorong untuk menciptakan suatu alat yang menggunakan antarmuka USB. Alat itu adalah pengendali lampu melalui antarmuka USB berbasis Mikrokontroler AVR AT90S2313. Seperti apa alat tersebut? Pada kasus ini telah dicoba untuk merancang dan membuat antarmuka USB dengan memanfaatkan firmware yang diimplementasikan kedalam mikrokontroler AVR AT90S2313. Keuntungan dari cara ini adalah selain harganya yang lebih murah, alat-alat yang dibutuhkan mudah didapat di Indonesia. Alasan memilih mikrokontroler tipe AT90S2313 ini adalah karena pada kecepatanya, AT90S2313-10PI mempunyai kecepatan 10 MHz, tetapi dalam alat ini dapat dilakukan overclocking dengan menggunakan kristal pembangkit clock sebesar 12MHz, kecepatan ini memenuhi kriteria dari antarmuka USB dengan mode low-speed (1,5 Mbps).&lt;/div&gt;&lt;div&gt;&lt;/div&gt;&lt;div style="text-align: justify;"&gt;&lt;img alt="image0041" class="aligncenter size-medium wp-image-593" height="147" src="http://ndoware.com/wp-content/uploads/2009/06/image0041-300x147.gif" title="image0041" width="300" /&gt;&lt;br /&gt;
Diagram pengendali lampu melalui antarmuka USB&lt;/div&gt;&lt;div style="text-align: justify;"&gt;&lt;/div&gt;&lt;div style="text-align: justify;"&gt;Pada gambar di atas terdapat beberapa device (perangkat) yang bekerja sehingga lampu akhirnya dapat dikendalikan sesuai keinginan. Adapun fungsi dari masing-masing alat perangkat tersebut, Mikrokontroler berfungsi untuk men-dekode data yang diterima dari USB dan mengirimkan data dari mikrokontroler melalui USB. Komputer digunakan untuk menampilkan program pengendali lampu yang bertujuan untuk mempermudah pengguna dalam mengontrol lampu baik mematikan lampu atau menyalakannya sesuai dengan perintah. Remote televise digunakan untuk mengendalikan lampu secara remote. Driver berfungsi untuk mengenali peralatan USB yang telah terpasang terhadap lingkungan system operasi Windows.&lt;/div&gt;&lt;div style="text-align: justify;"&gt;&lt;/div&gt;&lt;div style="text-align: justify;"&gt;Pengguna atau user memasukan parameter input ke komputer berupa suatu perintah. Perintah tersebut diubah kebentuk tertentu yang dapat dilewatkan melalui antarmuka USB ke mikrokontroler. Data tersebut dibaca oleh mikrokontroler berupa IC AT90S2313 yang sebelumnya telah terprogram sebuah firmwire yang sesuai dengan karakteristik USB. Program firmware ini mengubah karakteristik dari parameter input (dari komputer) menjadi bentuk tertentu yang diteruskan ke port 8 bit I/O dari mikrokontroler yang telah ditentukan, dan selanjutnya akan menentukan tindakan atau pengendalian apa yang akan dilakukan terhadap lampu.&lt;/div&gt;&lt;div style="text-align: justify;"&gt;&lt;/div&gt;&lt;div style="text-align: justify;"&gt;Selain pengendalian melalui komputer, pengguna juga dapat mengendalikan nyala lampu melalui fasilitas remote. Remote yang digunakan berupa remote televisi yang dapat dibeli di toko-toko elektronik. Pengguna menekan tombol tertentu dari remote, kemudian sinyal diterima oleh receiver yang kemudian diteruskan ke mikrokontroler dan diterjemahkan kedalam suatu bilangan biner yang unik. Setelah mikrokontroler menerjemahkan sinyal dari tombol remote, kemudian diteruskan ke komputer yang tentunya sinyal tersebut sudah diterjemahkan kedalam bentuk tertentu agar dapat dibaca melalui antarmuka USB. Host (komputer) membaca kode tersebut dan kemudian menentukan jenis tindakan atau pengendalian apa yang akan dilakukan, dan kemudian dikembalikan ke mikrokontroler untuk melakukan tindakan atau pengendalian yang telah ditentukan.&lt;br /&gt;
&lt;a name='more'&gt;&lt;/a&gt;&lt;/div&gt;&lt;div style="text-align: justify;"&gt;&lt;/div&gt;&lt;div style="text-align: justify;"&gt;Rangkaian yang dibutuhkan dalam membuat pengendali lampu melalui antarmuka USB sangat sederhana. Adapun bagian utamanya adalah antarmuka USB, mikrokontroler dan sensor infra merah (sensor infra merah TSOP1738 yang berfungsi untuk menerima infra merah dari remote TV). Dapat digambarkan sebagai berikut:&lt;/div&gt;&lt;div style="text-align: justify;"&gt;&lt;/div&gt;&lt;div style="text-align: justify;"&gt;&lt;img alt="image006" class="aligncenter size-full wp-image-595" height="339" src="http://ndoware.com/wp-content/uploads/2009/06/image006.gif" title="image006" width="476" /&gt;&lt;/div&gt;&lt;div style="text-align: justify;"&gt;&lt;/div&gt;&lt;div style="text-align: justify;"&gt;Catu daya yang digunakan sebagai sumber tegangan pada rangkaian USB diperoleh dari host (komputer), karena pada antarmuka USB setiap host mampu menyediakan tegangan sebesar 5 volt dengan arus maksimum 500mA. Arus sebesar itu sudah lebih dari cukup untuk mencatu alat ini, sehingga catu daya dibutuhkan hanya untuk mendrive relay pengendali lampu. Bagian kabel D- pada antarmuka USB dihubungkan ke pin PB0 mikrokontroler dan PB1 pada kabel D+. Alat ini hanya mendukung mode kecepatan rendah (low speed) yaitu pada kabel D- di terminalkan sebuah resistor pull-up 1,5 k? (untuk full Speed, resistor pull-up terhubung ke D+) yang terdapat pada setiap peralatan USB. Pada mikrokontroler dipasang kristal pembangkit frekuensi sebesar 12MHz, hal ini dilakukan untuk mengimbangi kecepatan dari USB mode kecepatan rendah (low speed) yaitu 1,5 Mbps. Kapasitor disini berfungsi sebagai filter dari tegangan. Pada penerima infra merah, digunakan sensor infra merah TSOP1738 yang berfungsi untuk menerima infra merah dari remote TV. Pin VS adalah sumber tegangan 5 volt, VO adalah pin keluaran dari sensor yang terhubung ke PB2 dan PD2 (T0) pada mikrokontroler, sedangkan GND adalah pin ground. Pada pin VS ke GND dipasang sebuah kapasitor yang berfungsi untuk mencegah interferensi antara sinyal dari infra merah dan sinyal dari USB komputer. Pin PB4, PB5, Pb6 dan PB7 pada mikrokontroler digunakan untuk keluaran yang terhubung ke relay dan digunakan untuk mengendalikan lampu. Pada bagian pengendali lampu digunakan relay yang berfungsi untuk menyalakan atau mematikan lampu yang dikontrol dengan memberikan tegangan dan arus tertentu pada koilnya.&lt;/div&gt;&lt;div style="text-align: justify;"&gt;&lt;/div&gt;&lt;div style="text-align: justify;"&gt;Perangkat lunak yang digunakan dalam perancangan alat ini adalah bahasa Assembler AVR sebagai firmware, driver untuk Windows dan bahasa Delphi untuk program pengendali dari pengguna. Perangkat lunak program utama adalah perangkat lunak yang berfungsi untuk mengatur pembacaan input dari komputer dan juga input dari remote. Pemrogram dilakukan menggunakan bahasa Assembler yang di-download kedalam mikrokontroler bersamaan dengan program firmware. Firmware dipakai untuk mengatur pengiriman dan penerimaan data antara USB dan alat. Program pengendali diimplementasikan menggunakan bahasa pemrograman Delphi 7. Program dibagi menjadi 2 bagian : program pengendali lampu melalui komputer dan program pengendali lampu melalui penekanan remote. Tampilan dari program pengendali seperti gambar di bawah ini:&lt;/div&gt;&lt;div style="text-align: justify;"&gt;&lt;/div&gt;&lt;div style="text-align: justify;"&gt;&lt;img alt="hasil" class="aligncenter size-full wp-image-598" height="296" src="http://ndoware.com/wp-content/uploads/2009/06/image008.gif" title="hasil" width="254" /&gt;&lt;/div&gt;&lt;div style="text-align: justify;"&gt;&lt;/div&gt;&lt;div style="text-align: justify;"&gt;Untuk pengujian dari alat ini, dapat dilakukan dengan dua cara yanitu pengujian keseluruhan melalui komputer dan pengujian melalui remote. Adapun perintah-perintah yang dilaksanankan dalam pengujian melalui komputer adalah sebagi berikut:&lt;/div&gt;&lt;div style="text-align: justify;"&gt;&lt;/div&gt;&lt;ul style="text-align: justify;"&gt;&lt;li&gt;Menyalakan lampu secara bergantian. Percobaan dilakukan dengan cara memberi tanda cek pada pilihan lampu yang ingin dinyalakan. Jika “Lampu1” di beri tanda cek, maka lampu 1 akan dinyalakan, dan apabila dan apabila tanda cek dihilangkan maka lampu 1 akan mati, begitu juga dengan lampu 2, 3 dan 4. Dari percobaan ini tidak ditemui kendala yang berarti, artinya program dan rangkaian berjalan dengan baik ketika dieksekusi.&lt;/li&gt;
&lt;li&gt;Menyalakan lampu berjalan. Percobaan ini dilakukan dengan cara menekan tombol “Start” padatampilan program dan kemudian lampu akan berjalan secara bergantian terus-menerus sampai tombol “Stop” di tekan, maka lampu akan berhenti. Pengujian ini berjalan dengan baik walaupun&amp;nbsp;perintah dilakukan selama 3 jam.&lt;/li&gt;
&lt;/ul&gt;&lt;div style="text-align: justify;"&gt;&lt;/div&gt;&lt;div style="text-align: justify;"&gt;Pengujian melalui remote dilakukan dengan cara menekan tombol-tombol remote yang sudah ditentukan yang akan menghasilkan keluaran nyala lampu yang berbeda-beda. Tabel di bawah adalah table dari tombol-tombol remote dengan macam fungsinya.&lt;/div&gt;&lt;div style="text-align: justify;"&gt;&lt;/div&gt;&lt;table border="1" bordercolor="#333333" cellpadding="5px" cellspacing="0" style="margin-left: 0px; margin-right: 0px; text-align: left; width: 500px;"&gt;&lt;tbody&gt;
&lt;tr&gt; &lt;td&gt;&lt;b&gt;Tombol remote&lt;/b&gt;&lt;/td&gt; &lt;td&gt;&lt;b&gt;Kode Remote&lt;/b&gt;&lt;/td&gt; &lt;td&gt;&lt;b&gt;Fungsi&lt;/b&gt;&lt;/td&gt; &lt;/tr&gt;
&lt;tr&gt; &lt;td&gt;Tombol 1&lt;/td&gt; &lt;td&gt;128&lt;/td&gt; &lt;td&gt;Untuk menyalakan dan mematikan lampu 1&lt;/td&gt; &lt;/tr&gt;
&lt;tr&gt; &lt;td&gt;Tombol 2&lt;/td&gt; &lt;td&gt;129&lt;/td&gt; &lt;td&gt;Untuk menyalakan dan mematikan lampu 2&lt;/td&gt; &lt;/tr&gt;
&lt;tr&gt; &lt;td&gt;Tombol 3&lt;/td&gt; &lt;td&gt;130&lt;/td&gt; &lt;td&gt;Untuk menyalakan dan mematikan lampu 3&lt;/td&gt; &lt;/tr&gt;
&lt;tr&gt; &lt;td&gt;Tombol 4&lt;/td&gt; &lt;td&gt;131&lt;/td&gt; &lt;td&gt;Untuk menyalakan dan mematikan lampu 4&lt;/td&gt; &lt;/tr&gt;
&lt;tr&gt; &lt;td&gt;Tombol “Power”&lt;/td&gt; &lt;td&gt;149&lt;/td&gt; &lt;td&gt;Untuk menyalakan dan mematikan semua lampu&lt;/td&gt; &lt;/tr&gt;
&lt;tr&gt; &lt;td&gt;Tombol “Mute”&lt;/td&gt; &lt;td&gt;148&lt;/td&gt; &lt;td&gt;Untuk menyalakan dan mematikan lampu berjalan&lt;/td&gt; &lt;/tr&gt;
&lt;tr&gt; &lt;td&gt;Tombol “Program”&lt;/td&gt; &lt;td&gt;144(+), 145(-)&lt;/td&gt; &lt;td&gt;Untuk menyalakan dan mematikan lampu&amp;nbsp;&amp;nbsp;secara bergantian sesuai jumlah penekanan tombol&lt;/td&gt; &lt;/tr&gt;
&lt;tr&gt; &lt;td&gt;Tombol “Volume”&lt;/td&gt; &lt;td&gt;146(+), 147(-)&lt;/td&gt; &lt;td&gt;Untuk menyalakan secara “volume”&lt;/td&gt; &lt;/tr&gt;
&lt;/tbody&gt; &lt;/table&gt;&lt;div style="text-align: justify;"&gt;&lt;/div&gt;&lt;div style="text-align: justify;"&gt;&lt;br /&gt;
&lt;/div&gt;</description><thr:total xmlns:thr="http://purl.org/syndication/thread/1.0">0</thr:total></item><item><title>Pengantar Mikrokontroler MCS-51 (AT89S51/52)</title><link>http://idrusiyeng83.blogspot.com/2011/03/pengantar-mikrokontroler-mcs-51.html</link><author>noreply@blogger.com (IDRUS IYENG)</author><pubDate>Mon, 21 Mar 2011 02:44:00 +0700</pubDate><guid isPermaLink="false">tag:blogger.com,1999:blog-569594418372177110.post-5669306160015333841</guid><description>&lt;span style="line-height: 150%;"&gt;Mi&lt;/span&gt;krokontroler adalah suatu devais elektronik yang merupakan miniatur dari suatu system computer.Seperti halnya suatu computer, mikrokontroler mempunyai kemampuan untuk di program sesuai keinginan, namun mikrokontroler hanya dapat di gunakan untuk suatu aplikasi tertentu saja atau dapat dikatakan bahwa mikrokontroler hanya dapat menyimpan satu program saja. &lt;br /&gt;
&lt;div class="MsoNormal" style="line-height: 150%; text-align: justify; text-indent: 0.5in;"&gt;Contoh penggunaan mikrokontroler adalah sebagai pengontrol papan display dari dotmatrik, Wartel, fuel-meter pada sepeda motor, dan lain-lain. Dari contoh- contoh tersebut tampak ternyata penerapan teknologi mikro ini cukup pesat di sekitar kita, bahkan peralatan yang ada di sekitar rumah kita misalnya; lampu, pompa air, televisi, kipas angin dapat kita control secara automatik dengan menggunakan sebuah mikrokontroler.&lt;/div&gt;&lt;div class="MsoNormal" style="line-height: 150%; text-align: justify; text-indent: 0.5in;"&gt;Satu hal yang menjadikan teknologi mikrokontroler ini menjadi semakin “ngetren” adalah keunggulan yang dimilikinya. Keunggulan tersebut adalah:&lt;/div&gt;&lt;div style="padding-left: 30px; text-align: justify;"&gt;&lt;span style="font-family: Wingdings;"&gt;Ø&lt;span style="font-family: &amp;quot;font-style:normal; font-size: 7pt; font-variant: normal; font-weight: normal; line-height: normal;"&gt; &lt;/span&gt;&lt;/span&gt;Ukuran yang sangat kecil&lt;/div&gt;&lt;div style="padding-left: 30px; text-align: justify;"&gt;&lt;span style="font-family: Wingdings;"&gt;Ø&lt;span style="font-family: &amp;quot;font-style:normal; font-size: 7pt; font-variant: normal; font-weight: normal; line-height: normal;"&gt; &lt;/span&gt;&lt;/span&gt;Menggunakan daya yang rendah&lt;/div&gt;&lt;div style="padding-left: 30px; text-align: justify;"&gt;&lt;span lang="SV" style="font-family: Wingdings;"&gt;Ø&lt;span style="font-family: &amp;quot;font-style:normal; font-size: 7pt; font-variant: normal; font-weight: normal; line-height: normal;"&gt; &lt;/span&gt;&lt;/span&gt;&lt;span lang="SV"&gt;Ke-fleksibelannya untuk di hubungkan dengan peralatan lain&lt;/span&gt;&lt;/div&gt;&lt;div style="padding-left: 30px; text-align: justify;"&gt;&lt;span lang="SV" style="font-family: Wingdings;"&gt;Ø&lt;span style="font-family: &amp;quot;font-style:normal; font-size: 7pt; font-variant: normal; font-weight: normal; line-height: normal;"&gt; &lt;/span&gt;&lt;/span&gt;&lt;span lang="SV"&gt;Kecepatan proses yang tinggi&lt;/span&gt;&lt;/div&gt;&lt;div style="padding-left: 30px; text-align: justify;"&gt;&lt;span lang="SV" style="font-family: Wingdings;"&gt;Ø&lt;span style="font-family: &amp;quot;font-style:normal; font-size: 7pt; font-variant: normal; font-weight: normal; line-height: normal;"&gt; &lt;/span&gt;&lt;/span&gt;&lt;span lang="SV"&gt;Harga yang murah dan mudah di peroleh di pasaran.&lt;/span&gt;&lt;/div&gt;&lt;div class="MsoNormal" style="line-height: 150%; margin-left: 0.5in; text-align: justify; text-indent: -0.25in;"&gt;&lt;/div&gt;&lt;h2 class="MsoNormal" style="line-height: 150%; text-align: justify; text-indent: 0.5in;"&gt;&lt;b&gt;&lt;span style="font-size: large;"&gt;&lt;i&gt;Mikrokontroler AT89S51&lt;/i&gt;&lt;/span&gt;&lt;br /&gt;
&lt;/b&gt;&lt;/h2&gt;&lt;div class="MsoNormal" style="line-height: 150%; text-align: justify; text-indent: 0.5in;"&gt;&lt;b&gt;&lt;/b&gt; &lt;/div&gt;&lt;div class="MsoNormal" style="line-height: 150%; text-align: justify; text-indent: 0.5in;"&gt;Mikrokontroler tipe AT89S51 merupakan mikrokontroler keluarga MCS-51 dengan konfigurasi yang sama persis dengan AT89C51 yang cukup terkenal, hanya saja AT89S51 mempunyai fitur ISP (In-System Programmable Flash Memory). Fitur ini memungkinkan mikrokontroler dapat diprogram langsung dalam suatu sistem elektronik tanpa melalui &lt;i&gt;Programmer Board&lt;/i&gt; atau &lt;i&gt;Downloader Board.&lt;/i&gt;&lt;i&gt;Personal Computer&lt;/i&gt;. Mikrokontroler dapat diprogram langsung melalui kabel ISP yang dihubungkan dengan paralel port pada suatu &lt;span style="font-family: &amp;quot;&amp;quot;; font-size: 12pt;"&gt;pada suatu &lt;i&gt;Personal Computer&lt;/i&gt;.&lt;a name='more'&gt;&lt;/a&gt;&lt;/span&gt; &lt;/div&gt;&lt;div style="text-align: justify;"&gt; Mikrokontroler tipe AT89S51 merupakan mikrokontroler keluarga MCS-51 dengan konfigurasi yang sama persis dengan AT89C51 yang cukup terkenal, hanya saja AT89S51 mempunyai fitur ISP (In-System Programmable Flash Memory). Fitur ini memungkinkan mikrokontroler dapat diprogram langsung dalam suatu sistem elektronik tanpa melalui &lt;i&gt;Programmer Board&lt;/i&gt; atau &lt;i&gt;Downloader Board.&lt;/i&gt; Mikrokontroler dapat diprogram langsung melalui kabel ISP yang dihubungkan dengan paralel port pada suatu &lt;i&gt;Personal Computer&lt;/i&gt;.&lt;/div&gt;&lt;div style="text-align: justify;"&gt;Adapun fitur yang di miliki Mikrokontroler AT89S51 adalah sebagai berikut :&lt;/div&gt;&lt;ol style="text-align: justify;" type="1"&gt;&lt;li&gt;Sebuah CPU (Central Processing Unit) 8 bit yang      termasuk keluarga MCS51.&lt;/li&gt;
&lt;li&gt;Osilator internal dan rangkaian pewaktu, RAM internal      128 byte (on chip).&lt;/li&gt;
&lt;li&gt;Empat buah Programmable port I/O,masing-masing      terdiri atas 8 jalur I/O&lt;/li&gt;
&lt;li&gt;Dua buah Timer Counter 16 bit.&lt;/li&gt;
&lt;li&gt;Lima buah      jalur interupsi (2 interupsi external dan 3 interupsi internal )&lt;/li&gt;
&lt;li&gt;Sebuah port serial dengan kontrol serial full duplex      UART.&lt;/li&gt;
&lt;li&gt;Kemampuan      melaksanakan operasi perkalian, pembagian dan operasi Boolean (bit)&lt;/li&gt;
&lt;li&gt;Kecepatan      pelaksanaan instruksi per siklus 1 microdetik pada frekuensi clock 12 MHz&lt;/li&gt;
&lt;li&gt;4 Kbytes      Flash ROM yang dapat diisi dan dihapus sampai 1000 kali&lt;/li&gt;
&lt;li&gt;In-System Programmable Flash Memory&lt;/li&gt;
&lt;/ol&gt;&lt;div style="text-align: justify;"&gt;Dengan keistimewaan diatas, pembuatan alat menggunakan AT89S51 menjadi lebih sederhana dan tidak memerlukan IC pendukung yang banyak. Sehingga mikrokontroler AT89S51 ini mempunyai keistimewaan dari segi perangkat keras Adapun fitur yang di miliki Mikrokontroler AT89S51 adalah sebagai berikut :&lt;/div&gt;&lt;ol style="margin-top: 0pt; text-align: justify;" type="1"&gt;&lt;li class="MsoNormal"&gt;Sebuah CPU (Central Processing Unit) 8 bit yang      termasuk keluarga MCS51.&lt;/li&gt;
&lt;li class="MsoNormal"&gt;Osilator internal dan rangkaian pewaktu, RAM internal      128 byte (on chip).&lt;/li&gt;
&lt;li class="MsoNormal"&gt;Empat buah Programmable port I/O,masing-masing      terdiri atas 8 jalur I/O&lt;/li&gt;
&lt;li class="MsoNormal"&gt;Dua buah Timer Counter 16 bit.&lt;/li&gt;
&lt;li class="MsoNormal"&gt;&lt;span lang="SV"&gt;Lima buah      jalur interupsi (2 interupsi external dan 3 interupsi internal )&lt;/span&gt;&lt;/li&gt;
&lt;li class="MsoNormal"&gt;Sebuah port serial dengan kontrol serial full duplex      UART.&lt;/li&gt;
&lt;li class="MsoNormal"&gt;&lt;span lang="SV"&gt;Kemampuan      melaksanakan operasi perkalian, pembagian dan operasi Boolean (bit)&lt;/span&gt;&lt;/li&gt;
&lt;li class="MsoNormal"&gt;&lt;span lang="SV"&gt;Kecepatan      pelaksanaan instruksi per siklus 1 microdetik pada frekuensi clock 12 MHz&lt;/span&gt;&lt;/li&gt;
&lt;li class="MsoNormal"&gt;&lt;span lang="SV"&gt;4 Kbytes      Flash ROM yang dapat diisi dan dihapus sampai 1000 kali&lt;/span&gt;&lt;/li&gt;
&lt;li class="MsoNormal"&gt;In-System Programmable Flash Memory&lt;/li&gt;
&lt;/ol&gt;&lt;div style="text-align: justify;"&gt;&lt;span style="font-family: &amp;quot;&amp;quot;; font-size: 12pt;"&gt;Dengan keistimewaan diatas, pembuatan alat menggunakan AT89S51 menjadi lebih sederhana dan tidak memerlukan IC pendukung yang banyak. Sehingga mikrokontroler AT89S51 ini mempunyai keistimewaan dari segi perangkat keras.&lt;/span&gt;&lt;/div&gt;</description><thr:total xmlns:thr="http://purl.org/syndication/thread/1.0">0</thr:total></item><item><title>Bahasa Pemrograman</title><link>http://idrusiyeng83.blogspot.com/2011/03/bahasa-pemrograman.html</link><author>noreply@blogger.com (IDRUS IYENG)</author><pubDate>Mon, 21 Mar 2011 02:39:00 +0700</pubDate><guid isPermaLink="false">tag:blogger.com,1999:blog-569594418372177110.post-2636253980830911859</guid><description>&lt;div style="text-align: justify;"&gt;Banyak bahasa pemrograman yang digunakan saat ini, contoh bahasa pemrograman yang sering dipakai untuk membuat software-softwarebaru maupun sistem informasi adalah Delphi dan Visual Basic serta bahasa pemrograman lain yang digunakan untuk membuat web desain, misalkan bahasa pemrograman html dan lain sebagainya. Dari sekian banyak bahasa pemrograman yang sering digunakan, ada bahasa yang merupakan induk dari bahasa pemrograman yaitu bahasa assembly.&lt;span class="fullpost"&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="text-align: justify;"&gt;&lt;span class="fullpost"&gt;&lt;br /&gt;
Bahasa assembly merupakan bahasa dasar yang digunakan untuk membuat bahasa pemrograman yang lain. bahasa assembly menggunakan perintah-perintah yang berbeda daripada bahasa pemrograman under windows. Dalam bahasa assembly, seorang programer harus mengerti bilangan-bilangan hexa, okta, dan biner, karena bilangan-bilangan inilah yang sering digunakan ketika sedang membuat suatu listing program menggunakan bahasa pemrograman assembly.&lt;br /&gt;
&lt;br /&gt;
Bahasa assembly adalah bahasa pemrograman komputer tingkat rendah. Bahasa assembly atau bahasa rakitan merupakan notasi untuk bahasa mesin yang dapat dibaca oleh manusia dan berbeda-beda tergantung dari arsitektur komputer yang digunakan. Bahasa mesin adalah pola bit-bit (serangkaian nomor-nomor biner) tertentu yang merupakan kode operasi mesin. Bahasa mesin dibuat lebih mudah dibaca dan ditulis dengan cara mengganti pola bit-bit menjadi julukan-julukan yang disebut mnemonics.&lt;br /&gt;
&lt;br /&gt;
Berbeda dengan bahasa pemrograman tingkat tinggi, bahasa rakitan biasanya memiliki hubungan 1-1 dengan instruksi bahasa mesin. Misalnya, tiap julukan (mnemonic) yang ditulis di program dengan bahasa rakitan akan diterjemahkan menjadi tepat satu kode operasi yang dapat dimengerti langsung oleh komputer. Pada bahasa tingkat tinggi, satu perintah dapat diterjemahkan menjadi beberapa kode operasi dalam bahasa mesin. Proses pengubahan bahasa rakitan ke bahasa mesin dilakukan oleh assembler, dan proses balikannyadilakukan oleh disassembler.&lt;a name='more'&gt;&lt;/a&gt; &lt;br /&gt;
Contoh listing program bahasa assembly :&lt;br /&gt;
&lt;br /&gt;
mov al, 0x61&lt;br /&gt;
yang berarti pindahkan (mov = move) nilai heksadesimal 61 (= 97 dalam desimal) ke register prosesor bernama "al".&lt;br /&gt;
&lt;br /&gt;
Adalah lebih mudah mengingat ini dari bahasa mesin :&lt;br /&gt;
10110000 01100001&lt;/span&gt;&lt;/div&gt;</description><thr:total xmlns:thr="http://purl.org/syndication/thread/1.0">0</thr:total></item><item><title>Pintu geser otomatis berbasis mikrokontroler</title><link>http://idrusiyeng83.blogspot.com/2011/03/pintu-geser-otomatis-berbasis.html</link><author>noreply@blogger.com (IDRUS IYENG)</author><pubDate>Mon, 21 Mar 2011 00:31:00 +0700</pubDate><guid isPermaLink="false">tag:blogger.com,1999:blog-569594418372177110.post-5482767106782310536</guid><description>&lt;div style="text-align: center;"&gt;&lt;b&gt;ABSTRAK&lt;/b&gt;&lt;/div&gt;&lt;div style="text-align: center;"&gt;&lt;br /&gt;
&lt;/div&gt;&lt;div style="text-align: justify;"&gt;Mikrokontroler merupakan suatu terobosan teknologi mikroprosesor dan mikrokomputer yang saat  ini telah banyak digunakan pada aplikasi rangkaian elektronika. Dengan memanfaatkan fungsi dari  mikrokontroler maka akan dibuat sebuah aplikasi pintu geser otomatis. Secara umum aplikasi pintu geser  otomatis ini dirancang menggunakan sensor sensor infrared, sensor photo dioda, mikrokontroler AT89S51, Driver motor dan Motor stepper. Mikrokontroler menerima input dari sensor, kemudian mikrokontroler memberikan output kepada relay.  Selanjutnya keluaran dari relay masuk ke motor DC yang berfungsi untuk menggerakkan pintu. Pintu Geser Otomatis adalah sebuah rangkaian simulasi dari kerja sensor yang dapat menggerakan sebuah motor stepper secara otomatis sehingga motor ini dapat menggeser sebuah miniatur pintu. Cara kerja dari alat ini adalah berbasis mikroprosessor. Bahasa pemograman yang digunakan adalah bahasa pemograman tingkat rendah (Low level language) Assembler yang di isi pada sebuah chip IC. Aplikasi pintu  geser otomatis ini dapat memberikan kemudahan bagi masyarakat untuk membuka pintu sehingga dapat  menghemat waktu.&lt;/div&gt;</description><thr:total xmlns:thr="http://purl.org/syndication/thread/1.0">0</thr:total></item></channel></rss>