Balanca Filizola

Fórum sobre a linguagem CA-Clipper.

Moderador: Moderadores

José Pereira
Usuário Nível 1
Usuário Nível 1
Mensagens: 10
Registrado em: 07 Jul 2004 00:58

Balanca Filizola

Mensagem por José Pereira »

Tenho um aplicativo PDV e nao consigo ler o peso da balança Filizola BP15. Uso o programa LEBAL.EXE da propria Filizola, mas nao tenho o peso. Alguem tem outra solução?
Pereira :(
Avatar do usuário
binho_fasa
Usuário Nível 2
Usuário Nível 2
Mensagens: 93
Registrado em: 06 Jul 2004 12:53
Localização: Brazil
Contato:

Re: Balança Filizola

Mensagem por binho_fasa »

Eu efetuo a leitura do peso da balança no próprio sistema. Para isso, será necessário obter o protocolo de comunicação da balança (Velocidade da porta, bits de parada, formato da string, etc) na FILIZOLA. A balança deve estar configurada para enviar a informação a porta serial, o que também deve ser verificado com o fabricante.


[]´s
Fabio Souza.
José Pereira
Usuário Nível 1
Usuário Nível 1
Mensagens: 10
Registrado em: 07 Jul 2004 00:58

Mensagem por José Pereira »

OLá
Tudo bem Fábio, seu que é necessario fazer isto, mas como? Qual funcao ou aplicativo você usa? Pode me enviar seus recursos?
Pereira
Avatar do usuário
binho_fasa
Usuário Nível 2
Usuário Nível 2
Mensagens: 93
Registrado em: 06 Jul 2004 12:53
Localização: Brazil
Contato:

Mensagem por binho_fasa »

Caro amigo, eu utilizo a IOLIB para comunicação serial com balanças. Você precisará do protocolo de comunicação da balança (Velocidade, bits de parada, etc) para funcionar. No exemplo abaixo, eu estou usando COM1, velocidade 9600, 8 bits de dados, sem paridade e 1 bit de parada).
#include "Iolib.Ch"

FUNCTION LerPeso()
LOCAL FSerial, Buffer := "", x, nBuffer := 512, nTamanho, nTentativa := 0
LOCAL nVeloci, nPorta, cPorta, nIrQ, cPortaSer

nTamanho := 7
cPorta := "COM1"
nPorta := Val(Right(cPorta, 1)) // Pego a porta de comunica‡„o

cPortaSer := 1016 // COM1
nVeloci := 12 // 9600

/// Captura a Irq da porta de comunicacao
nIrQ := COM_GETIRQ(nPorta)
If nIrQ == -1
Tone(300,2)
Alert(,, "Problemas com a porta serial COM" + Alltrim(Str(nPorta)))
RETURN 0
Endif

/// Inicializo a porta de comunicacao
If !INIT_PORT(cPortaSer, nVeloci, EIGHT_DATA_BITS , NO_PARITY, ONE_STOP_BIT , nIrQ, nBuffer)
Alert(,,"Erro ao inicializar a porta serial COM" + Alltrim(Str(nPorta)))
RETURN 0
Endif

INBUFCLR() // Limpo o Buffer
OUTBUFCLR()

// Efetuo a leitura de 1 caracter de cada vez até encontrar o final ou o
// número de tentativas chegar a 50
While ++nTentativa < 50
Millisec(20)
Buffer := INCHR(1)
If Buffer == Chr(2) // Ultimo caracter da string
EXIT
Endif
End While

MILLISEC(70)
Buffer := INCHR(nTamanho)
Buffer := If(!Empty(Buffer), Buffer, "1") // Se falhar, retorna 1

UNINT_PORT() // Fecho a porta serial

RETURN Val(Buffer)

Se não tiver a IOLIB, me informe um endereço de e-mail que eu te envio.

[]´s
Fabio Souza.
José Pereira
Usuário Nível 1
Usuário Nível 1
Mensagens: 10
Registrado em: 07 Jul 2004 00:58

Mensagem por José Pereira »

oBRIGADO PELA AJUDA.
Me mande a IOLIB por favor, para que eu possa fazer os teste.
Pereira
Avatar do usuário
binho_fasa
Usuário Nível 2
Usuário Nível 2
Mensagens: 93
Registrado em: 06 Jul 2004 12:53
Localização: Brazil
Contato:

Mensagem por binho_fasa »

Me informe um endereço de e-mail que eu te envio.

[]´s
Fabio Souza.
José Pereira
Usuário Nível 1
Usuário Nível 1
Mensagens: 10
Registrado em: 07 Jul 2004 00:58

Mensagem por José Pereira »

Favor me enviar o IOLIB para fazer os testes
Pereira
jpereira@meg.org.br
Avatar do usuário
filizola
Usuário Nível 3
Usuário Nível 3
Mensagens: 421
Registrado em: 19 Ago 2003 20:10
Localização: Belo Horizonte/MG

nIrQ := COM_GETIRQ(nPorta)

Mensagem por filizola »

grande amigo, testando a iolib nao encontrei este comando, vc pode me ajudar ???
Avatar do usuário
binho_fasa
Usuário Nível 2
Usuário Nível 2
Mensagens: 93
Registrado em: 06 Jul 2004 12:53
Localização: Brazil
Contato:

Mensagem por binho_fasa »

Esta função (COM_GETIRQ( )) está na Clipper Tools (CT.LIB). Se precisar eu te envio a lib e os NGs.

[]´s
Fabio Souza.
Avatar do usuário
filizola
Usuário Nível 3
Usuário Nível 3
Mensagens: 421
Registrado em: 19 Ago 2003 20:10
Localização: Belo Horizonte/MG

entendamos o seguinte...

Mensagem por filizola »

se por padrao, a com1 é sempre utilizada pela irq4, não será necessário que eu busque o irq não é mesmo???

me corrijam por favor se estiver errado.
José Pereira
Usuário Nível 1
Usuário Nível 1
Mensagens: 10
Registrado em: 07 Jul 2004 00:58

Mensagem por José Pereira »

OLá amigos.
Realmente preciso da lib CT e do seu NG.
Pereira
jpereira@meg.org.br
Avatar do usuário
binho_fasa
Usuário Nível 2
Usuário Nível 2
Mensagens: 93
Registrado em: 06 Jul 2004 12:53
Localização: Brazil
Contato:

RE: entendamos o seguinte...

Mensagem por binho_fasa »

Em geral sim. Mas se você tiver na máquina uma palca controladora ou multiserial, ai as coisas já mudam. Por via das dúvidas, é melhor sempre verificar a IRQ.

[]´s
Fabio Souza.
Responder