FiveTech Support Forums

FiveWin / Harbour / xBase community
Board index FiveWin para Harbour/xHarbour Como leer el buffer del puerto comm ??
Posts: 128
Joined: Tue Jan 03, 2006 08:31 PM
Como leer el buffer del puerto comm ??
Posted: Wed Aug 15, 2007 12:37 AM

Alguien tendra un ejemplo con fwh de como leer el puerto comm.. (ltodo el buffer) con la lib de HbComm.. Gracias !
Saludos

Posts: 44158
Joined: Thu Oct 06, 2005 05:47 PM
Como leer el buffer del puerto comm ??
Posted: Wed Aug 15, 2007 07:19 AM

Tienes varios ejemplos en FWH\samples\phone.prg y TestComm.prg.

No necesitan la librería que comentas

regards, saludos

Antonio Linares
www.fivetechsoft.com
Posts: 8515
Joined: Tue Dec 20, 2005 07:36 PM
Como leer el buffer del puerto comm ??
Posted: Wed Aug 15, 2007 04:08 PM
Antonio Linares wrote:Tienes varios ejemplos en FWH\samples\phone.prg y TestComm.prg.

No necesitan la librería que comentas


MAESTRO, ESTO NO FUNCIONA CON HBCOMM.LIB


Mira...

http://www.fivewin.com.br/exibedicas.asp?id=606
João Santos - São Paulo - Brasil - Phone: +55(11)95150-7341
Posts: 1279
Joined: Mon Feb 06, 2006 04:28 PM
Como leer el buffer del puerto comm ??
Posted: Thu Aug 16, 2007 12:58 PM
karinha wrote:
Antonio Linares wrote:Tienes varios ejemplos en FWH\samples\phone.prg y TestComm.prg.

No necesitan la librería que comentas


MAESTRO, ESTO NO FUNCIONA CON HBCOMM.LIB


Mira...

http://www.fivewin.com.br/exibedicas.asp?id=606


Aquí tienes un ejemplo, lo utilizo para capturar la info de una balanza digital y usa hbcomm.lib

http://www.mediafire.com/?e1w7gztz5me

espero que te sirva, funciona perfectamente con FWH 7.01
Saludos/Regards,

José Murugosa

"Los errores en programación, siempre están entre la silla, el teclado y la IA!!"
Posts: 128
Joined: Tue Jan 03, 2006 08:31 PM
Como leer el buffer del puerto comm ??
Posted: Tue Aug 21, 2007 12:29 AM
jose_murugosa wrote:
karinha wrote:
Antonio Linares wrote:Tienes varios ejemplos en FWH\samples\phone.prg y TestComm.prg.

No necesitan la librería que comentas


MAESTRO, ESTO NO FUNCIONA CON HBCOMM.LIB


Mira...

http://www.fivewin.com.br/exibedicas.asp?id=606


Aquí tienes un ejemplo, lo utilizo para capturar la info de una balanza digital y usa hbcomm.lib

http://www.mediafire.com/?e1w7gztz5me

espero que te sirva, funciona perfectamente con FWH 7.01


Muchas gracias jose... ya esta implementado y si me ayudo de mucho.. cuando menos comprendi.. que al leer el puerto trae basura.
Posts: 1279
Joined: Mon Feb 06, 2006 04:28 PM
Como leer el buffer del puerto comm ??
Posted: Tue Aug 21, 2007 01:41 AM
gabo wrote:
jose_murugosa wrote:
karinha wrote:
Antonio Linares wrote:Tienes varios ejemplos en FWH\samples\phone.prg y TestComm.prg.

No necesitan la librería que comentas


MAESTRO, ESTO NO FUNCIONA CON HBCOMM.LIB


Mira...

http://www.fivewin.com.br/exibedicas.asp?id=606


Aquí tienes un ejemplo, lo utilizo para capturar la info de una balanza digital y usa hbcomm.lib

http://www.mediafire.com/?e1w7gztz5me

espero que te sirva, funciona perfectamente con FWH 7.01


Muchas gracias jose... ya esta implementado y si me ayudo de mucho.. cuando menos comprendi.. que al leer el puerto trae basura.


Me alegro que te haya sido útil :-) .
Saludos/Regards,

José Murugosa

"Los errores en programación, siempre están entre la silla, el teclado y la IA!!"
Posts: 282
Joined: Mon Oct 10, 2005 08:55 AM
Ejemplo de lectura por el puerto comm
Posted: Mon Jul 28, 2008 09:20 AM

Sr. Murugosa, ¿podría enviarme, por favor, el ejemplo en cuestión?, he intentado bajarlo de MediaFire pero ya no está disponible.

Gracias anticipadas

master&matrixcomputer.es (& = @)

José Vicente

