LAMPIRAN CODE PROGRAM ASSEMBLY. $mod51 servo1 equ p3.5 servo2 equ p3.3 servo3 equ p1.7 servo4 equ p1.5 servo5 equ p1.3 servo6 equ p1.
|
|
- Yohanes Suparman Hartanto
- 6 tahun lalu
- Tontonan:
Transkripsi
1 L1 LAMPIRAN CODE PROGRAM ASSEMBLY $mod51 servo1 equ p3.5 servo2 equ p3.3 servo3 equ p1.7 servo4 equ p1.5 servo5 equ p1.3 servo6 equ p1.1 led1 equ p3.4 led2 equ p3.2 led3 equ p3.7 led4 equ p3.6 led5 equ p1.2 led6 equ p1.0 sw equ p2.0 cw1 equ p2.3 ccw1 equ p2.4 cw2 equ p2.5 ccw2 equ p2.6 cw3 equ p2.7 ccw3 equ p0.7 cw4 equ p0.5 ccw4 equ p0.4 cw5 equ p0.3 ccw5 equ p0.2 cw6 equ p0.1 ccw6 equ p0.0 turun1 equ 30h turun2 equ 31h turun3 equ 32h turun4 equ 33h turun5 equ 34h turun6 equ 35h turun7 equ 36h turun8 equ 37h turun9 equ 38h turun10 equ 39h time_servo equ 50h time_servo1 equ 51h time_servo2 equ 52h time_servo3 equ 53h time_servo4 equ 54h time_servo5 equ 55h
2 L2 time_servo6 equ 56h pakai1 equ 57h pakai2 equ 58h pakai3 equ 59h pakai4 equ 5ah pakai5 equ 5bh pakai6 equ 5ch org 0000h sjmp main org 0030h main: clr led1 clr led2 clr led3 clr led4 clr led5 clr led6 clr servo1 clr servo2 clr servo3 clr servo4 clr servo5 clr servo6 mov scon,#50h mov tmod,#20h mov th1,#-3 mov a,pcon clr 0e7h mov pcon,a setb tr1 ajmp tunggu_serial2 ; ;Tunggu terima data dari Serial Port ; tunggu_serial1: jb sw,tunggu_serial2a ajmp sw_prog tunggu_serial2: clr ri tunggu_serial2a: jnb ri,tunggu_serial1 mov 40h,sbuf clr ri jnb ri,$
3 L3 mov 41h,sbuf clr ri jnb ri,$ mov 42h,sbuf clr ri jnb ri,$ mov 43h,sbuf clr ri jnb ri,$ mov 44h,sbuf clr ri jnb ri,$ mov 45h,sbuf clr ri jnb ri,$ mov 46h,sbuf clr ri jnb ri,$ mov 47h,sbuf clr ri jnb ri,$ mov 48h,sbuf clr ri jnb ri,$ mov 49h,sbuf clr ri jnb ri,$ mov 4ah,sbuf clr ri jnb ri,$ mov 4bh,sbuf clr ri jnb ri,$ mov 4ch,sbuf clr ri jnb ri,$ mov 4dh,sbuf clr ri jnb ri,$ mov 4eh,sbuf clr ri jnb ri,$
4 L4 mov 4fh,sbuf clr ri jnb ri,$ mov 5dh,sbuf clr ri jnb ri,$ mov 5eh,sbuf mov r0,#40h mov r1,#42h acall cek_data mov r0,#43h mov r1,#45h acall cek_data mov r0,#46h mov r1,#48h acall cek_data mov r0,#49h mov r1,#4bh acall cek_data mov r0,#4ch mov r1,#4eh acall cek_data mov r0,#4fh mov r1,#5eh acall cek_data ; ;Proses memutar Servo ; proses_servo: mov pakai1,#0 mov pakai2,#0 mov pakai3,#0 mov pakai4,#0 mov pakai5,#0 mov pakai6,#0 mov turun1,#200 mov turun2,#200 mov turun3,#200 mov turun4,#200 mov turun5,#200
5 L5 mov turun6,#200 mov turun7,#200 mov turun8,#200 mov turun9,#200 mov turun10,#200 setb servo1 jeda1: inc pakai1 acall delay10us djnz time_servo1,jeda1 clr servo1 setb servo2 jeda2: inc pakai2 acall delay10us djnz time_servo2,jeda2 clr servo2 setb servo3 jeda3: inc pakai3 acall delay10us djnz time_servo3,jeda3 clr servo3 setb servo4 jeda4: inc pakai4 acall delay10us djnz time_servo4,jeda4 clr servo4 setb servo5 jeda5: inc pakai5 acall delay10us djnz time_servo5,jeda5 clr servo5 setb servo6 jeda6: inc pakai6 acall delay10us djnz time_servo6,jeda6 clr servo6 clr c mov a,turun1 subb a,pakai1 mov turun1,a
6 L6 clr c mov a,turun2 subb a,pakai2 mov turun2,a clr c mov a,turun3 subb a,pakai3 mov turun3,a clr c mov a,turun4 subb a,pakai4 mov turun4,a clr c mov a,turun5 subb a,pakai5 mov turun5,a clr c mov a,turun6 subb a,pakai6 mov turun6,a wait_turun1: acall delay10us djnz turun1,wait_turun1 wait_turun2: acall delay10us djnz turun2,wait_turun2 wait_turun3: acall delay10us djnz turun3,wait_turun3 wait_turun4: acall delay10us djnz turun4,wait_turun4 wait_turun5: acall delay10us djnz turun5,wait_turun5 wait_turun6: acall delay10us
7 L7 djnz turun6,wait_turun6 wait_turun7: acall delay10us djnz turun7,wait_turun7 wait_turun8: acall delay10us djnz turun8,wait_turun8 wait_turun9: acall delay10us djnz turun9,wait_turun9 wait_turun10: acall delay10us djnz turun10,wait_turun10 ajmp tunggu_serial2 ; ;Proses cek data yang diterima dari Serial Port ; cek_data: mov cek_servo1: cjne a,#'1',cek_servo2 lcall cek_arah mov time_servo1,time_servo cek_servo2: cjne a,#'2',cek_servo3 lcall cek_arah mov time_servo2,time_servo cek_servo3: cjne a,#'3',cek_servo4 lcall cek_arah mov time_servo3,time_servo cek_servo4: cjne a,#'4',cek_servo5 lcall cek_arah mov time_servo4,time_servo
8 L8 cek_servo5: cjne a,#'5',cek_servo6 lcall cek_arah mov time_servo5,time_servo cek_servo6: cjne a,#'6',bukan_servo lcall cek_arah mov time_servo6,time_servo bukan_servo: ; ;Proses cek arah putaran servo ; cek_arah: mov arah0: cjne a,#'0',arah1 mov time_servo,#175 arah1: cjne a,#'1',arah2 mov time_servo,#165 arah2: cjne a,#'2',arah3 mov time_servo,#155 arah3: cjne a,#'3',arah4 mov time_servo,#145 arah4: cjne a,#'4',arah5 mov time_servo,#135 arah5: cjne a,#'5',arah6 mov time_servo,#125 arah6: cjne a,#'6',arah7 mov time_servo,#115
9 L9 arah7: cjne a,#'7',arah8 mov time_servo,#105 arah8: cjne a,#'8',arah9 mov time_servo,#95 arah9: cjne a,#'9',araha mov time_servo,#85 araha: cjne a,#'a',arahb mov time_servo,#75 arahb: cjne a,#'b',arahc mov time_servo,#65 arahc: cjne a,#'c',bukan_arah mov time_servo,#55 bukan_arah: ; ;Program deteksi switch tanpa komputer PC ; sw_prog: mov 60h,#1 mov 61h,#6 mov 62h,#2 mov 63h,#6 mov 64h,#3 mov 65h,#6 mov 66h,#4 mov 67h,#6 mov 68h,#5 mov 69h,#6 mov 6ah,#6 mov 6bh,#6 sw_prog1: jnb sw,cek_cw1
10 L10 ajmp tunggu_serial2 ; cek_cw1:jb cw1,cek_ccw1 setb led1 lcall delay jnb cw1,$ clr led1 mov a,61h cjne a,#12,cek_cw1a ajmp sw_prog2 cek_cw1a: inc 61h ajmp sw_prog2 cek_ccw1: jb ccw1,cek_cw2 setb led1 lcall delay jnb ccw1,$ clr led1 mov a,61h cjne a,#0,cek_ccw1a ajmp sw_prog2 cek_ccw1a: dec 61h ajmp sw_prog2 ; cek_cw2: jb cw2,cek_ccw2 setb led2 lcall delay jnb cw2,$ clr led2 mov a,63h cjne a,#12,cek_cw2a ajmp sw_prog2 cek_cw2a: inc 63h ajmp sw_prog2 cek_ccw2: jb ccw2,cek_cw3 setb led2 lcall delay
11 L11 jnb ccw2,$ clr led2 mov a,63h cjne a,#0,cek_ccw2a ajmp sw_prog2 cek_ccw2a: dec 63h ajmp sw_prog2 ; cek_cw3: jb cw3,cek_ccw3 setb led3 lcall delay jnb cw3,$ clr led3 mov a,65h cjne a,#12,cek_cw3a ajmp sw_prog2 cek_cw3a: inc 65h ajmp sw_prog2 cek_ccw3: jb ccw3,cek_cw4 setb led3 lcall delay jnb ccw3,$ clr led3 mov a,65h cjne a,#0,cek_ccw3a ajmp sw_prog2 cek_ccw3a: dec 65h ajmp sw_prog2 ; cek_cw4: jb cw4,cek_ccw4 setb led4 lcall delay jnb cw4,$ clr led4 mov a,67h cjne a,#12,cek_cw4a ajmp sw_prog2
12 L12 cek_cw4a: inc 67h ajmp sw_prog2 cek_ccw4: jb ccw4,cek_cw5 setb led4 lcall delay jnb ccw4,$ clr led4 mov a,67h cjne a,#0,cek_ccw4a ajmp sw_prog2 cek_ccw4a: dec 67h ajmp sw_prog2 ; cek_cw5: jb cw5,cek_ccw5 setb led5 lcall delay jnb cw5,$ clr led5 mov a,69h cjne a,#12,cek_cw5a ajmp sw_prog2 cek_cw5a: inc 69h ajmp sw_prog2 cek_ccw5: jb ccw5,cek_cw6 setb led5 lcall delay jnb ccw5,$ clr led5 mov a,69h cjne a,#0,cek_ccw5a ajmp sw_prog2 cek_ccw5a: dec 69h ajmp sw_prog2 ;
13 L13 cek_cw6: jb cw6,cek_ccw6 setb led6 lcall delay jnb cw6,$ clr led6 mov a,6bh cjne a,#12,cek_cw6a ajmp sw_prog2 cek_cw6a: inc 6bh ajmp sw_prog2 cek_ccw6: jb ccw6,sw_prog2 setb led6 lcall delay jnb ccw6,$ clr led6 mov a,6bh cjne a,#0,cek_ccw6a ajmp sw_prog2 cek_ccw6a: dec 6bh ajmp sw_prog2 ; sw_prog2: mov r0,#60h mov r1,#61h acall cek_datax mov r0,#62h mov r1,#63h acall cek_datax mov r0,#64h mov r1,#65h acall cek_datax mov r0,#66h mov r1,#67h acall cek_datax mov r0,#68h mov r1,#69h
14 L14 acall cek_datax mov r0,#6ah mov r1,#6bh acall cek_datax ; ;Proses memutar Servo tanpa komputer PC ; proses_servox: mov pakai1,#0 mov pakai2,#0 mov pakai3,#0 mov pakai4,#0 mov pakai5,#0 mov pakai6,#0 mov turun1,#200 mov turun2,#200 mov turun3,#200 mov turun4,#200 mov turun5,#200 mov turun6,#200 mov turun7,#200 mov turun8,#200 mov turun9,#200 mov turun10,#200 setb servo1 jeda1x: inc pakai1 acall delay10us djnz time_servo1,jeda1x clr servo1 setb servo2 jeda2x: inc pakai2 acall delay10us djnz time_servo2,jeda2x clr servo2 setb servo3 jeda3x: inc pakai3 acall delay10us djnz time_servo3,jeda3x clr servo3 setb servo4 jeda4x: inc pakai4
15 L15 acall delay10us djnz time_servo4,jeda4x clr servo4 setb servo5 jeda5x: inc pakai5 acall delay10us djnz time_servo5,jeda5x clr servo5 setb servo6 jeda6x: inc pakai6 acall delay10us djnz time_servo6,jeda6x clr servo6 clr c mov a,turun1 subb a,pakai1 mov turun1,a clr c mov a,turun2 subb a,pakai2 mov turun2,a clr c mov a,turun3 subb a,pakai3 mov turun3,a clr c mov a,turun4 subb a,pakai4 mov turun4,a clr c mov a,turun5 subb a,pakai5 mov turun5,a clr c mov a,turun6 subb a,pakai6 mov turun6,a wait_turun1x:
16 L16 acall delay10us djnz turun1,wait_turun1x wait_turun2x: acall delay10us djnz turun2,wait_turun2x wait_turun3x: acall delay10us djnz turun3,wait_turun3x wait_turun4x: acall delay10us djnz turun4,wait_turun4x wait_turun5x: acall delay10us djnz turun5,wait_turun5x wait_turun6x: acall delay10us djnz turun6,wait_turun6x wait_turun7x: acall delay10us djnz turun7,wait_turun7x wait_turun8x: acall delay10us djnz turun8,wait_turun8x wait_turun9x: acall delay10us djnz turun9,wait_turun9x wait_turun10x: acall delay10us djnz turun10,wait_turun10x ajmp sw_prog1 ; ;Program cek servo tanpa menggunakan Komputer ; cek_datax: mov cek_servo1x: cjne a,#1,cek_servo2x
17 L17 lcall cek_arahx mov time_servo1,time_servo cek_servo2x: cjne a,#2,cek_servo3x lcall cek_arahx mov time_servo2,time_servo cek_servo3x: cjne a,#3,cek_servo4x lcall cek_arahx mov time_servo3,time_servo cek_servo4x: cjne a,#4,cek_servo5x lcall cek_arahx mov time_servo4,time_servo cek_servo5x: cjne a,#5,cek_servo6x lcall cek_arahx mov time_servo5,time_servo cek_servo6x: cjne a,#6,bukan_servox lcall cek_arahx mov time_servo6,time_servo bukan_servox: ; ;Proses cek arah putaran servo sesuai tombol ; cek_arahx: mov arah0x:cjne a,#0,arah1x mov time_servo,#175
18 L18 arah1x:cjne a,#1,arah2x mov time_servo,#165 arah2x:cjne a,#2,arah3x mov time_servo,#155 arah3x:cjne a,#3,arah4x mov time_servo,#145 arah4x:cjne a,#4,arah5x mov time_servo,#135 arah5x:cjne a,#5,arah6x mov time_servo,#125 arah6x:cjne a,#6,arah7x mov time_servo,#115 arah7x:cjne a,#7,arah8x mov time_servo,#105 arah8x:cjne a,#8,arah9x mov time_servo,#95 arah9x:cjne a,#9,arahax mov time_servo,#85 arahax: cjne a,#10,arahbx mov time_servo,#75 arahbx:cjne a,#11,arahcx mov time_servo,#65 arahcx: cjne a,#12,bukan_arahx mov time_servo,#55
19 L19 bukan_arahx: ; ;Subrutin Delay ; delay20ms: push 70h push 71h mov 70h,#20 loop20a: mov 71h,#200 loop20b:nop nop nop djnz 71h,loop20b djnz 70h,loop20a pop 71h pop 70h delay10us: nop nop nop nop nop nop delay: push 70h push 71h mov 70h,#200 loop1: mov 71h,#200 loop: nop nop nop djnz 71h,loop djnz 70h,loop1 pop 71h pop 70h
20 L20 LAMPIRAN LISTING PROGRAM VISUAL BASIC 1. Listing Program Module Public Declare Function GetPrivateProfileString Lib "kernel32" Alias _ "GetPrivateProfileStringA" (ByVal lpapplicationname As String, ByVal _ lpkeyname As Any, ByVal lpdefault As String, ByVal lpreturnedstring As String, _ ByVal nsize As Long, ByVal lpfilename As String) As Long Public Declare Function WritePrivateProfileString Lib "kernel32" Alias _ "WritePrivateProfileStringA" (ByVal lpapplicationname As String, ByVal _ lpkeyname As Any, ByVal lpstring As Any, ByVal lpfilename As String) As Long Public nsa1 As String Public nsa2 As String Public nsa3 As String Public nsa4 As String Public nsa5 As String Public nsa6 As String Public nsb1 As String Public nsb2 As String Public nsb3 As String Public nsb4 As String Public nsb5 As String Public nsb6 As String Public INIFileName As String Public pathload As String Public Sub getisistr() Dim isa1 As String * 20 Dim isa2 As String * 20 Dim isa3 As String * 20 Dim isa4 As String * 20 Dim isa5 As String * 20 Dim isa6 As String * 20 Dim isb1 As String * 20 Dim isb2 As String * 20 Dim isb3 As String * 20 Dim isb4 As String * 20 Dim isb5 As String * 20 Dim isb6 As String * 20
21 L21 'INIFileName = App.Path & "\Template.txt" ' Result1 = GetPrivateProfileString("ATAS", "Servo1", "", isa1, Len(iSa1), INIFileName) Result2 = GetPrivateProfileString("ATAS", "Servo2", "", isa2, Len(iSa2), INIFileName) Result3 = GetPrivateProfileString("ATAS", "Servo3", "", isa3, Len(iSa3), INIFileName) Result4 = GetPrivateProfileString("ATAS", "Servo4", "", isa4, Len(iSa4), INIFileName) Result5 = GetPrivateProfileString("ATAS", "Servo5", "", isa5, Len(iSa5), INIFileName) Result6 = GetPrivateProfileString("ATAS", "Servo6", "", isa6, Len(iSa6), INIFileName) Result7 = GetPrivateProfileString("BAWAH", "Servo1", "", isb1, Len(iSb1), INIFileName) Result8 = GetPrivateProfileString("BAWAH", "Servo2", "", isb2, Len(iSb2), INIFileName) Result9 = GetPrivateProfileString("BAWAH", "Servo3", "", isb3, Len(iSb3), INIFileName) Result10 = GetPrivateProfileString("BAWAH", "Servo4", "", isb4, Len(iSb4), INIFileName) Result11 = GetPrivateProfileString("BAWAH", "Servo5", "", isb5, Len(iSb5), INIFileName) Result12 = GetPrivateProfileString("BAWAH", "Servo6", "", isb6, Len(iSb6), INIFileName) ' nsa1 = LCase(tanpaspace(iSa1)) nsa2 = LCase(tanpaspace(iSa2)) nsa3 = LCase(tanpaspace(iSa3)) nsa4 = LCase(tanpaspace(iSa4)) nsa5 = LCase(tanpaspace(iSa5)) nsa6 = LCase(tanpaspace(iSa6)) nsb1 = LCase(tanpaspace(iSb1)) nsb2 = LCase(tanpaspace(iSb2)) nsb3 = LCase(tanpaspace(iSb3)) nsb4 = LCase(tanpaspace(iSb4)) nsb5 = LCase(tanpaspace(iSb5)) nsb6 = LCase(tanpaspace(iSb6)) End Sub
22 L22 Public Function tanpaspace(byval strstring As String) As String Dim i As Integer, ninstr As Integer Const strvar = " ABCDEFGHIJKLMNOPQRSTUVWXYZ_,./<>*-" Const strenc = " ABCDEFGHIJKLMNOPQRSTUVWXYZ_,./<>*-" 'PZMQLXKATSFCWUNEMRYHDOBVIJ ' 'PQLAMZXNSKOWIEJDBCVHFURYTG ' If Trim(strString) = "" Then tanpaspace = "" Exit Function End If strstring = UCase(strString) tanpaspace = "" For i = 1 To Len(strString) ninstr = InStr(1, strenc, Mid(strString, i, 1), vbtextcompare) If ninstr = 0 Then tanpaspace = tanpaspace + "" Else tanpaspace = tanpaspace + Mid(strVar, ninstr, 1) End If Next End Function 2. Listing Porgram Form 1 Dim urut As Integer Dim abisload As Boolean Dim jumlahfile As Integer Dim hitfile As Integer Private Sub Command1_Click() MSComm1.CommPort = Combo1.Text MSComm1.PortOpen = True urut = 1 Timer1.Enabled = True Command1.Enabled = False Combo1.Enabled = False
23 L23 End Sub Private Sub Command108_Click(Index As Integer) Label8(6).Caption = Command108(Index).Caption If Index = 0 Then Label14(6).Caption = "6,0" ElseIf Index = 1 Then Label14(6).Caption = "6,1" ElseIf Index = 2 Then Label14(6).Caption = "6,2" ElseIf Index = 3 Then Label14(6).Caption = "6,3" ElseIf Index = 4 Then Label14(6).Caption = "6,4" ElseIf Index = 5 Then Label14(6).Caption = "6,5" ElseIf Index = 6 Then Label14(6).Caption = "6,6" ElseIf Index = 7 Then Label14(6).Caption = "6,7" ElseIf Index = 8 Then Label14(6).Caption = "6,8" ElseIf Index = 9 Then Label14(6).Caption = "6,9" ElseIf Index = 10 Then Label14(6).Caption = "6,a" ElseIf Index = 11 Then Label14(6).Caption = "6,b" ElseIf Index = 12 Then Label14(6).Caption = "6,c" End If End Sub Private Sub Command18_Click(Index As Integer) Label8(1).Caption = Command18(Index).Caption 'Label14(1).Caption If Index = 0 Then Label14(1).Caption = "1,0" ElseIf Index = 1 Then Label14(1).Caption = "1,1" ElseIf Index = 2 Then Label14(1).Caption = "1,2"
24 L24 ElseIf Index = 3 Then Label14(1).Caption = "1,3" ElseIf Index = 4 Then Label14(1).Caption = "1,4" ElseIf Index = 5 Then Label14(1).Caption = "1,5" ElseIf Index = 6 Then Label14(1).Caption = "1,6" ElseIf Index = 7 Then Label14(1).Caption = "1,7" ElseIf Index = 8 Then Label14(1).Caption = "1,8" ElseIf Index = 9 Then Label14(1).Caption = "1,9" ElseIf Index = 10 Then Label14(1).Caption = "1,a" ElseIf Index = 11 Then Label14(1).Caption = "1,b" ElseIf Index = 12 Then Label14(1).Caption = "1,c" End If End Sub Private Sub Command2_Click() Dim filetujuan As String CommonDialog1.Filter = "Text Files (*.txt) *.txt" CommonDialog1.InitDir = "C:\" CommonDialog1.ShowSave If Trim(CommonDialog1.FileName) = "" Then Exit Sub 'Label9.Caption = Trim(CommonDialog1.FileName) INIFileName = App.Path & "\Template.txt" filetujuan = Trim(CommonDialog1.FileName) Result1 = WritePrivateProfileString("ATAS", "Servo1", Label8(1).Caption, INIFileName) Result2 = WritePrivateProfileString("ATAS", "Servo2", Label8(2).Caption, INIFileName) Result3 = WritePrivateProfileString("ATAS", "Servo3", Label8(3).Caption, INIFileName) Result4 = WritePrivateProfileString("ATAS", "Servo4", Label8(4).Caption, INIFileName)
25 L25 Result5 = WritePrivateProfileString("ATAS", "Servo5", Label8(5).Caption, INIFileName) Result6 = WritePrivateProfileString("ATAS", "Servo6", Label8(6).Caption, INIFileName) Result7 = WritePrivateProfileString("BAWAH", "Servo1", Label14(1).Caption, INIFileName) Result8 = WritePrivateProfileString("BAWAH", "Servo2", Label14(2).Caption, INIFileName) Result9 = WritePrivateProfileString("BAWAH", "Servo3", Label14(3).Caption, INIFileName) Result10 = WritePrivateProfileString("BAWAH", "Servo4", Label14(4).Caption, INIFileName) Result11 = WritePrivateProfileString("BAWAH", "Servo5", Label14(5).Caption, INIFileName) Result12 = WritePrivateProfileString("BAWAH", "Servo6", Label14(6).Caption, INIFileName) FileCopy INIFileName, filetujuan End Sub Private Sub Command3_Click() CommonDialog1.Filter = "Text Files (*.txt) *.txt" CommonDialog1.InitDir = "C:\" CommonDialog1.ShowOpen If Trim(CommonDialog1.FileName) = "" Then Exit Sub Label10.Caption = Trim(CommonDialog1.FileName) INIFileName = Trim(CommonDialog1.FileName) getisistr abisload = True Label8(7).Caption = nsa1 Label8(8).Caption = nsa2 Label8(9).Caption = nsa3 Label8(10).Caption = nsa4 Label8(11).Caption = nsa5 Label8(12).Caption = nsa6 End Sub
26 L26 Private Sub Command36_Click(Index As Integer) Label8(2).Caption = Command36(Index).Caption If Index = 0 Then Label14(2).Caption = "2,0" ElseIf Index = 1 Then Label14(2).Caption = "2,1" ElseIf Index = 2 Then Label14(2).Caption = "2,2" ElseIf Index = 3 Then Label14(2).Caption = "2,3" ElseIf Index = 4 Then Label14(2).Caption = "2,4" ElseIf Index = 5 Then Label14(2).Caption = "2,5" ElseIf Index = 6 Then Label14(2).Caption = "2,7" ElseIf Index = 7 Then Label14(2).Caption = "2,8" ElseIf Index = 8 Then Label14(2).Caption = "2,8" ElseIf Index = 9 Then Label14(2).Caption = "2,9" ElseIf Index = 10 Then Label14(2).Caption = "2,a" ElseIf Index = 11 Then Label14(2).Caption = "2,b" ElseIf Index = 12 Then Label14(2).Caption = "2,c" End If End Sub Private Sub Command4_Click() abisload = True If abisload = True Then ' urut = 1 ' Timer2.Enabled = True Label8(1).Caption = nsa1 Label8(2).Caption = nsa2 Label8(3).Caption = nsa3 Label8(4).Caption = nsa4
27 L27 Label8(5).Caption = nsa5 Label8(6).Caption = nsa6 Label14(1).Caption = nsb1 Label14(2).Caption = nsb2 Label14(3).Caption = nsb3 Label14(4).Caption = nsb4 Label14(5).Caption = nsb5 Label14(6).Caption = nsb6 DoEvents Label10.Caption = "" Label8(7).Caption = "" Label8(8).Caption = "" Label8(9).Caption = "" Label8(10).Caption = "" Label8(11).Caption = "" Label8(12).Caption = "" abisload = False End If End Sub Private Sub Command5_Click() Form2.Show 1 End Sub Private Sub Command54_Click(Index As Integer) Label8(3).Caption = Command54(Index).Caption If Index = 0 Then Label14(3).Caption = "3,0" ElseIf Index = 1 Then Label14(3).Caption = "3,1" ElseIf Index = 2 Then Label14(3).Caption = "3,2" ElseIf Index = 3 Then Label14(3).Caption = "3,3" ElseIf Index = 4 Then Label14(3).Caption = "3,4" ElseIf Index = 5 Then Label14(3).Caption = "3,5"
28 L28 ElseIf Index = 6 Then Label14(3).Caption = "3,6" ElseIf Index = 7 Then Label14(3).Caption = "3,7" ElseIf Index = 8 Then Label14(3).Caption = "3,8" ElseIf Index = 9 Then Label14(3).Caption = "3,9" ElseIf Index = 10 Then Label14(3).Caption = "3,a" ElseIf Index = 11 Then Label14(3).Caption = "3,b" ElseIf Index = 12 Then Label14(3).Caption = "3,c" End If End Sub Private Sub Command6_Click() jumlahfile = List1.ListCount hitfile = 1 INIFileName = pathload & List1.List(0) getisistr Label8(7).Caption = nsa1 Label8(8).Caption = nsa2 Label8(9).Caption = nsa3 Label8(10).Caption = nsa4 Label8(11).Caption = nsa5 Label8(12).Caption = nsa6 Label8(1).Caption = nsa1 Label8(2).Caption = nsa2 Label8(3).Caption = nsa3 Label8(4).Caption = nsa4 Label8(5).Caption = nsa5 Label8(6).Caption = nsa6 Label14(1).Caption = nsb1 Label14(2).Caption = nsb2 Label14(3).Caption = nsb3 Label14(4).Caption = nsb4 Label14(5).Caption = nsb5 Label14(6).Caption = nsb6
29 L29 Label8(7).Caption = "" Label8(8).Caption = "" Label8(9).Caption = "" Label8(10).Caption = "" Label8(11).Caption = "" Label8(12).Caption = "" DoEvents Timer3.Enabled = True End Sub Private Sub Timer3_Timer() If hitfile <= (jumlahfile - 1) Then INIFileName = pathload & List1.List(hitfile) getisistr Label8(7).Caption = nsa1 Label8(8).Caption = nsa2 Label8(9).Caption = nsa3 Label8(10).Caption = nsa4 Label8(11).Caption = nsa5 Label8(12).Caption = nsa6 Label8(1).Caption = nsa1 Label8(2).Caption = nsa2 Label8(3).Caption = nsa3 Label8(4).Caption = nsa4 Label8(5).Caption = nsa5 Label8(6).Caption = nsa6 Label14(1).Caption = nsb1 Label14(2).Caption = nsb2 Label14(3).Caption = nsb3 Label14(4).Caption = nsb4 Label14(5).Caption = nsb5 Label14(6).Caption = nsb6 Label8(7).Caption = "" Label8(8).Caption = "" Label8(9).Caption = "" Label8(10).Caption = "" Label8(11).Caption = "" Label8(12).Caption = ""
30 L30 DoEvents hitfile = hitfile + 1 ElseIf hitfile > (jumlahfile - 1) Then List1.Clear Timer3.Enabled = False End If End Sub Private Sub Command72_Click(Index As Integer) Label8(4).Caption = Command72(Index).Caption If Index = 0 Then Label14(4).Caption = "4,c" ElseIf Index = 1 Then Label14(4).Caption = "4,b" ElseIf Index = 2 Then Label14(4).Caption = "4,a" ElseIf Index = 3 Then Label14(4).Caption = "4,9" ElseIf Index = 4 Then Label14(4).Caption = "4,8" ElseIf Index = 5 Then Label14(4).Caption = "4,8" ElseIf Index = 6 Then Label14(4).Caption = "4,7" ElseIf Index = 7 Then Label14(4).Caption = "4,5" ElseIf Index = 8 Then Label14(4).Caption = "4,4" ElseIf Index = 9 Then Label14(4).Caption = "4,3" ElseIf Index = 10 Then Label14(4).Caption = "4,2" ElseIf Index = 11 Then Label14(4).Caption = "4,1" ElseIf Index = 12 Then Label14(4).Caption = "4,0" End If End Sub Private Sub Command90_Click(Index As Integer)
31 L31 Label8(5).Caption = Command90(Index).Caption If Index = 0 Then Label14(5).Caption = "5,0" ElseIf Index = 1 Then Label14(5).Caption = "5,1" ElseIf Index = 2 Then Label14(5).Caption = "5,2" ElseIf Index = 3 Then Label14(5).Caption = "5,3" ElseIf Index = 4 Then Label14(5).Caption = "5,4" ElseIf Index = 5 Then Label14(5).Caption = "5,5" ElseIf Index = 6 Then Label14(5).Caption = "5,6" ElseIf Index = 7 Then Label14(5).Caption = "5,7" ElseIf Index = 8 Then Label14(5).Caption = "5,8" ElseIf Index = 9 Then Label14(5).Caption = "5,9" ElseIf Index = 10 Then Label14(5).Caption = "5,a" ElseIf Index = 11 Then Label14(5).Caption = "5,b" ElseIf Index = 12 Then Label14(5).Caption = "5,c" End If End Sub Private Sub Form_Load() For i = 1 To 6 Label8(i).Caption = 0 Label14(i).Caption = CStr(i) & ",7" Next i Combo1.ListIndex = 0 End Sub Private Sub Timer1_Timer() 'If urut = 1 Then MSComm1.Output = Label14(1).Caption ' urut = urut + 1
32 L32 'ElseIf urut = 2 Then MSComm1.Output = Label14(2).Caption ' urut = urut + 1 'ElseIf urut = 3 Then MSComm1.Output = Label14(3).Caption ' urut = urut + 1 'ElseIf urut = 4 Then MSComm1.Output = Label14(4).Caption ' urut = urut + 1 'ElseIf urut = 5 Then MSComm1.Output = Label14(5).Caption ' urut = urut + 1 'ElseIf urut = 6 Then MSComm1.Output = Label14(6).Caption ' urut = 1 'End If End Sub Private Sub Timer2_Timer() If urut = 1 Then Label8(1).Caption = LCase(nSa1) Label14(1).Caption = LCase(nSb1) Label8(7).Caption = "" urut = urut + 1 ElseIf urut = 2 Then Label8(2).Caption = LCase(nSa2) Label14(2).Caption = LCase(nSb2) Label8(8).Caption = "" urut = urut + 1 ElseIf urut = 3 Then Label8(3).Caption = LCase(nSa3) Label14(3).Caption = LCase(nSb3) Label8(9).Caption = "" urut = urut + 1 ElseIf urut = 4 Then Label8(4).Caption = LCase(nSa4) Label14(4).Caption = LCase(nSb4) Label8(10).Caption = "" urut = urut + 1 ElseIf urut = 5 Then Label8(5).Caption = LCase(nSa5) Label14(5).Caption = LCase(nSb5) Label8(11).Caption = "" urut = urut + 1 ElseIf urut = 6 Then
33 L33 Label8(6).Caption = LCase(nSa6) Label14(6).Caption = LCase(nSb6) Label8(12).Caption = "" urut = 1 Timer2.Enabled = False End If DoEvents End Sub 3. Listing Porgram Form 2 Private Sub Command1_Click() Form1.List1.Clear If File1.ListCount > 0 Then For i = 0 To File1.ListCount - 1 'File1.ListIndex = i Form1.List1.AddItem File1.List(i) Next i End If pathload = Dir1.Path If Right(pathload, 1) <> "\" Then pathload = pathload & "\" End If 'Form1.Command6.Value = True Unload Me End Sub Private Sub Dir1_Change() File1.Path = Dir1.Path pathload = Dir1.Path If Right(pathload, 1) <> "\" Then pathload = pathload & "\" End If Label1.Caption = pathload End Sub Private Sub Drive1_Change() Dir1.Path = Left(Drive1.Drive, 2) & "\"
34 L34 End Sub Private Sub Form_Load() Drive1.Drive = "C" Dir1.Path = Left(Drive1.Drive, 2) & "\" File1.FileName = "*.txt" File1.Path = Dir1.Path If File1.ListCount > 0 Then For i = 0 To File1.ListCount - 1 'File1.ListIndex = i List1.AddItem File1.List(i) Next i End If End Sub
35 L35 LAMPIRAN PROGRAM CODE MATLAB Lampiran Listing Program Menu1.m function varargout = Menu1(varargin) % MENU1 Application M-file for Menu1.fig % FIG = MENU1 launch Menu1 GUI. % MENU1('callback_name',...) invoke the named callback. % Last Modified by GUIDE v Oct :22:37 % Latest Modified by FA2 v Nov-2008 if nargin == 0 % LAUNCH GUI fig = openfig(mfilename,'reuse'); % Generate a structure of handles to pass to callbacks, and store it. handles = guihandles(fig); guidata(fig, handles); if nargout > 0 varargout{1} = fig; if ischar(varargin{1}) % INVOKE NAMED SUBFUNCTION OR CALLBACK try if (nargout) [varargout{1:nargout}] = feval(varargin{:}); % FEVAL switchyard feval(varargin{:}); % FEVAL switchyard catch disp(lasterr); %Function untuk tombol masuk ke menu Direct Kinematics function varargout = Pilih_Direct_Callback(h, eventdata, handles, varargin) Menu21 %buka window menu input direct Kinematics delete(handles.menu1) % hapus menu pilihan simulasi (direct atau inverse) %Function untuk tombol masuk ke menu Inverse Kinematics function varargout = Pilih_Inverse_Callback(h, eventdata, handles, varargin) Menu31 % buka window menu input inverse Kinematics
36 L36 Petunjuk % buka window menu petunjuk didepan window input inverse Kinematics delete(handles.menu1) % hapus menu pilihan simulasi (direct atau inverse) Menu21.m function varargout = Menu21(varargin) % MENU1 Application M-file for Menu21.fig % FIG = MENU1 launch Menu21 GUI. % MENU1('callback_name',...) invoke the named callback. % Last Modified by GUIDE v Nov :14:31 % Latest Modified by FA2 v Nov-2008 if nargin == 0 % LAUNCH GUI fig = openfig(mfilename,'reuse'); % Generate a structure of handles to pass to callbacks, and store it. handles = guihandles(fig); guidata(fig, handles); if nargout > 0 varargout{1} = fig; if ischar(varargin{1}) % INVOKE NAMED SUBFUNCTION OR CALLBACK try if (nargout) [varargout{1:nargout}] = feval(varargin{:}); % FEVAL switchyard feval(varargin{:}); % FEVAL switchyard catch disp(lasterr); %function untuk memilih salah satu arah pada setiap joint function mutual_exclude(off) set(off,'value',0) % jika pilih radio button arah positif untuk joint 1 function varargout = Positif_J1_Callback(h, eventdata, handles, varargin) off = [handles.negatif_j1]; mutual_exclude(off)
37 L37 % jika pilih radio button arah negatif untuk joint 1 function varargout = Negatif_J1_Callback(h, eventdata, handles, varargin) off = [handles.positif_j1]; mutual_exclude(off) % jika pilih radio button arah positif untuk joint 2 function varargout = Positif_J2_Callback(h, eventdata, handles, varargin) off = [handles.negatif_j2]; mutual_exclude(off) % jika pilih radio button arah negatif untuk joint 2 function varargout = Negatif_J2_Callback(h, eventdata, handles, varargin) off = [handles.positif_j2]; mutual_exclude(off) % jika pilih radio button arah positif untuk joint 3 function varargout = Positif_J3_Callback(h, eventdata, handles, varargin) off = [handles.negatif_j3]; mutual_exclude(off) % jika pilih radio button arah negatif untuk joint 3 function varargout = Negatif_J3_Callback(h, eventdata, handles, varargin) off = [handles.positif_j3]; mutual_exclude(off) % jika pilih radio button arah positif untuk joint 4 function varargout = Positif_J4_Callback(h, eventdata, handles, varargin) off = [handles.negatif_j4]; mutual_exclude(off) % jika pilih radio button arah negatif untuk joint 4 function varargout = Negatif_J4_Callback(h, eventdata, handles, varargin) off = [handles.positif_j4]; mutual_exclude(off) % jika pilih radio button arah positif untuk joint 5 function varargout = Positif_J5_Callback(h, eventdata, handles, varargin) off = [handles.negatif_j5]; mutual_exclude(off) % jika pilih radio button arah negatif untuk joint 5 function varargout = Negatif_J5_Callback(h, eventdata, handles, varargin) off = [handles.positif_j5]; mutual_exclude(off) % function untuk mem-validasi dan memasukkan sudut dari joint 1 function varargout = Input_J1_Callback(h, eventdata, handles, varargin)
38 L38 global user_entry_j1 user_entry_j1 = str2double(get(h,'string')); if isnan(user_entry_j1) errordlg('masukkan Angka!','Harus Angka','modal') set(h,'string',''); if (user_entry_j1 > 90) (user_entry_j1 < 0) errordlg('input Joint 1 tidak boleh lebih dari 90 derajat atau Kurang dari 0 derajat','batas derajat','modal') set(h,'string',''); if (get(handles.negatif_j1,'value') == get(handles.positif_j1,'value')) errordlg('tentukan dulu arahnya','arah','modal'); set(h,'string',''); ; ; % function untuk mem-validasi dan memasukkan sudut dari joint 2 function varargout = Input_J2_Callback(h, eventdata, handles, varargin) global user_entry_j2 user_entry_j2 = str2double(get(h,'string')); if isnan(user_entry_j2) errordlg('masukkan Angka!','Harus Angka','modal') set(h,'string',''); if (user_entry_j2 > 90) (user_entry_j2 < 0) errordlg('input Joint 2 tidak boleh lebih dari 90 derajat atau Kurang dari 0 derajat','batas derajat','modal') set(h,'string',''); if (get(handles.negatif_j2,'value') == get(handles.positif_j2,'value')) errordlg('tentukan dulu arahnya','arah','modal'); set(h,'string',''); ; ; % function untuk mem-validasi dan memasukkan sudut dari joint 3 function varargout = Input_J3_Callback(h, eventdata, handles, varargin) global user_entry_j3 user_entry_j3 = str2double(get(h,'string')); if isnan(user_entry_j3) errordlg('masukkan Angka!','Harus Angka','modal') set(h,'string',''); if (user_entry_j3 > 90) (user_entry_j3 < 0)
39 L39 errordlg('input Joint 3 tidak boleh lebih dari 90 derajat atau Kurang dari 0 derajat','batas derajat','modal') set(h,'string',''); if (get(handles.negatif_j3,'value') == get(handles.positif_j3,'value')) errordlg('tentukan dulu arahnya','arah','modal'); set(h,'string',''); ; ; % function untuk mem-validasi dan memasukkan sudut dari joint 4 function varargout = Input_J4_Callback(h, eventdata, handles, varargin) global user_entry_j4 user_entry_j4 = str2double(get(h,'string')); if isnan(user_entry_j4) errordlg('masukkan Angka!','Harus Angka','modal') set(h,'string',''); if (user_entry_j4 > 90) (user_entry_j4 < 0) errordlg('input Joint 4 tidak boleh lebih dari 90 derajat atau Kurang dari 0 derajat','batas derajat','modal') set(h,'string',''); if (get(handles.negatif_j4,'value') == get(handles.positif_j4,'value')) errordlg('tentukan dulu arahnya','arah','modal'); set(h,'string',''); ; ; % function untuk mem-validasi dan memasukkan sudut dari joint 5 function varargout = Input_J5_Callback(h, eventdata, handles, varargin) global user_entry_j5 user_entry_j5 = str2double(get(h,'string')); if isnan(user_entry_j5) errordlg('masukkan Angka!','Harus Angka','modal') set(h,'string',''); if (user_entry_j5 > 0) (user_entry_j5 < 0) errordlg('input Joint 5 tidak boleh lebih atau kurang dari 0 derajat','batas derajat','modal') set(h,'string',''); if (get(handles.negatif_j5,'value') == get(handles.positif_j5,'value')) errordlg('tentukan dulu arahnya','arah','modal'); set(h,'string','');
40 L40 ; ; % Function bagi tombol reset yang akan menghapus semua input baik arah maupun sudut-sudut joint function varargout = Reset_Callback(h, eventdata, handles, varargin) set(handles.negatif_j1,'value',0); set(handles.positif_j1,'value',0); set(handles.negatif_j2,'value',0); set(handles.positif_j2,'value',0); set(handles.negatif_j3,'value',0); set(handles.positif_j3,'value',0); set(handles.negatif_j4,'value',0); set(handles.positif_j4,'value',0); set(handles.negatif_j5,'value',0); set(handles.positif_j5,'value',0); set(handles.input_j1,'string',''); set(handles.input_j2,'string',''); set(handles.input_j3,'string',''); set(handles.input_j4,'string',''); set(handles.input_j5,'string',''); % Funtion untuk mengambil input, memproses melalui perhitungan direct Kinematics, lalu hasilnya ditampilkan function varargout = Kalkulasi_Direct_Callback(h, eventdata, handles, varargin) global user_entry_j1 user_entry_j2 user_entry_j3 user_entry_j4 user_entry_j5 Theta1 Theta2 Theta3 Theta4 Theta5 if isempty(get(handles.input_j1,'string')) isempty(get(handles.input_j2,'string')) isempty(get(handles.input_j3,'string')) isempty(get(handles.input_j4,'string')) isempty(get(handles.input_j5,'string')), errordlg('masih ada input yang kurang nih!','kurang lengkap','modal') %Mengambil input untuk Theta1, Theta2, Theta3, Theta4 dan Theta5 if (get(handles.positif_j1,'value') == get(handles.positif_j1,'min'))... & (get(handles.positif_j2,'value') == get(handles.positif_j2,'min'))... & (get(handles.positif_j3,'value') == get(handles.positif_j3,'min'))... & (get(handles.positif_j4,'value') == get(handles.positif_j4,'min'))... & (get(handles.positif_j5,'value') == get(handles.positif_j5,'min')) Theta1 = str2double(get(handles.input_j1,'string'))*-1; Theta2 = str2double(get(handles.input_j2,'string'))*-1; Theta3 = str2double(get(handles.input_j3,'string'))*-1; Theta4 = str2double(get(handles.input_j4,'string'))*-1; Theta5 = str2double(get(handles.input_j5,'string'))*-1; HitDirect %Function untuk menghitung input direct Kinematics Menu22 %buka menu tampilan hasil perhitungan Direct Kinematics
41 L41 if (get(handles.positif_j1,'value') == get(handles.positif_j1,'max'))... & (get(handles.positif_j2,'value') == get(handles.positif_j2,'max'))... & (get(handles.positif_j3,'value') == get(handles.positif_j3,'max'))... & (get(handles.positif_j4,'value') == get(handles.positif_j4,'max'))... & (get(handles.positif_j5,'value') == get(handles.positif_j5,'max')) Theta1 = str2double(get(handles.input_j1,'string')); Theta2 = str2double(get(handles.input_j2,'string')); Theta3 = str2double(get(handles.input_j3,'string')); Theta4 = str2double(get(handles.input_j4,'string')); Theta5 = str2double(get(handles.input_j5,'string')); HitDirect %Function untuk menghitung input direct Kinematics Menu22 %buka menu tampilan hasil perhitungan Direct Kinematics if (get(handles.positif_j1,'value') == get(handles.positif_j1,'min'))... & (get(handles.positif_j2,'value') == get(handles.positif_j2,'max'))... & (get(handles.positif_j3,'value') == get(handles.positif_j3,'max'))... & (get(handles.positif_j4,'value') == get(handles.positif_j4,'max'))... & (get(handles.positif_j5,'value') == get(handles.positif_j5,'max')) Theta1 = str2double(get(handles.input_j1,'string'))*-1; Theta2 = str2double(get(handles.input_j2,'string')); Theta3 = str2double(get(handles.input_j3,'string')); Theta4 = str2double(get(handles.input_j4,'string')); Theta5 = str2double(get(handles.input_j5,'string')); HitDirect %Function untuk menghitung input direct Kinematics Menu22 %buka menu tampilan hasil perhitungan Direct Kinematics if (get(handles.positif_j1,'value') == get(handles.positif_j1,'max'))... & (get(handles.positif_j2,'value') == get(handles.positif_j2,'min'))... & (get(handles.positif_j3,'value') == get(handles.positif_j3,'max'))... & (get(handles.positif_j4,'value') == get(handles.positif_j4,'max'))... & (get(handles.positif_j5,'value') == get(handles.positif_j5,'max')) Theta1 = str2double(get(handles.input_j1,'string')); Theta2 = str2double(get(handles.input_j2,'string'))*-1; Theta3 = str2double(get(handles.input_j3,'string')); Theta4 = str2double(get(handles.input_j4,'string')); Theta5 = str2double(get(handles.input_j5,'string')); HitDirect %Function untuk menghitung input direct Kinematics Menu22 %buka menu tampilan hasil perhitungan Direct Kinematics if (get(handles.positif_j1,'value') == get(handles.positif_j1,'max'))... & (get(handles.positif_j2,'value') == get(handles.positif_j2,'max'))... & (get(handles.positif_j3,'value') == get(handles.positif_j3,'min'))... & (get(handles.positif_j4,'value') == get(handles.positif_j4,'max'))... & (get(handles.positif_j5,'value') == get(handles.positif_j5,'max')) Theta1 = str2double(get(handles.input_j1,'string')); Theta2 = str2double(get(handles.input_j2,'string')); Theta3 = str2double(get(handles.input_j3,'string'))*-1;
42 L42 Theta4 = str2double(get(handles.input_j4,'string')); Theta5 = str2double(get(handles.input_j5,'string')); HitDirect %Function untuk menghitung input direct Kinematics Menu22 %buka menu tampilan hasil perhitungan Direct Kinematics if (get(handles.positif_j1,'value') == get(handles.positif_j1,'max'))... & (get(handles.positif_j2,'value') == get(handles.positif_j2,'max'))... & (get(handles.positif_j3,'value') == get(handles.positif_j3,'max'))... & (get(handles.positif_j4,'value') == get(handles.positif_j4,'min'))... & (get(handles.positif_j5,'value') == get(handles.positif_j5,'max')) Theta1 = str2double(get(handles.input_j1,'string')); Theta2 = str2double(get(handles.input_j2,'string')); Theta3 = str2double(get(handles.input_j3,'string')); Theta4 = str2double(get(handles.input_j4,'string'))*-1; Theta5 = str2double(get(handles.input_j5,'string')); HitDirect %Function untuk menghitung input direct Kinematics Menu22 %buka menu tampilan hasil perhitungan Direct Kinematics if (get(handles.positif_j1,'value') == get(handles.positif_j1,'max'))... & (get(handles.positif_j2,'value') == get(handles.positif_j2,'max'))... & (get(handles.positif_j3,'value') == get(handles.positif_j3,'max'))... & (get(handles.positif_j4,'value') == get(handles.positif_j4,'max'))... & (get(handles.positif_j5,'value') == get(handles.positif_j5,'min')) Theta1 = str2double(get(handles.input_j1,'string')); Theta2 = str2double(get(handles.input_j2,'string')); Theta3 = str2double(get(handles.input_j3,'string')); Theta4 = str2double(get(handles.input_j4,'string')); Theta5 = str2double(get(handles.input_j5,'string'))*-1; HitDirect %Function untuk menghitung input direct Kinematics Menu22 %buka menu tampilan hasil perhitungan Direct Kinematics if (get(handles.positif_j1,'value') == get(handles.positif_j1,'min'))... & (get(handles.positif_j2,'value') == get(handles.positif_j2,'min'))... & (get(handles.positif_j3,'value') == get(handles.positif_j3,'max'))... & (get(handles.positif_j4,'value') == get(handles.positif_j4,'max'))... & (get(handles.positif_j5,'value') == get(handles.positif_j5,'max')) Theta1 = str2double(get(handles.input_j1,'string'))*-1; Theta2 = str2double(get(handles.input_j2,'string'))*-1; Theta3 = str2double(get(handles.input_j3,'string')); Theta4 = str2double(get(handles.input_j4,'string')); Theta5 = str2double(get(handles.input_j5,'string')); HitDirect %Function untuk menghitung input direct Kinematics Menu22 %buka menu tampilan hasil perhitungan Direct Kinematics if (get(handles.positif_j1,'value') == get(handles.positif_j1,'min'))... & (get(handles.positif_j2,'value') == get(handles.positif_j2,'max'))... & (get(handles.positif_j3,'value') == get(handles.positif_j3,'min'))...
43 L43 & (get(handles.positif_j4,'value') == get(handles.positif_j4,'max'))... & (get(handles.positif_j5,'value') == get(handles.positif_j5,'max')) Theta1 = str2double(get(handles.input_j1,'string'))*-1; Theta2 = str2double(get(handles.input_j2,'string')); Theta3 = str2double(get(handles.input_j3,'string'))*-1; Theta4 = str2double(get(handles.input_j4,'string')); Theta5 = str2double(get(handles.input_j5,'string')); HitDirect %Function untuk menghitung input direct Kinematics Menu22 %buka menu tampilan hasil perhitungan Direct Kinematics if (get(handles.positif_j1,'value') == get(handles.positif_j1,'min'))... & (get(handles.positif_j2,'value') == get(handles.positif_j2,'max'))... & (get(handles.positif_j3,'value') == get(handles.positif_j3,'max'))... & (get(handles.positif_j4,'value') == get(handles.positif_j4,'min'))... & (get(handles.positif_j5,'value') == get(handles.positif_j5,'max')) Theta1 = str2double(get(handles.input_j1,'string'))*-1; Theta2 = str2double(get(handles.input_j2,'string')); Theta3 = str2double(get(handles.input_j3,'string')); Theta4 = str2double(get(handles.input_j4,'string'))*-1; Theta5 = str2double(get(handles.input_j5,'string')); HitDirect %Function untuk menghitung input direct Kinematics Menu22 %buka menu tampilan hasil perhitungan Direct Kinematics if (get(handles.positif_j1,'value') == get(handles.positif_j1,'min'))... & (get(handles.positif_j2,'value') == get(handles.positif_j2,'max'))... & (get(handles.positif_j3,'value') == get(handles.positif_j3,'max'))... & (get(handles.positif_j4,'value') == get(handles.positif_j4,'max'))... & (get(handles.positif_j5,'value') == get(handles.positif_j5,'min')) Theta1 = str2double(get(handles.input_j1,'string'))*-1; Theta2 = str2double(get(handles.input_j2,'string')); Theta3 = str2double(get(handles.input_j3,'string')); Theta4 = str2double(get(handles.input_j4,'string')); Theta5 = str2double(get(handles.input_j5,'string'))*-1; HitDirect %Function untuk menghitung input direct Kinematics Menu22 %buka menu tampilan hasil perhitungan Direct Kinematics if (get(handles.positif_j1,'value') == get(handles.positif_j1,'max'))... & (get(handles.positif_j2,'value') == get(handles.positif_j2,'min'))... & (get(handles.positif_j3,'value') == get(handles.positif_j3,'min'))... & (get(handles.positif_j4,'value') == get(handles.positif_j4,'max'))... & (get(handles.positif_j5,'value') == get(handles.positif_j5,'max')) Theta1 = str2double(get(handles.input_j1,'string')); Theta2 = str2double(get(handles.input_j2,'string'))*-1; Theta3 = str2double(get(handles.input_j3,'string'))*-1; Theta4 = str2double(get(handles.input_j4,'string')); Theta5 = str2double(get(handles.input_j5,'string')); HitDirect %Function untuk menghitung input direct Kinematics
44 L44 Menu22 %buka menu tampilan hasil perhitungan Direct Kinematics if (get(handles.positif_j1,'value') == get(handles.positif_j1,'max'))... & (get(handles.positif_j2,'value') == get(handles.positif_j2,'min'))... & (get(handles.positif_j3,'value') == get(handles.positif_j3,'max'))... & (get(handles.positif_j4,'value') == get(handles.positif_j4,'min'))... & (get(handles.positif_j5,'value') == get(handles.positif_j5,'max')) Theta1 = str2double(get(handles.input_j1,'string')); Theta2 = str2double(get(handles.input_j2,'string'))*-1; Theta3 = str2double(get(handles.input_j3,'string')); Theta4 = str2double(get(handles.input_j4,'string'))*-1; Theta5 = str2double(get(handles.input_j5,'string')); HitDirect %Function untuk menghitung input direct Kinematics Menu22 %buka menu tampilan hasil perhitungan Direct Kinematics if (get(handles.positif_j1,'value') == get(handles.positif_j1,'max'))... & (get(handles.positif_j2,'value') == get(handles.positif_j2,'min'))... & (get(handles.positif_j3,'value') == get(handles.positif_j3,'max'))... & (get(handles.positif_j4,'value') == get(handles.positif_j4,'max'))... & (get(handles.positif_j5,'value') == get(handles.positif_j5,'min')) Theta1 = str2double(get(handles.input_j1,'string')); Theta2 = str2double(get(handles.input_j2,'string'))*-1; Theta3 = str2double(get(handles.input_j3,'string')); Theta4 = str2double(get(handles.input_j4,'string')); Theta5 = str2double(get(handles.input_j5,'string'))*-1; HitDirect %Function untuk menghitung input direct Kinematics Menu22 %buka menu tampilan hasil perhitungan Direct Kinematics if (get(handles.positif_j1,'value') == get(handles.positif_j1,'max'))... & (get(handles.positif_j2,'value') == get(handles.positif_j2,'max'))... & (get(handles.positif_j3,'value') == get(handles.positif_j3,'min'))... & (get(handles.positif_j4,'value') == get(handles.positif_j4,'min'))... & (get(handles.positif_j5,'value') == get(handles.positif_j5,'max')) Theta1 = str2double(get(handles.input_j1,'string')); Theta2 = str2double(get(handles.input_j2,'string')); Theta3 = str2double(get(handles.input_j3,'string'))*-1; Theta4 = str2double(get(handles.input_j4,'string'))*-1; Theta5 = str2double(get(handles.input_j5,'string')); HitDirect %Function untuk menghitung input direct Kinematics Menu22 %buka menu tampilan hasil perhitungan Direct Kinematics if (get(handles.positif_j1,'value') == get(handles.positif_j1,'max'))... & (get(handles.positif_j2,'value') == get(handles.positif_j2,'max'))... & (get(handles.positif_j3,'value') == get(handles.positif_j3,'min'))... & (get(handles.positif_j4,'value') == get(handles.positif_j4,'max'))... & (get(handles.positif_j5,'value') == get(handles.positif_j5,'min')) Theta1 = str2double(get(handles.input_j1,'string'));
45 L45 Theta2 = str2double(get(handles.input_j2,'string')); Theta3 = str2double(get(handles.input_j3,'string'))*-1; Theta4 = str2double(get(handles.input_j4,'string')); Theta5 = str2double(get(handles.input_j5,'string'))*-1; HitDirect %Function untuk menghitung input direct Kinematics Menu22 %buka menu tampilan hasil perhitungan Direct Kinematics if (get(handles.positif_j1,'value') == get(handles.positif_j1,'max'))... & (get(handles.positif_j2,'value') == get(handles.positif_j2,'max'))... & (get(handles.positif_j3,'value') == get(handles.positif_j3,'max'))... & (get(handles.positif_j4,'value') == get(handles.positif_j4,'min'))... & (get(handles.positif_j5,'value') == get(handles.positif_j5,'min')) Theta1 = str2double(get(handles.input_j1,'string')); Theta2 = str2double(get(handles.input_j2,'string')); Theta3 = str2double(get(handles.input_j3,'string')); Theta4 = str2double(get(handles.input_j4,'string'))*-1; Theta5 = str2double(get(handles.input_j5,'string'))*-1; HitDirect %Function untuk menghitung input direct Kinematics Menu22 %buka menu tampilan hasil perhitungan Direct Kinematics if (get(handles.positif_j1,'value') == get(handles.positif_j1,'min'))... & (get(handles.positif_j2,'value') == get(handles.positif_j2,'min'))... & (get(handles.positif_j3,'value') == get(handles.positif_j3,'min'))... & (get(handles.positif_j4,'value') == get(handles.positif_j4,'max'))... & (get(handles.positif_j5,'value') == get(handles.positif_j5,'max')) Theta1 = str2double(get(handles.input_j1,'string'))*-1; Theta2 = str2double(get(handles.input_j2,'string'))*-1; Theta3 = str2double(get(handles.input_j3,'string'))*-1; Theta4 = str2double(get(handles.input_j4,'string')); Theta5 = str2double(get(handles.input_j5,'string')); HitDirect %Function untuk menghitung input direct Kinematics Menu22 %buka menu tampilan hasil perhitungan Direct Kinematics if (get(handles.positif_j1,'value') == get(handles.positif_j1,'min'))... & (get(handles.positif_j2,'value') == get(handles.positif_j2,'min'))... & (get(handles.positif_j3,'value') == get(handles.positif_j3,'max'))... & (get(handles.positif_j4,'value') == get(handles.positif_j4,'min'))... & (get(handles.positif_j5,'value') == get(handles.positif_j5,'max')) Theta1 = str2double(get(handles.input_j1,'string'))*-1; Theta2 = str2double(get(handles.input_j2,'string'))*-1; Theta3 = str2double(get(handles.input_j3,'string')); Theta4 = str2double(get(handles.input_j4,'string'))*-1; Theta5 = str2double(get(handles.input_j5,'string')); HitDirect %Function untuk menghitung input direct Kinematics Menu22 %buka menu tampilan hasil perhitungan Direct Kinematics if (get(handles.positif_j1,'value') == get(handles.positif_j1,'min'))...
46 L46 & (get(handles.positif_j2,'value') == get(handles.positif_j2,'min'))... & (get(handles.positif_j3,'value') == get(handles.positif_j3,'max'))... & (get(handles.positif_j4,'value') == get(handles.positif_j4,'max'))... & (get(handles.positif_j5,'value') == get(handles.positif_j5,'min')) Theta1 = str2double(get(handles.input_j1,'string'))*-1; Theta2 = str2double(get(handles.input_j2,'string'))*-1; Theta3 = str2double(get(handles.input_j3,'string')); Theta4 = str2double(get(handles.input_j4,'string')); Theta5 = str2double(get(handles.input_j5,'string'))*-1; HitDirect %Function untuk menghitung input direct Kinematics Menu22 %buka menu tampilan hasil perhitungan Direct Kinematics if (get(handles.positif_j1,'value') == get(handles.positif_j1,'min'))... & (get(handles.positif_j2,'value') == get(handles.positif_j2,'max'))... & (get(handles.positif_j3,'value') == get(handles.positif_j3,'min'))... & (get(handles.positif_j4,'value') == get(handles.positif_j4,'max'))... & (get(handles.positif_j5,'value') == get(handles.positif_j5,'min')) Theta1 = str2double(get(handles.input_j1,'string'))*-1; Theta2 = str2double(get(handles.input_j2,'string')); Theta3 = str2double(get(handles.input_j3,'string'))*-1; Theta4 = str2double(get(handles.input_j4,'string')); Theta5 = str2double(get(handles.input_j5,'string'))*-1; HitDirect %Function untuk menghitung input direct Kinematics Menu22 %buka menu tampilan hasil perhitungan Direct Kinematics if (get(handles.positif_j1,'value') == get(handles.positif_j1,'min'))... & (get(handles.positif_j2,'value') == get(handles.positif_j2,'max'))... & (get(handles.positif_j3,'value') == get(handles.positif_j3,'max'))... & (get(handles.positif_j4,'value') == get(handles.positif_j4,'min'))... & (get(handles.positif_j5,'value') == get(handles.positif_j5,'min')) Theta1 = str2double(get(handles.input_j1,'string'))*-1; Theta2 = str2double(get(handles.input_j2,'string')); Theta3 = str2double(get(handles.input_j3,'string')); Theta4 = str2double(get(handles.input_j4,'string'))*-1; Theta5 = str2double(get(handles.input_j5,'string'))*-1; HitDirect %Function untuk menghitung input direct Kinematics Menu22 %buka menu tampilan hasil perhitungan Direct Kinematics if (get(handles.positif_j1,'value') == get(handles.positif_j1,'max'))... & (get(handles.positif_j2,'value') == get(handles.positif_j2,'min'))... & (get(handles.positif_j3,'value') == get(handles.positif_j3,'max'))... & (get(handles.positif_j4,'value') == get(handles.positif_j4,'min'))... & (get(handles.positif_j5,'value') == get(handles.positif_j5,'min')) Theta1 = str2double(get(handles.input_j1,'string')); Theta2 = str2double(get(handles.input_j2,'string'))*-1; Theta3 = str2double(get(handles.input_j3,'string')); Theta4 = str2double(get(handles.input_j4,'string'))*-1;
Program di computer (visual basic) Private Sub Command1_Click() End Sub. Private Sub Command2_Click() End Sub. Private Sub Command3_Click() End Sub
Program di computer (visual basic) Private Sub Command1_Click() MSComm1.Output = "a" 'kirimkan nilai a ke port serial Private Sub Command2_Click() MSComm1.Output = "b" 'kirimkan nilai b ke port serial
Lebih terperinciDAFTAR PUSTAKA. Mikrokontroler AT89S51. Jakarta: Universitas Mercubuana. Christanto, Danny Panduan Dasar Mikrokontroler Keluarga MCS-51.
DAFTAR PUSTAKA Halim, Abdul. 2009. Sistem Absensi Kelas Menggunakan RFID Berbasis Mikrokontroler AT89S51. Jakarta: Universitas Mercubuana. Christanto, Danny. 2004. Panduan Dasar Mikrokontroler Keluarga
Lebih terperinciCropping_Merging_Transparent
PRAKTIKUM VI Cropping_Merging_Transparent Tujuan Memberikan pengertian perlunya dilakukan penggabungan gambar Memberikan contoh penggabungan gambar Teori Penunjang Gambar Percobaan Prosedur Percobaan 1.
Lebih terperinciLAMPIRAN. Percobaan Untuk Mendapatkan Parameter Parameter Motor induksi 3 Fasa
LAMPIRAN Percobaan Untuk Mapatkan Parameter Parameter Motor induksi 3 Fasa Untuk dapat menentukan parameter parameter motor induksi 3 fasa rotor sangkar, maka dapat dilakukan dengan percobaan berikut ini:
Lebih terperinciBAB III PEMBAHASAN MASALAH
BAB III PEMBAHASAN MASALAH Aplikasi yang dibuat oleh penulis adalah aplikasi yang dapat menjalankan atau memainkan file file multimedia khusus bereksientensi *.mp3, *.mpg, dan *.avi, karena itu penulis
Lebih terperinciBAB IV PENGUJIAN DAN ANALISA
BAB IV PENGUJIAN DAN ANALISA 4.1 Analisa dan Pengujian Alat lunak. Pada bab pengujian dan analisa dilakukan pada perangkat keras dan perangkat 4.2 Perangkat Keras Adapun perangkat keras yang akan dianalisi
Lebih terperinciPrivate Sub cmdprint_click() WebBrowser1.ExecWB OLECMDID_PRINT,OLECMDEXECOPT_DODEFAULT End Sub
Lampiran 1 Form Utama Aplikasi Web Browser Dim counter As Integer Private Sub cmdback_click() WebBrowser1.GoBack Private Sub cmdbuka_click() CommonDialog1.CancelError = True On Error GoTo Cancel CommonDialog1.Filter
Lebih terperinciPENGHITUNG WAKTU DENGAN TAMPILAN LCD M1632 OLEH DST-51
PENGHITUNG WAKTU DENGAN TAMPILAN LCD M1632 OLEH DST-51 Penghitung waktu yang dimulai dengan menekan tombol start dan stop atau lebih dikenal dengan stop watch sudah banyak terdapat pada arloji-arloji digital
Lebih terperinciPre Processing. Memberikan gambaran jenis-jenis pre-processing
PRAKTIKUM II Pre Processing Tujuan Memberikan gambaran jenis-jenis pre-processing Teori Penunjang Prosedur Percobaan 1. Berikut ini percobaan konversi dari gambar RGB menjadi Gray Scale. 2. Gunakan proyek
Lebih terperinciPERCOBAAN 2 SAKLAR PUSH BUTTON
TUJUAN: PERCOBAAN 2 SAKLAR PUSH BUTTON 1. Memahami rangkaian mikrokontroller dengan interface ke saklar 2. Memahami program assembly untuk mengambil data saklar dan mengeluarkan data ke LED. 3. Memahami
Lebih terperinciKompensasi Pencahayaan
PRAKTIKUM III Kompensasi Pencahayaan Tujuan Memberikan pengertian perlunya dilakukan pengaturan pencahayaan Memberikan contoh macam-macam cara pengaturan pencahayaan Teori Penunjang Gambar Percobaan Prosedur
Lebih terperinciPENAMPIL TOMBOL-TOMBOL REMOTE CONTROL SONY PADA M1632 LCD OLEH MODUL DST-52
PENAMPIL TOMBOL-TOMBOL REMOTE CONTROL SONY PADA M1632 LCD OLEH MODUL DST-52 Pada artikel-artikel sebelumnya, banyak dibahas penggunaan keypad ataupun PC keyboard sebagai media input data dari suatu system
Lebih terperinciPraktekum VB 6.0 I. KOTAK PESAN. Contoh syntax kotak pesan
Praktekum VB 6.0 Oleh : Bohal K. Simorangkir, S.Kom STMIK Parna Raya, Manado ========================== I. KOTAK PESAN Contoh syntax kotak pesan Private Sub Command2_Click() Dim pesan As String pesan =
Lebih terperinciE-Trick Visual Basic 6.0
DISCLAIMER Seluruh dokumen E-Trik di dalam CD ini dapat digunakan dan disebarkan secara bebas untuk tujuan belajar bukan komersial (non-profit), dengan syarat tidak menghapus atau merubah atribut penulis
Lebih terperinciPengendalian 8 buah Motor oleh DST-51
Ib2 Pengendalian 8 buah Motor oleh DST-51 Pada aplikasinya, seringkali suatu sistem mikrokontroler digunakan untuk mengendalikan beberapa buah motor secara bersamaan. Berikut ini adalah pengendalian delapan
Lebih terperinciWireless Infrared Printer dengan DST-51 (Pengambilan Data dari Standard Parallel Port)
Wireless Infrared Printer dengan DST-51 (Pengambilan Data dari Standard Parallel Port) Untuk merancang sebuah perangkat yang dapat mengirimkan data dari PC Parallel Port ke Printer secara wireless, maka
Lebih terperinciUniversitas Sumatera Utara
; = = = = = = = = = = = = = = = ; ; prog.pengaman rumah ; ; = = = = = = = = = = = = = = = ; ;== initialisasi port uc ==; motor1 bit p1.0 motor2 bit p1.1 motor3 bit p1.2 motor4 bit p1.3 alarm bit p2.3 hape
Lebih terperinciOPERASI FILE Operasi File Dalam Visual Basic Membuka File
9 OPERASI FILE 9.1. Operasi File Dalam Visual Basic Visual Basic menyediakan suatu fasilitas untuk membaca, menyimpan dan memperbaiki file data, sehingga memungkinkan untuk memisahkan data dengan program,
Lebih terperinciLampiran A. Program Visualisasi Cuaca Otomatis
Lampiran A. Program Visualisasi Cuaca Otomatis Form1-1 'Fungsi Explicit menggunakan lybrary yang telah tersedia Option Explicit Private Declare Function joygetdevcaps Lib "winmm.dll" Alias "joygetdevcapsa"
Lebih terperinciPENGGUNAAN KEYPAD 4X3 DAN PC KEYBOARD PADA MODUL DST-52 DENGAN TAMPILAN M1632 LCD
PENGGUNAAN KEYPAD 4X3 DAN PC KEYBOARD PADA MODUL DST-52 DENGAN TAMPILAN M1632 LCD Setelah kita bahas penggunaan keypad 4x3 (tipe KP-43865) dengan metode penulisan karakter pada keypad handphone di mana
Lebih terperinciPENULISAN KARAKTER DENGAN MENGGUNAKAN TEKNIK PENULISAN PADA KEYPAD HANDPHONE OLEH MODUL DST-51, KEYPAD 4X3 DAN M1632 LCD
PENULISAN KARAKTER DENGAN MENGGUNAKAN TEKNIK PENULISAN PADA KEYPAD HANDPHONE OLEH MODUL DST-51, KEYPAD 4X3 DAN M1632 LCD Keypad 4x3 adalah merupakan keypad dengan konfigurasi 4 baris dan 3 kolom dan terdiri
Lebih terperinciMENAMPILKAN 1000 KARAKTER PESAN PADA MODUL M1632 LCD OLEH MODUL DST-51
MENAMPILKAN 1000 KARAKTER PESAN PADA MODUL M1632 LCD OLEH MODUL DST-51 Aplikasi ini akan membahas bagaimana proses penampilan pesan sebanyak 1000 karakter pada layar M1632 LCD. Untuk menampilkan pesan
Lebih terperinciMESIN KETIK ELEKTRONIK DENGAN TAMPILAN M1632 LCD OLEH MODUL DST-52
MESIN KETIK ELEKTRONIK DENGAN TAMPILAN M1632 LCD OLEH MODUL DST-52 Akhir-akhir ini, keberadaan mesin ketik sudah mulai tergusur dengan adanya printer. Namun sebuah printer membutuhkan komputer untuk mengendalikannya.
Lebih terperinciTeknik Interface Keypad 4x3 ke DST-51
Teknik Interface Keypad 4x3 ke DST-51 Keypad 4x3 di sini adalah sebuah keypad matrix dengan susunan empat baris dan tiga kolom dengan sebuah common. R1 R2 R3 R4 1 2 3 4 5 6 7 8 9 * 9 # C1 C2 C3 Gambar
Lebih terperinciPERCOBAAN 3. KONTROL DISPLAY 7-SEGMENT Menggunakan DT-51 MinSys
PERCOBAAN 3 KONTROL DISPLAY 7-SEGMENT Menggunakan DT-5 MinSys Membuat proses kontrol display seven segment menggunakan SWITC sebagai set () dan reset (L) program. Membuat program Counter baik Up Counter
Lebih terperinciPROGRAM INTERFACING AUDIO DAN VIDEO DENGAN PROGRAM VISUAL BASIC LAPORAN TUGAS KARYA TULIS INTERFACING
PROGRAM INTERFACING AUDIO DAN VIDEO DENGAN PROGRAM VISUAL BASIC LAPORAN TUGAS KARYA TULIS INTERFACING Di susun oleh Nama : Andy Budi Setiawan NIM : 13081324 Kelas : 13.5B.11 Dosen : Juniar Sinaga Jurusan
Lebih terperinciBAB IV IMPLEMENTASI DAN PENGUJIAN. dan menjelasan berbagai hal yang berhubungan dengan pengujian.
BAB IV IMPLEMENTASI DAN PENGUJIAN 4.1 Implementasi Setelah tahap analisis dan perancangan sistem sebagai tindak lanjut penyelesaian perancangan aplikasi tersebut. Maka dilakukan implementasi dari program
Lebih terperinciMenjelaskan variabel aksi sebagai data string nilai,hasil dan simpan sebagai data double.
1. Public Class Form1 Dim aksi As String Dim nilai As Double Dim hasil As Double Dim simpan As Double Menjelaskan variabel aksi sebagai data string nilai,hasil dan simpan sebagai data double. 2. Private
Lebih terperinciDAFTAR PUSTAKA. Agfianto Eko Putra, BELAJAR MIKROKONTROLLER AT89C51/52/53, Gava Media, 2005.
DAFTAR PUSTAKA Dr.Sjukri Karim, Dr Peter Kabo, EKG dan Penanggulangan beberapa penyakit jantung untuk dokter umum, Fakultas Kedokteran Unversitas Indonesia, 1996. Hendra Marwazi ST. MT, Anshor Usman Ibrahim
Lebih terperinciKompensasi Pencahayaan
PRAKTIKUM IV Kompensasi Pencahayaan Tujuan Memberikan pengertian perlunya dilakukan pengaturan pencahayaan Memberikan contoh macam-macam cara pengaturan pencahayaan Teori Penunjang Gambar Percobaan Prosedur
Lebih terperinciPENGATURAN KECEPATAN MOTOR DENGAN PC OLEH DST-5 2
PENGATURAN KECEPATAN MOTOR DENGAN PC OLEH DST-5 2 Penggunaan motor DC dewasa ini sudah sangatlah umum, salah satu kelebihan motor DC adalah relatif gampang didapat dan mudah diatur kecepatan putarnya.
Lebih terperinciLAMPIRAN A: LISTING PROGRAM
LAMPIRAN A: LISTING PROGRAM function varargout = FigUtama(varargin) % FIGUTAMA M-file for FigUtama.fig % FIGUTAMA, by itself, creates a new FIGUTAMA or raises the % existing % singleton*. % % H = FIGUTAMA
Lebih terperinciPre Processing. Memberikan gambaran jenis-jenis pre-processing
PRAKTIKUM IIb Pre Processing Tujuan Memberikan gambaran jenis-jenis pre-processing Teori Penunjang Prosedur Percobaan. Pada percobaan beikut ini merupakan kelanjutan dari percobaan berikutnya mengenai
Lebih terperinciMODUL IV PERULANGAN ( LOOPING )
MODUL IV PERULANGAN ( LOOPING ) beberapa jenis perulangan dalam pemrograman Visual Basic pada umumnya tidak jauh berbeda dengan bahasa pemrograman lainnya, berikut ialah beberapa jenis looping ( perulangan
Lebih terperinciDESKRIPSI SINGKAT INSTRUKSI-INSTRUKSI PADA AT89S51
DESKRIPSI SINGKAT INSTRUKSI-INSTRUKSI PADA AT89S51 (Dikemas oleh : Sumarna, Jurdik Fisika, FMIPA, UNY E-mail : sumarna@uny.ac.id) No. Instruksi Deskripsi Contoh 1. ADD A,R n Menambahkan isi A dengan isi
Lebih terperinciBAB IV ANALISA DAN HASIL UJI COBA RANGKAIAN
BAB IV ANALISA DAN HASIL UJI COBA RANGKAIAN 4.1 Prinsip Kerja Rangkaian Rangkaian ini bekerja berdasarkan dua buah sensor yang di pasang secara berdampingan, dengan memanfaatkan Phototransistor sebagai
Lebih terperinciBAB III PERANCANGAN ALAT DAN PROGRAM. Gambar 3.1. Blok Diagram
BAB III PERANCANGAN ALAT DAN PROGRAM 3.1. Blok Diagram Sistem Blok diagram merupakan penyederhanaan dari rangkaian yang menyatakan hubungan berurutan dari satu atau lebih rangkaian yang memiliki kesatuan
Lebih terperinciINSTRUKSI DAN BAHASA PEMOGRAMAN MIKROKONTROLER
INSTRUKSI DAN BAHASA PEMOGRAMAN MIKROKONTROLER Yoyo Somantri dan Erik Haritman Dosen Jurusan Pendidikan Teknik Elektro FPTK Universitas Pendidikan Indonesia Pendahuluan Dalam bab ini akan dibahas tujuan
Lebih terperinciBAB III ANALISIS DAN PERANCANGAN APLIKASI 3.1 ANALISIS
29 BAB III ANALISIS DAN PERANCANGAN APLIKASI 3.1 ANALISIS Dengan menggunakan Visual Basic 6.0 aplikasi perangkat ajar pengelolaan dan perhitungan ekspresi matematika yang akan dibangun dalam penelitian
Lebih terperinciDAFTAR PUSTAKA. Multimedia Control, Steven Holzner. Diakses pada tanggal 14/09/2011 Dari
DAFTAR PUSTAKA CommonDialog Control, 2011.Visual Basic 6.0. Diakses pada tanggal 14/09/2011 http://msdn.microsoft.com/en-us/library/aa259661%28v=vs.60%29.aspx Forrest Moon Production, 2010. The Birth Of
Lebih terperinciLaporan Modul 2, EL3006 Timer/Counter dan Interrupt Jongguran Sondang DN ( )/ Kelompok 48/ Jumat, 14 Maret 2008 Asisten: Virgilius
Laporan Modul 2, EL3006 Timer/Counter dan Interrupt Jongguran Sondang DN (132 05 110)/ Kelompok 48/ Jumat, 14 Maret 2008 Asisten: Virgilius Abstrak pada praktikum kali ini, praktikan diharapkan mampu membuat
Lebih terperinciDT-51 Application Note
DT-51 Application Note AN14 - How 2 Use DT-51 KND with DT-51 MinSys ver 3.0 oleh: Tim IE & Sapto Jayadi Sutandi (Universitas Kristen Petra) Sesuai namanya, application note ini menjelaskan tentang penggunaan
Lebih terperinciProgram absen dengan menggunakan visual basic 6.0
Program absen dengan menggunakan visual basic 6.0 Pajrin Wurika Sahara Wurika.sahara@gmail.com Abstrak Visual Basic merupakan sebuah bahasa pemrograman yang menawarkan Integrated Development Environment
Lebih terperinciMemprogram Port sebagai Output dan Input Sederhana
BAGIAN 1 Tujuan Pembelajaran Umum: 1. Mahasiswa trampil memprogram Port sebagai Input dan Output sederhana menggunakan bahasa pemrograman assembly Tujuan Pembelajaran Khusus: 1. Mahasiswa memahami Konstruksi
Lebih terperinciLampiran 2 Rangkaian Lengkap
Lampiran 2 Rangkaian Lengkap Lampiran 1 Program Rangkaian di mikrokontroler AT89S52 bil0 equ 21h bil1 equ 0edh bil2 equ 19h bil3 equ 89h bil4 equ 0c5h bil5 equ 83h bil6 equ 3h bil7 equ 0e9h bil8 equ 01h
Lebih terperinciLAMPIRAN D DATA SHEET
LAMPIRAN D DATA SHEET D-1 D-2 D-3 D-4 D-5 D-6 D-7 D-8 D-9 D-10 D-11 Instruksi-instruksi Keluarga MCS51 A. Operasi Aritmatika 1. ADD ADD A,Rn Tambahkan Akumulator A dengan Rn di mana n = 0 7 dan simpan
Lebih terperinciBAB IV IMPLEMENTASI DAN PENGUJIAN. dan tempat implementasi dari perangkat lunak ini adalah sebagai berikut :
BAB IV IMPLEMENTASI DAN PENGUJIAN 4.1 IMPLEMENTASI PERANGKAT LUNAK Lingkungan perangkat keras yang digunakan untuk perancangan sistem dan tempat implementasi dari perangkat lunak ini adalah sebagai berikut
Lebih terperinciMODUL 2 Variabel, Val, If tunggal dan If bersarang + case
MODUL 2 Variabel, Val, If tunggal dan If bersarang + case 1. variabel suatu tempat dalam memori yang diberi nama (sebagai pengenal) dan dialokasikan untuk menampung data. Sintax : Dim_namavariabel_As_typedata
Lebih terperinciRegister-register MT8888
Register-register MT8888 MT8888 mempunyai 3 buah register yaitu Register Kontrol untuk mengatur kerja IC MT8888, Register Status untuk melihat status IC MT8888 dan Register Data untuk mengirim dan menerima
Lebih terperinciLISTING PROGRAM. Private Sub Form_KeyDown(KeyCode As Integer, Shift As Integer) ShowInputForm End Sub
LISTING PROGRAM 1. Listing Menu Utama Option Explicit Private ntime As Integer Private Sub Form_KeyDown(KeyCode As Integer, Shift As Integer) ShowInputForm Private Sub Form_Load() ntime = 0 Private Sub
Lebih terperinciBAB III PERANCANGAN SISTEM. Secara garis besar rangkaian pengendali peralatan elektronik dengan. blok rangkaian tampak seperti gambar berikut :
BAB III PERANCANGAN SISTEM 3.1. Diagram Blok Secara garis besar rangkaian pengendali peralatan elektronik dengan menggunakan PC, memiliki 6 blok utama, yaitu personal komputer (PC), Mikrokontroler AT89S51,
Lebih terperinciLISTING PROGRAM FORM MENU UTAMA. Private Sub Command1_Click() Unload Me Form2.Show End Sub. Private Sub Command3_Click() Form10.
LISTING PROGRAM FORM MENU UTAMA Form2.Show Form10.Show Form11.Show Private Sub Command5_Click() Private Sub Command6_Click() Form12.Show Private Sub Timer1_Timer() Label3.Caption = Time Label4.Caption
Lebih terperinciLAMPIRAN. Kode Program Menu Utama
1 LAMPIRAN Kode Program Menu Utama Dim LetakTengah As Integer Private Declare Function PlaySound Lib "winmm.dll" Alias _ "PlaySoundA" (ByVal lpszname As String, ByVal hmodule As Long, _ ByVal dwflags As
Lebih terperinciKOMUNIKASI DATA DENGAN MENGGUNAKAN TEKNIK RS485
KOMUNIKASI DATA NGAN MENGGUNAKAN TEKNIK RS485 RS485 adalah teknik komunikasi data serial yang dikembangkan di tahun 1983 di mana dengan teknik ini, komunikasi data dapat dilakukan pada jarak yang cukup
Lebih terperinciBAB IV PENGUJIAN DAN EVALUASI SISTEM. Pengujian dan evaluasi sistem pada tugas akhir ini meliputi perangkat
BAB IV PENGUJIAN DAN EVALUASI SISTEM Pengujian dan evaluasi sistem pada tugas akhir ini meliputi perangkat keras elektonika dan perangkat lunak yang telah dibuat. Pengujian pada perangkat keras elektronika
Lebih terperinciMENGELOLA FILE. - Untuk menampilkan file, perlu membuka direktori penyimpanannya.
MENGELOLA FILE Menampilkan File - Untuk menampilkan file, perlu membuka direktori penyimpanannya. - File disimpan pada susunan bertingkat-tingkat dan akan lebih mudah apabila organisasi file menggunakan
Lebih terperinciPenggunaan Struktur Kontrol Pengulangan. Adi Rachmanto,S.Kom Prodi Akuntansi - UNIKOM
Penggunaan Struktur Kontrol Pengulangan Adi Rachmanto,S.Kom Prodi Akuntansi - UNIKOM Struktur kontrol di dalam bahasa pemrograman adalah perintah dengan bentuk (struktur) tertentu yang digunakan untuk
Lebih terperinciPEMROGRAMAN VISUAL BASIC
PEMROGRAMAN VISUAL BASIC Setelah memahami bahasa Visual Basic dasar untuk menuliskan kode program, langkah selanjutnya adalah mempelajari pemrograman VB itu sendiri. 6.1 Sub Procedure Sejauh ini, Anda
Lebih terperinciAD Channel AD Conversion
AD-0809 8 Channel AD Conversion Fitur: - 8 Channel Multiplex Analog Input - 0 5 Volt Analog Input - 4 Interrupt Output Selector - 4 Address Selector - Kompatibel DST-51 Minimum System & SC-51 - Free Running
Lebih terperinciMengenal bahasa assembly
Mengenal bahasa assembly adiatma adiatma@raharja.info Abstrak Komputer adalah mesin penghitung elektronik yang cepat dan dapat menerima informasi input digital, kemudian memprosesnya sesuai dengan program
Lebih terperinciSesi/Perkuliahan ke: XII
Sesi/Perkuliahan ke: XII Tujuan Instruksional Khusus : 1. Mahasiswa mengerti dan memahami penggunaan Database dalam Visual Basic 2. Mahasiswa mengerti cara menampilkan file 3. Mahasiswa mengerti cara menyaring
Lebih terperinciPengenalan Dan Contoh Penggunaan Sederhana Fungsi Looping Pada Visual Basic
Pengenalan Dan Contoh Penggunaan Sederhana Fungsi Looping Pada Visual Basic Muhamad Burhanudin Muhamadburhanudin981@gmail.com Abstrak Looping atau perulangan merupakan salah satu hal terpenting yang harus
Lebih terperinciDASAR INPUT/OUTPUT (2) (PORT PPI DAN PORT 1 SEBAGAI INPUT/OUTPUT)
PERCOBAAN 2 DASAR INPUT/OUTPUT (2) (PORT PPI DAN PORT 1 SEBAGAI INPUT/OUTPUT) Menggunakan DT-51 MinSys Mengamati keluaran data berupa nyala LED setelah proses pemindahan data (akses eksternal) dari sebuah
Lebih terperinciLISTING PROGRAM. Public Declare Sub PortOut Lib "io.dll" (ByVal Port As Integer, ByVal Value As Byte)
43 LISTING PROGRAM Skrip Modul pada Server Public Declare Sub PortOut Lib "io.dll" (ByVal Port As Integer, ByVal Value As Byte) Kode Program Aplikasi Server Option Explicit Private Sub Form_Load() Winsock1.LocalPort
Lebih terperinci1. Buka Visual Basic 6 sobat. Buat project baru, masukkan componen Microsoft Winsock Control 2. Masukkan coding berikut
Membuat Sendiri DDoS Tool Dengan Visual Basic 6 Saat ini banyak bertebaran DDoS Tool yang bisa kita jumpai di dunia maya ini. DDoS ( Distributed Denial of Service ) adalah sebuah tipe serangan dari hacker
Lebih terperinciBAB-2 : TIPE DATA, VARIABEL DAN OPERATOR
BAB-2 : TIPE DATA, VARIABEL DAN OPERATOR Setelah selesai pembahasan pada bab ini, diharapkan Anda dapat : Mengenal dan dapat menggunakan tipe data Mengenal dan menggunakan variable Mengenal dan menggunakan
Lebih terperinciBAB IV IMPLEMENTASI DAN PENGUJIAN
BAB IV IMPLEMENTASI DAN PENGUJIAN Pada bab ini akan dijelaskan mengenai perancangan aplikasi Traffic Light Control System berbasis jaringan dan pengawasan traffic dengan kamera berdasarkan jam kantor sampai
Lebih terperinciANTAR MUKA DST-51 DENGAN MODUL AD-0809
ANTAR MUKA DST-51 DENGAN MODUL AD-0809 ADC0809 ADC0809 adalah IC pengubah tegangan analog menjadi digital dengan masukan berupa 8 kanal input yang dapat dipilih. IC ADC0809 dapat melakukan proses konversi
Lebih terperinciAkuisasi data dengan remote host AT89s51 melalui serial RS232
Akuisasi data dengan remote host AT89s51 melalui serial RS232 I. Tujuan 1. Mahasiswa mampu merealisasikan sebuah system data jarak jauh dengan remote host berbasis MCS51 yang terhubung pada pc melalui
Lebih terperinciAPLIKASI MODUL DST -52 SEBAGAI JAM DIGITAL DENGAN INPUT DARI PC KEYBOARD DAN M1632 LCD SEBAGAI PENAMPIL
APLIKASI MODUL DST -52 SEBAGAI JAM DIGITAL DENGAN INPUT DARI PC KEYBOARD DAN M1632 LCD SEBAGAI PENAMPIL Pada artikel kali ini akan dibahas contoh bagaimana menggabungkan antara modul RTC-1287, modul LCD
Lebih terperincide KITS Application Note AN24 - How 2 Use de KITS Phone Interface with DT-51 MinSys ver 3.0
de KITS Application Note AN24 - How 2 Use de KITS Phone Interface with DT-51 MinSys ver 3.0 oleh: Tim IE & Stevy Suwarno (Universitas Kristen Petra) Application note ini menjelaskan tentang penggunaan
Lebih terperinciMemprogram Interface Motor
BAGIAN 1 Tujuan Pembelajaran Umum: 1. Mahasiswa trampil memprogram interface motor Tujuan Pembelajaran Khusus: 1. Mahasiswa memahami dasar-dasar interface motor stepper 2. Mahasiswa memahami pemrograman
Lebih terperinciLISTING PROGRAM. Script Menu Utama Pada Game Tebak Kata
LISTING PROGRAM Script Menu Utama Pada Game Tebak Kata Dim kesempatan As Integer Dim nilai As Integer Dim arrkataasli(20) As String Dim kataasli As String Dim arrhurufharushilang(20) As String Dim hurufharushilang
Lebih terperinciBAB IV PERANCANGAN. Gambar diatas adalah tampilang awal ketika ingin memulai project baru. Pilih Standart EXE untuk memulai project.
BAB IV PERANCANGAN 4.1 Perancangan Visual Basic 6.0 Dalam perancangan aplikasi perancangan data menggunakan visual basic 6.0 langkah pertama adalah dengan membuat Form Home Gambar 4.1 New Project Gambar
Lebih terperinciTAMPILKAN NADA DTMF DAN DERING TELEPHONE OLEH MODUL DF-88 DAN MODUL DST-51 PADA LCD
TAMPILKAN NADA DTMF DAN DERING TELEPHONE OLEH MODUL DF-88 DAN MODUL DST-51 PADA LCD Pada aplikasi-aplikasi menggunakan saluran telephone, proses deteksi nada DTMF maupun sinyal dering seringkali dibutuhkan,
Lebih terperinciPercobaan 5. TIMER/COUNTER Menggunakan DT-51 MinSys
Percobaan 5 TIMER/COUNTER Menggunakan DT-51 MinSys Menggunakan Timer/Counter pada DT-51 Mininum System sebagai timer ataupun sebagai counter. Memanfaatkan Special Fungtion Register (SFR) untuk mengatur
Lebih terperinciBAB III PERENCANAAN DAN REALISASI
BAB III PERENCANAAN DAN REALISASI 3.1 Deskripsi Sistem Nama Sistem :Simulasi Monitoring Downtime Mesin Dengan Visual Basic 6.0 Fungsi :Pencatatan Downtime Mesin. Keunggulan : Mencatat Downtime Mesin Secara
Lebih terperinciPROGRAMMABLE TIMER DENGAN TAMPILAN M1632 LCD MENGGUNAKAN MODUL DST-51
PROGRAMMABLE TIMER DENGAN TAMPILAN M1632 LCD MENGGUNAKAN MODUL DST-51 Perangkat timer adalah merupakan sebuah perangkat yang seringkali digunakan untuk sebuah sistem elektronik. Artikel berikut ini akan
Lebih terperinciFUNGSI PENCABANGAN DAN PERULANGAN
Hal - 1 - FUNGSI PENCABANGAN DAN PERULANGAN Kedua fungsi ini sangat banyak digunakan dalam proses pemrograman. Kita akan mencobanya dalam sebuah program non database. Fungsi pencabangan dan perulangan
Lebih terperinciBAB IV IMPLEMENTASI DAN PENGUJIAN
63 BAB IV IMPLEMENTASI DAN PENGUJIAN Implementasi adalah tahapan yang dilakukan oleh penulis setelah perancangan, implementasi merupakan pengkodean dari hasil perancangan. aplikasi Bantu untuk mengukur
Lebih terperinciDASAR INPUT/OUTPUT (1) (PORT PPI DAN PORT 1 SEBAGAI OUTPUT)
Percobaan DASAR INPUT/OUTPUT () (PORT PPI DAN PORT SEBAGAI OUTPUT) Menggunakan DT-5 MinSys Mengamati keluaran data berupa nyala LED setelah proses pemindahan data (akses eksternal) dari sebuah register
Lebih terperinciBAB IV IMPLEMENTASI DAN PENGUJIAN
BAB IV IMPLEMENTASI DAN PENGUJIAN 4.1 Implementasi Aplikasi Secara sederhana implementasi bisa diartikan pelaksanaan atau penerapan (Kamus Besar Bahasa Indonesia 374). Pengertian tersebut memperlihatkan
Lebih terperinciFlowchart Bagian Pemancar
Flowchart Bagian Pemancar START Baca Nilai EEPROM pemancar Masukkan Nilai EEPROM ke Counter BACA SENSOR TIDAK Nilai Sensor = 1? YA Counter + 1 Masukkan Nilai Counter Ke EEPROM Biaya = Nilai Counter x 3
Lebih terperinciRingkasan Set Instruksi Dan Mode pengalamatan ( Addressing Mode )
Ringkasan Set Instruksi Dan Mode pengalamatan ( Addressing Mode ) Mikroprosessor 8051, sebagaimana terdaftar dalam 8051 set instruction in numerical order memiliki sekumpulan instruksi yang terintegrasi
Lebih terperinciVISUAL BASIC 6.0 SETYO BUDI, M.KOM.
VISUAL BASIC 6.0 SETYO BUDI, M.KOM 1 Pendahuluan Program adalah suatu proses yang saling menyambung. Untuk mencapai tujuan program harus melalui tahap-tahap tertentu, sehingga dibutuhkan alur program yang
Lebih terperinciBAB IV IMPLEMENTASI DAN PENGUJIAN
BAB IV IMPLEMENTASI DAN PENGUJIAN Pada bab ini akan dijelaskan tentang implementasi dari perangkat lunak mikrokontroler dan komputer, kemudian akan dilakukan proses pengujian terhadap perangkat lunak dengan
Lebih terperinciPertemuan 11 type data, deklarasi variabel dan array 1.1 Mengenal Data dan Variabel
Pertemuan 11 type data, deklarasi variabel dan array 1.1 Mengenal Data dan Variabel Ketika seorang user (pengguna) menggunakan sebuah program komputer, seringkali komputer memintanya untuk memberikan informasi.
Lebih terperinciKrisna D. Octovhiana. 1.1 Mengenal Struktur Kontrol.
Cepat Mahir Visual Basic 6.0 mail4krisna@yahoo.com Lisensi Dokumen: Seluruh dokumen di IlmuKomputer.Com dapat digunakan, dimodifikasi dan disebarkan secara bebas untuk tujuan bukan komersial (nonprofit),
Lebih terperinciOleh : Uus Rusmawan Hal - 1 Melihat Struktur Tabel Dalam Database Buatlah form dengan bentuk seperti gambar di bawah ini Coding Dim BukaFile As New ADODB.Connection Dim BukaTabel As ADODB.Recordset Dim
Lebih terperinciPERCOBAAN 3 DISPLAY 7 SEGMEN
PERCOBAAN 3 DISPLAY 7 SEGMEN TUJUAN: 1. Memahami rangkaian interface mikrokontroller dengan 7 segmen 2. Memahami program assembly untuk menampilkan data ke 7 segment 3. Memahami beberapa instruksi assembly
Lebih terperinciLAMPIRAN 1 PROGRAM PADA MIKROKONTROLER ATMEGA 89S52
LAMPIRAN 1 PROGRAM PADA MIKROKONTROLER ATMEGA 89S52 MOV TMOD,#20H ; boutrate 9600 stopbit 1, data bit 8, parity none, flow control none MOV SCON,#50H MOV TH1,#-3 SETB TR1 rs equ p2.5 rw equ p2.6 en equ
Lebih terperinciMenggunakan Bahasa Pemrograman Assembly
BAGIAN 1 Tujuan Pembelajaran Umum: 1. Mahasiswa trampil menggunakan bahasa pemrograman assembly Tujuan Pembelajaran Khusus: 1. Mahasiswa memahami konstruksi program assembly 2. Mahasiswa memahami proses
Lebih terperinci1. Rancangan Input Program Form Menu Utama Form Data Barang [ Input Barang ]
1. Rancangan Input Program Form Menu Utama Form Data Barang [ Input Barang ] L-1 Form Data Barang [ Browse ] Form Produksi L-2 Form Faktur Penjualan Form Pembeli L-3 Form Pembeli [ Browse ] Properti Form
Lebih terperinciManifold Pressure. Engine Temp
LAMPIRAN 64 Lampiran 1 Data ECU pada data latih Nomor RPM Manifold Pressure Engine Temp Inlet Air Temp Lambda 1 4892 84.2 83 30.9 1.00 2 4927 78.7 83 30.9 0.98 3 5221 72.2 83 30.9 1.01 4 5285 56.1 83 30.9
Lebih terperinci'...mengambil dan menjalankan perintah yang dituliskan oleh user...
L1 Listing Program Modul Server Dim counter As Integer Dim StatusData As Integer Dim DataPilahWinsock(0 To 5) As String Dim temp As Variant Dim SendData_Winsock As String Dim MSCOMMBuffer As String Dim
Lebih terperinciBAB IV PERANCANGAN SISTEM INFORMASI AKUNTANSI BELANJA
BAB IV PERANCANGAN SISTEM INFORMASI AKUNTANSI BELANJA 4.1 Sistem Informasi Akuntansi Belanja Yang Diusulkan 4.1.1 Kebijakan Sistem Informasi Akuntansi Belanja Yang Diusulkan Adapun kebijakan Kantor Kecamatan
Lebih terperinciBAB IV IMPLEMENTASI DAN PENGUJIAN
BAB IV IMPLEMENTASI DAN PENGUJIAN Pada bab ini akan dijelaskan mengenai implementasi dari sistem yang dibuat. Pembahasan implementasi sistem akan meliputi tampilan koding beserta penjelasannya dan perancangan
Lebih terperinciVisual Basic 6.0 For Beginners
Visual Basic 6.0 For Beginners Febryan Hari Purwanto fharipurwanto@gmail.com Chapter 6 Alur Program Kondisi Percabangan Sebuah aplikasi harus memiliki alur program yang baik sehingga tidak akan terjadi
Lebih terperinciBAB IV IMPLEMENTASI DAN PENGUJIAN
54 BAB IV IMPLEMENTASI DAN PENGUJIAN 4.1 Implementasi Setelah melakukan analisis dan perancangan terhadap aplikasi yang akan dibangun, tahapan selanjutnya adalah implementasi dan pengujian. Untuk mengimplementasikan
Lebih terperinciDISUSUN OLEH : : Friska Rosalina NIM :
DISUSUN OLEH : Nama : Friska Rosalina NIM : 061130500419 2013 PROGRAM BILLING WARNET MICROSOFT VISUAL BASIC Program billing merupakan sistem yang membantu para usahawan untuk mengatur dan mencatat segala
Lebih terperinci