Visual Basic İle Serial Port Yapımı
Visual studio ile serial porta bağlanmak için arayüz programı yapacağız.Programın ayrıntılarına bakalım.
Formumuzda kullanacağımız araçlar:
- 3 Adet buton
- 2 Adet combobox
- 3 Adet label
- Serial port
- Timer
Formumuzun tasarımını aşağıdaki şekildeki gibi yapabilirsiniz.
Formumuzun yazılım kısmı:
Öncelikle public class’ın dışına kullanacağımız kütüpaneleri ekleyelim.
Imports System Imports System.ComponentModel Imports System.Threading Imports System.IO.Ports
Formumuzun içine seri porta bağlancak nesne tanımlaması yapıyoruz.
Dim myPort As Array Delegate Sub SetTextCallback(ByVal As String)
Formumuzun boş kısmına çift tıklayarak load kısmı açılacaktır.O kısma Aşağıdaki kodu yazıyoruz.
myPort = IO.Ports.SerialPort.GetPortNames() ComboBox2.Items.Add(9600) ComboBox2.Items.Add(19200) ComboBox2.Items.Add(38400) ComboBox2.Items.Add(57600) ComboBox2.Items.Add(115200) For i = 0 To UBound(myPort) ComboBox1.Items.Add(myPort(i)) Next ComboBox1.Text = ComboBox1.Items.Item(0) ComboBox2.Text = ComboBox2.Items.Item(0) Button2.Enabled = False
Bağlan butonuna çift tıklayarak aşağıdaki kodu yazalım.
[/c]Timer1.Start() SerialPort1.PortName = ComboBox1.Text SerialPort1.BaudRate = ComboBox2.Text SerialPort1.Parity = IO.Ports.Parity.None SerialPort1.StopBits = IO.Ports.StopBits.One SerialPort1.DataBits = 8 SerialPort1.Open() Label10.Text = "Bağlandı" Button1.Enabled = False Button2.Enabled = True[/c]
Bağlantıyı kes butonuna çift tıklayarak aşağıdaki kodu yazalım.
Timer1.Stop() SerialPort1.Close() Button1.Enabled = True Button2.Enabled = False Label10.Text = "Bağlantı Kesildi."
Baudrate değerlerini gösterecek combobox’a çift tıklayarak aşağıdaki kodu yazıyoruz.
If SerialPort1.IsOpen = False Then SerialPort1.BaudRate = ComboBox2.Text Else MsgBox("Port açıkken değiştirilemez", vbCritical) End If
Son olarak da çıkış butonumuza çift tıklayarak aşağıdaki kodu yazıyoruz.
End
Butonları klavyeden yönetmek isterseniz öncelikle formun özeliklerinden keydown kısmını true yapınız ve aşağıdaki kodu formun keydown bölümüne yazınız.
If (e.KeyCode = Keys.Enter) Then Button1.PerformClick() Button2.BackColor = Color.Red Else Button1.BackColor = Color.Green End If If (e.KeyCode = Keys.Space) Then Button2.PerformClick() Button1.BackColor = Color.Green Else Button2.BackColor = Color.Red End If
Proje Dosyasını Buradan İndirebilirsiniz >> Arduino Serial Port
am getting this error:
InvalidArgument=Value of ‘0’ is not valid for ‘index’.
Parameter name: index
Hocam visual basic ile basit start stop led yakma ile igili egitim amaclı videolar cok kişiye ufuklar acar ve bunu turkıyede hıc yapan yok, bu konuda paylasım bulunurmusunuz.
selamın alykm kardeşim.
Delegate Sub SetTextCallback(ByVal</pre>
<pre></pre>
As String)
<pre>
bu kodun hatalı değişkenlerin yazılış biçiminde hata var.
düzeltme imkanınız varmı ?
Düzeltmeler yapıldı. Projeyi indirme linkini de ekledim. Direk indirebilirsiniz.