Pengin yang simpel, murah dan komplit untuk belajar Mikrokontroler AVR?
Kekhawatiran Anda akan berakhir! Kesulitan Anda akan segera teratasi Apa y
Kekhawatiran Anda akan berakhir! Kesulitan Anda akan segera teratasi Apa yang Anda cariang Anda cari akan segera ditemukan! Dapatkan
akan segera ditemukan! Dapatkan PENAWARAN ISTIMEWA PENAWARAN ISTIMEWA selama promosi!selama promosi! Dapatkan informasi selengkapnya di
Dapatkan informasi selengkapnya di
http://klikdisini.com/jualavrbasichttp://klikdisini.com/jualavrbasic
Saya tersugesti, klo baca bukunya pak agfi,
Saya tersugesti, klo baca bukunya pak agfi, saya baru bisa paham... padahal saya juga uda saya baru bisa paham... padahal saya juga uda punyapunya buku mikro yg lain, spt nya gak enak, klo gak baca punya pak agfi, aneh memang...
buku mikro yg lain, spt nya gak enak, klo gak baca punya pak agfi, aneh memang... Te
Teguh Budimaguh Budima nn
Waduh, emang sip banget penjelasannya pak Agfi, salah satu yang saya kagumi dari
Waduh, emang sip banget penjelasannya pak Agfi, salah satu yang saya kagumi dari pak Agfipak Agfi adalah kalo pak Agfi njelasin sesuatu pasti dengan ringkas, padat, berisi, to the point dan mudah di adalah kalo pak Agfi njelasin sesuatu pasti dengan ringkas, padat, berisi, to the point dan mudah di
mengerti.. saya juga senang baca buku-bukunya pak Agfi lho, nah..
mengerti.. saya juga senang baca buku-bukunya pak Agfi lho, nah.. itu adalah tanda-tanda dariitu adalah tanda-tanda dari dosen, entrepreneur dan sekaligus penulis yang profesional..| salut dah buat pak Agfi..
dosen, entrepreneur dan sekaligus penulis yang profesional..| salut dah buat pak Agfi.. SeandainyaSeandainya sebagian besar dosen bisa aktif seperti pak
sebagian besar dosen bisa aktif seperti pak Agfi, pasti Indonesia makin maju neh..Agfi, pasti Indonesia makin maju neh.. Herlambang
Bonus-1: Hasil kompilasi Flowcode AVR 3.0 yang unik?!
Bonus-1: Hasil kompilasi Flowcode AVR 3.0 yang unik?!
Kali ini saya coba-coba menggunakan perangkat lunakKali ini saya coba-coba menggunakan perangkat lunak Flowcode AVR versi 3.0Flowcode AVR versi 3.02525 (tampilan awal(tampilan awal ditunjukkan pada Gambar 1.1) untuk melakukan kompilasi program mikrokontroler AVR hanya ditunjukkan pada Gambar 1.1) untuk melakukan kompilasi program mikrokontroler AVR hanya dengan menggambarkan diagram alir atau flowchartnya. Apaan? Cukup pake diagram alir? Yup dengan menggambarkan diagram alir atau flowchartnya. Apaan? Cukup pake diagram alir? Yup betul!
betul!
Gambar 1.1 Gambar 1.1
Baiklah, untuk percobaan, saya buka berkas baru dengan tampilan seperti Gambar 1.2. T
Baiklah, untuk percobaan, saya buka berkas baru dengan tampilan seperti Gambar 1.2. T ampaampak awalk awal dari diagram alir dan daftar pin dari mikrokontroler AVR ATmega32 yang saya gunakan sebagai dari diagram alir dan daftar pin dari mikrokontroler AVR ATmega32 yang saya gunakan sebagai contoh kali ini.
contoh kali ini.
Gambar 1.2 Gambar 1.2 25
25
Pada saat ebook ini ditulis sudah tersedia versi 4.3.3.6, silahkan di-unduh di Pada saat ebook ini ditulis sudah tersedia versi 4.3.3.6, silahkan di-unduh di
http://www.4shared.com/file/kTQ_NYyL/Flowcode_AVR_Professional_4366.html
Selanjutnya, singkat cerita saya buat sebuah diagram alir yang intinya menghidupan dan mematikan Selanjutnya, singkat cerita saya buat sebuah diagram alir yang intinya menghidupan dan mematikan LED pada PORTA secara bergantian dengan selang 500 milidetik atau 0,5 setik (perhatikan Gambar LED pada PORTA secara bergantian dengan selang 500 milidetik atau 0,5 setik (perhatikan Gambar 1.3). Hasilnya LED akan berkedip-kedip dengan tundaan 500 milidetik (tampilan simulasi pada 1.3). Hasilnya LED akan berkedip-kedip dengan tundaan 500 milidetik (tampilan simulasi pada Gambar 1.4).
Gambar 1.4).
Gambar 1.3 Gambar 1.3
Gambar 1.4 (kiri LED
Gambar 1.4 (kiri LED mati, kanan LED menyala)mati, kanan LED menyala)
Justru yang saya ulas disini adalah hasil kompilasi yang aneh atau barangkali unik atau barangkali Justru yang saya ulas disini adalah hasil kompilasi yang aneh atau barangkali unik atau barangkali itulah ciri khas dari
Gambar 1.5 Gambar 1.5
Pada Gambar 1.5 keunikan terjadi karena inisialisasi PORTA yang seharusnya cukup sekali saja Pada Gambar 1.5 keunikan terjadi karena inisialisasi PORTA yang seharusnya cukup sekali saja dilakukan justru dilakukan pada tiap instruksi untuk mengirimkan nilai 0 (LED mati semua) dan 255 dilakukan justru dilakukan pada tiap instruksi untuk mengirimkan nilai 0 (LED mati semua) dan 255 (LED hidup semua), perhatikan tanda panah pada Gambar 1.5. Mengapa tidak sekali saja yach? (LED hidup semua), perhatikan tanda panah pada Gambar 1.5. Mengapa tidak sekali saja yach? Mungkin untuk jaga-jaga kali yaaa…??
Gambar 1.6 Gambar 1.6
Pada Gambar 1.6 terjadi pengulangan instruksi yang sama persis (lihat tanda panah), kenapa tidak Pada Gambar 1.6 terjadi pengulangan instruksi yang sama persis (lihat tanda panah), kenapa tidak dibuat subrutin-nya skalian yach??
dibuat subrutin-nya skalian yach?? Kesimpulannya:
Kesimpulannya:
Enakan pake ASM atau Native C langsung untuk membuat program mikrokontroler AVR,Enakan pake ASM atau Native C langsung untuk membuat program mikrokontroler AVR, agar kita bisa langsung menulis kode-kode secara efisien dan efektif.
agar kita bisa langsung menulis kode-kode secara efisien dan efektif.
Bonus-2: FlowCode AVR 3.0: Aplikasi I/O Sederhana
Bonus-2: FlowCode AVR 3.0: Aplikasi I/O Sederhana
Kali ini Flowcode AVR kita gunakan untuk mencoba membuat sebuah aplikasi sederhana yang Kali ini Flowcode AVR kita gunakan untuk mencoba membuat sebuah aplikasi sederhana yang melakuka
melakukan pembacaan masukan di PORT n pembacaan masukan di PORT A kemudian menampilkan hasil pembacaan tersebut, yangA kemudian menampilkan hasil pembacaan tersebut, yang sebelumnya melalui suatu variabel DATANYA, ke PORT B. Rancangan Flowcode AVR-nya sebelumnya melalui suatu variabel DATANYA, ke PORT B. Rancangan Flowcode AVR-nya ditunjukkan pada Gambar 2.1.
ditunjukkan pada Gambar 2.1.
Gambar 2.1 Gambar 2.1
Kemudian kita kompail dan disimulasikan hasilnya (juga) bisa dilihat pada Gambar 2.1 tersebut. Kemudian kita kompail dan disimulasikan hasilnya (juga) bisa dilihat pada Gambar 2.1 tersebut. Perhatikan bahwa tidak semua masukan PORT A kita buat berlogika 1, hanya A7, A5, A3 dan A1. Perhatikan bahwa tidak semua masukan PORT A kita buat berlogika 1, hanya A7, A5, A3 dan A1. Hasilnya juga tidak semua LED pada PORT B menyala, hanya sesuai dengan PORT A saja, yaitu Hasilnya juga tidak semua LED pada PORT B menyala, hanya sesuai dengan PORT A saja, yaitu B7, B5, B3 dan B1. Nah sekarang pertanyaannya:
B7, B5, B3 dan B1. Nah sekarang pertanyaannya:
Bagaimana dengan hasil kompilasi dalam bahasa C-nya
Bagaimana dengan hasil kompilasi dalam bahasa C-nya (juga dalam (juga dalam bahasbahasa ASM-nya)?a ASM-nya)?
Berikut saya cuplik sebagian hasil kompilasi dalam bahasa C (baris 59-96), cukup yang utama dulu, Berikut saya cuplik sebagian hasil kompilasi dalam bahasa C (baris 59-96), cukup yang utama dulu, selebihnya Anda bisa mencermati bahwa di awal program C-nya merupakan inisialisasi variabel, selebihnya Anda bisa mencermati bahwa di awal program C-nya merupakan inisialisasi variabel, pemetaan mikrokontroler dan lain-lain. Perhatikan
Gambar 2.2 Gambar 2.2
Pada cuplikan listing tersebut saya sudah memberikan catatan. Bagaimana dengan Anda? Apa yang Pada cuplikan listing tersebut saya sudah memberikan catatan. Bagaimana dengan Anda? Apa yang dilakukan pada bagian inisialisasi, baris 76 dan 77? Instruksi
dilakukan pada bagian inisialisasi, baris 76 dan 77? Instruksi MCUCSR = 0×00;MCUCSR = 0×00; digunakan untuk digunakan untuk mereset (memberikan logika 0) pada semua bit di register
mereset (memberikan logika 0) pada semua bit di register MCUCSRMCUCSR (( MCU Control and Register MCU Control and Register),), perhatikan penjelasan pada Gambar 2.3. Sedangkan
perhatikan penjelasan pada Gambar 2.3. Sedangkan WDTCRWDTCR = 0×10; digunakan untuk mematikan= 0×10; digunakan untuk mematikan watchdog, perhatikan penjelasan register
watchdog, perhatikan penjelasan register WDTCRWDTCR ((Watchdog Control RegisterWatchdog Control Register) di Gambar 2.4.) di Gambar 2.4. Langkah ini dilakukan oleh Flowcode AVR, menurut saya, untuk keamanan atau
Langkah ini dilakukan oleh Flowcode AVR, menurut saya, untuk keamanan atau play safe play safesaja.saja. Karena kemungkinan kompailer C yang digunakan tidak mematikan
Karena kemungkinan kompailer C yang digunakan tidak mematikan watchdogwatchdog secara otomatis (adasecara otomatis (ada beberapa kompailer yang bisa melakukan-nya secara otomatis selama tidak secara eksplisit beberapa kompailer yang bisa melakukan-nya secara otomatis selama tidak secara eksplisit dinyatakan penggunaan
dinyatakan penggunaan watchdogwatchdog).).
Listing program selebihnya adalah sesuai dengan yang diharapkan, baca masukan seperti pada baris Listing program selebihnya adalah sesuai dengan yang diharapkan, baca masukan seperti pada baris 85, namun sebelumnya ada inisialisasi PORT A sebagai masukan, mengapa tidak langsung aja 85, namun sebelumnya ada inisialisasi PORT A sebagai masukan, mengapa tidak langsung aja DDRA = 0×00? Kok harus di-AND-kan segala dengan 0, khan hasilnya sama saja logika-0 khan? DDRA = 0×00? Kok harus di-AND-kan segala dengan 0, khan hasilnya sama saja logika-0 khan? Aneh? Kemudian dilanju
Aneh? Kemudian dilanjutkan dengan mengirimkan isi variabel dari pembacaan PORT A ke tkan dengan mengirimkan isi variabel dari pembacaan PORT A ke PORTB,PORTB, lihat baris 91, yang sebelumnya (juga) diawali dengan inisialisasi PORT B sebagai luaran (nah kalo lihat baris 91, yang sebelumnya (juga) diawali dengan inisialisasi PORT B sebagai luaran (nah kalo ini caranya langsung).
Gambar 2.3 Gambar 2.3
Gambar 2.4 Gambar 2.4
Jika Anda berikan loop pada program, seperti pada Gambar 2.5, hasilnya juga sama saja, keunikan Jika Anda berikan loop pada program, seperti pada Gambar 2.5, hasilnya juga sama saja, keunikan juga terjadi lagi seperti saya
juga terjadi lagi seperti saya jelaskan pada artikel sebelumnyajelaskan pada artikel sebelumnya2626..
Gambar 2.5 Gambar 2.5
Bonus-3: FlowCode AVR 3.0: Aplikasi LCD 2x16 karakter
Bonus-3: FlowCode AVR 3.0: Aplikasi LCD 2x16 karakter
Wow enaknya belajar pemrograman aplikasi mikrokontroler AVR menggunakan Flowcode 3 for Wow enaknya belajar pemrograman aplikasi mikrokontroler AVR menggunakan Flowcode 3 for AVR sebagaimana sudah saya tulis artikel-nya sejak awal
AVR sebagaimana sudah saya tulis artikel-nya sejak awal2727. Kali ini dicoba membuat aplikasi. Kali ini dicoba membuat aplikasi dengan tampilan LCD 2×16, hanya sekedar menampilkan dua kalimat,
dengan tampilan LCD 2×16, hanya sekedar menampilkan dua kalimat, masingmasing-masing di -masing di baris-1 danbaris-1 dan baris-2, diagram atau flow-nya ditunjukkan pada Gambar 3.1 (ter
baris-2, diagram atau flow-nya ditunjukkan pada Gambar 3.1 (ter masumasuk hasil simulasinya).k hasil simulasinya).
Hasil kompilasi kedalam Bahasa C saya tunjukkan satu persatu. Pada bagian pertama, sebagaimana Hasil kompilasi kedalam Bahasa C saya tunjukkan satu persatu. Pada bagian pertama, sebagaimana ditunjukkan pada Gambar 3.2, merupakan deklarasi fungsi-fungsi makro untuk menangani LCD ditunjukkan pada Gambar 3.2, merupakan deklarasi fungsi-fungsi makro untuk menangani LCD (baris 66 - 74). Terdapat 9 macam fungsi makro LCD dan hanya 3 yang akan digunakan dalam (baris 66 - 74). Terdapat 9 macam fungsi makro LCD dan hanya 3 yang akan digunakan dalam program, yaitu:
program, yaitu:
FCD_LCDDisplay0_Start()FCD_LCDDisplay0_Start(), digunakan untuk inisialisasi LCD;, digunakan untuk inisialisasi LCD;
FCD_LCDDisplayFCD_LCDDisplay0_PrintString(char* String, 0_PrintString(char* String, char MSZ_String)char MSZ_String), d, digunaigunakan untuk kan untuk menuliskan string, dan
menuliskan string, dan
26 26
Lihat pembahasan Bonus-1 Lihat pembahasan Bonus-1 27
27
Lihat pembahasan Bonus-1 dan Bonus-2 Lihat pembahasan Bonus-1 dan Bonus-2
FCD_LCDDisplaFCD_LCDDisplay0_Cursor(char x, chay0_Cursor(char x, char y)r y), digunakan untuk menempatkan kursor dengan, digunakan untuk menempatkan kursor dengan posisi kolom,baris). posisi kolom,baris). Gambar 3.1 Gambar 3.1 Gambar 3.2 Gambar 3.2 Untuk fungsi
Untuk fungsi FCD_LCDDisplay0_Start()FCD_LCDDisplay0_Start() listing programnya ditunjukkan pada Gambar 3.3. Apalisting programnya ditunjukkan pada Gambar 3.3. Apa yang dilakukan oleh fungsi ini adalah melakukan inisialisasi tampilan LCD dengan antarmuka 4 bit yang dilakukan oleh fungsi ini adalah melakukan inisialisasi tampilan LCD dengan antarmuka 4 bit data (Flowcode 3 AVR hanya menyediakan antarmuka 4-bit data LCD walaupun bisa juga data (Flowcode 3 AVR hanya menyediakan antarmuka 4-bit data LCD walaupun bisa juga digunakan rangkaian antarmuka 8-bit data LCD). Rangkaian yang digunakan menggunakan digunakan rangkaian antarmuka 8-bit data LCD). Rangkaian yang digunakan menggunakan pemetaan PORT dan pin LCD sebagai berikut:
#define
#define LCD_2360334_BLCD_2360334_BIT0 IT0 22 #define
#define LCD_2360334_BLCD_2360334_BIT1 IT1 33 #define
#define LCD_2360334_BLCD_2360334_BIT2 IT2 44 #define
#define LCD_2360334_BLCD_2360334_BIT3 IT3 55 #define
#define LCD_2360334_RLCD_2360334_RS S 00 #define
#define LCD_2360334_E LCD_2360334_E 11
``
Gambar 3.3 Gambar 3.3 Untuk fungsi
Untuk fungsi FCD_LCDDisplay0_PrintString()FCD_LCDDisplay0_PrintString() listingnya ditunjukkan pada Gambar 3.4. Fungsilistingnya ditunjukkan pada Gambar 3.4. Fungsi ini digunakan untuk menampilkan string ke LCD pada posisi kursor saat itu. Fungsi ini ini digunakan untuk menampilkan string ke LCD pada posisi kursor saat itu. Fungsi ini membutuhk
membutuhkan dua parameter, string an dua parameter, string yang akan ditampilkan dan jumlah karakter pada string tyang akan ditampilkan dan jumlah karakter pada string tersebut.ersebut.
Gambar 3.4 Gambar 3.4
Untuk fungsi
Untuk fungsi FCD_LCDDisplay0FCD_LCDDisplay0_Cursor(char x, _Cursor(char x, char y)char y) listingnya ditunjukkan pada Gambar 3.5.listingnya ditunjukkan pada Gambar 3.5. Fungsi ini membutuhkan dua parameter yaitu x (untuk posisi kolom) dan y (untuk posisi baris), jika Fungsi ini membutuhkan dua parameter yaitu x (untuk posisi kolom) dan y (untuk posisi baris), jika dituliskan
dituliskan FCD_LCDDisplay0_Cursor(0,1)FCD_LCDDisplay0_Cursor(0,1) artinya menempatkan kursor pada kolom pertama barisartinya menempatkan kursor pada kolom pertama baris kedua, demikian seterusnya…
kedua, demikian seterusnya…
Gambar 3.5 Gambar 3.5
Nah program utama ditunjukkan pada Gambar 3.6. Diawali dengan inisialisasi register
Nah program utama ditunjukkan pada Gambar 3.6. Diawali dengan inisialisasi register MCUCSRMCUCSR dan
dan WDTCRWDTCR pada baris 373 dan 374 (baca artikel saya sebelumnyapada baris 373 dan 374 (baca artikel saya sebelumnya2828). Kemudian dilanjutkan). Kemudian dilanjutkan dengan melakukan inisialisasi LCD (baris 381) menggunakan fungsi
dengan melakukan inisialisasi LCD (baris 381) menggunakan fungsi FCD_LCDDisplay0_Start()FCD_LCDDisplay0_Start().. Diikuti dengan menampilkan string “Halo Flowcode3
Diikuti dengan menampilkan string “Halo Flowcode3 (baris 386, angka 14 merupakan jumlah(baris 386, angka 14 merupakan jumlah karakter pada string yang bersangkutan), menempatkan kursor pada baris kedua kolom pertama karakter pada string yang bersangkutan), menempatkan kursor pada baris kedua kolom pertama (baris 391), menampilkan string “by ATMega32
(baris 391), menampilkan string “by ATMega32 (baris 396) dan diakhiri dengan(baris 396) dan diakhiri dengan infinite-loopinfinite-loop atauatau kalang
kalang-takhingga (baris -takhingga (baris 399).399).
Jika Anda perhatikan baik-baik pada ketiga fungsi tersebut, maka bisa Anda temukan pemanggilan Jika Anda perhatikan baik-baik pada ketiga fungsi tersebut, maka bisa Anda temukan pemanggilan fungsi lain yaitu
fungsi lain yaitu LCD_2360334_RawSend(char nIn, char nMask)LCD_2360334_RawSend(char nIn, char nMask) , yang digunakan untuk , yang digunakan untuk mengirimkan satu karakter. Pendefinisian fungsi ini ada di dalam fungsi mengirimkan satu karakter. Pendefinisian fungsi ini ada di dalam fungsi FCD_LCDDisplay0_GetDefines()
FCD_LCDDisplay0_GetDefines().. Program selengkapnya bisa diunduh
Program selengkapnya bisa diunduh disinidisini2929..
28 28
Lihat pembahasan Bonus-2 Lihat pembahasan Bonus-2 29
29 Klik
Gambar 3.6 Gambar 3.6
Bonus-4: FlowCode AVR 3.0: Menghitung Sapi!
Bonus-4: FlowCode AVR 3.0: Menghitung Sapi!
Kali ini kita akanKali ini kita akan belajar membuat program menggunakanbelajar membuat program menggunakan Flowcode AVRFlowcode AVR3030 untuk menghitung sapi-untuk menghitung sapi-sapi kita yang masuk kandang. Caranya bagaimana? Kita gunakan sensor detektor sapi-sapi melalui sapi kita yang masuk kandang. Caranya bagaimana? Kita gunakan sensor detektor sapi melalui PORT A (
PORT A (yanyang disimulasikan menggunakan pushbutton) untuk g disimulasikan menggunakan pushbutton) untuk menmendeteksi sapi-sapi yang masuk deteksi sapi-sapi yang masuk keke kandang. Sensor ini akan memicu proses perhitungan jumlah atau cacah sapi. Sementara ini hasil kandang. Sensor ini akan memicu proses perhitungan jumlah atau cacah sapi. Sementara ini hasil perhitungan ditampilkan melalui LED pada PORT B, bisa juga melalui 7segmen biar keren, tapi itu perhitungan ditampilkan melalui LED pada PORT B, bisa juga melalui 7segmen biar keren, tapi itu entar aja dech.
entar aja dech.
Silahkan membuat kerangka diagram alir menggunakan acuan Gambar 4.1. Pada blok
Silahkan membuat kerangka diagram alir menggunakan acuan Gambar 4.1. Pada blok CalculationCalculation masih kita kosongkan…
masih kita kosongkan…
Okey, langkah selanjutnya lakukan klik-ganda pada blok
Okey, langkah selanjutnya lakukan klik-ganda pada blok CalculationCalculation, sehingga dimunculkan kotak , sehingga dimunculkan kotak dialog yang ditunjukkan pada Gambar 4.2.
dialog yang ditunjukkan pada Gambar 4.2. Ganti nama “Calculation” (pada
Ganti nama “Calculation” (pada Display NameDisplay Name) menjadi “Total Sapi” (tanpa tanda petik). Kemudian) menjadi “Total Sapi” (tanpa tanda petik). Kemudian lanjutkan menuliskan persamaa
lanjutkan menuliskan persamaan untuk n untuk menghimenghitung tung total sapi sebagai berikut:total sapi sebagai berikut: TOTAL = TOTAL +TOTAL = TOTAL + SAPI
SAPI (pada bagian isian(pada bagian isian CalculationsCalculations). Perhatikan Gambar 4.3.). Perhatikan Gambar 4.3.
30 30
Pada saat ebook ini ditulis sudah tersedia versi 4.3.3.6, silahkan di-unduh di Pada saat ebook ini ditulis sudah tersedia versi 4.3.3.6, silahkan di-unduh di
http://www.4shared.com/file/kTQ_NYyL/Flowcode_AVR_Professional_4366.html
Gambar 4.1 Gambar 4.1
Gambar 4.2 Gambar 4.2
Sensor detektor sapi disimulasikan menggunakan tombol tekan atau
Sensor detektor sapi disimulasikan menggunakan tombol tekan atau pushbutton pushbutton yang dipasang padayang dipasang pada PORTA.0. Jika tombol ditekan maka akan menghasilkan nilai 1 yang kemudian disimpan ke dalam PORTA.0. Jika tombol ditekan maka akan menghasilkan nilai 1 yang kemudian disimpan ke dalam variabel
variabel SAPISAPI. Dengan demikian, penekanan tombol pada PORTA.0 akan menambah nilai. Dengan demikian, penekanan tombol pada PORTA.0 akan menambah nilai TOTALTOTAL sebesar 1. Jika tidak ditekan, ya artinya nilai pada variabel
sebesar 1. Jika tidak ditekan, ya artinya nilai pada variabel SAPISAPI tetap 0 (nol) dan tidak merubahtetap 0 (nol) dan tidak merubah nilai dari
Klik
Klik VariablesVariables pada kotak dialogpada kotak dialog CalculationsCalculations untuk mulai mendefinisikan variabel-variabel yanguntuk mulai mendefinisikan variabel-variabel yang terkait. Akan ditampilkan kotak dialog seperti pada Gambar 4.4.
terkait. Akan ditampilkan kotak dialog seperti pada Gambar 4.4.
Gambar 4.3 Gambar 4.3
Gambar 4.4 Gambar 4.4
Sekarang kita lanjutkan dengan mendefinisikan variabel-variabel yang terkait tersebut. Variabel yang Sekarang kita lanjutkan dengan mendefinisikan variabel-variabel yang terkait tersebut. Variabel yang akan kita definisikan adalah
akan kita definisikan adalah TOTALTOTAL dandan SAPISAPI. Penggunaan kedua variabel ini . Penggunaan kedua variabel ini sudah saya jelaskansudah saya jelaskan sebelumnya, jika belum paham silahkan ditengok lagi, nanti baru kembali lagi kesini…
sebelumnya, jika belum paham silahkan ditengok lagi, nanti baru kembali lagi kesini… Klik pada tombol
Klik pada tombol Add New Variable…Add New Variable… sehingga dimunculkan kotak dialogsehingga dimunculkan kotak dialog CreateCreate sebagaimanasebagaimana ditunjukkan pada Gambar 4.5. Ketik “SAPI” (tanpa tanda petik) pada isian
dan pilih
dan pilih ByteByte padapada Variable TypeVariable Type, akhiri dengan klik , akhiri dengan klik OkOk. Lakukan hal yang sama untuk variabel. Lakukan hal yang sama untuk variabel TOTAL
TOTAL. Sehingga sekarang isi dari . Sehingga sekarang isi dari variabel kita seperti ditunjukkan pada Gambar 4.6.variabel kita seperti ditunjukkan pada Gambar 4.6.
Gambar 4.5 Gambar 4.5
Gambar 4.6 Gambar 4.6 Klik
Klik CloseClose, kemudian kembali lagi ke kotak dialog, kemudian kembali lagi ke kotak dialog CalculationsCalculations dan akhiri dengan klik dan akhiri dengan klik OkOk. Hasil. Hasil dari diagram alir sampai tahap
Gambar 4.7 Gambar 4.7 Sekarang saatnya mengatur pengulangan (
Sekarang saatnya mengatur pengulangan ( looploop). Klik pada blok ). Klik pada blok LoopLoop sehingga ditampilkan kotak sehingga ditampilkan kotak dialog seperti pada Gambar 4.8.
dialog seperti pada Gambar 4.8.
Gambar 4.8 Gambar 4.8
Silahkan Anda cermati kotak dialog tersebut, Anda bisa memilih antara
Silahkan Anda cermati kotak dialog tersebut, Anda bisa memilih antara Loop WhileLoop While dengandengan LoopLoop Count
Count. Pada isian. Pada isian Loop whileLoop while, kita bisa mengisikan berbagai macam kondisi syarat pengulangan., kita bisa mengisikan berbagai macam kondisi syarat pengulangan. Misalnya, tertulis angka 1 pada kotak dialog tersebut, artinya dianggap selalu benar, sehingga Misalnya, tertulis angka 1 pada kotak dialog tersebut, artinya dianggap selalu benar, sehingga terjadilah pengulangan terus menerus (
terjadilah pengulangan terus menerus (infinite loopinfinite loop). Atau Anda bisa mengisikan syarat-syarat). Atau Anda bisa mengisikan syarat-syarat tertentu untuk
tertentu untuk pengulpengulangan, misalnya cacah < 4, angan, misalnya cacah < 4, cacah = 0 dan lain sebagainya.cacah = 0 dan lain sebagainya. Perhatikan juga pilihan
Perhatikan juga pilihan Test the loop atTest the loop at, yaitu, yaitu StartStart dandan EndEnd. Apakah pengujian dilakukan di awal. Apakah pengujian dilakukan di awal pengulangan (
pengulangan (StartStart) atau diakhir () atau diakhir (EndEnd)? Hal ini tentu saja berpengaruh terhadap jumlah)? Hal ini tentu saja berpengaruh terhadap jumlah pengulangan yang terjadi.
pengulangan yang terjadi. Isian
Isian Loop CountLoop Count merupakan bentuk pengulangan yang pasti, berapa kali dilakukan pengulangan,merupakan bentuk pengulangan yang pasti, berapa kali dilakukan pengulangan,