Principales respuestas
Adquirir datos desde puerto serial.

Pregunta
-
Buen día a todos.
Soy nuevo en el tema de programación en C# y necesito realizar un programa que lea datos que manda un escaner por el puerto serial y los almacene dentro de 3 textbox (un dato en cada textbox); ya he buscado información a través de foros y he podido adquirir un dato y almacenarlo en un textbox pero al realizar el siguiente escaneo y quererlo almacenar en el otro textbox no he encontrado información de como se realice en automático. Adjunto el codigo que estoy utilizando actualmente para almacenar el dato en un solo textbox.
De antemano muchas gracias.
Public Class Form1
Private Sub Form1_Load(sender As Object, e As EventArgs) Handles MyBase.Load
buscapuerto()
End Sub
Private Sub buscapuerto()
Try
cmbPort.Items.Clear()
For Each puerto As String In My.Computer.Ports.SerialPortNames
cmbPort.Items.Add(puerto)
Next
If cmbPort.Items.Count > 0 Then
cmbPort.SelectedIndex = 0
Else
MsgBox("NO HAY PUERTOS DISPONIBLES EN TU SISTEMA")
End If
Catch ex As Exception
MsgBox(ex.Message, MsgBoxStyle.Critical)
End Try
End Sub
Private Sub btnconectar_Click(sender As Object, e As EventArgs) Handles btnconectar.Click
Try
With sppuerto
.BaudRate = 9600
.DataBits = 8
.Parity = IO.Ports.Parity.None
.StopBits = 1
.PortName = cmbPort.Text
.Open()
If .IsOpen Then
lblestado.Text = "CONECTADO"
Else
MsgBox("CONEXION FALLIDA!", MsgBoxStyle.Critical)
End If
End With
Catch ex As Exception
MsgBox(ex.Message, MsgBoxStyle.Critical)
End Try
End Sub
Private Sub btndesconectar_Click(sender As Object, e As EventArgs) Handles btndesconectar.Click
sppuerto.Close()
lblestado.Text = "DESCONECTADO"
End Sub
Private Sub sppuerto_DataReceived(sender As Object, e As IO.Ports.SerialDataReceivedEventArgs) Handles sppuerto.DataReceived
Dim buffer As String
buffer = sppuerto.ReadExisting
txtrecibe.Text = "Recibido>> " & buffer & vbCrLf
End Sub
Private Sub btnenviar_Click(sender As Object, e As EventArgs) Handles btnenviar.Click
If sppuerto.IsOpen Then
sppuerto.WriteLine(txtenvia.Text)
Else
MsgBox("NO ESTAS CONECTADO", MsgBoxStyle.Exclamation)
End If
End Sub
End Classmiércoles, 16 de enero de 2019 19:03
Respuestas
-
Hola:
Todo lo que sea puerto serie, se habla en la sección del foro llamado:
Comunicación con dispositivos externos.
Así lo saben para la próxima.
Saludos.
http://electronica-pic.blogspot.com
- Propuesto como respuesta Pedro AlfaroModerator jueves, 17 de enero de 2019 17:14
- Marcado como respuesta Pedro AlfaroModerator viernes, 25 de enero de 2019 17:30
miércoles, 16 de enero de 2019 20:39
Todas las respuestas
-
hola
porque otro TextBox ? porque no mejor algun otro control que permite la reccepcion de multiple informacion y pueda ir uniendola
se puede usar el mismo textbox si lo unes usando
txtrecibe.Text = txtrecibe.Text + "Recibido>> " & buffer & vbCrLf
o podrias usar algun ListBox
ListBox1.Items.Add("Recibido>> " & buffer)
no creo que ir variando de textbox sea lo correcto, ya que sino vas a tener que crear estos de forma dinamica
saludos
Leandro Tuttini
Blog
MVP Profile
Buenos Aires
Argentinamiércoles, 16 de enero de 2019 19:18 -
Hola:
Todo lo que sea puerto serie, se habla en la sección del foro llamado:
Comunicación con dispositivos externos.
Así lo saben para la próxima.
Saludos.
http://electronica-pic.blogspot.com
- Propuesto como respuesta Pedro AlfaroModerator jueves, 17 de enero de 2019 17:14
- Marcado como respuesta Pedro AlfaroModerator viernes, 25 de enero de 2019 17:30
miércoles, 16 de enero de 2019 20:39