Important Announcement
PubHTML5 Scheduled Server Maintenance on (GMT) Sunday, June 26th, 2:00 am - 8:00 am.
PubHTML5 site will be inoperative during the times indicated!

Home Explore e-book Guru Pembelajar

e-book Guru Pembelajar

Published by Devi Juwita, 2020-04-19 01:48:44

Description: e-book Guru Pembelajar

Search

Read the Text Version

Gambar 5.6 di bawah adalah tampilan area kerja atau IDE VB 6. Mengenal bagian-bagian utama di dalam IDE VB 6 adalah sangat penting. Gambar 5 6 Contoh Tampilan Pembuka VB Keterangan : 5) Jendela Code 1) Menu bar 6) Project Explorer 2) Tool bar 7) Jendela Properties 3) Toolbox 4) J endela Form Dalam pemrograman berbasis obyek (OOP), perlu dipahami istilah object, property, method dan event sebagai berikut : Object : komponen di dalam sebuah program Property : karakteristik yang dimiliki object Method : aksi yang dapat dilakukan oleh object Event : kejadian yang dapat dialami oleh object Sebagai ilustrasi dapat menganggap sebuah mobil sebagai obyek yang memiliki property, method dan event. Perhatikan gambar berikut : 92

Gambar 5 7 Ilustrasi Pemrograman Berbasis Obyek Gambar 5 8 Pemrograman Berbasis Obyek Implementasinya dalam sebuah aplikasi misalnya adalah membuat form, maka form tersebut memiliki property, method, dan event. Sebagaimana pemrograman visual lain seperti Delphi dan Java, VB juga bersifat event driven progamming. Artinya dapat menyisipkan kode program pada event yang dimiliki suatu obyek. 93

D. Aktifitas Pembelajaran 1. Selama proses pembelajaran, Anda hendaknya mengidentifikasi Bahasa pemrograman. 2. Sebagai tugas praktek mandiri, buatlah uraian jenis-jenis Bahasa pemrograman untuk IT-Engineering dan pemanfaatan lingkungan pengembangan terintegrasi (IDE)!. 3. Untuk menambah wawasan dan informasi anda,akses salah satu publikasi di website yang berkaitan tentang Bahasa pemrograman dan jawablah pertanyaan berikut ini: a. Uraikan jenis-jenis Bahasa pemrograman untuk IT-Engineering! b. Uraikan pemanfaatan lingkungan pengembangan terintegrasi (IDE) ! 4. Amati lingkungan bengkel/laboratorium anda, apakah sudah memiliki modul Bahasa pemrograman dan alat bantu mengajarnya? Jika tidak ada, peluang apa saja yang bisa anda lakukan untuk mempelajari Bahasa pemrograman? E. Latihan/Tugas 1. Jelaskan apa yang dimaksud dengan bahasa pemrograman! 2. Lebih mudah mana untuk memahami pemrograman dengan bahasa tingkat rendah atau tingkat tinggi? Mengapa demikian? 3. Sebutkan 6 bahasa pemrograman tingkat tinggi yang anda ketahui! 4. Sebutkan element-element pada bahasa pemrograman! 5. Sebutkan kelebihan penggunaan Integrated Developement Environment (IDE)! 6. Sebutkan fasilitas yang biasanya dimiliki oleh Integrated Developement Environment (IDE)! F. Rangkuman Bahasa pemrograman adalah kumpulan instruksi-instruksi yang dengan aturan tata bahasa tertentu yang di-compile kemudian dimengerti oleh komputer untuk melakukan tugas-tugas tertentu. Sampai sekarang terdapat puluhah bahasa pemrograman. Ada bahasa rakitan (assembly), Fortran, Cobol, Ada, PL/I, Algol, Pascal, Basic, Prolog, LISP, PRG, kemudian ada juga bahasa simulasi seperti CSMP, Simscript, GPSS, Dinamo, dan masih banyak lagi. 94

Berdasarkan kedekatannya dari notasi bahasa pemrograman apakah lebih dekat ke bahasa mesin atau ke bahasa manusia, maka bahasa pemrograman dikelompokkanatas dua macam : 1. Bahasa tingkat rendah. Bahasa jenis ini dirancang agar setiap instruksinya langsung dikerjakan oleh sistem tanpa harus melalui penerjemah (translator). Contohnya adalah bahasa mesin. 2. Bahasa tingkat tinggi. Bahasa tingkat tinggi membuat pemrograman lebih mudah dipahami, lebih “manusiawi”, dan berorientasi ke bahasa manusia (bahasa inggris). Yang termasuk dalam bahaa ini adalah Pascal, PL/I, Cobol, Basic, Fortran, C dan sebagainya. Saat memilih bahasa pemrograman hendaknya memperhatikan hal-hal yang dimiliki oleh bahasa pemrograman yang akan digunakan. Setiap bahasa pasti mempunyai kekurangan dan kelebihan yang harus kita pertimbangan dalam menentukan dan memilihnya. Bahasa pemrograman merupakan prosedur/tata cara penulisan program. Pada bahasa pemrograman terdapat dua faktor penting, yaitu sintaks dan semantik. Sintaks adalah aturan gramatikal yang mengatur tata cara penulisan kata, ekspresi dan pernyataan. Semantik adalah aturan-aturan untuk menyatakan arti. Fungsi bahasa pemrograman adalah sebagai media untuk menyusun dan memahami serta sebagai alat komunikasi antara pemrogram dengan komputer. Bagian deklarasi merupakan bagian program untuk mendefinisikan tipe data suatu variable, konstanta, serta fungsi dan prosedur yang akan digunakan pada program. Bagian statement merupakan bagian program yang berisi perintah yang akan dieksekusi/dijalankan. Pada bahasa Pascal, bagian statement selalu diawali dengan reserved word begin dan end. Lingkungan pengembangan perangkat lunak dapat dikelompokkan menjadi 2, yaitu lingkungan primitif dan lingkungan terintegrasi. Lingkungan primitif dalam siklus pemrograman terdiri atas kompiler/interpreter, text editor dan console. Sepintas pengembangan dengan lingkungan primitif ini sederhana dan cepat. 95

Hanya bermodalkan kompiler/interpreter, text editor sederhana dan console (2 hal terakhir ini pasti sudah ada disetiap sistem operasi, tanpa harus diinstall), belajar pemrograman sudah bisa dilakukan. Lingkungan pengembangan adalah IDE (Integrated Developement Environment) yang merupakan Lingkungan Pengembangan Terpadu (Integrated Developement Environment) bagi programmer dalam mengembangkan aplikasinya. Dengan menggunakan IDE programmer dapat membuat user interface, melakukan koding, melakukan testing dan debuging serta menkompilasi program menjadi executable. Contoh lingkungan pengembangan terintegrasi (IDE) adalah pada program Visual Basic (VB). Visual Basic adalah salah satu bahasa pemrograman komputer. Bahasa pemrograman adalah perintah-perintah yang dimengerti oleh komputer untuk melakukan tugas-tugas tertentu. Bahasa pemrograman Visual Basic, yang dikembangkan oleh Microsoft sejak tahun 1991, merupakan pengembangan dari pendahulunya yaitu bahasa pemrograman BASIC (Beginner’s All-purpose Symbolic Instruction Code) yang dikembangkan pada era 1950-an. G. Umpan Balik dan Tindak Lanjut 1. Umpan Balik Setelah mempelajari kegiatan pembelajaran ini, periksa penguasaan pengetahuan dan keterampilan anda menggunakan daftar periksa di bawah ini: No Indikator Ya Tidak Bukti Menguraikan jenis-jenis Bahasa 1. pemrograman untuk IT-Engineering Menguraikan pemanfaatan 2. lingkungan pengembangan terintegrasi (IDE) 96

2. Tindak Lanjut a. Buat rencana pengembangan dan implementasi di lingkungan laboratoriumkerja anda. b. Gambarkan suatu situasi atau isu di dalam laboratorium anda yang mungkin dapat anda ubah atau tingkatkan dengan mengimplementasikan sebuah rencana tindak lanjut. c. Apakah judul rencana tindak lanjut anda? d. Apakah manfaat/hasil dari rencana aksi tindak lanjut anda tersebut? e. Uraikan bagaimana rencana tindak lanjut anda memenuhi kriteria SMART (spesifik, dapat diukur, dapat dicapai, relevan, rentang/ketepatan waktu). 97

