Rabu, 01 Januari 2014

Praktikum Micro

   
      Sebelumnya, penulis telah memposting tentang MCS-51 type AT89S51. Sebelum kita melanjutkan cara memasukan program / data ke IC tersebut, penulis akan menerangkan dan menjelaskan aplikasi aplikasi apa saja yang dibutuhkan untuk memasukan program ke dalam IC.
    Penulis akan menjelaskan satu per satu aplikasi yang akan dipakai beserta cara kerjanya. Yaitu sebagai berikut :
1. Program MIDE (program editor dan compiler MCS-51) 

    Merupakan sebuah program editor dan kompiler untuk mikorkontroler MCS-51, dimana anda akan bisa memasukan program yang akan anda coba, (mirip seperti bahasa pemrograman).Langkah - langkahnya adalah sebagai berikut :
>  Jalankan MIDE 51
> Untuk membuat program baru, pilih File >> New. Kemudian buat program yang anda inginkan.
 Gambar
>  Menyimpan file program pilih File >> Save, atau klik icon “save” lalu beri nama file dan beri exstensi .asm (misal “coba.asm”).
>  Compile program yang sudah anda tulis (dengan cara pilih menu Build >> Build / tekan F9), sampai tidak ada kesalahan, sehingga muncul pesan no Error, sebagai berikut :
 Gambar
 >  Jika berhasil, berarti anda telah berhasil membuat file hex dengan benar.
2.  DT 51
     Merupakan aplikasi yang berfungsi untuk mentransfer isi program hex (hex file) ke ROM IC mikrokontroler lewat port com1 PC. Untuk yang lewat port USB hanya untuk tipe mikrokontroler MCS-51 tipe S (AT89S51) dan AVR.
     Langkah - langkah pemakaian aplikasi DT 51adalah sebagai berikut : 
>  Buka Aplikasi DT 51
>  Pilih Option untuk memilih alamat port secara "auto detectio".
Gambar
>   Lalu, test koneksi PC dengan IC menggunakan aplikasi DT 51 dengan pilih menu Option >> Testing atau tekan F8.
 Gambar
>  Jika koneksi berhasil, open file hex yang sudah anad tulis lewat menu file >> open. Lalu browse dimana file hex anda simpan, lalu pilih, setelah terpilih klik OK.
 Gambar
Jika proses berhasil, maka IC telah terprogram sesuai dengan apa yang anda programkan.
3.  TOPVIEW Simulator
     Jika anda tidak memiliki IC MCS-51 tipe AT89S51 anda tidak usah khawatir tidak bisa mencoba, karena TOPVIEW Simulator bisa menjadi alternatif untukpengganti IC AT89S51.
Sebelum anda menggunakan simulator ini, terlebih dahulu anda setting sesuai dengan kebutuhan program yang anda butuhkan. Berikut cara mensetting TOPVIEW Simulator:
1.   Setting Modul LED, dapat dihubungkan atau dikeluarkan dari P0, P1, P2, P3 dan dapat disetting LED aktif LOW atau HIGH, juga dapat dipilih warna LED yang diinginkan. Untuk mensetting LED dari menu :
 Gambar
Contoh setting bisa anda lihat dibawah ini :
 Gambar
Untuk hasil tampilan settingan anda, dapat dilihat atau dimunculkan dengan langkah pilih menu View >> External Modules >> LED :
Hasil Setting LED :
Gambar
2.  Setting modul Keypad (toggle / push Button)
dengan cara pilih menu File >> External Module >> Keyboard 
 Gambar
>>  Hasil settingan dapat dibuka dengan pilih menu View >> External Modules >> Keyboard
 Gambar
Seven Segment Mikrokontroler
            Seven segment adalah diode LED sebanyak 7 buah yang disusun dan dikemas membentuk penampil angka, dan biasanya ditambahkan 1 buah LED untuk koma (Dot Point). Karena dibentuk dari kumpulan LED maka ada dua jenis seven segment, yaitu Common Anode (CA) dan Common Catode (CC).
            Untuk penyalakan seven segment jenis CC maka masukan segment a sampai dengan Dp harus diberi logika tinggi dan bagian CC dihubungkan dengan Ground. Sedangkan jika ingin menyalakan seven segment jenis CA maka masukan segment a s/d Dp harus diberi logika LOW dan CA harus dihubungkan ke +5 VCC. 
 Skema Rangkaian 
  P1 sbg input PA sebagai output
Berikut alamat penting modul DT-51 : 
 1. PA (port A)       = 2000h
 2. PB (port B)       = 2001h
 3. PC (port C)      = 2002h
 4. Reg CW (Control Word)  = 2003h
 5. DIGIT1        = 80h
 6. DIGIT2        = 40h
