You are on page 1of 24

Modul I Menghidupkan dan Mematikan Led di Port Data LPT (Paralel Port) 1. Tujuan : a.

Mahasiswa dapat memahami dan melakukan pengiriman atau pengambilan data dari komputer ke periperal eksternal di luar komputer b. Mahasiswa dapat membuat pemrograman pengiriman data untuk menghidupkan dan mematikan LED menggunkan Delphi 2. Alat dan Bahan a. Komputer b. Modul peralatan praktikum PSI c. Konektor D !" 3. Prosedur Praktikum Program ini akan men#alakan semua led di LP$ data saat button %& ditekan dan mematikan semua led saat button %'' ditekan. a. uatlah tampilan (orm seperti berikut !omponen Properti utton1 8aption utton! &ame 8aption &ame Isi %n utton1 %(( utton1

b. $ambahkan nilai konstanta: onst LP$)data * +,-./ c. $uliskan kode untuk procedure outport setelah tanda direkti0e 1+23.d(m4 pada la#ar kode d. Isikan kode Pascal untuk button %&: Procedure $(orm1. utton1click 5sender: $ob6ect7/

Begin %utport 5LP$data9+''7/ end" e. Isikan kode Pascal untuk button %'': (. Procedure $(orm1. utton!click 5sender: $ob6ect7/ Begin %utport 5LP$data9+::7/ #nd/ g. Sehingga program lengkapn#a sebagai berikut: $ar 'orm1: $'orm1/ implementation 1+2 3.d(m4 procedure $'orm1. utton18lick5Sender: $%b6ect7/ %egin asm mo0 d;9+,-. mo0 al9+'' out d;9al end/ end/ procedure $'orm1. utton!8lick5Sender: $%b6ect7/ %egin asm mo0 d;9+,-. mo0 al9+:: out d;9al end" end" end.

Modul II Menghidupkan& Mematikan& dan 'ariasi Lain Pen(alaan L#D di Port Pata LPT 1. Tujuan : a. Mahasiswa dapat memahami dan melakukan pengiriman atau pengambilan data dari komputer ke periperal eksternal di luar komputer b. Mahasiswa dapat membuat pemrograman pengiriman data untuk menghidupkan 2. Alat dan Bahan a. Komputer b. Modul peralatan praktikum PSI c. Konektor D !" 3. Prosedur Praktikum Saat anda tekan tombol <on semua= ditekan led akan padam. >ntuk tombol <0ariasi= akan mengoutputkan pen#alaan led sesuai nilai #ang anda masukkan pada edit. Sehingga anda wa6ib mengisikan terlebih dahulu suatu nilai antara :?!"" pada edit sebelum menekan tombol <0ariasi=. a. uatlah tampilan (orm seperti berikut : dan mematikan dan mem0arisi pen#alaan LED menggunkan Delphi

b. $ambahkan nilai konstanta: c. $uliskan kode untuk procedure outport setelah tanda direkti0e 1+39.d(m4 pada la#ar kode. d. Isikan kode Pascal untuk button %&: e. Isikan kode Pascal untuk button %'': (. Isikan button pascal untuk button @ariasi: g. Sehingga program lengkapn#a sebagai berikut: $ar 'orm1: $'orm1/ onst LP$data*+,-./ implementation 1+2 3.d(m4 procedure outport 5alamat:word/data:b#te7/ %egin asm mo0 d;9alamat mo0 al9data

out d;9al end" end" procedure $'orm1. utton18lick5Sender: $%b6ect7/ %egin outport5LP$data9+''7 end" procedure $'orm1. utton!8lick5Sender: $%b6ect7/ %egin outport5LP$data9+::7 end" procedure $'orm1. utton,8lick5Sender: $%b6ect7/ $ar data)0ariasi :integer/ %egin data)0ariasi:*Str$oInt5edit1.te;t7/ outport5LP$data9data)0ariasi7/ end" procedure $'orm1. uttonA8lick5Sender: $%b6ect7/ %egin )lose" end" end. atatan *

Saat program di <run=9 6ika tombol 0ariasi ditekan sebelum anda memasukkan nilai dalam la#ar edit maka akan tampil pesan kesalahan dari window sesuai sistem #ang anda gunakan sebagai berikut:

Saat itu seolah?olah delphi mengalami <hang=9 untuk menghentikan program lakukan hal?hal berikut: 1. !. $ekan %K pada pesan kesalahan di atas Pilih menu 2un lalu Program 2eset pada la#ar Delphi atau tekan 8trlB'!. Maka program akan kembali normal kembali. Program anda di pro#ek ! dapat dimodi(ikasi sedikit supa#a tidak mengalami pesan kesalahan dari window seperti di atas9 #aitu dengan menambahkan Message dialog pada prosedur button 0ariasi sehingga prosedur lengkapn#a sebagai berikut: procedure $'orm1. utton,8lick5Sender: $%b6ect7/ $ar data)0ariasi:integer/ %egin i( edit1.$e;t*CC then MessageDlg5CIsikan C9mtin(ormation9EmboKF9:7 else data)0ariasi:* Str$oInt5edit1.te;t7/ outport5LP$)data9data)0ariasi7/ end" &ilai $erlebih Dahulu DD

Modul III Pengenalan Dela( untuk aplikasi Lampu Berjalan 1. Tujuan : a. Mahasiswa dapat memahami dan melakukan pengiriman atau pengambilan data dari komputer ke periperal eksternal di luar komputer b. Mahasiswa 2. Alat dan Bahan a. Komputer b. Modul peralatan praktikum PSI c. Konektor D !" 3. Prosedur Praktikum Suatu dela# sangat berguna dalam teknik inter(acing. Sub rutin dela# akan melakukan proses <buang?buang waktu=sehingga tundaan #ang dihasilkan dapat berman(aat9 misal: untuk aplikasi led9 GD89 motor stepper dan sebagain#a. a. uatlah tampilan (orm sederhana berikut. Hika tombol <Io= anda tekan maka led akan men#ala bergantian dari kiri ke kanan dapat membuat pemrograman untuk lampu ber6alan menggunakan Delphi

!omponen utton1 it utton1

Properti 8aption &ame Kind &ame

Isi Io utton1 k8lose it tn1

b.

$uliskan pro)edure dela( seperti dibawah ini9 bisa diletakkan sebelum pro)edure outport atau sesudahn#a. procedure dela# 5lama:longint7/ 1: $ar !: re( : longint/ ,: %egin A: re(:*gettickcount/ ": repeat J: application.ProcessMessages/ -: until 55gettickcount?re(7 K*lama7 .: end/ Pen6elasan:

aris 1 dan !

: digunakan untuk deklarasi 0ariabel re( dengan 6enis longint 5seluruh !1A-A.,J,-7 bilangan antara ?!1A-A.,J. sampai

aris A aris J

: (ungsi gettickcount9 merupakan (ungsi #ang dimiliki delphi untuk mengambil pewaktuan komputer saat itu : dengan menuliskan application Process Messages maka saa procedure dela# di6alankan9 berbagai aplikasi window masih dapa beker6a. aris J akan diulang terus menerus sampai s#arat pada baris - terpenuhi 5true7.

c.

Program lengkap sebagai berikut: $ar 'orm1: $'orm1/ const LP$)data*+,-./ implementation 1+2 3.d(m4 procedure dela#5t:LongInt7/ $ar mulai9selesai:LongInt/ %egin mulai:*Iet$ick8ount/ repeat application.processMessages/ selesai:*Iet$ick8ount/ until 5selesai?mulai7K*t/ end" procedure outport5alamat:word/data:b#te7/

%egin asm mo0 d;9alamat mo0 al9 data out d;9al end" end" procedure $'orm1. utton18lick5Sender: $%b6ect7/ %egin )lose end"

procedure $'orm1. utton!8lick5Sender: $%b6ect7/ $ar i9n:integer/ data:b#te/ %egin (or n:*1 to , do %egin data:*1!./ (or i:* 1 to . do %egin outport5LP$)data9data7/ asm 2%L data91 end" dela#5":7/ end" end"

end" end.

Modul I' Pengenalan Timer& Lampu %erjalan +. Tujuan * a. Mahasiswa dapat memahami dan melakukan pengiriman atau pengambilan data dari komputer ke periperal eksternal di luar komputer b. Mahasiswa dapat membuat pemrograman menggunakan timer untuk lampu ber6alan 2. Alat dan Bahan a. Komputer b. Modul peralatan praktikum PSI c. Konektor D !" 3. Prosedur Praktikum Pada pro#ek ini anda akan meman(aatkan timer sehingga waktu #ang digunakan untuk dela# atau keperluan #ang lain benar?benar tepat dalam satuan waktu9 misal : ":: mili detuk9 1 detik9 ! detik dan seterusn#a. Komponen timer dapat diambil di palette S#stem9 properti #ang penting adalah: #na%le True9 timer akti(

Inter$al

,alse9 timer tidak ber(ungsi Selang waktu #ang digunakan untuk mengakti(kan aplikasi pada procedure timer. Satuann#a milidetik

a.

uatlah tampilan (orm sebagai berikut:

Komponen timer dapat diletakkan disembarang tempat pada (orm karena tidak dapat ditampilkan saat program di6alankan. Kecepatan 6alann#a led tergantung pada nilai #ang anda masukkan pada properti inter0al. !omponen utton1 utton! Properti 8aption &ame 8aption Isi Halan utton1 S$%P

itbutton $imer1 5terletak palette S#stem7

&ame Kind di Enabled &ame Inter0al

utton! bk8lose 'alse $imer1 1:::

b. Klik ganda (orm disembarang tempat9 dan isikan kode pascal berikut: pro)edure T,orm+.,orm reate(-ender* T.%je)t)" %egin data:*+.:/ end" kode diatas berguna sebagai inisialisasi nilai awal led saat (orm pertama kali muncul. Kemudian pada langkah berikutn#a nilai led itu akan kita geser ke kanan sehingga menghasilkan lampu ber6alan. c. Klik ganda komponen timer dan isikanlah kode berikut: pro)edure T,orm+.Timer+Timer(-ender* T.%je)t)" begin outport5LP$)data9data7/ asm 2%2 data91 end" end" Kode #ang anda tuliskan diantara begin dan end9 akan di6alankan setiap 1::: ms atau setiap 1 detik9 hal ini sesuai dengan inter0al #ang anda masukkan pada properti $imer. Sehingga n#ala led akan di <rotate=ke kanan 1 kali setiap detik. d. Isikan kode pascal untuk tombol 6alan: pro)edure T,orm+.Button+ li)k(-ender* T.%je)t)" %egin timer1.enabled:*true/ end" LL kondisi awal laed: 1::: ::: outport5LP$)data9data7/

kode ini digunakan untuk me?nonakti(kan timer 6ika tombol 6alan ditekan. e. Isikan kode pascal untuk tombol stop: pro)edure T,orm+.Button+ li)k(-ender* T.%je)t)" %egin timer1.enabled:*(alse/ end" kode ini digunakan untuk me?nonakti(kan timer saat tombol stop diletakan. (. Kode lengkap dapat dilihat swbagai berikut: 56angan lupa menambahkan 0ariabel da#a9 konstanta LP$)data dan prosedur outport7 $ar 'orm1: $'orm1/ data:b#te/ )onst LP$)data*+,-./ implementation 1+2 3.d(m4 procedure outport5alamat:word/data:b#te7/ %egin asm mo0 d;9alamat mo0 al9data out d;9al end" end" procedure $'orm1. utton18lick5Sender: $%b6ect7/ begin timer1.Enabled:*true/ end"

procedure $'orm1. utton!8lick5Sender: $%b6ect7/ %egin timer1.Enabled:*(alse/ end" procedure $'orm1.$imer1$imer5Sender: $%b6ect7/ %egin outport5LP$)data9data7/ asm 2%2 data91 end" end" procedure $'orm1. utton,8lick5Sender: $%b6ect7/ %egin )lose" end" procedure $'orm1.'orm8reate5Sender: $%b6ect7/ %egin data:*+.:/ outport5LP$)data9data7/ end" end.

Modul ' Penggunaan /adio 0roup +. Tujuan * a. Mahasiswa dapat memahami dan melakukan pengiriman atau pengambilan data dari komputer ke periperal eksternal di luar komputer b. Mahasiswa dapat membuat pemrograman tentang penggunaan 2adio utton 2. Alat dan Bahan a. Komputer b. Modul peralatan praktikum PSI c. Konektor D !" 3. Prosedur Praktikum Pada pro#ek ini anda akan mengembangkan pro#ek sebelumn#a dengan menu pilihan untuk putar kanan dan putar kiri pen#alaan led menggunakan 2adio Iroup. a. uatlah tampilan (orm sebagai berikut:

!omponen utton1 utton! 2adioIroup it utton $imer1

Properti 8aption &ame 8aption &ame 8aption Items Kind Enabled Inter0al

Isi Start utton1 Stop utton! Grah Led Putar Kanan Putar Kiri bk8lose 'alse !::

b. Isikan kode pascal untuk komponen $imer: procedure $'orm1.$imer1timer 5Sender: $%b6ect7/ %egin i( radiogroup1.iteminde;*: then %egin outport5LP$)data9data7/ asm 2%2 data91 then end" end" i( radiogroup1.iteminde;*1 then %egin outport5P$)data9data7/

asm 2%L data91 end" end" end" Pen6elasan: aris , dan 1: : digunakan untuk menditeksi pilihan pada radio group apakah #ang dipilih putar kanan ataukah pitar kiri. Item inde; : adalah pilihan #ang teratas #aitu putar kanan. Item inde; 1 untuk pilihan putar kiri. Hika masih ada pilihan #ang ketiga maka nomor item inde; berikutn#a adalah ! aris A?M : han#a akan di6alankan 6ika item inde; bernilai :9 artin#a pilihan pada putar kanan. aris 11?1J : han#a akan di6alankan 6ika item inde; bernilai 1 5putar kiri7 c. Sehingga program lengkap sebagai berikut: $ar 'orm1: $'orm1/ data:b#te/ )onst LP$)data*+,-./ implementation 1+2 3.d(m4 procedure outport5alamat:word/data:b#te7/ %egin asm mo0 d;9alamat mo0 al9data out d;9al end" end" procedure $'orm1. utton18lick5Sender: $%b6ect7/ %egin timer1.Enabled:*true/ end" procedure $'orm1. utton!8lick5Sender: $%b6ect7/ %egin timer1.Enabled:*(alse/ end"

procedure $'orm1. utton,8lick5Sender: $%b6ect7/ %egin )lose" end" procedure $'orm1.$imer1$imer5Sender: $%b6ect7/ %egin i( radiogroup1.ItemInde;*: then %egin outport5LP$)data9data7/ asm 2%2 data91 end" end" i( radiogroup1.ItemInde;*1 then %egin outport5LP$)data9data7/ asm 2%L data91 end" end" end" procedure $'orm1.'orm8reate5Sender: $%b6ect7/ %egin data:*+1:/ outport5LP$)data9data7/ end" procedure $'orm1. it tn18lick5Sender: $%b6ect7/ %egin lose" end"

end.

Modul 'I Penggunaan -)roll Bar untuk mengendalikan timer 1. Tujuan : a. Mahasiswa dapat memahami dan melakukan pengiriman atau pengambilan data dari komputer ke periperal eksternal di luar komputer b. Mahasiswa dapat membuat pemrograman tentang penggunaan Scroll >ntuk mengendalikan $imer 2. Alat dan Bahan a. Komputer b. Modul peralatan praktikum PSI c. Konektor D !" 3. Prosedur Praktikum Pro#ek anda kali ini akan lebih kompleks dan mengas#ikkan. Hika pada pro#ek sebelumn#a kecepatan 6alann#a led tergantung nilai #ang diisikan dalam pada properti inter0al timer9 maka kali ini anda dapat mengatur kecepatan led lewat scroll bar. ar

a.

uatlah tampilan (orm seperti pro#ek lima sekali lagi namun dengan menambahkan sebuah scroll bar.

Komponen utton1 utton!

Properti 8aption &ame 8aption &ame Properti 8aption ItemsN Isi Grah Led Putar Kanan Putar Kiri 'alse !:: !:: !::: !:: kecepatan:

isi Start utton1 Stop utton!

!omponen 2adioIroup1

$imer1 Scrol1

Enabed Inter0al Min Ma; Large8hange 8aption

Label1

b. Isikan kode Pascal untuk Scroll ar. Klik ganda komponen Scroll ar dan tuliskan pro)edure T,orm+.-)rollBar+ hange(-ender *T.%je)t)"

%egin timer1.inter0al:*scrollbar1.position/ 1end" c. Isi kode #ang sama dengan pro#ek ". Kode selengkapn#a sebagai berikut: 'ar 'orm1: $'orm1/ data:b#te/ )onst LP$)data*+,-./ implementation 1+2 3.d(m4 procedure outport5alamat:word/data:b#te7/ %egin asm mo0 d;9alamat mo0 al9data out d;9al end" end" procedure $'orm1.Scroll ar18hange5Sender: $%b6ect7/ %egin timer1.Inter0al:*scrollbar1.Position/ end" procedure $'orm1.'orm8reate5Sender: $%b6ect7/ %egin data:*+1:/ end"

procedure $'orm1. utton18lick5Sender: $%b6ect7/ %egin timer1.Enabled:*true/ end" procedure $'orm1. utton!8lick5Sender: $%b6ect7/ %egin timer1.Enabled:*(alse/ end" procedure $'orm1.$imer1$imer5Sender: $%b6ect7/ %egin i( radiogroup1.ItemInde;*: then %egin outport5LP$)data9data7/ asm 2%2 data91 end" end" i( radiogroup1.ItemInde;*1 then %egin outport5LP$)data9data7/ asm 2%L data91 end" end" end" pro)edure T,orm+.Button3 li)k(-ender* T.%je)t)" %egin )lose" end"

end.

You might also like