Gå til innhold

Help trenges - Serial kommunikasjon via Visual Studio 2013


Anbefalte innlegg

Jeg driver med arduino prosjekter ved bruk av C++ programering.

Det jeg søker hjelp til er hvordan jeg kan lese av data som kommer fra serial port til en app laget via Visual Studio.

Jeg vil også kunne sende data til Arduinoen via den samme serial port.

 

Er det noen her som veit om hvordan jeg kan gå frem?

Har sett på tidligere Visual studio at serial port ligger på toolbox, men finner den ikke lengre. Finner heller ikke gauges.

Lenke til kommentar
Videoannonse
Annonse

Jeg driver med arduino prosjekter ved bruk av C++ programering.

Det jeg søker hjelp til er hvordan jeg kan lese av data som kommer fra serial port til en app laget via Visual Studio.

Jeg vil også kunne sende data til Arduinoen via den samme serial port.

 

Er det noen her som veit om hvordan jeg kan gå frem?

Har sett på tidligere Visual studio at serial port ligger på toolbox, men finner den ikke lengre. Finner heller ikke gauges.

 

Her er noe kode skrevet i Visual Basic .Net for noen år tilbake da jeg holdt på med Arduino.

Kan ikke sammenlignes med C++, men mulig det kan være noe til hjelp? :)

 

PS: Koden er dårlig skrevet, men fungerte iallefall på det tidspunktet.. ;)

 

 

Imports System.Threading

Imports System.IO

Imports System.Text

Imports System.IO.Ports

 

Public Class Form1

 

Private trd As Thread

 

Private Sub ThreadTask()

 

Dim i As Long

 

Do

i = SerialPort1.ReadByte

 

lblDistance.Text = Str(i).ToString + " cm"

lblDistance.Refresh()

Application.DoEvents()

picBox.Width = Str(i) + "0" + 50

picBox.Height = Str(i) + "0" + 50

 

Loop While i <> 100

 

End Sub

 

Private Sub btnConnect_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnConnect.Click

trd.Start()

End Sub

 

Private Sub Form1_Disposed(ByVal sender As Object, ByVal e As System.EventArgs) Handles Me.Disposed

If SerialPort1.IsOpen() Then

SerialPort1.Close()

End If

End Sub

 

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

SerialPort1.PortName = "Com3"

SerialPort1.Open()

Application.DoEvents()

CheckForIllegalCrossThreadCalls = False

trd = New Thread(AddressOf ThreadTask)

trd.IsBackground = True

 

End Sub

 

End Class

 

Lenke til kommentar
  • 6 måneder senere...

Opprett en konto eller logg inn for å kommentere

Du må være et medlem for å kunne skrive en kommentar

Opprett konto

Det er enkelt å melde seg inn for å starte en ny konto!

Start en konto

Logg inn

Har du allerede en konto? Logg inn her.

Logg inn nå
  • Hvem er aktive   0 medlemmer

    • Ingen innloggede medlemmer aktive
×
×
  • Opprett ny...