16 messaggi dal 28 marzo 2011
Buongiorno,
Ho uno scanner OCR per le bollette. Non ha nessun pulsante e tutti i comandi li riceve attraverso la COM port. Con un Port monitor ho le informazioni che riceve il device per incominciare la lettura. Le informazioni ricevuto sono in HEX e mi interessa se e' possible usare questi HEX per far funzionare un pulsante in Visual Basic 2010 express oppure se devo convertirlo in qualche modo.

Ho allegato i link con il LOG originale.
http://www.sendspace.com/file/ftb6p8
http://paste.debian.net/112634/

Grazie
Manuel
L'HEX è solo una rapprentazione che facilita la lettura di byte, quindi dalla COM dovresti semplicemente avere un flusso di byte.
Per leggerli dipende da cosa significano, ma con classi come StreamReader o BinaryReader puoi facilmente leggere dallo stream stringhe, numeri ecc. Dovrebbe già esserci tutto quello che ti serve

Ciao

Il mio blog
Homepage
16 messaggi dal 28 marzo 2011
Il flusso di byte che ricevo dovrebbe essere quello che manda il comando allo scanner OCR per iniziare a leggere. Credo di aver individuato il flusso di dati che lanciano il comando di letura, ma non so come utilizzarli.
Per quanto riguarda il StreamReader, l'ho utilizzato per visualizzare che cosa legge lo scanner OCR, o e' possibile utlizzarlo anche per mandare un flusso di dati alla COM attraverso un "pulsante"?
Per mandare c'è lo StreamWriter  Comunque è solo un wrapper che usa le classi di encoding di System.Text per codificare una stringa in byte.

Ciao

Il mio blog
Homepage
16 messaggi dal 28 marzo 2011
grazie mille, provero' a vedere se riesco a combinare qualcosa.
16 messaggi dal 28 marzo 2011
Ho un dilemma.
Ho fatto qualche test ed ho notato una cosa strana. Il ComPort tester mi ha dato questo risultato con il programma originale del device: "IRP_MJ_WRITE Serial2 SUCCESS Length 4: 02 44 03 45"; invece facendo il test col mio programma, ottengo: "IRP_MJ_WRITE Serial2 SUCCESS Length 11 : 02 43 03 42"
Com'e' possibile che il primo venga un length di 4? anche se modifico il mio scrivendo "02430342" al posto di "02 43 03 42" ottengo un length di 8.

Torna al forum | Feed RSS

ASPItalia.com non è responsabile per il contenuto dei messaggi presenti su questo servizio, non avendo nessun controllo sui messaggi postati nei propri forum, che rappresentano l'espressione del pensiero degli autori.