Posts: 1054
Joined: Sun Oct 09, 2005 10:41 PM
Como leer el buffer del puerto comm ??
Posted: Mon Jul 28, 2008 04:55 PM

Idem,,, porfa.,.,.

ekasoftware@hotmail.com
Salu2

Posts: 728
Joined: Fri Oct 07, 2005 07:38 AM
Como leer el buffer del puerto comm ??
Posted: Mon Jul 28, 2008 05:04 PM
Yo uso esto hace un tiempo. En este caso es para leer el peso en una báscula. Espero les pueda servir :

Function BasculaLee()
/* ===============================================================================
   Función que lee el peso de una báscula, standard TISA

   En esta función uso fTpvCFG, donde almaceno los distintos valores de configuración
   de la báscula. 
   
   Se pueden cambiar por valores fijos.   
   -------------------------------------------------------------------------------
   Creación:Angel 08/03/2007 15:23
   Revisión:Angel 18/04/2007 18:24
*/   

Local cDcb, nBytes, nComm , nError, cBuffer:="", cKilos:="", cGramos:="", oMiWnd:=NIL, oSayBascula
Local cPuerto, cVelocidad,cParidad,cDatos,cParada

   // tomo los datos de inicialización del puerto
   cPuerto:=("COM"+Str((fTpvCfg)->BPUERTO,1))
   cVelocidad:=Alltrim(Str((fTpvCfg)->BVELOCIDAD))
   Do Case  
     Case (fTpvCfg)->BPARIDAD==1 
       cParidad:="n"
     Case (fTpvCfg)->BPARIDAD==2
       cParidad:="p"  
     Case (fTpvCfg)->BPARIDAD==3
       cParidad:="i"  
   EndCase
   
   cDatos:=Alltrim(Str((fTpvCfg)->BDATOS))
   cParada:=Alltrim(Str((fTpvCfg)->BPARADA))
   
   nComm:= OpenComm( cPuerto, 1024, 128 )

   if ! BuildCommDcb( cPuerto+":"+cVelocidad+","+cParidad+","+cDatos+","+cParada, @cDcb )
      nError = GetCommError( nComm )
      MsgInfo( "Error abriendo el puerto de la báscula : " + Str( nError ) )
   endif

   if ! SetCommState( cDcb )
      nError = GetCommError( nComm )
      MsgInfo( "Error en el estado del puerto de la báscula : " + Str( nError ) )
   endif

   if ( nBytes := WriteComm( nComm, "98000001" + Chr( 13 ) + Chr( 10 ) + Chr( 13 ) + Chr( 10 ) ) ) < 0
      nError = GetCommError( nComm )
      MsgInfo( "Error realizando la petición a la báscula : " + Str( nError ) )
   else
      // Windows requires to have a Window at least to perform comunications !!!
      // Let's use the MessageBox() Window as default
      DEFINE WINDOW oMiWnd FROM 0,0 TO 6,50
      @ 1,1 SAY oSayBascula PROMPT "Capturando peso de la báscula ..."  OF oMiWnd COLOR CLR_BLACK, CLR_WHITE
      ACTIVATE WINDOW oMiWnd
      Inkey(0.1)
   endif

   cBuffer:=Space(100)
   nBytes := ReadComm (nComm,@cBuffer)
      
   If FlushComm( nComm, 0 ) != 0
      nError = GetCommError( nComm )
      MsgInfo( "Error vaciando el puerto de la báscula : " + Str( nError ) )
   endif
      
   if ! CloseComm( nComm )
      nError = GetCommError( nComm )
      MsgInfo( "Error cerrando el puerto de la báscula : " + Str( nError ) )
   endif

   // 1234567890
   // Descompongo la cadena  9900016000000007  -> corresponde a 0,160
   cKilos :=Substr(cBuffer,4,2)
   cGramos:=Substr(cBuffer,6,3)
   
  nPesoBascula:=Val(Alltrim(cKilos)+"."+Alltrim(cGramos))
  
  If oMiWnd<>NIL; oMiWnd:End(); Endif
  SysRefresh()
Return nPesoBascula
Angel Salom
Visionwin Software - https://www.visionwin.com
------------------------------------------------------------
fwh 19.05 - harbour 3.2 - bcc 7.4
Posts: 282
Joined: Mon Oct 10, 2005 08:55 AM
Como leer el buffer del puerto comm ??
Posted: Mon Jul 28, 2008 05:37 PM

Gracias Angel, es lo que necesitaba

saludos
Jose Vicente :shock:

Posts: 845
Joined: Sun Oct 09, 2005 05:36 PM
Como leer el buffer del puerto comm ??
Posted: Tue Jul 29, 2008 05:29 PM

Hola jose,
me lo pudieras enviar a: fjhorta@yahoo.com.mx
muy agradecido
Paco

____________________

Paco

Continue the discussion