KEGIATAN PEMBELAJARAN 6 : DASAR-DASAR PEMROGRAMAN A. Tujuan Setelah menyelesaikan materi ini, peserta diharapkan dapat; 1. memeriksa fungsi dan sintak instruksi Bahasa pemrograman sesuai prosedur dengan benar, 2. menentukan penggunaan dasar-dasar teknik pemrograman sesuai prosedur dengan benar. B. Indikator Pencapaian Kompetensi 1. Menentukan penggunaan dasar-dasar teknik pemrograman . 2. Memeriksa fungsi dan sintak instruksi bahasa pemrograman . C. Uraian Materi 1. Penggunaan Dasar-Dasar Teknik Pemrograman Pemrograman adalah proses menulis, menguji dan memperbaiki (debug), dan memelihara kode yang membangun sebuah program komputer. Kode ini ditulis dalam berbagai bahasa pemrograman. Tujuan dari pemrograman adalah untuk memuat suatu program yang dapat melakukan suatu perhitungan atau 'pekerjaan' sesuai dengan keinginan si pemrogram (programmer). Untuk dapat melakukan pemrograman, diperlukan keterampilan dalam algoritma, logika, bahasa pemrograman, dan dibanyak kasus, pengetahuan-pengetahuan lain seperti matematika. Pemrograman adalah sebuah seni dalam menggunakan satu atau lebih algoritma yang saling berhubungan dengan menggunakan sebuah bahasa pemrograman tertentu sehingga menjadi sebuah program komputer. Bahasa pemrograman yang berbeda mendukung gaya pemrograman yang berbeda pula. Gaya pemrograman ini biasa disebut paradigma pemrograman. Apakah memprogram perangkat lunak lebih merupakan seni, ilmu, atau teknik telah lama diperdebatkan. Pemrogram yang baik biasanya mengkombinasikan 98

tiga hal tersebut, agar dapat menciptakan program yang efisien, baik dari sisi waktu berjalan (run time), atau memori. Apapun pendekatan pengembangan perangkat lunak mungkin, program akhir harus memenuhi beberapa sifat mendasar. Properti berikut adalah di antara yang paling relevan:  Efisiensi / kinerja: jumlah sumber daya sistem program yang mengkonsumsi waktu proses, ruang memori, perangkat bawah seperti disk, bandwidth jaringan dan bahkan sampai batas tertentu interaksi dari pemakai: semakin sedikit, semakin baik.  Reliabilitas, seberapa sering hasil dari sebuah program sudah benar. Hal ini tergantung pada kebenaran konseptual algoritma, dan pemrograman minimisasi kesalahan, seperti kesalahan dalam manajemen sumber daya dan kesalahan logika.  Kekokohan, seberapa baik program mengatasi masalah yang bukan karena kesalahan programmer. Ini termasuk situasi seperti salah, tidak pantas atau merusak data, tidak tersedianya sumber daya yang dibutuhkan seperti memori, sistem operasi layanan dan koneksi jaringan, dan kesalahan pengguna.  Kegunaan, kemudahan menggunakan program untuk tujuan tertentu, atau dalam beberapa kasus bahkan tujuan tak terduga. Isu-isu tersebut dapat membuat atau menghancurkan kesuksesan bahkan tanpa masalah lain. Hal ini melibatkan berbagai tekstual, grafis dan kadang-kadang elemen-elemen perangkat keras yang meningkatkan kejelasan, intuitif, kekompakan dan kelengkapan program antarmuka pengguna.  Portabilitas, tergantung pada perbedaan-perbedaan dalam fasilitas pemrograman yang disediakan oleh platform yang berbeda, termasuk hardware dan sistem operasi sumber daya, perilaku yang diharapkan dari hardware dan sistem operasi, dan ketersediaan platform compiler tertentu untuk bahasa dari source code.  Kemampu-rawatan, kemudahan dengan sebuah program yang dapat dimodifikasi oleh pengembang sekarang atau pada masa mendatang dalam rangka untuk membuat perbaikan atau penyesuaian, memperbaiki keamanan, atau disesuaikan dengan lingkungan baru. 99

Bahasa pemrograman merupakan sebuah cara untuk berkomunikasi dengan mesin yang sedang dituju dan diajak berkomunikasi adalah komputer. Komputer hadir dalam kehidupan manusia baru 50 tahun terakhir, namun efeknya sangat besar dalam merubah kehidupan manusia, bahkan melebihi penemuan manusia lainnya seperti radio, telepon, dan televisi. Begitu banyak aplikasi memanfaatkan komputer, terutama dalam pemanfaatan kemampuan chip mikroprosesor di dalamnya yang dapat melakukan komputasi sangat cepat, dapat bekerja sendiri dengan diprogram, dan dilengkapi memori untuk menyimpan begitu banyak data. Seiring dengan perkembangan zaman, semakin luaslah kebutuhan akan kemampuan seperti yang dimiliki oleh komputer, sehingga menyebabkan munculnya terobosan-terobosan baru yang salah satunya adalah dibuatnya chip mikrokontroler. Mikrokontroler adalah single chip computer yang memiliki kemampuan untuk diprogram dan digunakan untuk tugas-tugas yang berorientasi kontrol. Mikrokontroler datang dengan dua alasan utama, yang pertama adalah kebutuhan pasar (market need) dan yang kedua adalah perkembangan teknologi baru. Yang dimaksud dengan kebutuhan pasar adalah kebutuhan yang luas dari produk-produk elektronik akan perangkat pintar sebagai pengontrol dan pemroses data. Sedangkan yang dimaksud dengan perkembangan teknologi baru adalah perkembangan teknologi semikonduktor yang memungkinkan pembuatan chip dengan kemampuan komputasi yang sangat cepat, bentuk yang semakin mungil, dan harga yang semakin murah. Terdapat perbedaan yang signifikan antara mikrokontroler dan mikroprosessor. Perbedaan yang utama antara keduanya dapat dilihat dari dua faktor utama yaitu arsitektur perangkat keras (hardware architecture) dan aplikasi masing-masing. Ditinjau dari segi arsitekturnya, mikroprosesor hanya merupakan single chip CPU, sedangkan mikrokontroler dalam IC-nya selain CPU juga terdapat device lain yang memungkinkan mikrokontroler berfungsi sebagai suatu single chip computer. Dalam sebuah IC mikrokontroler telah terdapat ROM, 100

RAM, EPROM, serial interface dan paralel interface, timer, interrupt controller, konverter Analog ke Digital, dan lainnya (tergantung feature yang melengkapi mikrokontroler tersebut). Sedangkan dari segi aplikasinya, mikroprosessor hanya berfungsi sebagai Central Processing Unit yang menjadi otak komputer, sedangkan mikrokontroller, dalam bentuknya yang mungil, pada umumnya ditujukan untuk melakukan tugas–tugas yang berorientasi kontrol pada rangkaian yang membutuhkan jumlah komponen minimum dan biaya rendah (low cost). Karena kemampuannya yang tinggi, bentuknya yang kecil, konsumsi dayanya yang rendah, dan harga yang murah maka mikrokontroler begitu banyak digunakan di dunia. Mikrokontroler digunakan mulai dari mainan anak-anak, perangkat elektronik rumah tangga, perangkat pendukung otomotif, peralatan industri, peralatan telekomunikasi, peralatan medis dan kedokteran, sampai dengan pengendali robot serta persenjataan militer. Terdapat beberapa keunggulan yang diharapkan dari alat-alat yang berbasis mikrokontroler (microcontroller-based solutions) :  kehandalan tinggi (high reliability) dan kemudahan integrasi dengan komponen lain (high degree of integration),  ukuran yang semakin dapat diperkecil (reduced in size),  penggunaan komponen dipersedikit (reduced component count) yang juga akan menyebabkan biaya produksi dapat semakin ditekan (lower manufacturing cost),  waktu pembuatan lebih singkat (shorter development time) sehingga lebih cepat pula dijual ke pasar sesuai kebutuhan (shorter time to market),  konsumsi daya yang rendah (lower power consumption). Karena kebutuhan yang tinggi terhadap “chip-chip pintar” dengan berbagai fasilitasnya, maka berbagai vendor juga berlomba untuk menawarkan produk-produk mikrokontrolernya. Intel mengeluarkan mikrokontrolernya yang populer di dunia yaitu 8051, yang karena begitu 101

