Home Page
Articoli
Tips & Tricks
News
Forum
Archivio Forum
Blogs
Sondaggi
Rss
Video
Utenti
Chi Siamo
Contattaci
Username:
Password:
Login
Registrati ora!
Recupera Password
Home Page
Stanze Forum
App. WinForms / WPF .NET
Problema veloce con porta seriale
mercoledì 12 settembre 2007 - 07.52
Elenco Threads
Stanze Forum
Aggiungi ai Preferiti
Cerca nel forum
lordwaizard
Profilo
| Senior Member
294
messaggi | Data Invio:
mer 12 set 2007 - 07:52
Se connetto hyper terminal alla porta com e scrivo qualsiasi cosa ottengo come risposta la stessa cosa.
ES
SCRIVO -> PIPPO
RITORNA -> PIPPO
E quindi il sistema funziona correttamente.
Però se uso le seguenti righe di codice la macchina si blocca, sicuramente ho sbagliato gli array.
Try
Dim arr(50) As Byte
ReDim arr(0)
With SerialPort
.PortName = "COM7"
.BaudRate = 9600
.Parity = IO.Ports.Parity.None
.DataBits = 8
.StopBits = IO.Ports.StopBits.One
.Handshake = IO.Ports.Handshake.None
.ReadTimeout = 100
.WriteTimeout = 100
End With
SerialPort.Open()
SerialPort.Write("pippo", 0, 5)
SerialPort.Read(arr, arr.Length - 1, 1)
ReDim Preserve arr(arr.Length)
' MsgBox(arr(0))
SerialPort.Close()
Catch ex As Exception
MsgBox(ex.ToString)
End Try
Dove sbaglio?
Ciciu
Profilo
| Senior Member
233
messaggi | Data Invio:
mer 12 set 2007 - 09:38
Ciao.
Dove si blocca esattamente ?
Il fatto che Hyperterminal Ti restituisca la stessa stringa che hai scritto, credo sia solo dovuto al fatto che è abilitato l'ECHO. Se non hai nulla collegato alla porta seriale, è alquanto improbabile che Ti restituisca quello che gli mandi...
Posso supporre che il Tuo programma si blocchi in fase di lettura (SerialPort.Read) ????
Per provare, potresTi collegare un qualunque modem alla Tua porta seriale, provando a mandargli le stringhe di interrogazione AT. Per esempio, prova a mandare al modem il comando AT&F0 : dovrebbe restituirTi la parametrizzazione attuale del modem
Ciao - FabioG
Fabio G
lordwaizard
Profilo
| Senior Member
294
messaggi | Data Invio:
mer 12 set 2007 - 16:52
Che restituisca i dati è corretto, in sostanza è come se cortocircuitassi il pin2 e il pin3 della porta seriale.
Il problema è sul read, infatti appena legge mi appare una schermata blu con scritto IRQ_NOT_LESS.... (solo con il mio programma con hyper legge correttamente)
Sbaglio a leggere il buffer?
Grazie
Davide
Torna su
Stanze Forum
Elenco Threads
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 !