Foro de elhacker.net

Programación => Programación Visual Basic => Mensaje iniciado por: Meta en 5 Abril 2015, 20:14 pm



Título: Recibir datos desde el puerto serie
Publicado por: Meta en 5 Abril 2015, 20:14 pm
Hola a todos y a todas:

Gracias a muchos sitios he logrado enviar comandos o datos al puerto serie para que Arduino lo entienda, ya se puede apagar y encender un Led.

En estos momentos me falta lograr que desde el puerto serie con VB 6 me lleguen los datos y se muestre en el componente Text como indica esta imagen.

(http://www.subeimagenes.com/img/299-1272482.png)

Su código es hecho hasta el momento es:
Código:
Private Sub Form_Load()
    With Me.ComboBoxCOM
        Set WMIObjectSet = GetObject("winmgmts:\\.\root\CIMV2").ExecQuery("SELECT * FROM Win32_PnPEntity")
        For Each wmiobject In WMIObjectSet
            If InStr(wmiobject.Name, "COM") Then
                ComboBoxCOM.AddItem wmiobject.Name
               
                Dim nCom%   ' Buscamos el número del puerto:
                nCom = InStrRev(wmiobject.Name, "COM", , vbTextCompare)
                nCom = Val(Mid(wmiobject.Name, nCom + 3))
   
                ComboBoxCOM.ItemData(ComboBoxCOM.NewIndex) = nCom
            End If
        Next
        Set WMIObjectSet = Nothing
               
        If ComboBoxCOM.ListCount = 0 Then
            MsgBox "No se encontraron puertos COM."
            Exit Sub
        End If

        ' Para seleccionar el primer puerto encontrado:
        ComboBoxCOM.ListIndex = 0
    End With
End Sub

Private Sub ComboBoxCOM_Click()
    ' Configurar MSComm
    With Me.ComboBoxCOM
        MSComm_Puerto_Serie.CommPort = ComboBoxCOM.ItemData(ComboBoxCOM.ListIndex)
    End With
End Sub

' Si ya has seleccionado un puerto en el comboBox
' Si pulsas conectar abre el puerto y si no lo cierra.
Private Sub Command_CONECTAR_Click()
    If Not MSComm_Puerto_Serie.PortOpen Then
       MSComm_Puerto_Serie.PortOpen = True ' Abrir puerto serie.
       Command_CONECTAR.Caption = "DESCONECTAR" ' Mostrar texto en el botón.
       ComboBoxCOM.Enabled = False
       Command_Led_8_ON.Enabled = True ' Activar botón ON.
       Command_Led_8_OFF.Enabled = True ' Activar botón OFF.
    Else
       MSComm_Puerto_Serie.PortOpen = False ' Cerrar puerto serie.
       Command_CONECTAR.Caption = "CONECTAR" ' Mostrar texto en el botón.
       ComboBoxCOM.Enabled = True
       Command_Led_8_ON.Enabled = False ' Desactivar botón ON.
       Command_Led_8_OFF.Enabled = False ' Desactivar botón OFF.
    End If
End Sub

Private Sub Command_Led_8_OFF_Click()
' Envía este cadena de carácter por el puerto serie.
    MSComm_Puerto_Serie.Output = "Led_8_OFF"
End Sub

Private Sub Command_Led_8_ON_Click()
' Envía este cadena de carácter por el puerto serie.
    MSComm_Puerto_Serie.Output = "Led_8_ON"
End Sub

Aquí dejo un enlace temporal de un tutorial en pdf para novatos de como hacer su propia interfaz con VB 6.
https://www.dropbox.com/s/4s6txlfkit9d1xv/Tutorial%20VB6%20puertoCOM.pdf?dl=0 (https://www.dropbox.com/s/4s6txlfkit9d1xv/Tutorial%20VB6%20puertoCOM.pdf?dl=0)

Como dije antes, necesito una ayudita sobre recibir datos desde el puerto serie para completas este tutorial.

¿Estás dispuesto a ayudar?

Un cordial saludo.

PD: Tengo otro  con VB .net, C++, C# y Java de lo mismo en PDF, el que lo quiera lo hace saber y pongo unenlace temporal aquí mismo.

PD2: Dejo claro que el tutorial está aún incompelto, sobre todo me falta la parte de la electrónica y en tutorial de VB 6 será colocado dentro del mismo pdf que los demás lenguajes.


Título: Re: Recibir datos desde el puerto serie
Publicado por: HdM en 6 Abril 2015, 20:51 pm
¿Dónde exactamente tienes problemas? Igual que tienes MSComm_Puerto_Serie.Output para enviar, tienes MSComm_Puerto_Serie.Input para recibir. Tienes eventos (OnComm) para saber cuándo se está recibiendo data y poder mostrar en el text.


Título: Re: Recibir datos desde el puerto serie
Publicado por: Meta en 3 Junio 2015, 21:07 pm
Hola:

Me funcniona todo. Les decjo un tutorial en pdf aún por completar para que opinen.

Ver tutorial.
https://www.dropbox.com/s/ha07f67zieee7v6/Interfaz%20control%20reles%20Arduino.pdf?dl=0

Saludos.