Visual Studio 2010 Read serial port to work with Arduino/ESP8266/ESP32
Kali ini saya akan berbagi cara membuat aplikasi windows dengan mempergunakan visual studio 2010 untuk dapat menerima data dari serial port yang terhubung dengan arduino/esp8266/esp32. Mari kita langsung saja pada langkah langkah pembuatan programnya. Silahkan anda buka Visual Studio 2010 anda dan buatlah sebuah project baru dengan nama Serial Comm seperti gambar berikut :
Lalu isikan code berikut pada bagian Form load
Private Sub Form1_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
For Each AvailableSerialPorts As String In IO.Ports.SerialPort.GetPortNames()
ComboBox1.Items.Add(AvailableSerialPorts)
ComboBox1.SelectedItem = AvailableSerialPorts
SerialPort1.ReadTimeout = 2000
Button1.Enabled = True
Button2.Enabled = False
Next
ComboBox2.Items.Add("300")
ComboBox2.Items.Add("1200")
ComboBox2.Items.Add("2400")
ComboBox2.Items.Add("4800")
ComboBox2.Items.Add("9600")
ComboBox2.Items.Add("19200")
ComboBox2.Items.Add("38400")
ComboBox2.Items.Add("57600")
ComboBox2.Items.Add("74880")
ComboBox2.Items.Add("115200")
ComboBox2.Items.Add("230400")
ComboBox2.Items.Add("250000")
ComboBox2.Items.Add("500000")
ComboBox2.Items.Add("1000000")
ComboBox2.Items.Add("2000000")
End Sub
Pada button connect anda dapat mengisikan code berikut :
Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
Button1.Enabled = False
Button2.Enabled = True
If ComboBox2.Text = "BAUDRATE" Then
SerialPort1.BaudRate = "115200"
ComboBox2.Text = "115200"
Else
SerialPort1.BaudRate = ComboBox2.SelectedItem
ComboBox2.Text = ComboBox2.SelectedItem
End If
If ComboBox1.Text = "COMMPORT" Then
MsgBox("COMMPORT not available")
If SerialPort1.IsOpen = True Then
SerialPort1.Close()
End If
Button1.Enabled = True
Button2.Enabled = False
Else
SerialPort1.PortName = ComboBox1.SelectedItem
If SerialPort1.IsOpen = False Then
SerialPort1.Open()
End If
Timer1.Enabled = True
End If
End Sub
Pada tombol disconnect dapat isikan code berikut :
Private Sub Button2_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button2.Click
ComboBox1.Text = "COMMPORT"
ComboBox2.Text = "BAUDRATE"
Button1.Enabled = True
Button2.Enabled = False
If SerialPort1.IsOpen = False Then
SerialPort1.Close()
End If
Timer1.Enabled = False
TextBox1.Text = ""
End Sub
Pada timer dapat diisikan code berikut ini :
Private Sub Timer1_Tick(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Timer1.Tick
receivedData = ReceiveSerialData()
TextBox1.Text &= receivedData
TextBox1.SelectionStart = TextBox1.TextLength
TextBox1.ScrollToCaret()
End Sub
Kemudian buatlah function baru untuk memerima data dari serial port namun sebelumnya jangan lupa tambahkan deklarasi variable untuk menerima data serial tersebut :
Dim receivedData As String = ""
Function ReceiveSerialData() As String
Dim Incoming As String
Try
Incoming = SerialPort1.ReadExisting()
If Incoming Is Nothing Then
Return "nothing" & vbCrLf
Else
Return Incoming
End If
Catch ex As TimeoutException
Return "Error: Serial Port read timed out."
End Try
End Function
Kemudian dapat anda coba program yang dibuat dengan menghubungkan arduino/esp8266/esp32 pada serial port laptop, kemudian run program yg telah dibuat , kira kira hasilnya akan seperti berikut ini :
Semoga bermanfaat.
Visual Studio 2010 Read serial port to work with Arduino/ESP8266/ESP32
Reviewed by cahyohertanto
on
March 22, 2020
Rating:
No comments: