Olá, Pessoal !
Estou precisando capturar Pêso em Balanças FILIZOLA !
Será que alguém de vcs já fizeram esta comunicação........
Desde já agradeço a atenção...........
Jair Rangel (Harbour+MiniGUI+BrMake)

Moderador: Moderadores
JAIR RANGEL escreveu:Olá, Sygecom !
Baixei do site da FILIZOLA o manual de utilização da DLL do Fabricante.
DLL para comunicação com a Balança.
Já utilizou esta DLL ?
O HBCOMM São funções do Harbour, é isto ? Vou pesquisar...............
Obrigado por responder.............
Jair Rangel
(Harbour+MiniGUI+BrMake)
JAIR RANGEL escreveu:Olá, Pessoal !
Estou apanhando para conseguir comunicar com uma Balança Filizola BP 15kg.
Comunicação serial RS232.
Estou utilizando a HBCOMM. Uso a rotina que encontrei nas minhas buscas.
Até agora nada !
Quando faço:
Bytes:=InBufSize( nHandle )
If Bytes > 0
............
......
Else
MsgExclamation ('ERRO NA LEITURA DA PORTA !' )
EndIf
Bytes NUNCA É MAIOR QUE ZERO......
Porém, consigo abrir a porta.
A Balança indica que está conectada.
Mas paro nesta parte....
Se alguém puder ajudar, agradeço.......... :%
Harbour+MiniGui+BrMake
clebervn escreveu:Eu gostaria sim de um exemplo completo, se puder agradeço.
Obrigado !!!
Busca_Peso(1,1200,8,1,,,8,400,0) // balança Muller
Function Busca_Peso(PORTA,BAUD,WORDBIT,STOPBIT,vENVIA1,vENVIA2,vTotalbit,vMileseg,vDivisor)
LOCAL cIn_Msg,cPESO:="",NSIZE
comok:= INIT_PORT( "COM"+STR(PORTA,1),BAUD, WORDBIT, 3, StopBit,4000)
If ISWORKING(comok)=.T. // Conexão com a porta serial
OutBufClr(comok) // Limpa o Buffer de Saida
IF !EMPTY(vENVIA1)
OutChr( comok,vENVIA1 ) // Envia O CODIGO para a balança
ENDIF
IF !EMPTY(vENVIA2)
OutChr( comok,vENVIA2 ) // Envia O CODIGO para a balança
ENDIF
cIn_msg:=space(vTotalbit)
cPESO := ""
NSIZE := ""
Millisec(vMileseg) // tempo obrigatorio de espera
NSIZE:=INBUFSIZE( comok ) // Obter a contagem dos bytes que esta Aguardaabdo no buffer de entrada
if nsize > 0
inchr(comok,nsize,@cIn_msg) // Buscando Peso
cPESO := cIn_Msg
else
cpeso:="0"
endif
OutBufClr(comok) // Limpa o Buffer de Saida
ELSE
UNINT_PORT( comok ) // FECHA A PORTA DE COMUNICAÇÃO
MsgStop("Problemas na Inicialização da Porta Serial, Favor Verificar a Porta COM"+str(PORTA),"Aviso do Sistema")
cpeso:="0"
EndIf
vPeso := VAL(Subs(cPESO,AT("D",cPESO)+2,6))
cPeso :=""
UNINT_PORT( comok )
liq=vPeso/vDivisor // resultado para o liquido
Usuários vendo este fórum: Nenhum usuário registrado online e 13 visitantes