AIUTO RS232

lunedì 15 gennaio 2007 - 11.31

fasol Profilo | Junior Member

ciao a tutti qualcuno ha mai usato l'rs232 con un protocollo hardware di handshake...?
io devo implementare uno scambio di dati con un dispositivo e devo utilizzare le linee rts e cts della seriale nn ho trovato nulla al riguardo sul sito microsoft...
qualcuno sa come aiutarmi...
devo far salire e scendere qst linee mha nn riesco con il comndi RTSenable e CTSHolding AIUTOOOOOOO


meglio i perdenti xkè hanno la speranza di vincere...cosa che i vincenti nn hanno....

alejandro Profilo | Newbie

cioè,per comunicare con un'altro hardware,per gestire una comunicazione con una smartcard o cosa ??

per ottenere l'ATR con mscomm basta inserire un codice + - cosi ( grezzo ):
''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''
Option Explicit
Private Declare Sub Sleep Lib "kernel32" (ByVal dwMilliseconds As Long)
Dim NumByte As Integer

Private Sub Form_Load()

NumByte = 16 ' dove ci sono i byte del atr in arrivo

With MSComm1
.CommPort = 1
.RThreshold = NumByte
.Settings = "9600,n,8,2" ' dove 9600 è il baud rate,n la parità,8 i databit e 2 il stopbit
.PortOpen = True
.RTSEnable = True
Sleep (10)
.RTSEnable = False
Sleep (300)
End With

End Sub

Private Sub MSComm1_OnComm()
Dim strInput

Select Case MSComm1.CommEvent
' Errori
Case comEventBreak ' Ricevuto un segnale di
' interruzione.
Case comEventFrame ' Errore di frame.
Case comEventOverrun ' Perdita di dati.
Case comEventRxOver ' Overflow buffer di
' ricezione.
Case comEventRxParity ' Errore di parità.
Case comEventTxFull ' Buffer di trasmissione
' pieno.
Case comEventDCB ' Errore imprevisto
' durante il recupero di
' DCB.

' Eventi
Case comEvCD ' Modifica della linea CD.
Case comEvCTS ' Modifica della linea CTS.
Case comEvDSR ' Modifica della linea DSR.
Case comEvRing ' Modifica dell'indicatore
' del segnale telefonico.
Case comEvReceive ' Ricevuto il numero di caratteri RThreshold.
Do
DoEvents 'non si sa mai ;-)
strInput = strInput & MSComm1.Input
Loop Until Len(strInput) = NumByte + 2
'poi potresti inviare la stringa ottenuta a un textbox
Case comEvSend ' Il buffer di trasmissione
' include il numero di
' caratteri
' specificato da
' SThreshold.
Case comEvEOF ' È stato trovato un
' carattere EOF nel flusso
' di input.
End Select

End Sub

Partecipa anche tu! Registrati!
Hai bisogno di aiuto ?
Perchè non ti registri subito?

Dopo esserti registrato potrai chiedere
aiuto sul nostro Forum oppure aiutare gli altri

Consulta le Stanze disponibili.

Registrati ora !
Copyright © dotNetHell.it 2002-2024
Running on Windows Server 2008 R2 Standard, SQL Server 2012 & ASP.NET 3.5