Dari gambar rangkaian di atas saluran data tampilan angka menggunakan P1 yang dipakai bersama antara digit1 dan digit 2 sehingga jika ingin menampilkan angka bersama (tampil 2 digit sekaligus) dilakukan secara bergantian secara cepat sehingga tampil seolah-olah berbarengan. Catatan penting untuk tampilan secara bergatian dari digit1 ke digit2 harus diselingi dengan mematikan semua sesaat, karena jika tidak dimatikan sesaat maka tampilan angka akan tumpang tindih.

Selasa, 18 Desember 2012

Function, Overloading Function, Macam-macam Function bawaan


Menerangkan Tentang Function dengan Return Value
Berupa Array

 Function merupakan Sekumpulan Statement dari VB (Visual Basic) yang diberi nama dan dapat menghasilkan nilai balik.
Pada Tugas kali ini, Saya akan menjelaskan fungsi “Function” dari pembuatan program berbentuk Array. Simak dengan jelas, 

Pertama buat form seperti berikut :
Lalu isikan source kode berikut pada form :


PublicClassForm1

PrivateFunction stats(ByValParamArray args() AsObject) AsSingle()
Dim hasil(3) As Single
Dim i As Integer
For i = 0 To UBound(args)
            hasil(0) = hasil(0) + args(i)
If i = 0 Then
                hasil(1) = args(i)
                hasil(2) = args(i)

EndIf
If hasil(1) > args(i) Then hasil(1) = args(i)
If hasil(2) < args(i) Then hasil(2) = args(i)

Next i
Return hasil
End Function

EndClass

 Lalu isikan source kode pada button 1, dengan Double Klik pada Button1 untuk mengisinya. Dibawah adalah penampakan kodenya:

PrivateSub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
Dim statistik As Single() = stats(11, 16, 12, 17, 13, 19, 14, 20, 18, 15)
        TextBox1.Text = statistik(0)
        TextBox2.Text = statistik(1)
        TextBox3.Text = statistik(2)

EndSub



Ketika program dijalankan, hasilnya akan seperti ini :


Kenapa bisa seperti itu? Jadi begini
1. Sub Program “Function” ini memberikan umpan balik berbentuk nilai, sehingga bisa mendapatkan hasil sesuai dengan isi programnya yang ingin dibuat.
2.  Penjelasan singkat mengenai listing program pada form:
3.  Penjelasan singkat mengenai listing program pada Button1:


Sekian penjelasan tentang function dari saya, jika ada kekurangan mohon maaf


















OVERLOADING FUNCTION


Apa itu Overloading Function? Overloading Function merupakan sebuah function dengan nama yang sama tetapi memiliki Parameter yang berbeda. Berikut ini adalah penjelasannya:


Pertama buatlah form seperti dibawah ini:
Kemudian isikan source kode berikut:
PublicClassForm2

Function hitung(ByVal bil1 AsInteger, ByVal bil2 AsInteger) AsInteger
        hitung = bil1 * bil2
EndFunction
Function hitung(ByVal bil1 AsInteger, ByVal bil2 AsInteger, ByVal bil3 AsInteger) AsInteger
        hitung = bil1 + bil2 + bil3
EndFunction


PrivateSub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
        TextBox1.Text = hitung(5 ,6 ,7)

EndSub
EndClass 

Jika dijalankan akan muncul tampilan seperti berikut:
Kenapa demikian? Berikut penjelasannya.....

  1.         Terdapat 2 Sub Program “Function” yang bisa berfungsi, tetapi pada saat kita melihat pemanggilan namaFunction pada Button1, terdapat 3 bilangan yang artinya, hanya “function” yang memiliki 3 parameterlah yang dapat berjalan, sedangkan “Function” yang memiliki 2 parameter diabaikan.
  2.       Tetapi, jika angka parameter pada pemanggilan namaparameter di hapus 1, maka “Function” yang memiliki 2 parameterlah yang dijalankan, sedangkan “function” yang memiliki 3 parameter akan diabaikan. Hasilnya akan seperti dibawah ini:
Function Bawaan pada Visual Basic

Function itu sendiri adalah sekumpulan tatement yang menghasilkan nilai balik (return Value). Nilai Balik ini akan akan dikembalikan pada blok perintah yang memanggil prosedur function.

Adapun syntax penulisan function procedure : 


[Private/Public]  Function  namafungsi(argumen-argumen) [As type]
---Baris perintah---
End Function

      Dari sytax diatas, namafungsi bisa diisi sesuai kebutuhan , argumen-argumen bisa diisi dengan parameter,optional dan argumen lain, As type adalah tipe data yang digunakan
Sebuah Function  dapat dipanggil dengan menggabungkan  pernyataan lain, seperti contoh berikut ini

Variabel = nama Function Procedure

Cara lain untuk memanggil sebuah fungsi dapat dilakukan seperti kalau  memanggil sub prosedur yaitu :

