BAB 2

advertisement
BAB II
PENDEKATAN PEMECAHAN MASALAH
A.
Resistor
Resistor adalah suatu komponen elektronika yang dapat menghasilkan
hambatan. Resistor dapat digunakan sebagai pembatas arus, pembagi arus
maupun sebagai pembagi tegangan. Nilai resistansi dari resistor akan
berpengaruh terhadap arus yang mengalir, jika resistansinya semakin besar
maka arus yang lewat akan semakin kecil, sebaliknya jika nilai resistansinya
kecil, maka arus yang lewat akan semakin besar.
Dalam suatu rangkain elektronik, resistor sering ditulis dengan kode “
R”. Resistor mempunyai satuan Ohm (Ω) yang menunjukan besar kecilnya
hambatan yang dihasilkan dan Watt untuk menujukkan rating daya
maksimum yang boleh digunakan tanpa menimbulkan panas yang
berlebihan. Resistor terdiri dari dua jenis, yaitu :
1.
Resistor Tetap
Adalah resistor yang besarnya tidak dapat diatur. Resistor tetap
sesuai dengan bahannya, yaitu:
a. Resistor kawat logam, tahanan dari kawat logam yang digulung
pada permukaan pipa tabung kaca.
b. Resistor karbon / arang, resistor ini paling banyak digunakan pada
rangkaian elektronika.
Gambar 1. Lambang resistor
2.
Resistor Variabel
Adalah resistor yang besarnya dapat diatur sesuai nilai yabg
dibutuhkan. Untuk variabel resistor terdapat 2 tipe.
a. Untuk tipe pertama dinamakan variable resistor dan nilainya dapat
diubah sesuai keinginan dengan mudah dan sering digunakan untuk
pengaturan volume, bass, balance, dll.
b. Sedangkan yang kedua adalah semi-fixed resistor. Nilai dari
resistor ini biasanya hanya diubah pada kondisi tertentu saja.
Contoh penggunaan dari semifixed resistor adalah tegangan
referensi yang digunakan untuk ADC, fine tune circuit, dll. Ada
beberapa model pengaturan nilai Variable resistor, yang sering
digunakan adalah dengan cara memutar. Pengubahan nilai dengan
cara memutar biasanya terbatas sampai 300 derajat putaran.
c. Ada beberapa model variable resistor yang harus diputar berkali –
kali untuk mendapatkan semua nilai resistor. Model ini dinamakan
“Potentiometers” atau “Trimmer Potentiometers”.
d. Pada gambar dibawah untuk bentuk 3 biasanya digunakan untuk
volume kontrol. Bentuk yang ke 2 merupakan semi fixed resistor
dan biasanya di pasang pada PCB (Printed Circuit Board).
Sedangkan bentuk 1 disebut juga trimmer potentiometers.
Gambar 2. Resistor variabel
Untuk menghitung besarnya hambatan pada suatu resistor
digunakan hukum Ohm sebagai berikut :
R=
(Richard Blocer, 2004 :13)
Di mana :
R = Resistansi dinyatakan dalam Ohm
V = Tegangan dinyatakan dalam Volt
I = Kuat arus dinyatakan dalam Ampere
Gambar 3. Lambang resistor variable
B.
Kapasitor
Kapasitor adalah suatu komponen elektronika yang terdiri dari dua
buah penghantar yang diberi sekat. Sekat tersebut terbuat dari bahan isolasi
(mika, kertas, keramik, udara, dan sebagainya). Kapasitor mampu
menyimpan muatan listrik suatu kapasitor dinyatakan dalam satuan Farad
dan dipengaruhi oleh :
1. Luas penampang
2. Jarak antar keping
3. Jenis dielektrika
C=
Di mana :
C = kapasitas kapasitor
Gambar 4. Kapasitor
C.
Dioda
Dioda dibangun dari hasil penggabungan dua buah semikonduktor tipe
P (positif) dan tipe N (negatif). Karena penggabungan dua tipe
semikonduktor tersebut, maka terjadi suatu daerah perpindahan muatan yang
disebut daerah pengosongan ( depletion layer). Pada daerah tersebut terjadi
suatu muatan listrik yang disebut potensial barier yang besarnya 0,7 Volt
untuk dioda silikon dan 0,3 Volt untuk dioda Germanium.
Gambar 5. Simbol dioda
Pada dioda ideal, dioda akan berlaku seperti saklar otomatis. Bila
tegangan anodanya lebih positif dari tegangan katoda atau disebut juga bias
maju ( bias forward) dioda akan bertindak seperti saklar tertutup ( posisi
ON). Jika katoda yang lebih positf dari tegangan anoda atau disebut juga
bias mundur ( bias reverse) dioda akan berlaku seperti saklar teruka ( posisi
off). Salah satu dari diode adalah LED jenis dioda yang dapat memancaraka
emisi cahaya. Pada dioda di bias forward, elektron pita konduksi melewati
junction dan jatuh kedalam hole. Pada saat elektron-elektron jatuh dari pita
konduksi ke pita valensi akan memancarakan energi. Pada dioda penyearah,
energi ini keluar sebagai panas, tetapi pada LED energi dipancarkan sebagai
cahaya. Warna cahaya ini tergantung pada jenis dan kadar material
pertemuan.
D.
LCD (M1632)
M1632 adalah merupakan modul LCD dengan tampilan 16 x 2 baris
dengan konsumsi daya yang rendah. Modul ini dilengkapi dengan
mikrokontroler
yang
didisain
khusus
untuk
mengendalikan
LCD.
Mikrokontroler HD44780 buatan Hitachi yang berfungsi sebagai pengendali
LCD ini mempunyai CGROM (Character Generator Read Only Memory),
CGRAM (Character Generator Random Access Memory) dan DDRAM
(Display Data Random Access Memory).
1. DDRAM
DDRAM adalah merupakan memori tempat karakter yang
ditampilkan berada. Contoh, untuk karakter ‘A’ atau 41H yang ditulis
pada alamat 00, maka karakter tersebut akan tampil pada baris pertama
dan kolom pertama dari LCD. Apabila karakter tersebut ditulis di alamat
40, maka karakter tersebut akan tampil pada baris kedua kolom pertama
dari LCD.
Gambar 6. DDRAM M1632 (diambil dari data sheet HD44780)
2. CGRAM
CGRAM adalah merupakan memori untuk menggambarkan pola
sebuah karakter di mana bentuk dari karakter dapat diubah-ubah sesuai
keinginan. Namun memori ini akan hilang saat power supply tidak aktif,
sehingga pola karakter akan hilang.
3. CGROM
CGROM adalah merupakan memori untuk menggambarkan pola
sebuah karakter di mana pola tersebut sudah ditentukan secara permanen
dari HD44780 sehingga pengguna tidak dapat mengubah lagi. Namun
karena ROM bersifat permanen, maka pola karakter tersebut tidak akan
hilang walaupun power supply tidak aktif. Pada gambar 2, tampak
terlihat pola-pola karakter yang tersimpan dalam lokasi-lokasi tertentu
dalam CGROM. Pada saat HD44780 akan menampilkan data 41H yang
tersimpan pada DDRAM, maka HD44780 akan mengambil data di
alamat 41H (0100 0001) yang ada pada CGROM yaitu pola karakter A.
Gambar 7. Pin Out LCD M1632 Standard
Tabel 1. Penjelasan Pin Out LCD
PIN OUT
No
Nama Pin
Keterangan
1
GND
0 Volt
2
VCC
5 Volt
3
VEE
Tegangan Kontras LCD
4
RS
Register Select, 0 =
Register Perintah, 1 =
Register Data
5
RW
1 = Read, 0 = Write
E
Enable Clock LCD,
logika 1 setiap kali
pengiriman atau
6
pembacaan data
7
D0
Data Bus 0
8
D1
Data Bus 1
9
D2
Data Bus 2
10
D3
Data Bus 3
11
D4
Data Bus 4
12
D5
Data Bus 5
13
D6
Data Bus 6
14
D7
Data Bus 7
15
Anoda Backlight
Tegangan positif untuk
Backlight
16
Katoda Backlight
Tegangan negatif untuk
Backlight
Gambar 8. Hubungan antara CGROM dan DDRAM (diambil dari data sheet
HD44780)
E.
Mikrokontroler
Mikrokontroller adalah piranti elektronik berupa IC (Integrated
Circuit) yang memiliki kemampuan manipulasi data (informasi) berdasarkan
suatu
urutan
instruksi
(program)
yang
dibuat
oleh
programmer.
Mikrokontroller merupakan contoh suatu sistem komputer sederhana yang
masuk dalam kategori embedded komputer. Dalam sebuah struktur
mikrokontroller akan kita temukan juga komponen-komponen seperti:
processor, memory, clock dll. ( Wisnugroho, 2006)
Ada banyak jenis keluarga mikrokontroler diantaranya Intel 8048 dan
8051(MCS51), Motorola 68HC11, Microchip PIC, Hitachi H8, dan Atmel
AVR. Salah satu mikrokontroler yang banyak digunakan saat ini adalah
Mikrokontroler AVR.
AVR
adalah mikrokontroler RISC
(Reduce
Instruction Set Compute) 8-bit berdasarkan arsitektur Havard yang dibuat
oleh Atmel. Mikrokontroler AVR terdiri dari beberapa seri mikrokontrioler
diantaranya ATmega 128, 16, 2560, 32, 48, 64, 8, 8515, 8535, dan seri
Atiny 11, 12, 13, 2313, 24, 25,26, 261, 44, 45, 461, 84, 85, 861.
1.
Mikrokontroler Attiny 2313
Mikrokontroler di sini berfungs sebagai sistem minimum yang
akan melakukan pemrosesan data masukan dan data setingan, data
masukan berasal dari data real obyek dan data setingan merupakan
data standart yang telah dimasukan dalam program. Dengan
kemampuan 2K byte flash memori, Attiny 2313 merupakan dengan
tingkat kemampuan teknologi nonvolatile, ini berarti isi memori
tersebut dapat diisi ulang ataupun dihapus sesuai kenginan.
Produk mikrokontroler ATTINY 2313 memiliki fitur yang
cukup lengkap yaitu dengan kapasitas memori data dan memori
program cukup besar, interupsi, timer/counter, PWM, USART, TIWI,
analog comparator, EEPROM internal dan ADC internal yang
kesemua ada dalam ATTINY 2313. Sehingga dengan fitur yang cukup
lengkap ini memungkinkan lebih mudah, efektif dan efisien dalam
perancangan suatu kendali dalam bidang elektronika. Berikut fitur –
fitur yang dimiliki oleh ATTINY 2313
a. 130 macam instruksi
b. 32 x 8-bit register serba guna
c. Kecepatan maksimum 16 MIPS dengan clok 16 MHz
d. 2K byte flash memori
e. 512 Byte internal EEPROM
f. 512 Byte SRAM
g. Programing lock
h. 2 buah timer/counter 8-bit dan 1 buah timer/counter 16-bit
i. 4 chanel output PWM
j. 8 chanel ADC 10-bit
k. Master /slave SPI serial interface
l. Serial TWI atau I2C
m. On-chip analog coparator
2.
Konfigurasi Pin Attiny 2313
Untuk mempermudah dalam perancangan bagian hardware
suatu rangkain kendali dengan mikrokontroler ATTINY 2313 perlu
adanya pejelasan PIN dari kaki-kaki ATTINY 2313. IC ini memiliki
40 struktur PIN dimana yang 32-nya merupakan`PORT I/O yaitu
PORT A, PORT B, PORT C, dan PORT D dimana setiap PORT
terdiri dari 8 PIN. Berikut Tabel penjelasan PIN dan gambar arsitektur
Attiny 2313.
Tabel 2. Penjelasan PIN dari mikrokontroler ATtiny 2313
PIN
NO
Nama
PIN
1
PB0
2
PB1
3
PB2
4
PB3
Fungsi
Keterangan Lain
 T0 (Timer / Counter 0
External Counter Input)
 XCK (USART External
Clock Input /Output)
 T1(Tmer
/Counter
1External Counter Input)
 AIN0(Analog Comparator
Positif Input)
 INT2(External
Interupt
2Input)
 AIN1(Analog Comparator PORT B, juga merupakan
Negative Input)
Port I/O 8-bit dua arah
 OC0 (Output Compare
dengan
resistor
pull-up
Timer /Counter 0)
internal
5
PB4
 SS
(SPI Slave Select
Input)
6
PB5
 MOSI (SPI Bus Master
Output / Slave Input)
7
PB6
8
PB7
9
RESET
 MISO (SPI Bus Master
Input /Slave Output)
 SCK (SPI Bus Serial
Clock)
PIN reset yang akan bekerja
bila diberi masukan pulsa
rendah (aktif low) selama
minimal ,5 us
 Untuk ATTINY 2313L
sebesar 2,7 volt – 5,5
volt
 Untuk ATTINY 2313
sebesar 4,5 volt – 5,5
volt
Catu daya Positif
10
VCC
11
GND
12
XTAL2
output dari penguat oscillator
pembalik
13
XTAL1
input ke penguat oscillator
pembalik dan input ke
internal clock
14
PD0
RXD (USART Receiver)
15
PD1
TXD (USART Transmit)
16
PD2
INT0 (External Interupt 0
Input)
17
18
PD3
PD4
Catu daya 0
INT1(External
Input)
Interupt
1
PORT D, juga merupakan
PORT I/O 8-bit dua arah
OC1B (Output Compare B dengan
resistor
pullup
Timer / Counter 1)
internal
OC1A(Output Compare A
Timer / Counter 1)
19
PD5
20
PD6
ICP1 (Timer /
1Input Capture)
21
PD7
TOSC2 (Timer Oscilator 2)
22
PC0
SCL (Serial Clock, PC)
23
PC1
Counter
PORT C, juga meupakan
PORT I/O 8-bit dua arah
SDA (Serial Data Input /
dengan
resistor
pullup
Output PC)
24
PC2
-
25
PC3
-
26
PC4
-
27
PC5
-
28
PC6
TOSC1 (Timer Oscilator 1)
29
PC7
TOSC2 (Timer Oscilator 2)
30
AVCC
Catu daya yang digunakan
untuk masukan analog ADC
yang terhubung ke PORT A
31
GND
Teganga nol
32
AREF
Tegangan referensi analog
untuk ADC
33
PA0
ADC Chanel 1
34
PA1
ADC Chanel 2
35
PA2
ADC Chanel 3
36
PA3
ADC Chanel 4
37
PA4
ADC Chanel 5
38
PA5
ADC Chanel 6
39
PA6
ADC Chanel 7
40
PA7
ADC Chanel 8
3.
internal
PORT A, juga merupakan
PORT I/O 8-bit dua arah
dengan
resistor
pullup
internal selain difungsikan
sebagai masukan 8 chanel
ADC
Arsitektur ATtiny 2313
Secara garis besar, arsitektur mikrokontroller ATtiny 2313
terdiri dari :
a. 32 saluran I/O (Port A, Port B, Port C, dan Port D).
b. 10 bit 8 Channel ADC (Analog to Digital Converter).
c. Empat channel PWM.
d. Enam Sleep Modes : Idle, ADC Noise Reduction, Power-save,
Power-down, Standby and Extended Standby.
e. Tiga buah timer/counter.
f. Analog comparator.
g. Watchdog timer dengan osilator internal.
h. 512 byte SRAM.
i. 512 byte EEPROM.
j. Delapan kb Flash memory dengan kemampuan Read While Write.
k. Unit interupsi (internal & eksternal).
l. Port antarmuka SPI8535 memory map.
m. Port USART untuk komunikasi serial dengan kecepatan maksimal
2,5Mbps
n. 4.5 sampai 5.5V operation, 0 sampai 16MHz.
Gambar 9. Arsitektur ATtiny 2313
F.
Bahasa C
1.
Stuktur Pemrograman C
Struktur penulisan bahasa C secara umum terdiri atas empat blok,
yaitu :
a. Header.
b. Deklarasi konstanta global atau variabel.
c. Fungsi atau prosedur.
d. Program utama.
2.
Perangkat Lunak Code Vision AVR
CodeVisionAVR pada dasarnya merupakan perangkat lunak
pemrograman mikrokontroller keluarga AVR berbasis bahasa C. Ada
tiga komponen penting yang telah diintegrasikan dalam perangkat
lunak ini: Compiler C, IDE dan Program generator.
Berdasarkan spesifikasi yang dikeluarkan oleh perusahaan
pengembangnya,
compiler
C
yang
digunakan
hampir
mengimplementasikan semua komponen standar yang ada pada bahasa
C standar ANSI (seperti struktur program, jenis tipe data, jenis
operator, dan library fungsi standar-berikut penamaannya). Tetapi
walaupun demikian, dibandingkan bahasa C untuk aplikasi komputer,
compiler C untuk microcontroller ini memiliki sedikit perbedaan yang
disesuaikan dengan arsitektur AVR tempat program C tersebut
ditanamkan (embedded).
Khusus untuk library fungsi, disamping library standar (seperti
fungsi-fungsi matematik, manipulasi String, pengaksesan memori dan
sebagainya),
CodeVisionAVR
juga
menyediakan
fungsi-fungsi
tambahan yang sangat bermanfaat dalam pemrograman antarmuka
AVR dengan perangkat luar yang umum digunakan dalam aplikasi
kontrol. Beberapa fungsi library yang penting diantaranya adalah
2
fungsi-fungsi untuk pengaksesan LCD, komunikasi I C, IC RTC (Real
time Clock), sensor suhu LM75, SPI (Serial Peripheral Interface) dan
lain sebagainya.
Untuk
memudahkan
pengembangan
program
aplikasi,
CodeVisionAVR juga dilengkapi IDE yang sangat user friendly (lihat
gambar 7). Selain menu-menu pilihan yang umum dijumpai pada
setiap perangkat lunak berbasis Windows, CodeVisionAVR ini telah
mengintegrasikan
perangkat
lunak
downloader
(in
system
programmer) yang dapat digunakan untuk mentransfer kode mesin
hasil kompilasi kedalam sistem memori microcontroller AVR yang
sedang diprogram.
Gambar 10. IDE perangkat lunak CodeVisionAVR
Selain itu, CodeVisionAVR juga menyediakan sebuah tool yang
dinamakan dengan Code Generator atau CodeWizardAVR (lihat
gambar 9). Secara praktis, tool ini sangat bermanfaat membentuk
sebuah kerangka program (template), dan juga memberi kemudahan
bagi programmer dalam peng-inisialisasian register-register yang
terdapat
pada microcontroller AVR
yang sedang diprogram.
Dinamakan Code Generator, karena perangkat lunak CodeVision ini
akan membangkitkan kode-kode program secara otomatis setelah fase
inisialisasi pada jendela CodeWizardAVR selesai dilakukan. Gambar 8.
Secara teknis, penggunaan tool ini pada dasarnya hampir sama dengan
application wizard pada bahasa-bahasa pemrograman Visual untuk
komputer (seperti Visual C, Borland Delphi, dan sebagainya).
Gambar 11. Code Generator yang dapat digunakan untuk menginisialisasi
register-register pada microcontroller AVR.
Disamping versi yang komersil, Perusahaan Pavel Haiduc juga
mengeluarkan CodeVisionAVR versi Demo yang dapat didownload
dari internet secara gratis. Dalam versi ini, memori flash yang dapat
diprogram dibatasi maksimal 2K, selain itu tidak semua fungsi library
yang tersedia dapat dipanggil secara bebas. Berikut memperlihatkan
beberapa penggal baris kode program yang dibangkitkan secara
otomatis oleh CodeWizardAVR
Gambar 12. Kode-kode program yang dibangkitkan otomatis oleh
code generator
3.
Library Fungsi Code Vision AVR
Code Vision Avr memiliki banyak library fungsi akan tetapi di
sini penulis hanya mencantumkan beberapa topik yang berkaitan
dengan karya tugas akhir ini diantaranya ; fungsi input/ouput, fungsi
standar library, fungsi matematika, fungsi lcd, fungsi delay
a. Fungsi input/output
Fungsi – fungsi input/output berada di dalam file stdio.h¸ pada
subdirectory…\INC. Berikut ini beberapa fungsi I/O yang lebih
tinggi menggunakan fungsi getchar dan putchar disediakan pada
Code Vision.
1) Void puts(char*str) : output, menggunakan putchar, null
mengakhiri karakter string, berlokasi di SRAM.
2) void putsf(char flash*str) : output menggunakan putchar,
null mengakhiri karakter string , berlokasi di FLASH.
3) Void printf(char flash*fmtstr[,arg1,arg2,…] : ouput text
yang terformat, menggunakan putchar, sesuai dengan format
specifier dalam fmtstr string.
b. Fungsi standar library
Fungsi – fungsi ini berada di dalam file stdlib.h¸pada
subdirectory..\INC. Berikut ini sebagian dari beberapa fungsi
standar library yang disediakan pada Code Vision Avr:
1) Int atoi(char*str) : mengubah string str menjadi integer
2) long int atoi(char*str) : mengubah string str menjadi long
integer
3) void itoa(int n, char*str) : mengubah
integer n menjadi
karakter pada string str
4) void Itoa(long int n, char*str) : mengubah long integer n
menjadi karakter dalam string str
5) void ftoa(float n, unsigned char decimals, char*str) :
mengubah bilangan floating point n menjadi karakter pada
string str.
c. Fungsi matematika
Fungsi – fungsi ini berada di dalam file math.h¸pada
subdirectory..\INC. Berikut ini sebagian dari beberapa fungsi
matematika yang disediakan pada Code Vision Avr:
1) unsigned char cabs(signed char x) : menghasilkan nilai
absolute dari byte x.
2) Unsigned int abs(int x) : menghasilkan nilai absolute dari
bilangan integer x
3) Unsigned long labs(long int x) : menghasilkan nilai absolute
dari bilangan long integer x.
4) Float fabs(float x) : menghasilkan nilai absolute dari bilangan
floating point x.
5) Int max(int a, int b) : menghasilkan nilai maksimum dari
integer a dan b.
6) Long int Imax(long int a, long int b) : menghasilkan nilai
maksimum dari long integer a dan b.
7) Signed char csign(signed char x) : menghasilkan -1, 0, 1 jika
byte x negative, nol,positif.
8) Unsigned char isqrt(unsigned int x) : menghasilkan akar
kuadrat dari unsigned x.
d. Fungsi LCD
Fungsi LCD ditujukan untuk memudahkan interfacing antara
program C dan modul alphanumeric LCD yang dibuat dengan
chip Hitachi HD44780 atau yang serupa chip Hitachi HD44780.
Fungsi ini berada di dalam file lcd.h, pada subdirectory..\INC.
Header ini harus dimasukan (include) jika kita akan mrnggunakan
fungsi – fungsi LCD. Sebelum menggunakan fungsi ini , terlebih
dahulu harus diatur port mikrokontroler yang digunakan untuk
kominikasi dengan modul LCD. Format LCD dalam lcd.h
mendukung : 1x8, 2x12, 3x12, 1x16, 2x16,2x20, 4x20, 2x24, dan
2x40. Fungsi – fungsi untuk mengakses LCD di antaranya adalah:
1) Unsigned char lcd_init(unsigned char lcd_coloumns) : untuk
megeinisialisasi modul LCD, menghapus layer dan meletakan
posisi karakter pada baris ke-0 kolom ke-0.Jumlah kolom pada
LCD harus disebutkan (misal, 26). Kursor tidak ditampakan.
Nilai yang dikembalikan adalah 1 bila modul LCD terdeteksi,
dan bernilai 0 bila tidak terdapat modul LCD. Fungsi ini harus
dipanggil pertama kali sebelum menggunakan fungsi yang lain.
2) Voi lcd_clear(void) : menghapus layer LCD dan meletakan
posisi karakter pada baris ke-o kolom ke-0.
3) Void lcd_gotoxy(unsigned char
x, unsigned char y) :
meletakan posisi karakter pada baris ke –x dan kolom ke-y.
Nomor baris dan kolom dimulai dari nol.
4) Void lcd_putchar(char c) : menampilkan karakter c pada lcd
5) Void lcd_puts(char *str) : menampilkan string yang disimpad
di memori SRAM pada LCD
6) Void lcd_putsf(char flash *str) : menampilkan string yang
disimpan di memori FLASH pada LCD.
e. Fungsi delay
Menghasilkan delay dalam program C. Berada pada header
delay.h
yang
harus
dimasukan
(include)
sebelum
digunakan.Sebelum memanggil fungsi, interups harus dimatikan
telebih dahulu, bila tidak maka delay akan lebih lama dari yang
diharapkan. Juga sangat penting untuk menyebutkan frekuensi
clock chip IC AVR yang digunakan pada menu ProjectConfigure-C Compiler-Code Generation. Berikut fungsi – fungsi
delay yang telah disediakan pada Code Vision AVR:
1) Void delay_us(unsigned int n) : mrnghasilkan delay selama n
mikro –detik, n adalah nilai konstan.
2) Void delay_ms(unsigned int n) : menghasilkan delay selama
n mili-detik, n adalah nilai konstan.
4.
Teknik Perancangan Program
Perancangan Program diperlukan dalam proses pemrograman
guna mengetahui system yang akan dijalankan dan dapat dilakukan
pengembangan. Faktor kejelasan alur yang akan dibangun dalam suatu
system kerja program dibutuhkan agar orang lain dapat memahami
program yang dibuat. Cara yang digunakan dalam memperjelas alur
kerja program
adalh dengan diagram alir
program (flow chart).
Diagram alir dapat digunakan untuk menggambarkan terlebih dahulu
mengenai ‘apa yang harus dilakukan?’, sebagai contoh gambar
diagram alur pekerjaan:
Proses
Proses X?
tidak
ya
Proses X
Proses Y
Gambar 13. Diagram alir suatu proses
(Paulus Andi N, 2003)
Diagram alir proses di atas dapat iterangkan sebagai berikut,
setelah suatu proses dijalankan dalam mekanisme tertentu maka dari
proses tersebut akan dilakukan pengecekan hasil proses. Hasil proses
akan dicek apakah hasilnya sama dengan X atau tidak, apabila kondisi
hasil proses sama dengan X maka akan dilanjutkan ke proses X, akan
tetapi kondisi hasil tidak sama dengan X maka proses berlanjut untuk
masuk keproses Y untuk dijalankan.
Struktur yang dilakukan dalam suatu pemrograman biasanya
terdiri dari tiga bagian pokok yaitu ; pertama pernyataan (statement),
ini menggambarkan dasar mekanisme dari ‘melakukan sesuatu’
seperti pemberian nilai pada variable atau memanggil subroutine yang
ada pada program. Kedua putaran loops , ini digunakan untuk
melakukan sebuah operasi yang dilakukan beulang – ulang. Ketiga
pilihan, ini sering kali digunakan untuk pemilihan suatu obyek pilihan
yang terdiri dari dua atau lebih kelanjutan proses program yang harus
dilakukan.
Diagram alir program menggunakan symbol – symbol bentuk
flowchart yang mempunyai masing –masing fungsi tersendiri. Simbol
bentuk dan fungsiya dapat dilihat pada gambar di bawah:
Gambar 14 .Lambang dan fungsi diagram alir
Download