Como leer el buffer del puerto comm ??

Como leer el buffer del puerto comm ??

Postby gabo » 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
gabo
 
Posts: 128
Joined: Tue Jan 03, 2006 8:31 pm

Postby Antonio Linares » Wed Aug 15, 2007 7: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
User avatar
Antonio Linares
Site Admin
 
Posts: 42080
Joined: Thu Oct 06, 2005 5:47 pm
Location: Spain

Postby karinha » Wed Aug 15, 2007 4: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
User avatar
karinha
 
Posts: 7805
Joined: Tue Dec 20, 2005 7:36 pm
Location: São Paulo - Brasil

Postby jose_murugosa » 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 y el teclado y la IA!!"
User avatar
jose_murugosa
 
Posts: 1180
Joined: Mon Feb 06, 2006 4:28 pm
Location: Uruguay

Postby gabo » 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.
gabo
 
Posts: 128
Joined: Tue Jan 03, 2006 8:31 pm

Postby jose_murugosa » Tue Aug 21, 2007 1: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 :D .
Saludos/Regards,
José Murugosa
"Los errores en programación, siempre están entre la silla y el teclado y la IA!!"
User avatar
jose_murugosa
 
Posts: 1180
Joined: Mon Feb 06, 2006 4:28 pm
Location: Uruguay

Ejemplo de lectura por el puerto comm

Postby José Vicente Beltrán » Mon Jul 28, 2008 9: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
User avatar
José Vicente Beltrán
 
Posts: 282
Joined: Mon Oct 10, 2005 8:55 am
Location: Algeciras, España

Postby Willi Quintana » Mon Jul 28, 2008 4:55 pm

Idem,,, porfa.,.,.
ekasoftware@hotmail.com
Salu2
User avatar
Willi Quintana
 
Posts: 1019
Joined: Sun Oct 09, 2005 10:41 pm
Location: Cusco - Perú

Postby AngelSalom » Mon Jul 28, 2008 5:04 pm

Yo uso esto hace un tiempo. En este caso es para leer el peso en una báscula. Espero les pueda servir :

Code: Select all  Expand view
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
User avatar
AngelSalom
 
Posts: 727
Joined: Fri Oct 07, 2005 7:38 am
Location: Benicarló (Castellón ) - España

Postby José Vicente Beltrán » Mon Jul 28, 2008 5:37 pm

Gracias Angel, es lo que necesitaba

saludos
Jose Vicente :shock:
User avatar
José Vicente Beltrán
 
Posts: 282
Joined: Mon Oct 10, 2005 8:55 am
Location: Algeciras, España

Postby Francisco Horta » Tue Jul 29, 2008 5:29 pm

Hola jose,
me lo pudieras enviar a: fjhorta@yahoo.com.mx
muy agradecido
Paco
Francisco Horta
 
Posts: 845
Joined: Sun Oct 09, 2005 5:36 pm
Location: la laguna, mexico.


Return to FiveWin para Harbour/xHarbour

Who is online

Users browsing this forum: No registered users and 42 guests