Call NamaFunctionProcedure [Parameter]

Atau

NamaFunctionProcedure (Parameter)

       Ok, mungkin gambaran function itu seperti diatas lebih jelasnya bisa didapat dan dipelajari teman blogger disini. Karena inti dari tugas ini adalah untuk membahas macam-macam function bawaan pada visual basic dan disini kita bahas satu-persatu.

~ Fungsi String


Left              → mengambil karakter dari sebelah kiri
Right            → mengambil karakter dari sebelah kanan
Mid              → mengambil karakter dari tengah
LTrim           → membuang semua semua awal spasi yang ada disebelah kiri
RTrim           → membuang semua semua awal spasi yang ada disebelah kanan
Trim              → membuang semua spasi yang ada disebelah kiri dan kanan
Len                → memberikan nilai balik integer sebagai panjang string
LCase            → mengubah string menjadi huruf kecil semua
UCase            → mengubah string menjadi huruf besar semua
Str (int)          → mengubah bilangan menjadi string (konversi)
Chr (Asscii)   → konversi dari nilai ascii menghasilkan karakter


~ Fungsi Matematika


Val (Str)                            → konversi string menjadi integer
Asc(Char)                         → konversi karakter menghasilkan nilai ascii
Abs(Number)                    → memberikan nilai mutlak dari suatu nilai negatif
Round(Number,Decimal) → membulatkan suatu angka sampai beberapa digit decimal
Sqr(Number)                     → memberikan hasil akar kuadrat dari suatu nilai
Tan()                                  → mengembalikan nilai tangen dari argument dalam radian
Cos()                                  → mengembalikan nilai cosinus dari argument dalam radian
Atn()                                  → mengembalikan nilai arc tangen dari argument dalam  bentuk radian
Long()                                → mengembalikan nilai logaritma dari argument
CInt()                                 → pembulatan nilai decimal 0.5 dan lebih ke integer yang terdekat
Fix()                                   → pemotongan suatu nilai decimal menjadi integer
Int()                                    → pembulatan ke bawah suatu nilai decimal


~ Fungsi Tanggal dan Waktu
Date()                                  → mengambil tanggal system komputer
IsDate                                  → memberikan nilai balik Boolean , true jika parameter adalah sebuah tanggal
DateValue                           → konversi string menjadi date
D(Date),M(Date),Y(Date)  → memberikan nilai integer dari Variabel Date untuk hari , bulan dan tahun
Time()                                 → mengambil waktu dari system komputer
H(Date),M(Date),S(Date)   → memberikan nilai integher dari variable date untuk jm, menit dan deik
TimeValue(str)                    → konversi string ke variable date



Sekian penjelasan dari saya, jika ada salah atau kekurangan mohon maaf


Selasa, 11 Desember 2012

Tugas 7

Tugas kuliah kali ini yang diberikan buat ane adalah membuat menu, toolbar, dan MDI form

1.Membuat Form MDI dengan memanggil 4 from anak didalamnya
  Dibawah ini adalah penampakannya 



  Untuk memunculkan 4 from anak tersebut dibutuh kan code sebagai berikut

2.Memunculkan tampilan dengan perintah cascade, horizontal, dan Vertical

 Dibawah ini penampakannya :

  • Cascade



  • Horizontal

  • Vertical



Untuk membuat penampilan seperti diatas ( Cascade, Horizontal, Vertical) membutuhkan code seperti dibawah ini 


3. Untuk pembuatan tool tambahan saya masih menggunakan toolstrip yang ada pada VB


Demikian yang dapat saya jelaskan. Bila ada kekurangan atau kesalah saya mohon maaf karena saya sendiri juga masih dalam tahap belajar, Hehehee...











Kamis, 06 Desember 2012

Membuat Game Puzzle Sederhana


Yang saya gunakan : 1 form, 1 label, 11 button
Jika berhasil maka akan muncul tampilan seperti dibawah ini :

