Mikrokontroler AVR Dan Bahasa C

Seperti terlihat pada gambar 2.10, Code vision AVR pada dasarnya telah mengintegrasikan komponen-komponen penting dalam pemrograman microcontroller AVR: Editor,Compiler C, assembler dan ISP In System Programmer. Khusus dengan ISP, ada beberapa jenis perangkat keras programmer dongle berikut papan pengembangnya yang telah didukung oleh perangkat lunak Code vision AVR ini, salah satu diantaranya adalah Kanda System STK 200300 produk Perusahaan Kanda yang terhubung pada saluran antarmuka port Paralel Komputer.

2.10 Mikrokontroler AVR Dan Bahasa C

Tidak dapat disangkal, dewasa ini penggunaan bahasa pemrograman aras tinggi seperti C, Basic, Pascal dan sebagainya semakin populer dan banyak digunakan untuk memprogram sistem microcontroller. Berdasarkan sifatnya yang sangat fleksibel dalam hal keleluasaan pemrogram untuk mengakses perangkat keras, Bahasa C merupakan bahasa pemrograman yang paling cocok dibandingkan bahasa-bahasa pemrograman aras tinggi lainnya. Dikembangkan pertama kali oleh Dennis Ritchie dan Ken Thomson pada tahun 1972, Bahasa C merupakan salah satu bahasa pemrograman yang paling populer untuk pengembangan program-program aplikasi yang berjalan pada sistem microprocessor komputer. Karena kepopulerannya, vendor-vendor perangkat lunak kemudian mengembangkan compiler C sehingga menjadi beberapa varian berikut: Turbo C, Borland C, Microsoft C, Power C, Zortech C dan lain sebagainya. Untuk menjaga portabilitas, compiler-compiler C tersebut menerapkan ANSI C ANSI: American National Standards Institute sebagai standar bakunya. Perbedaan antara compiler-compiler tersebut umumnya hanya terletak pada pengembangan fungsi-fungsi library serta fasilitas IDE Integrated Development Environment –nya saja. Relatif dibandingkan dengan bahasa aras tinggi lain, bahasa C merupakan bahasa pemrograman yang sangat fleksibel dan tidak terlalu terikat dengan berbagai aturan yang sifatnya kaku. Satu-satunya hal yang membatasi penggunaan bahasa C dalam sebuah aplikasi adalah semata-mata kemampuan imaginasi programmer-nya saja. Sebagai ilustrasi, dalam program C kita dapat saja secara bebas menjumlahkan karakter huruf misal „A‟ dengan Universitas Sumatera Utara sebuah bilangan bulat misal „2‟, dimana hal yang sama tidak mungkin dapat dilakukan dengan menggunakan bahasa aras tinggi lainnya. Karena sifatnya ini, seringkali bahasa C dikatagorikan sebagai bahasa aras menengah mid level language. Dalam kaitannya dengan pemrograman microcontroller, Tak pelak lagi bahasa C saat ini mulai menggeser penggunaan bahasa aras rendah assembler. Penggunaan bahasa C akan sangat efisien terutama untuk program microcontroller yang berukuran relatif besar. Dibandingkan dengan bahasa assembler, penggunaan bahasa C dalam pemrograman memiliki beberapa kelebihan berikut: Mempercepat waktu pengembangan, bersifat modular dan terstruktur, sedangkan kelemahannya adalah kode program hasil kompilasi akan relative lebih besar dan sebagai konsekuensinya hal ini terkadang akan mengurangi kecepatan eksekusi. Khusus pada microcontroller AVR, untuk mereduksi konsekuensi negative diatas, Perusahaan Atmel merancang sedemikian sehingga arsitektur AVR ini efisien dalam mendekode serta mengeksekusi instruksi-instruksi yang umum dibangkitkan oleh compiler C Dalam kenyataannya, pengembangan arsitektur AVR ini tidak dilakukan sendiri oleh perusahaan Atmel tetapi ada kerja sama dengan salah satu vendor pemasok compiler C untuk microcontroller tersebut, yaituI ARC. Seperti halnya compiler C untuk sistem microprocessor, di pasaran ada beberapa varian compiler C untuk memprogram sistem microcontroller AVR. Dengan beberapa kelebihan yang dimilikinya, saat ini Code Vision AVR produk Perusahaan Pavel Haiduc merupakan compiler C yang relative banyak digunakan dibandingkan compiler-compiler C lainnya. Bahasa C telah dikritisi secara meluas, dan banyak orang dengan cepat menemukan masalahnya. Tapi sebagai bahasa yang telah hadir, C tetap tak tersentuh. Code Vision AVR adalah salah satu yang memanfaatkan keunggulan C dalam hal pemrograman mikrokontroler. Salah satu ungkapan menyatakan bahwa “jika kamu membuat perangkat lunak yang akan tetap layak suatu hari nanti, jangan belajar bahasa yang popular saat ini, pelajarilah C”. C tidak membatasi pandangan orang mengenai sebuah bahasa pemrograman. C tidak object oriented, tetapi kita dapat menerapkan konsep objek oriented padanya. Bukan juga bahasa fungsional, tetapi kita dapat dapat menerapkan pemrograman fungsional menggunakannya. Kebanyakan interpreter Universitas Sumatera Utara LISP dan skema interpreters-interpreterskompiler-kompiler ditulis dengan menggunakan C. kita dapat memproses list menggunakan C, meski tak semudah menggunakan LISP. C juga memiliki fitur-fitur tambahan seperti rekursi, prosedur sebagai tipe data kelas pertama, dan banyak lagi. Banyak orang yang merasakan C kekurangan akan kemudahan seperti JAVA, atau C++. Padahal C adalah bahasa yang sederhana. Tapi karena kesederhanaan ini dianggap kurang memadai sehingga membuat C diadaptasi sebagai perkenalan pertama ke tahap bahasa tingkat tinggi yang kompleks yang memungkinkan kita mengontrol dengan baik apa yang kita program tanpa fitur yang disembunyikan. Compiler tidak akan melakukan apapun sampai kita memerintahkan untuk melakukan sesuatu. Bahasa yang ada adalah transparan, bahkan jika beberapa fitur dari JAVA seperti garbage collection diikutsertakan pada implementasi C yang akan digunakan. Sebagai bahasa pemrograman, C tetap ada. Ini adalah inti dari development dilingkungan system operasi UNIX. Dan juga inti dari revolusi mikrokomputer, diantara C++, Delphi, JAVA dan lainnya, C masih tetap bertahan,dengan karakteristiknya sendiri. Universitas Sumatera Utara BAB 1 PENDAHULUAN

1.1 Latar Belakang