Ini pengalaman pertama saya menggunakan visual basic 2010, pertama buka dulu VB 2010 lalu kita siapkan materinya :
- Label
- Button
- Chart
- Listbox
- SerialPort
Buat tampilan seperti gambar dibawah ini (ini adalah gambar saat aplikasi di jalankan).
Klik dua kali pada Button sambung dan isikan source code seperti dibawah ini.
Public Class NSS
Dim saluran As IO.Ports.SerialPort = Nothing
Private Sub Button_sambung_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button_sambung.Click
Dim tabel_data As New DataTable
Dim data As String = ""
Dim counter, sum_Xmin, sum_Ymin, sum_Xmak, sum_Ymak As Integer
Dim SOS As Single
Button_sambung.Enabled = False
tabel_data.Columns.Add("x", GetType(Integer))
tabel_data.Columns.Add("y", GetType(Integer))
Try
saluran = My.Computer.Ports.OpenSerialPort(TextBox_com.Text)
saluran.ReadTimeout = 3000
Do
Refresh()
Dim inputan_data As String = saluran.ReadLine()
With Chart.ChartAreas(0)
.AxisX.Minimum = 0 + sum_Xmin
.AxisX.Maximum = 100 + sum_Xmak
.AxisY.Minimum = -30 + sum_Ymin
.AxisY.Maximum = 30 + sum_Ymak
.AxisX.Title = "Counter Data"
.AxisY.Title = "Data Yang Masuk"
End With
SOS = Rnd() * 73
SOS = SOS + (Rnd() * 13)
SOS = 15 * (Math.Sin(SOS))
list_random.Items.Add(SOS)
list_random.SelectedItems.Add(SOS)
list_serial.Items.Add(inputan_data)
list_serial.SelectedItems.Add(inputan_data)
TextBox_random.Text = SOS
TextBox_serial.Text = inputan_data
tabel_data.Rows.Add(counter, (SOS))
counter = counter + 1
With Chart.Series(0)
.Points.DataBind(tabel_data.DefaultView, "x", "y", Nothing)
End With
If counter Mod 100 = 0 Then
sum_Xmin += 100
sum_Xmak += 100
sum_Ymin += 0
sum_Ymak += 0
End If
If inputan_data Is Nothing Then
Exit Do
Else
data &= inputan_data & vbCrLf
End If
Loop
Catch ex As TimeoutException
data = "Error: Koneksi GAGAL"
Finally
If saluran IsNot Nothing Then
Button_sambung.Enabled = True
saluran.Close()
End If
End Try
End Sub
Private Sub Timer_Tick(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Timer.Tick
End Sub
Private Sub Button_putus_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button_putus.Click
End Sub
End Class
Counter data akan menghitung jumlah data yang diterima komputer. Untuk memutuskan koneksi hanya bisa terjadi jika tidak ada lagi data yang diterima oleh komputer. Source code pada CodeVision AVR bisa kita buat seperti contoh di bawah ini agar mengirimkan data terus menerus ke komputer melalui koneksi serial.
while (1)
{
// Place your code here
for(i=0;i<=1000;i++)
{
sprintf(buff,"%d%d%d%d",i/1000,(i%1000)/100,(i%1000%100)/10,i%1000%100%10);
puts(buff);
putchar(13);
delay_ms(100);
}
for(i=1000;i>=0;i--)
{
sprintf(buff,"%d%d%d%d",i/1000,(i%1000)/100,(i%1000%100)/10,i%1000%100%10);
puts(buff);
putchar(13);
delay_ms(100);
}
};
}
Artikel ini masih banayak kekurangan, Mohon kritik & saran serta sharing ilmunya dari temen2 blogger.
Tidak ada komentar:
Posting Komentar