Source kode yang dibutuhkan :
Public Class Form1
Private Sub btnexit_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnexit.Click
If MsgBox(“Yakin akan keluar?”, 4 + 32 + 256, “Keluar”) = 6 Then
Me.Close()
End If
End Sub
Dim q As Integer
Private Sub Form1_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
For Each Control In Me.Controls
Control.enabled = True
btnacak.Enabled = True
btnexit.Enabled = True
q = bt1.Text
bt1.Text = bt5.Text
bt5.Text = bt2.Text
bt2.Text = bt7.Text
bt7.Text = bt3.Text
bt3.Text = bt8.Text
bt8.Text = bt6.Text
bt6.Text = bt4.Text
bt4.Text = bt3.Text
bt3.Text = q
Next
End Sub
Private Sub btnacak_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnacak.Click
Application.Restart()
End Sub
Private Sub bt1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles bt1.Click
If bt2.Text = “” Then
bt2.Text = bt1.Text
bt1.Text = “”
ElseIf bt4.Text = “” Then
bt4.Text = bt1.Text
bt1.Text = “”
End If
If bt1.Text = “1″ And bt2.Text = “2″ And bt3.Text = “3″ And bt4.Text = “4″ And bt5.Text = “5″ And bt6.Text = “6″ And bt7.Text = “7″ And bt8.Text = “8″ Then
MsgBox(“Sukses”)
End If
End Sub
Private Sub bt2_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles bt2.Click
If bt1.Text = “” Then
bt1.Text = bt2.Text
bt2.Text = “”
ElseIf bt3.Text = “” Then
bt3.Text = bt2.Text
bt2.Text = “”
ElseIf bt5.Text = “” Then
bt5.Text = bt2.Text
bt2.Text = “”
End If
If bt1.Text = “1″ And bt2.Text = “2″ And bt3.Text = “3″ And bt4.Text = “4″ And bt5.Text = “5″ And bt6.Text = “6″ And bt7.Text = “7″ And bt8.Text = “8″ Then
MsgBox(“Sukses”)
End If
End Sub
Private Sub bt3_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles bt3.Click
If bt2.Text = “” Then
bt2.Text = bt3.Text
bt3.Text = “”
ElseIf bt6.Text = “” Then
bt6.Text = bt3.Text
bt3.Text = “”
End If
If bt1.Text = “1″ And bt2.Text = “2″ And bt3.Text = “3″ And bt4.Text = “4″ And bt5.Text = “5″ And bt6.Text = “6″ And bt7.Text = “7″ And bt8.Text = “8″ Then
MsgBox(“Sukses”)
End If
End Sub
Private Sub bt4_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles bt4.Click
If bt1.Text = “” Then
bt1.Text = bt4.Text
bt4.Text = “”
ElseIf bt7.Text = “” Then
bt7.Text = bt4.Text
bt4.Text = “”
ElseIf bt5.Text = “” Then
bt5.Text = bt4.Text
bt4.Text = “”
End If
If bt1.Text = “1″ And bt2.Text = “2″ And bt3.Text = “3″ And bt4.Text = “4″ And bt5.Text = “5″ And bt6.Text = “6″ And bt7.Text = “7″ And bt8.Text = “8″ Then
MsgBox(“Sukses”)
End If
End Sub

Demikian tugas yang saya buat semoga bermanfaat bagi pembacanya.

Memodifikasi Program if & case


Untuk tugas kali ini saya di suruh memodifikasi program if case. Berikut adalah beberapa pertanyaan yang harus dijawab :
1. Saat form dijalankan semua isian tidak aktif, tombol isidata dan tutup aktif, tombol clear tidak aktif.
2 .Saat ditekan tombol isi data kodebarang, jumlahbarang, cara beli, tombol clear, aktif, tombol isidata tidak aktif.
3 .Saat ditekan tombol clear sama dengan saat form dijalankan.

1. Pada form_load diberi tambahan ”Dim a As Windows.Forms.Control For Each a In Me.Controls a.Enabled = False btnkeluar.Enabled =True btnisi.Enabled = True Next ” Ini digunakan untuk mengaktifkan tombol isi data, dan keluar serta mematikan fungsi dari tombol hapus


2. tombol hapus  dan form isian aktif (nama barang, harga, jumlah barang, total bayar “read only”)


3. Setelah klik hapus makan form akan kembali ke form load, yaitu tombol isi data dan keluar aktif, sedangkan tombol hapus tidak berfungsi, dengan menambahkan code pada tombol hapus “ Dim b As Windows.Forms.Control For Each b In Me.Controls b.Enabled = False btnkeluar.Enabled = True  btnisi.Enabled = True Next “.
Demikian yang dapat saya jelaskan tentang memodifikasi if case

Aplikasi penjualan onderdil





Dibawah ini script yang dibutuhkan:


Public Class Form1

Dim kode As String
Dim namapart As String
Dim harga As Double
Dim jumlah As Double
Dim total As Double

Private Sub Form1_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load

End Sub

Private Sub Button3_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button3.Click
If MsgBox(“yakin anda Keluar”, vbYesNo + vbQuestion + vbDefaultButton3, “Keluar”) Then

End If
Me.Close()
End Sub

Private Sub Button2_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button2.Click
txtkode.Clear()
txtharga.ResetText()
txtnama.Clear()
txtjumlah.Clear()
txtbayar.Clear()
txtkode.Focus()

End Sub
Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
kode = Val(txtkode.Text)
namapart = Val(txtnama.Text)
harga = Val(txtharga.Text)
jumlah = Val(txtjumlah.Text)
total = harga * jumlah
txtbayar.Text = total
End Sub
End Class