Autor Tema: Como leo un pin de un puerto?  (Leído 4122 veces)

0 Usuarios y 1 Visitante están viendo este tema.

Desconectado gabotronic

  • PIC12
  • **
  • Mensajes: 57
RE: Como leo un pin de un puerto?
« Respuesta #15 en: 27 de Agosto de 2004, 10:40:00 »
La interrupcion como la genero?.
 aunque no me funciona, te envio lo que tengo:

Private Sub Form_Load()
Dim CommPort As String, Handshaking As String, Settings As String
Dim primerdato As String
Dim datofinal As Integer
Dim dato As Integer

MSComm1.CommPort = 1        "puerto com1
MSComm1.PortOpen = True     "se abre el puerto para que funcione

MSComm1.InputLen = 1
MSComm1.RThreshold = 1




If MSComm1.OutBufferCount = 0 Then
If MSComm1.CommEvent = comEvReceive Then
primerdato = MSComm1.Input
dato = Asc(MSComm1.Input)

Text1.Text = dato

End If
End If

Desconectado Nocturno

  • Administrador
  • DsPIC33
  • *******
  • Mensajes: 18310
    • MicroPIC
RE: Como leo un pin de un puerto?
« Respuesta #16 en: 27 de Agosto de 2004, 11:12:00 »
(Me entrometo)

Pega un objeto Timer en tu form (el que tiene forma de reloj), haz doble click sobre él y te generará un evento On Interval. Pega este trozo de código dentro:

Codigo:
If MSComm1.OutBufferCount = 0 Then
If MSComm1.CommEvent = comEvReceive Then
primerdato = MSComm1.Input
dato = Asc(MSComm1.Input)

Text1.Text = dato

End If
End If


Luego al objeto Timer modifícale la propiedad Interval y le pones 1000 milisegundos, para que se ejecute cada segundo.

Ya ta.

Desconectado gabotronic

  • PIC12
  • **
  • Mensajes: 57
RE: Como leo un pin de un puerto?
« Respuesta #17 en: 27 de Agosto de 2004, 13:24:00 »
Gracias a todos:
Manex, Matec, Mglsoft y Nocturno.
Por sus valiosas respuestas.


Desconectado gabotronic

  • PIC12
  • **
  • Mensajes: 57
RE: Como leo un pin de un puerto?
« Respuesta #18 en: 27 de Agosto de 2004, 16:51:00 »
Ah, se me olvidaba, finalmente para enviar datos en 1 y 0, del puerto b en este caso, como matec dijo, se puede hacer lo siguiente:

BTFSS   PORTB,0
      MOVLW   D"48"
      BTFSC   PORTB,0
      MOVLW   D"49"
      CALL    Tx_Dato
      BTFSS   PORTB,1
      MOVLW   D"48"
      BTFSC   PORTB,1
      MOVLW   D"49"
      CALL    Tx_Dato
      BTFSS   PORTB,2
      MOVLW   D"48"
      BTFSC   PORTB,2
      MOVLW   D"49"
      CALL    Tx_Dato
      BTFSS   PORTB,3
      MOVLW   D"48"
      BTFSC   PORTB,3
      MOVLW   D"49"
      CALL    Tx_Dato
      BTFSS   PORTB,4
      MOVLW   D"48"
      BTFSC   PORTB,4
      MOVLW   D"49"
      CALL    Tx_Dato
      BTFSS   PORTB,5
      MOVLW   D"48"
      BTFSC   PORTB,5
      MOVLW   D"49"
      CALL    Tx_Dato
      BTFSS   PORTB,6
      MOVLW   D"48"
      BTFSC   PORTB,6
      MOVLW   D"49"
      CALL    Tx_Dato
      BTFSS   PORTB,7
      MOVLW   D"48"
      BTFSC   PORTB,7
      MOVLW   D"49"
      CALL    Tx_Dato


Aunque esto no soluciona lo que quiero hacer pero agradecimientos a Matec por la sugerencia.