populernya maka arsitektur 8051 tersebut kemudian diadopsi oleh vendor lain seperti Phillips, Siemens, Atmel, dan vendor-vendor lain dalam produk mikrokontroler mereka. Selain itu masih ada mikrokontroler populer lainnya seperti Basic Stamps, PIC dari Microchip, MSP 430 dari Texas Instrument dan masih banyak lagi. Seiring dengan perkembangan zaman, selain mikroprosesor dan mikrokontroler, sebenarnya telah bermunculan chip-chip pintar lain seperti DSP prosesor dan Application Spesific Integrated Circuit (ASIC). Di masa depan, chip-chip mungil berkemampuan sangat tinggi akan mendominasi semua desain elektronik di dunia sehingga mampu memberikan kemampuan komputasi yang tinggi serta meminimumkan jumlah komponen-komponen konvensional. 2. Fungsi dan Sintak Instruksi Bahasa Pemrograman . Pada pembahasan fungsi dan sintak instruksi bahasa pemrograman ini diuraikan tentang Mikrokontroler AVR (Alf and Vegard's Risc processor). Mikrokontroler AVR standar memiliki arsitektur 8 bit, dimana semua instruksi dikemas dalam kode 16-bit, dan sebagian besar instruksi dieksekusi dalam 1 (satu) siklus clock. AVR dapat dikelompokkan menjadi empat kelas, yaitu keluarga ATtiny, keluarga ATSOSxx, keluarga ATMega, dan AT86RFxx. Pada dasamya, yang membedakan masing-masing kelas adalah memori, peripheral, dan fungsinya. Mikrokontroler AVR ATmega16 adalah salah satu dari keluarga ATmega dengan populasi pengguna cukup besar. Memiliki memori flash 16k dan 32 jalur input output, serta dilengkapi dengan ADC 8 kanal dengan resolusi 10-bit dan 4 kanal PWM. Sebuah chip dengan fitur cukup lengkap untuk mendukung beragam aplikasi, termasuk robotik. Pemrograman mikrokontroler AVR (Atmega16) menggunakan beberapa bahasa program seperti bahasa Basic, C atau Assembler. Untuk bahasa basic digunakan Software Bascom AVR sedang bahasa C dan Assembler digunakan WinAVR. Program aplikasi yang disusun dalam software setelah di kompilasi akan dihasilkan file dengan ekstensi heksa. File heksa inilah yang akan dituliskan ke 102

memori flash mikrokontroler AVR melalui sebuah alat yang disebut Downloader. Rangkaian Downloader ada yang sederhana dan dapat dibuat sendiri. Pada umumnya bahasa yang dipergunakan untuk memprogram mikrokontroler adalah bahasa Assembly. Bahasa Assembly adalah bahasa pemrograman tingkat menengah, dimana program yang dibuat lebih mendekati bahasa mesin, sehingga pemenfaatan memori dapat dilakukan secara optimal, namun di sisi lain pemrogramannya menjadi relatif sulit. Karena bahasa yang dipergunakan Bascom, yaitu Basic, adalah bahasa tingkat tinggi, maka pemrograman menggunakan Bascom sangatlah mudah untuk dipelajari. Sintaksnya tidak jauh berbeda dari Basic pada umumnya, misalnya do-loop, for-next, while-wend, goto, gosub dan sebagainya. Selain itu Bascom dilengkapi dengan fungsi-fungsi khusus, misalnya LCD untuk menampilkan karakter pada LCD, PRINT untuk mengirimkan karakter ke PC melalui kabel RS232, SHIFTIN dan SHIFTOUT untuk komunikasi serial sinkron dan lain sebagainya. Fungsi-fungsi khusus tersebut jika dituliskan dalam bahasa Assembly akan menjadi lebih panjang dan rumit, terutama karena kita harus mengetahui register-register yang ada pada mikrokontroler. Kontruksi bahasa BASIC pada BASCOM-AVR Setiap bahasa pemprograman mempunyai standar penulisan program. Konstruksi dari program bahasa BASIC harus mengikuti aturan sebagai berikut: $regfile = \"header\" 'inisialisasi 'deklarasi variable 'deklarasi konstanta Do 'pernyataan-pernyataan Loop end Pengarah preprosesor $regfile = \"m16def.dat\" merupakan pengarah pengarah preprosesor bahasa BASIC yang memerintahkan untuk menyisipkan file lain, dalam hal ini adalah 103

filem16def.dat yang berisi deklarasi register dari mikrokonroller ATmega 16, pengarah preprosesor lainnya yang sering digunakan ialah sebagai berikut: $crystal = 12000000 'menggunakan crystal clock 12 MHz $baud = 9600 'komunikasi serial dengan baudrate 9600 $eeprom 'menggunakan fasilitas eeprom Karakter Pada Bascom Karakter pada Bascom dipergunakan untuk membentuk label, keyword, variabel, dan operator, yang kesemuanya akan membentuk suatu program. Pada dasarnya karakter pada Bascom terdiri dari karakter huruf (A-Z) dan karakter angka (0-9). Beberapa karakter pada Bascom yang dipergunakan secara khusus terdapat pada tabel 6.1. Tabel 6 1 Karakter Khusus pada Bascom Karakter Deskripsi ENTER Ganti baris Blank (spasi) „ Single quotation mark (apostrophe) * Asterisks (simbol perkalian) + Plus sign (simbol penjumlahan) , - Comma . Minus sign (simbol pengurangan) / ; Period (decimal point) “ Slash (simbol pembagian) : < Colon = Double quotation mark > \\ Semicolon Kurang dari Sama dengan Lebih dari Backslash (simbol pembagian integer) Tipe Data Setiap variabel pada Bascom mempunyai tipe data yang menunjukkan kapasitas dan jenis data yang dapat disimpan pada variabel tersebut. Hal ini berpengaruh pada seberapa besar memori yang diperlukan untuk menyimpan variabel tersebut. Tabel 6.2 menunjukkan tipe data pada Bascom beserta ukuran dan rentangnya. 104

Tabel 6 2 Tipe data pada Bascom Tipe data Ukuran (Byte) Rentang Bit 1/8 0 atau 1 Byte 1 0 - 255 Integer 2 -32768 ~ +32767 World 2 0 ~ 65535 Long 4 -2147483648 ~ +2147483647 Single 4 String Maks 254 byte Variabel Variabel adalah simbol yang digunakan untuk mewakili suatu nilai. Variabel digunakan sebagai tempat penyimpanan data atau penampung data sementara. Variabel numerik hanya dapat diisi nilai numerik (bit, byte, integer, word, long, dan single). Isi dari suatu variabel numerik dapat berupa:  suatu nilai konstan A=5 C = 1.1  nilai variabel numerik lain A=B  nilai yang didapat dengan mengkombinasikan variabel, konstan, dan operator Temp = A + 5 Pada Bascom terdapat beberapa aturan mengenai penamaan suatu variabel, yaitu:  nama suatu variabel maksimum terdiri atas 32 karakter dan dapat berupa huruf ataupun angka,  karakter pertama variabel haruslah berupa huruf,  nama variabel tidak boleh menggunakan kata-kata yang dipergunakan Bascom sebagai perintah, pernyataan, register dan operator (misal AND, OR, DIM, P1 TIMER0 dan lain sebagainya) Sebelum digunakan suatu variabel haruslah dideklarasikan terlebih dahulu 105

tipe data yang dipergunakan dengan menggunakan pernyataan DIM DIM A As Byte DIM Nama1 As Byte, Nama2 As Integer DIM Kata As String*10 Selain menggunakan DIM, variabel dapat juga ditentukan tipe datanya menggunakan DEFBYTE, DEFINT, DEFBIT, dan DEFWORD DEFBYTE A DEFWORD B;C;D Suatu variabel dapat mempunyai nama lain atau alias. Umumnya alias digunakan untuk mengganti variabel standar dengan nama yang lebih mudah diingat. Hal ini akan berguna pada saat membuat program yang panjang dan kompleks, jika terdapat perubahan penggunaan pin atau port, cukup diganti pada pernyataan Alias. Saklar1 Alias PB.0 LED1 Alias PD.0 Konstanta Konstanta adalah variabel yang mempunyai nilai konstan selama program dijalankan. Untuk mendeklarasikan suatu konstanta dapat digunakan dua cara, yaitu menggunakan Dim atau Const Dim A As Const 5 Dim B1 As Const &B1001 Const Cbyte = &HF Const Cint = -1000 Const Csingle = 1.1 Const Cstring = \"tes\" Larik Larik atau array adalah kumpulan variabel dengan nama dan tipe data yang sama. Untuk membedakan satu variabel dengan variabel lainnya digunakan indeks. Indeks haruslah berupa angka dengan tipe data byte, integer atau word, dengan nilai minimal 1 (bukan 0). Pendeklarasian larik mirip seperti variabel biasa, hanya ditambahkan jumlah komponen lariknya. Dim a(10) as byte 106

Sistem Bilangan Pada pemrograman mikrokontroler terdapat 3 sistem bilangan yang sering digunakan, yaitu desimal (basis 10), biner (basis 2), dan heksadesimal (basis 16). Cara penulisan bilangan pada Bascom disesuaikan dengan sistem bilangan yang digunakan, yaitu:  Untuk bilangan desimal tidak didahului angka ataupun huruf lain,  Untuk bilangan biner didahului dengan &B,  Untuk bilangan heksadesimal didahului dengan &H. Contoh : 240 (bilangan desimal), &B11110000 (bilangan biner), &HF0 (bilangan heksadesimal). Operator Operator digunakan untuk melakukan operasi terhadap bilangan. Pada Bascom operator dibedakan menjadi operator aritmetik, operator relasional, dan operator logika. Operator aritmatik adalah operator yang digunakan dalam kalkulasi, yaitu + (penjumlahan), - (pengurangan), * (perkalian, / (pembagian), \\ (pembagian integer), MOD (modulo = sisa dari pembagian). Operator relasional digunakan untuk membandingkan dua nilai, yang memberikan hasil benar (1) atau salah (0) dan dapat digunakan untuk membuat keputusan. Tabel 6 3 Macam Operator Relasi pada Bascom Operator Relasi Pernyataan = Sama dengan X=Y <> Tidak sama dengan X<>Y < X<Y > Lebih kecil X>Y <= Lebih besar X<=Y Lebih kecil atau sama >= X>=Y dengan Lebih besar atau sama dengan Operator logika digunakan untuk menguji suatu pola bit tertentu, manipulasi bit atau operator Boolean. Misal operator AND dapat digunakan untuk mengabaikan semua bit dalam suatu byte kecuali satu bit untuk memantau status bit tersebut. 107

Tabel 6 4 Macam Operator Logika pada Bascom Operator Makna NOT Kompklemen / Inverter AND OR Konjungsi (dan) Disjungsi (atau) EX-OR EXclusive OR Pernyataan Bersyarat Pada Bascom terdapat beberapa pernyataan bersyarat yang sering digunakan yaitu If – Then, If – Then – Elseif, dan Select – Case Syntaksis If – Then If <syarat> Then <Pernyataan 1> <Pernyataan 2> Else <Pernyataan 3> <Pernyataan 4> End If Sintaksis If – Then – Elseif If <syarat1> Then <Pernyataan 1> <Pernyataan 2> Elseif <syarat2>Then <Pernyataan 3> <Pernyataan 4> Else <Pernyataan 5> <Pernyataan 6> End If Sintaksis Select – Case Select Case < Variabel> Case < Nilai 1> : <Pernyataan 1> Case < Nilai 2> : <Pernyataan 2> Case Else : <Pernyataan 3> End Select 108

Pernyataan Perulangan (Loop) Loop adalah suatu perulangan terhadap perintah atau instruksi sampai mencapai keadaan tertentu (jumlah perulangan tersebut dapat diketahui). Fungsi dari loop sendiri banyak sekali, dan dapat menghemat dalam penulisan program karena program yang sama dapat dilakukan dengan beberapa perintah dan kemudian diulang-ulang. Terdapat 3 pernyataan perulangan yaitu Do-Loop, While-Wend, dan For-Next. Sintaksis Do – Loop Do <Pernyataan 1> <Pernyataan 2> Loop Sintaksis While – Wend While <Syarat> <Pernyataan 1> <Pernyataan 2> Wend Sintaksis For – Next FOR <Variabel> = <Nilai Awal> TO/DOWNTO <Nilai Akhir> <Pertambahan/Pengurangan> <Pernyataan 1> <Pernyataan 2> Exit 109

D. Aktifitas Pembelajaran 1. Selama proses pembelajaran, Anda hendaknya mengidentifikasi dasar-dasar pemrograman. 2. Sebagai tugas praktek mandiri, buatlah uraian fungsi dan sintak instruksi bahasa pemrograman dan penggunaan dasar-dasar teknik pemrograman! 3. Untuk menambah wawasan dan informasi anda,akses salah satu publikasi di website yang berkaitan tentang dasar-dasar pemrograman dan jawablah pertanyaan berikut ini: a. Periksa fungsi dan sintak instruksi bahasa pemrograman ! b. Tentukan penggunaan dasar-dasar teknik pemrograman! 4. Amati lingkungan bengkel/laboratorium anda, apakah mempunyai modul fungsi dan sintak instruksi bahasa pemrograman dan penggunaan dasar- dasar teknik pemrograman serta alat bantu mengajarnya? Jika tidak ada, peluang apa saja yang bisa anda lakukan untuk menerapkannya ? E. Latihan/Tugas 1. Mengapa penggunaan dasar-dasar pemrograman itu penting? 2. Sebutkan hal-hal yang perlu diperhatikan dalam memeriksa fungsi dan sintak instruksi bahasa pemrograman ! F. Rangkuman 1. Penggunaan dasar-dasar pemrograman Pemrograman adalah proses menulis, menguji dan memperbaiki (debug), dan memelihara kode yang membangun sebuah program komputer. Kode ini ditulis dalam berbagai bahasa pemrograman. Tujuan dari pemrograman adalah untuk memuat suatu program yang dapat melakukan suatu perhitungan atau 'pekerjaan' sesuai dengan keinginan si pemrogram (programmer). Untuk dapat melakukan pemrograman, diperlukan keterampilan dalam algoritma, logika, bahasa pemrograman, dan di banyak kasus, pengetahuan-pengetahuan lain seperti matematika. Pemrograman harus memenuhi beberapa sifat mendasar. Properti berikut adalah di antara yang paling relevan: 110

 efisiensi / kinerja, jumlah sumber daya sistem program yang mengkonsumsi waktu proses, ruang memori, perangkat bawah seperti disk, bandwidth jaringan dan bahkan sampai batas tertentu interaksi dari pemakai: semakin sedikit, semakin baik,  reliabilitas, seberapa sering hasil dari sebuah program sudah benar. Hal ini tergantung pada kebenaran konseptual algoritma, dan pemrograman minimisasi kesalahan, seperti kesalahan dalam manajemen sumber daya dan kesalahan logika,  kekokohan, seberapa baik program mengatasi masalah yang bukan karena kesalahan programmer,  kegunaan, kemudahan menggunakan program untuk tujuan tertentu, atau dalam beberapa kasus bahkan tujuan tak terduga,  portabilitas, tergantung pada perbedaan-perbedaan dalam fasilitas pemrograman yang disediakan oleh platform yang berbeda, termasuk hardware dan sistem operasi sumber daya, perilaku yang diharapkan dari hardware dan sistem operasi, dan ketersediaan platform compiler tertentu untuk bahasa dari source code,  kemampu-rawatan, kemudahan dengan sebuah program yang dapat dimodifikasi oleh pengembang sekarang atau pada masa mendatang dalam rangka untuk membuat perbaikan atau penyesuaian, memperbaiki keamanan, atau disesuaikan dengan lingkungan baru.  Bahasa pemrograman merupakan sebuah cara untuk berkomunikasi dengan mesin yang sedang dituju dan diajak berkomunikasi adalah komputer. Begitu banyak aplikasi memanfaatkan komputer, terutama dalam pemanfaatan kemampuan chip mikroprosesor di dalamnya yang dapat melakukan komputasi sangat cepat, dapat bekerja sendiri dengan diprogram, dan dilengkapi memori untuk menyimpan begitu banyak data. Seiring dengan perkembangan zaman, semakin luaslah kebutuhan akan kemampuan seperti yang dimiliki oleh komputer, sehingga menyebabkan munculnya terobosan-terobosan baru yang salah satunya adalah dibuatnya chip mikrokontroler.  Terdapat beberapa keunggulan yang diharapkan dari alat-alat yang berbasis mikrokontroler (microcontroller-based solutions): 111

 kehandalan tinggi (high reliability) dan kemudahan integrasi dengan komponen lain (high degree of integration),  ukuran yang semakin dapat diperkecil (reduced in size),  penggunaan komponen dipersedikit (reduced component count) yang juga akan menyebabkan biaya produksi dapat semakin ditekan (lower manufacturing cost),  waktu pembuatan lebih singkat (shorter development time) sehingga lebih cepat pula dijual ke pasar sesuai kebutuhan (shorter time to market),  konsumsi daya yang rendah (lower power consumption). 2. Fungsi dan sintak instruksi bahasa pemrograman Hal-hal yang perlu diperhatikan dalam memeriksa fungsi dan sintak instruksi bahasa pemrograman adalah:  kontruksi bahasa BASIC pada BASCOM-AVR, bahwa setiap bahasa pemprograman mempunyai standar penulisan program. Konstruksi dari program bahasa BASIC harus mengikuti aturan,  pengarah preprosesor, bahasa BASIC yang memerintahkan untuk menyisipkan file lain,  karakter pada Bascom, yang dipergunakan untuk membentuk label, keyword, variabel, dan operator, yang kesemuanya akan membentuk suatu program,  Tipe Data, bahwa setiap variabel pada Bascom mempunyai tipe data yang menunjukkan kapasitas dan jenis data yang dapat disimpan pada variabel tersebut,  variabel, adalah simbol yang digunakan untuk mewakili suatu nilai,  konstanta, adalah variabel yang mempunyai nilai konstan selama program dijalankan,  larik atau array adalah kumpulan variabel dengan nama dan tipe data yang sama,  Sistem Bilangan, bahwa pada pemrograman mikrokontroler terdapat 3 sistem bilangan yang sering digunakan, yaitu desimal (basis 10), biner (basis 2), dan heksadesimal (basis 16), 112

 operator, digunakan untuk melakukan operasi terhadap bilangan,  Pernyataan Bersyarat, Pada Bascom terdapat beberapa pernyataan bersyarat yang sering digunakan yaitu If – Then, If – Then – Elseif, dan Select – Case,  Pernyataan Perulangan (Loop), adalah suatu perulangan terhadap perintah atau instruksi sampai mencapai keadaan tertentu (jumlah perulangan tersebut dapat diketahui). G. Umpan Balik dan Tindak Lanjut 1. Umpan Balik Setelah mempelajari kegiatan pembelajaran ini, periksa penguasaan pengetahuan dan keterampilan anda menggunakan daftar periksa di bawah ini: No Indikator Ya Tidak Bukti Memeriksa fungsi dan sintak 1. instruksi bahasa pemrograman Menentukan penggunaan dasar- 2. dasar teknik pemrograman 2. Tindak Lanjut a. Buat rencana pengembangan dan implementasi di lingkungan laboratoriumkerja anda. b. Gambarkan suatu situasi atau isu di dalam laboratorium anda yang mungkin dapat anda ubah atau tingkatkan dengan mengimplementasikan sebuah rencana tindak lanjut. c. Apakah judul rencana tindak lanjut anda? d. Apakah manfaat/hasil dari rencana aksi tindak lanjut anda tersebut? e. Uraikan bagaimana rencana tindak lanjut anda memenuhi kriteria SMART (spesifik, dapat diukur, dapat dicapai, relevan, rentang/ketepatan waktu). 113

KEGIATAN PEMBELAJARAN 7 : CARA AKSES INTERFACE A. Tujuan Setelah menyelesaikan materi ini, peserta diharapkan dapat; 1. menemukan prosedur akses interface melalui Bahasa pemrograman sesuai prosedur dengan benar, 2. menemukan kesalahan secara sistematis prosedur akses interface melalui Bahasa pemrograman sesuai prosedur dengan benar. B. Indikator Pencapaian Kompetensi 1. Menemukan prosedur akses interface melalui Bahasa pemrograman. 2. Menemukan kesalahan secara sistematis prosedur akses interface melalui Bahasa pemrograman. C. Uraian Materi 1. Prosedur akses interface melalui Bahasa pemrograman dengan USB asp USB asp adalah salah satu downloader yang support untuk atmel mikrokontroller dan yang pada penggunaannya memakai jalur komunikasi melalui “port usb”. Dahulu pada era tahun 2000 ke bawah (era 90‟an) proses mendownload suatu program (firmware) ke mikrokontroller masih menggunakan / melalui “port parallel (DB25)” tepatnya yang biasa digunakan untuk mesin printer pada era tersebut. Tapi seiring berjalannya waktu kalau diamati memasuki tahun ke tahun perkembangan teknologi komputer semakin maju dan pesat, tentunya dalam hal kecanggihan yang semakin hebat. Hampir segala kebutuhan pada komputer dibuat semudah / sesimple mungkin. salah satu contoh kecilnya misalnya proses akses yaitu mengirim, menyalin, menyimpan data, dan sebagainya. Itu semua sudah bisa diakses melalui jalur komunikasi yang sifatnya universal atau yang biasa dikenal dengan “port usb” yang dimensinya cukup kecil. 114

Pada mesin printer sekarang pun aksesnya sudah tidak melaui “port parallel” lagi tetapi sudah melalui “port usb”. Perkembangan mesin printer akses melalui “port usb”dikarenakan pengaruh pada produksi komputer saat ini. Artinya coba saja perhatikan produk komputer/leptop keluaran sekarang, sudah tidak melihat lagi “port parallel” dan bahkan “port serial (DB9)” pun menyusul juga ketiadaannya. Dikarenakan mungkin hampir semua akses ke komputer cukup hanya melalui “port usb” yang sifatnya sangat universal. Jadi karena komputer / laptop keluaran sekarang sudah tidak ada lagi port parallel nya, akhirnya untuk menyesuaikan perkembangan komputer saat ini para tenaga ahli di bidang mikrokontroller mendesign / membuat suatu downloader yang bisa digunakan melalui “port usb”. Dan akhirnya sekarang sudah cukup banyak bermunculan jenis-jenis downloader avr usb. Salah satu yang terkenal dari beberapa downloader avr usb adalah USBasp. Downloader dalam dunia mikrokontroler dikenal sebagai alat yang dapat digunakan untuk mengisi (flashing) program ke dalam chip mikrokontroler. Downloader merupakan alat atau tools wajib yang harus dimiliki ketika ingin bekerja dengan mikrokontroler. Downloader mikrokontroler banyak jenisnya, tergantung merk mikrokontroler apa yang digunakan. Masing-masing pabrik mikrokontroler biasanya menjual programmernya secara terpisah. Anda dapat membelinya sesuai dengan chip mikrokontroler apa yang Anda gunakan. Downloader mikrokontroler dapat juga dibuat sendiri. Banyak sekali rangkaian downloader mikrokontroler yang dapat dilihat di internet. Salah satunya adalah downloader mikrokontroler AVR yang bernama USBasp. USBasp merupakan salah satu downloader mikrokontroler AVR yang sifatnya open source. Anda dapat mendownload rangkaiannya secara gratis. Anda juga dapat membuat sendiri rangkaian downloadernya tanpa harus membayar lisensi ke pembuat rangkaiannya. 115

Gambar 7 1 Rangkaian Downloader Gambar 7 2 Kit PCB Downloader 116

Ada beberapa pertimbangan yang harus dilakukan ketika ingin membuat rangkaian downloader mikrokontroler sendiri, beberapa pertimbangan tersebut adalah sebagai berikut : a. Rangkaian downloader mikrokontroler harus memiliki koneksi ke komputer melalui port USB. Hal ini akan memudahkan jika menggunakan laptop, dimana port komunikasi data yang tersedia hanya port USB. b. Rangkaian downloader mikrokontroler harus memiliki driver yang suport multiplatform Operating System (OS). Mungkin saja suatu saat tidak lagi menggunakan OS Windows sebagai OS utama. c. Support software Graphical User Interface (GUI). Hal ini bertujuan untuk kemudahan dalam penggunaan downloader yang dibuat. Lebih nyaman menggunakan software GUI dibandingkan harus mengetikkan perintah pada command prompt untuk mengisi (flashing) program. GUI merupakan salah satu model interaksi antara mikrokontroler dan komputer. GUI berfungsi untuk memudahkan pengguna dalam menggunakan suatu aplikasi komputer, selain itu juga untuk memperindah tampilan suatu aplikasi. GUI adalah tipe antarmuka yang digunakan oleh pengguna untuk berinteraksi dengan sistem operasi melalui gambar-gambar grafik, ikon, menu, dan menggunakan perangkat penunjuk ( pointing device) seperti mouse atau track ball. Elemen-elemen utama dari GUI bisa diringkas dalam konsep WIMP ( window, icon, menu, pointing device). d. Downloader USBasp pada gambar di atas belum siap untuk digunakan, kenapa? Karena IC ATMega8 yang terpasang di PCB downloader belum di program atau belum diisi firmware. Sementara agar PCB di atas dapat berfungsi sebagai downloader, firmware harus terisi dulu pada IC ATMega8. Berikut ini ditunjukkan prosedur mengahtifkan Driver USBASP pada Windows 7 yaitu: a. Buka Device Manager dengan cara klik kanan pada My Computer kemudian pilih Manage. b. Selanjutnya klik Device Manager, setelah itu cari Other devices dan klik dua kali, maka di situ akan terdapat USBasp yang bertanda seru (!). Hal itu sebagai pertanda bahwa device USBasp belum dikenali. Nah supaya bisa 117

dikenali maka caranya ialah dengan menginstall driver USBasp-nya. Selanjutnya klik kanan pada tulisan USBasp dan pilih Update Driver Software. c. Pilih \"Browse my computer for driver software\". Dan selanjutnya pilih “Browse”. Arahkan pada CD, cari folder DRIVER_USBASP001  usbasp- windriver.2011-05-28  libusb_1.2.4.0  lalu klik “Ok”. d. Selanjutnya klik “Next”. Jika tampil gambar Windows security, pilih \"Install this driver software anyway\" Jika proses driver berhasil makakotak dialog “Update Driver Software – USBasp” “Windows has successfully update your driver software”. Kemudian klik “Finish”. Maka Downloader sudah bisa digunakan. 2. Kesalahan secara sistematis prosedur akses interface melalui Bahasa pemrograman. Dalam beberapa kasus untuk Operating System Windows 7 dengan merk Notebook tertentu driver ini tidak dikenali, maka bisa pilih driver yang lain. Demikian juga untuk Operating System yang lain seperti Windows XP, Windows 8 tentu memerlukan prosedur yang berbeda, sehingga pengguna OS tersebut harus mencari informasi agar Downloader dapat berfungsi seperti yang diharapkan. 118

D. Aktifitas Pembelajaran 1. Selama proses pembelajaran, Anda hendaknya mengidentifikasi cara akses interface. 2. Sebagai tugas praktek mandiri, buatlah uraian tentang prosedur akses interface melalui Bahasa pemrograman dan kesalahan secara sistematis prosedur akses interface melalui Bahasa pemrograman! 3. Untuk menambah wawasan dan informasi anda,akses salah satu publikasi di website yang berkaitan tentang cara akses interface dan jawablah pertanyaan berikut ini: a. Temukan prosedur akses interface melalui Bahasa pemrograman! b. Temukan kesalahan secara sistematis prosedur akses interface melalui Bahasa pemrograman! 4. Amati lingkungan bengkel/laboratorium anda, apakah sudah mempunyai modul akses interface melalui Bahasa pemrograman dan alat bantu mengajarnya? Jika tidak ada, peluang apa saja yang bisa anda lakukan untuk menerapkannya? E. Latihan/Tugas 1. Tunjukkan prosedur mengahtifkan Driver USBASP pada Windows 7! 2. Tunjukkan kesalahan secara sistematis prosedur akses interface melalui bahasa pemrograman! F. Rangkuman 1. Prosedur akses interface melalui bahasa pemrograman Downloader dalam dunia mikrokontroler dikenal sebagai alat yang dapat digunakan untuk mengisi (flashing) program ke dalam chip mikrokontroler. Pertimbangan dalam membuat downloader adalah: a. Rangkaian downloader mikrokontroler harus memiliki koneksi ke komputer melalui port USB. Hal ini akan memudahkan jika menggunakan laptop, dimana port komunikasi data yang tersedia hanya port USB. 119

b. Rangkaian downloader mikrokontroler harus memiliki driver yang suport multiplatform Operating System (OS). c. Support software Graphical User Interface (GUI) bertujuan untuk kemudahan dalam penggunaan downloader yang dibuat. GUI merupakan salah satu model interaksi antara mikrokontroler dan komputer. Adapun prosedur mengahtifkan Driver USBASP pada Windows 7 yaitu: a. Buka Device Manager dengan cara klik kanan pada My Computer kemudian pilih Manage. b. Selanjutnya klik Device Manager, setelah itu cari Other devices dan klik dua kali, maka di situ akan terdapat USBasp yang bertanda seru (!). Hal itu sebagai pertanda bahwa device USBasp belum dikenali. Nah supaya bisa dikenali maka caranya ialah dengan menginstall driver USBasp-nya. Selanjutnya klik kanan pada tulisan USBasp dan pilih Update Driver Software. c. Pilih \"Browse my computer for driver software\". Dan selanjutnya pilih “Browse”. Arahkan pada CD, cari folder DRIVER_USBASP001  usbasp-windriver.2011-05-28  libusb_1.2.4.0  lalu klik “Ok”. d. Selanjutnya klik “Next”. Jika tampil gambar Windows security, pilih \"Install this driver software anyway\" e. Jika proses driver berhasil makakotak dialog “Update Driver Software – USBasp” “Windows has successfully update your driver software”. Kemudian klik “Finish”. Maka Downloader sudah bisa digunakan. 2. Kesalahan secara sistematis prosedur akses interface melalui bahasa pemrograman Dalam beberapa kasus untuk Operating System Windows 7 dengan merk Notebook tertentu driver ini tidak dikenali, maka bisa pilih driver yang lain. Demikian juga untuk Operating System yang lain seperti Windows XP, Windows 8 tentu memerlukan prosedur yang berbeda, sehingga pengguna OS tersebut harus mencari informasi agar Downloader dapat berfungsi seperti yang diharapkan. 120

G. Umpan Balik dan Tindak Lanjut 1. Umpan Balik Setelah mempelajari kegiatan pembelajaran ini, periksa penguasaan pengetahuan dan keterampilan anda menggunakan daftar periksa di bawah ini: No Indikator Ya Tidak Bukti Menemukan prosedur akses 1. interface melalui bahasa pemrograman Menemukan kesalahan secara 2. sistematis prosedur akses interface melalui bahasa pemrograman 2. Tindak Lanjut a. Buat rencana pengembangan dan implementasi di lingkungan laboratoriumkerja anda. b. Gambarkan suatu situasi atau isu di dalam laboratorium anda yang mungkin dapat anda ubah atau tingkatkan dengan mengimplementasikan sebuah rencana tindak lanjut. c. Apakah judul rencana tindak lanjut anda? d. Apakah manfaat/hasil dari rencana aksi tindak lanjut anda tersebut? e. Uraikan bagaimana rencana tindak lanjut anda memenuhi kriteria SMART (spesifik, dapat diukur, dapat dicapai, relevan, rentang/ketepatan waktu). 121

KEGIATAN PEMBELAJARAN 8 : PROGRAM APLIKASI PADA SISTEM KONTROL ELEKTRONIKA A. Tujuan Setelah menyelesaikan materi ini, peserta diharapkan dapat; 1. merencanakan desain program aplikasi sesuai prosedur dengan benar, 2. merealisasikan program aplikasi sesuai prosedur dengan benar, 3. melakukan proses pengujian program aplikasi sesuai prosedur dengan benar. B. Indikator Pencapaian Kompetensi 1. Merencanakan desain program aplikasi. 2. Merealisasikan program aplikasi. 3. Melakukan proses pengujian program aplikasi. C. Uraian Materi 1. Desain program aplikasi Hal yang harus diperhatikan sebelum membuat program yaitu: a. Harus mengetahui kerangka / sistem penulisan program.  Pemanggilan header #include <……………….h> Ini memerintahkan compiler untuk membaca program / file yang telah di include-kan kedalam program.  Penulisan variable Variable adalah tempat untuk penyimpanan dan mengakses data yang mewakili memori dalam microcontroller. Variable harus dideklarasikan dengan tipe data beserta nama variable. Berikut adalah table tipe data: 122

Tabel 8 1 Tipe Data Contoh penulisan variable Char a; nama variable adalah a dan tipe datanya char atau mempunyai range penyimpanan data -128 sampai 127.  Fungsi utama (main) - Inisialisasi Ini digunakan untuk mengaktifkan sebuah fungsi dalam suatu register pada microcontroller. Contoh untuk mengaktifkan PORTx menjadi input atau output. DDRx = merupakan fungsi register yang digunakan untuk menjadikan PORTx menjadi input atau output. Dengan memberikan nilai 1 = menjadikan bit menjadi fungsi output. Dengan memberikan nilai 0 = menjadikan bit menjadi fungsi input. Contoh penulisan  DDRA=0b11111111; menjadikan PORTA dari bit 0 hingga bit 7 menjadi fungsi output  DDRA=0b00000000; menjadikan PORTA dari bit 0 hingga bit 7 menjadi fungsi input  DDRA=0b11110000; menjadikan PORTA dari bit 0 hingga bit 3 menjadi fungsi input, menjadikan PORTA dari bit 4 hingga bit 7 menjadi fungsi Output, Keterangan tambahan, jika PORTx digunakan sebagai input akan tetapi fungsi register yang digunakan adalah sebagai output maka 123

microcontroller tidak akan merespon masukan input yang diterima di PORTx. Dan sebaliknya Keterangan tambahan, jika PORTx digunakan sebagai output akan tetapi fungsi register yang digunakan adalah sebagai input maka microcontroller tidak akan merespon data output yang dikirim di PORTx.  Pembuatan sub program / fungsi Fungsi yang telah di-prototype-kan ditulis diluar main, ini untuk memudahkan programmer dalam penulisan program yang besar atau mempersingkat program jika selalu ditulis terus menerus. Contoh 1: void tampilan (void){ //sub program tampilan PORTA=0B11110000; //isi sub program PORTB=0B00001111; //isi sub program PORTC=0B10101010; //isi sub program PORTD=0B01010101; //isi sub program } Contoh 2: //sub program tunda // pengulangan 1000x void tunda (void){ // pemanggilan delay 1ms for (a=0; a<1000; a++){ _delay_ms(1); } } b. mengetahui syntax atau tata cara penulisan bahasa C avr gcc.  Algoritma pemograman Pernyataan berkondisi dan Pengulangan if else: digunakan untuk menyeleksi satu atau beberapa kondisi if ( [persyaratan] ) { [statement1]; [statement2]; ... } else { [statement3]; [statement4]; ... } 124

for: digunakan untuk pengulangan dengan jumlah yang sudah diketahui – berapa kali diulang. for ( [nilai awal] ; [syarat] ; [operasi nilai] ) { [statement1]; [statement2]; ... } while: digunakan untuk pengulangan (looping) jika dan sealama memenuhi suatu kondisi masih dipenuhi (pengulangan selama benar) while ( [persyaratan] ) { [statement1]; [statement2]; ... } do while: digunakan untuk pengulangan jika dan selama memenuhi syarat tertentu, namun min 1 kali do { [statement1]; [statement2]; ... } while ([persyaratan]) switch case: digunakan untuk seleksi dengan banyak kondisi switch ( [nama variabel] ) { case [nilai1]: [statement1]; break; case [nilai2]: [statement2]; break; ... } 125

Operasi Logika dan Bilangan Biner Operator Logika atau dalam perbandingan AND: && NOT: ! OR : || Biner dalam aritmatika AND: & >= OR : | XOR : ^ Shift right: >> Shift left : << Lebih besar sama dengan: Lebih kecil/besar: <,> Lebih kecil sama dengan : <= Kerangka dasar pemogramman #include <avr/io.h> //pemanggilan header io void main (void){ while (1){ //tulis program dibawah ini// } } c. Kerangka / sistem penulisan program #include <avr/io.h> //pemanggilan header io #include <util/delay.h> //pemanggilan header delay int a; //variable a dengan type data int //membuat sub program delay 1 detik// void tunda (void){ for (a=0; a<1000; a++){ // pengulangan 1000x _delay_ms(1); // pemanggilan delay 1ms (Berada didalam header delay) } } //end sub program delay// void main (void){ DDRA=0b11111111; // inisialisasi PORTA dijadikan output while (1){ //tulis program dibawah sisi kalian disini// PORTA=0B00000000; //Led PORTA mati semua tunda(); //panggil sub tunda selama 1 detik PORTA=0B00000001; //Led PORTA hidup semua tunda(); //panggil sub tunda selama 1 detik } } 126

2. Program Aplikasi dan Proses Pengujiannya Dalam merealisasikan program aplikasi tentu dilengkapi rangkaian pendukung berupa rangkaian input biasanya berupa sakelar/switch maupun rangkaian output berupa LED display, seven segmen, LCD dan lain-lain. Berikut ini ditunjukkan beberapa program aplikasi mikrokontroler .` a. Program Aplikasi blink 1 LED) #include <avr/io.h> //pemanggilan header io #include <util/delay.h> //pemanggilan header delay //membuat sub delay 1 detik// // pengulangan 1000x void tunda (void){ // pemanggilan delay 1ms. int a; for (a=0; a<1000; a++){ _delay_ms(1); } } //end sub delay// void main (void){ // PORTA dijadikan output DDRA=0b11111111; while (1){ //Led PORTA mati semua PORTA=0B00000000; //panggil sub tunda selama 1 detik tunda(); //Led PORTA hidup semua PORTA=0B00000001; //panggil sub tunda selama 1 detik tunda(); } } b. Program Aplikasi blink 1 PORT LED #include <avr/io.h> //pemanggilan header io #include <util/delay.h> //pemanggilan header delay //membuat sub delay 1 detik// // pengulangan 1000x void tunda (void){ // pemanggilan delay 1ms. int a; for (a=0; a<1000; a++){ _delay_ms(1); } } //end sub delay// void main (void){ 127

DDRA=0b11111111; // PORTA dijadikan output while (1){ //Led PORTA mati semua PORTA=0B00000000; //panggil sub tunda selama 1 detik tunda(); //Led PORTA hidup semua PORTA=0B11111111; //panggil sub tunda selama 1 detik tunda(); } } c. Program Aplikasi Blink LED Acak #include <avr/io.h> //pemanggilan header io (wajib hafal) #include <util/delay.h> //pemanggilan header delay (wajib Hafal) //membuat sub delay 1 detik// // pengulangan 1000x void tunda (void){ // pemanggilan delay 1ms. int a; for (a=0; a<1000; a++){ _delay_ms(1); } } //end sub delay// void main (void){ // PORTA dijadikan output DDRA=0b11111111; while (1){ //Led PORTA 10101010 PORTA=0B10101010; //panggil sub tunda selama 1 detik tunda(); //Led PORTA 01010101 PORTA=0B01010101; //panggil sub tunda selama 1 detik tunda(); } } 128

D. Aktifitas Pembelajaran 1. Selama proses pembelajaran, peserta hendaknya mengidentifikasi program aplikasi pada sistim kontrol elektronika. 2. Buatlah program aplikasi sekaligus lakukan proses pengujiannya pada alat bantu praktek mikrokontroller untuk penerapan sebagai berikut: a. Running LED b. Counter 3. Untuk menambah wawasan dan informasi anda, akses salah satu publikasi di website yang berkaitan tentang program aplikasi pada sistim kontrol elektronika dan jawablah pertanyaan berikut ini: a. Rencanakan desain program aplikasi (bebas)! b. Realisasikan program aplikasi tersebut di atas! c. Lakukan proses pengujian program aplikasi tersebut di atas! 4. Amati lingkungan bengkel/laboratorium anda, apakah mempunyai program aplikasi pada sistim kontrol elektronika dan alat bantu mengajarnya? Jika tidak ada, peluang apa saja yang bisa anda lakukan untuk menerapkannya? E. Latihan/Tugas 1. Sebutkan hal-hal yang harus diperhatikan sebelum membuat program aplikasi ! 2. Sebutkan beberapa contoh hal-hal yang perlu diperhatikan dalam pembuatan program aplikasi! F. Rangkuman 1. Desain program aplikasi Hal-hal yang harus diperhatikan sebelum membuat program yaitu: a. Harus mengetahui kerangka / sistem penulisan program seperti pemanggilan header, penulisan variable, fungsi utama (main), dan pembuatan sub program / fungsi, b. mengetahui syntax atau tata cara penulisan bahasa C avr gcc, c. membuat kerangka / sistem penulisan program. 129

2. Program aplikasi Hal-hal yang perlu diperhatikan dalam pembuatan program aplikasi seperti pemanggilan header io, pemanggilan header delay, membuat sub delay, pengulangan, pemanggilan delay, PORT yang akan dijadikan output, dan lain lain. G. Umpan Balik dan Tindak Lanjut 1. Umpan Balik Setelah mempelajari kegiatan pembelajaran ini, periksa penguasaan pengetahuan dan keterampilan anda menggunakan daftar periksa di bawah ini: No Indikator Ya Tidak Bukti 1. Merencanakandesainprogramaplikasi 2. Merealisasikan program aplikasi 3. Melakukan proses pengujian program aplikasi 2. Tindak Lanjut a. Buat rencana pengembangan dan implementasi di lingkungan laboratoriumkerja anda. b. Gambarkan suatu situasi atau isu di dalam laboratorium anda yang mungkin dapat anda ubah atau tingkatkan dengan mengimplementasikan sebuah rencana tindak lanjut. c. Apakah judul rencana tindak lanjut anda? d. Apakah manfaat/hasil dari rencana aksi tindak lanjut anda tersebut? e. Uraikan bagaimana rencana tindak lanjut anda memenuhi kriteria SMART (spesifik, dapat diukur, dapat dicapai, relevan, rentang/ketepatan waktu). 130

KUNCI JAWABAN TUGAS / LATIHAN A. Kegiatan Pembelajaran 1 1. Sebutkan tiga bagian pokok pada Mikroprosesor! Jawab : a. Pengontrol, b. Penyimpan, c. Operasi. 2. Jelaskan fungsi ALU (Arithmetic Logic Unit) pada mikroprosesor! Jawab : Untuk melaksanakan operasi aritmatika (penjumlahan dan pengurangan) serta untuk memanipulasi data pada operasi logika (AND, OR dan EX-OR) 3. Jelas fungsi dari pengontrol! Jawab : a. Untuk memberikan komando pada semua komponen (blok kapan komponen itu harus melaksanakan tugasnya dan dengan impuls apa yang digunakan. b. Untuk mensinkronkan kerja mikroprosesor. 4. Sebutkan operasi apa saja yang ada pada ALU! Jawab : a. Operasi Aritmetik, b. Operasi Logik. 5. Sebutkan 3 buah rangkaian logika yang ada pada ALU! Jawab : a. Rangkaian logika AND, c. Rangkaian logika EX – OR. b. Rangkaian logika OR, 131

6. Gambarkan secara blok dari ALU! Jawab: Gambar blok dari ALU: 132

B. Kegiatan Pembelajaran 2 1. Rumus kapasitas penyimpan 2n+1 = 2( 9+1 ) = 210 = 1024 lokasi. 2. Jelaskan Pin - Pin dari Konfigurasi PPI 8255 dengan fungsinya masing- masing. Pin Names D7 - D0 Data Bus (Bi-Directional) RESET Reset Input CS Chip Select RD Read Input WR Write Input Port Adress A0,A1 Port A (BIT) PA7-PA0 Port B (BIT) PB7-PB0 Port C (BIT) PC7-PC0 +5 Volts Vcc 0 Volt GND a. Pin - Pin Saluran Data :  Bus Data : D7 - D0  Bus Port A : PA7 - PA0  Bus Port B : PB7 - PB0  Bus Port C : PC7 - PC0 b. Pin - Pin Saluran Pengontrol :  Baca (Read) : RD  Tulis (Write) : WR  Reset 3. Apa fungsi CS (Chip Select) CS ( Chip Select ) sebagai pemilih Chip : Untuk mengaktifkan Chip, bekerja dengan Logika Low (“0”). 133

C. Kegiatan Pembelajaran 3 1. Algoritma merupakan sebuah ilmu yang terkait dengan penyelesaian masalah, ilmu ini berbasis pada logika pikir untuk melakukan solusi terhadap suatu permasalahan melalui tahapan solusi sekuensial.. 2. Kriteria itu adalah masukan, keluaran, batasan, arah, dan efisiensi. 3. Salah satu kegunaan flowchart adalah untuk memperinci tahap-tahap rangkaian dan suatu proses pekerjaan. 4. Merupakan simbol Display, berguna untuk menampilkan keluaran dalam layar monitor/displai. 5. 134

D. Kegiatan Pembelajaran 4 3. Sebutkan beberapa pengalamatan tidak langsung ! a). Pengalamatan tidak langsung dengan Register Auto Increment : a) Pre b) Post (POP) Auto Decrement a) Pre (Push) b) Post b). Pengalamatan tidak langsung dengan alamat penyimpan:  Auto Increment  Auto Decrement 135

E. Kegiatan Pembelajaran 5. 1. Bahasa pemrograman adalah kumpulan instruksi-instruksi yang dengan aturan tata bahasa tertentu yang dicompile kemudian dimengerti oleh komputer untuk melakukan tugas-tugas tertentu. 2. Lebih mudah memahami bahasa pemrograman tingkat tinggi. Sebab bahasa pemrograman tingkat rendah bahasanya ditulis dengan kode numerik ataupun dengan sintak yang sangat pendek sehingga sulit sekali dipahami. 3. BASIC, COBOL, C++, FORTRAN, JAVA dan VISUAL BASIC. 4. Elemen-elemen bahasa pemrograman adalah : Aturan Leksikal, Tipe data, Expression, Statement, Function dan Procedure. 5. Kelebihan penggunaan IDE adalah :  Programmer akan sangat terbantu belajar pemrograman sehingga proses belajar menjadi lebih cepat.  Mempercepat para pemula untuk menjadi programmer profesional. 6. Fasilitas yang dimiliki IDE adalah: Editor, Compiler, Linker dan Debuger. 136

F. Kegiatan Pembelajaran 6 1. Mengapa penggunaan dasar-dasar teknik pemrograman itu penting? Bahasa pemrograman merupakan sebuah cara untuk berkomunikasi dengan mesin yang sedang dituju dan diajak berkomunikasi adalah komputer. Begitu banyak aplikasi memanfaatkan komputer, terutama dalam pemanfaatan kemampuan chip mikroprosesor di dalamnya yang dapat melakukan komputasi sangat cepat, dapat bekerja sendiri dengan diprogram, dan dilengkapi memori untuk menyimpan begitu banyak data. Seiring dengan perkembangan zaman, semakin luaslah kebutuhan akan kemampuan seperti yang dimiliki oleh komputer, sehingga menyebabkan munculnya terobosan- terobosan baru yang salah satunya adalah dibuatnya chip mikrokontroler. 2. Sebutkan hal-hal yang perlu diperhatikan dalam memeriksa fungsi dan sintak instruksi bahasa pemrograman !  Kontruksi bahasa BASIC pada BASCOM-AVR, bahwa setiap bahasa pemprograman mempunyai standar penulisan program. Konstruksi dari program bahasa BASIC harus mengikuti aturan,  Pengarah preprosesor, bahasa BASIC yang memerintahkan untuk menyisipkan file lain,  Karakter pada Bascom, yang dipergunakan untuk membentuk label, keyword, variabel, dan operator, yang kesemuanya akan membentuk suatu program,  Tipe Data, bahwa setiap variabel pada Bascom mempunyai tipe data yang menunjukkan kapasitas dan jenis data yang dapat disimpan pada variabel tersebut,  Variabel, adalah simbol yang digunakan untuk mewakili suatu nilai,  Konstanta, adalah variabel yang mempunyai nilai konstan selama program dijalankan,  Larik atau array adalah kumpulan variabel dengan nama dan tipe data yang sama,  Sistem Bilangan, bahwa pada pemrograman mikrokontroler terdapat 3 sistem bilangan yang sering digunakan, yaitu desimal (basis 10), biner (basis 2), dan heksadesimal (basis 16), 137

 Operator, digunakan untuk melakukan operasi terhadap bilangan,  Pernyataan Bersyarat, Pada Bascom terdapat beberapa pernyataan bersyarat yang sering digunakan yaitu If – Then, If – Then – Elseif, dan Select – Case,  Pernyataan Perulangan (Loop), adalah suatu perulangan terhadap perintah atau instruksi sampai mencapai keadaan tertentu (jumlah perulangan tersebut dapat diketahui). 138

G. Kegiatan Pembelajaran 7. 1. Tunjukkan prosedur mengahtifkan Driver USBASP pada Windows 7! a. Buka Device Manager dengan cara klik kanan pada My Computer kemudian pilih Manage. b. Selanjutnya klik Device Manager, setelah itu cari Other devices dan klik dua kali, maka di situ akan terdapat USBasp yang bertanda seru (!). Hal itu sebagai pertanda bahwa device USBasp belum dikenali. Nah supaya bisa dikenali maka caranya ialah dengan menginstall driver USBasp-nya. Selanjutnya klik kanan pada tulisan USBasp dan pilih Update Driver Software. c. Pilih \"Browse my computer for driver software\". Dan selanjutnya pilih “Browse”. Arahkan pada CD, cari folder DRIVER_USBASP001  usbasp-windriver.2011-05-28  libusb_1.2.4.0  lalu klik “Ok”. d. Selanjutnya klik “Next”. Jika tampil gambar Windows security, pilih \"Install this driver software anyway\" e. Jika proses driver berhasil makakotak dialog “Update Driver Software – USBasp” “Windows has successfully update your driver software”. Kemudian klik “Finish”. Maka Downloader sudah bisa digunakan. 2. Tunjukkan kesalahan secara sistematis prosedur akses interface melalui bahasa pemrograman! Dalam beberapa kasus untuk Operating System Windows 7 dengan merk Notebook tertentu driver ini tidak dikenali, maka bisa pilih driver yang lain. Demikian juga untuk Operating System yang lain seperti Windows XP, Windows 8 tentu memerlukan prosedur yang berbeda, sehingga pengguna OS tersebut harus mencari informasi agar Downloader dapat berfungsi seperti yang diharapkan. 139

H. Kegiatan Pembelajaran 8 1. Hal-hal yang harus diperhatikan sebelum membuat program yaitu: a. Harus mengetahui kerangka / sistem penulisan program seperti pemanggilan header, penulisan variable, fungsi utama (main), dan pembuatan sub program / fungsi, b. mengetahui syntax atau tata cara penulisan bahasa C avr gcc, c. membuat kerangka / sistem penulisan program. 2. Hal-hal yang perlu diperhatikan dalam pembuatan program aplikasi seperti pemanggilan header io, pemanggilan header delay, membuat sub delay, pengulangan, pemanggilan delay, PORT yang akan dijadikan output, dan lain lain. 140

EVALUASI Soal Pilihan ganda: 1. Kode mesin yang mengandung Register, alamat penyimpan atau alamat masukan / keluaran dari operan untuk diakses disebut .... A. Direct (langsung) B. Immediate (segera) C. Indirect (tidak langsung) D. Terindeks 2. .Pengertian pengalamatan Terindeks adalah ... A. kode mesin mengandung hanya satu petunjuk, dimana untuk mendapatkan alamat dari operan yang akan diakses, B. kode mesin mengandung Register, alamat penyimpan atau alamat masukan / keluaran dari operan untuk diakses, C. kode mesin mengandung konstanta untuk segera /langsung di akses. D. alamat-alamat dari operan yang akan di akses dibentuk dalam beberapa bagian, 3. Proses debug dalam pemrograman adalah .... A. menulis kode program B. menguji kode program C. memperbaiki kode program D. memelihara kode program 4. Istilah seberapa baik program mengatasi masalah yang bukan karena kesalahan programmer adalah .... A. Reliabilitas B. kekokohan C. portabilitas D. Efisiensi / kinerja 141


Like this book? You can publish your book online for free in a few minutes!
Create your own flipbook