Ler a porta Serial com Clipper

2 posts / 0 new
Último post
AZIMUTE
Ler a porta Serial com Clipper

Tenho um programa em Clipper e preciso de rotina em clipper para ler a porta serial e retornar o valor para uma variavel.
testei o iolib no clipper 5.2 mas só consegui o retorno do INBUFSIZE()

Alguém alguém ainda lembra de como usar iolib no clipper?

 

Total votes: 0
Anderson
Foto de Anderson
Tentou o catools?

Comment: 

Eu disponibilizei o catools aqui: http://www.linguagemclipper.com.br/downloads-clipper

Encontrei na web essa rotina que usa o catools:

 

FUNCTION AbrePortaComm( nPorta, nVel, cPar, nBit, nStop, nIrq, cIo, nBufferIn, nBufferOut, lTrapMode)

IF Empty( nPorta )
    RETU .F.
ENDIF

DEFA nVel to 9600 //ECF, Leitor CodBarra Serial 9600, Balanca 2400
DEFA cPar TO "N"
DEFA nBit TO 8
DEFA nStop TO 1
DEFA nIrq TO 0
DEFA cIo TO ""
DEFA nBufferIn TO 1000 //buffer de entrada
DEFA nBufferOut TO 1000  //buffer de saida
DEFA lTrapMode TO .F.

//windows 98: multiserial e algumas placa mae nao abre porta se nao definir
//windows XP deve ignorar, dara mensagem de erro, acesso formato 16 bits
IF !Empty( nIrq )
    IF !com_setirq( nPorta, nIrq )
        //erro
        RETU .F.
    ENDIF
ENDIF

//windows 98: multiserial e algumas placa mae nao abre porta se nao definir
//windows XP deve ignorar, dara mensagem de erro, acesso formato 16 bits
IF !Empty( cIo )
    IF !com_setio( nPorta, cIo )
        //erro
        RETU .F.
    ENDIF
ENDIF

IF !Com_Open( nPorta, nBufferIn, nBufferOut, lTrapMode )
    //erro
    RETU .F.
ENDIF

IF !com_init( nPorta, nVel, cPar, nBit, nStop )
    //erro
    RETU .F.
ENDIF

Curta: