Página 2 de 3
CTP.LIB URGENTE
Enviado: 30 Dez 2013 15:19
por Toledo
Copiar/descompactar o arquivo em anexo dentro da pasta C:\CLIPPER5\LIB, substituindo o arquivo CT.LIB existente. Depois compile novamente o seu programa.
Abraços,
CTP.LIB URGENTE
Enviado: 30 Dez 2013 16:14
por sergiosistema
Obrigado Toledo pela ajuda e atenção. Infelizmente o erro continua, será que o problema é o windows 7? Você acha que eu devo testar no win xp pra ver se resolve? porque a compilação agora está toda certinha sem dar nenhum erro.
CTP.LIB URGENTE
Enviado: 30 Dez 2013 16:23
por Toledo
Sergio, então incluir o arquivo __wait_b.obj na compilação do seu programa, basta informar ele como se fosse um OBJ do seu programa no comando RTLINK FI.
Copie/descompactar o arquivo em anexo na mesma pasta onde está os OBJ do seu programa.
Abraços,
CTP.LIB URGENTE
Enviado: 30 Dez 2013 16:38
por sergiosistema
Toledo, deu certo ... o problema foi porque quando eu refiz a rotina do meu BAT, esqueci de colocar o __wait_b.obj na linha do Rtlink fi, foi só repor e o programa agora já acessa normalmente, agora vou realizar os testes com a balança toledo prix3. Eu te agradeço muito por sua colaboração, pois sem ela não teria conseguido. E de quebra ainda dei uma atualizada no clipper que agora está com 5.2e. Obrigado mesmo, vou testar o peso da balança agora e em seguida eu posto o resultado. Grato também ao Alexandre...
CTP.LIB URGENTE
Enviado: 30 Dez 2013 17:07
por alxsts
Olá!
Só queria entender: então você continua usando a CT.Lib e o RTLink, em modo real, e não precisou da CTP.Lib. É isto? E para que serve esse __wait_b.obj?
CTP.LIB URGENTE
Enviado: 30 Dez 2013 17:26
por sergiosistema
Também achei estranho..., mas eu segui a orientação do Toledo e foi dando tudo certo. NO BAT está com CT.LIB e se eu alterar pra CTP.LIB não compila mesmo estando na pasta como também esta a CT.LIB. Pra falar a verdade eu não entendo muito bem dessa coisa de modo protegido e modo real, eu sei que eu usava um único bat desde que aprendi a programar em clipper, mas sou muito limitado nessa questão de Rtlink ou Blink. Eu já estou conseguindo compilar normalmente depois que atualizei pra 5.2e mas tem uma coisa que tá dando errado... no meu arquivo de pedidos tem o include "IOLIB.CH" na primeira linha e agora notei que na compilação dá erro na linha 4, mas antes funcionava normal e eu nem alterei isso. O que deve ser? grato.
CTP.LIB URGENTE
Enviado: 30 Dez 2013 17:30
por sergiosistema
Este é o meu BAT.
CTP.LIB URGENTE
Enviado: 30 Dez 2013 17:41
por sergiosistema
Que mancada minha quanto ao include "IOLIB.CH", era só jogo da velha que tirei sem querer. foi mal pessoal, ai que vergonha. vou testar a balança agora.
CTP.LIB URGENTE
Enviado: 30 Dez 2013 17:57
por sergiosistema
Pessoal, eu não estou conseguindo peagar o peso da balança toledo prix 3. alguem tem uma luz aí? já alterei de 2400 N 8 1 pra 4800 e 9600 e até agora nada. A rotina que eu peguei aqui no fórum foi esta:
Código: Selecionar todos
*******************
Function ler_Peso()
*******************
Local nPorta := 1
Local cTrans := "N"
Local nBits := 8
Local nParad := 1
Local nVeloc := 2400
Local cInicia:= Chr(05)
Local Erro := .F.
Local VlrPeso:= 0
Local nRetorn:= .T.
If Com_Open(nPorta,1000,1000) == .t.
nConf := Com_Init(nPorta,nVeloc,cTrans,nBits,nParad)
Com_Send(nPorta,cInicia)
Inkey(0.10)
Com_Count(nPorta)
Inkey(0.10)
nLeitura := Com_read(nPorta,10)
If Substr(nLeitura,1,1)== Chr(02) .And. Right(AllTrim(nLeitura),1)==Chr(03)
alert(nleitura)
Endif
Com_Close(nPorta)
Endif
Return (.T.)
CTP.LIB URGENTE
Enviado: 30 Dez 2013 18:13
por alxsts
Olá!
Analisando bem o primeiro print screen que você postou, pode-se entender o que aconteceu:
você acrescentou em sua compilação a filizola.lib, compilada com Clipper 5.2 mas estava compilando seus programas com Clipper 5.0. Esta foi a razão do erro Undefined Symbol(s) CLIPPER520. Depois que passou a compilar com Clipper 5.2, resolveu o problema. Nada a ver com CT.Lib ou CTP.Lib...
Quanto às diferenças entre os modelos de alocação de memória, uma simples pesquisa no Google resolverá.
CTP.LIB URGENTE
Enviado: 31 Dez 2013 10:30
por sygecom
sergiosistema escreveu:Pessoal, eu não estou conseguindo peagar o peso da balança toledo prix 3. alguem tem uma luz aí? já alterei de 2400 N 8 1 pra 4800 e 9600 e até agora nada. A rotina que eu peguei aqui no fórum foi esta:
Sergio,
Tentou se comunicar pelo HyperTerminal para ver se já está se comunicando tudo certo ?
Outra coisa, cada balança tem um protocolo diferente de comunicação, você já tem em mãos o protocolo dessa toledo prix 3 ?
CTP.LIB URGENTE
Enviado: 31 Dez 2013 17:13
por sergiosistema
Oi sygecom, obrigado por responder........ Olha só windows 7 não tem o hyper terminal e eu estou usando ele, mas tentei por um programinha RComSerial que lê os dados da balança, só que ele lê quando a gente aperta o botão imprimir da balança, mas aparecem uns caracteres meio estranhos ao invés de números. Sobre o protocolo de comunicação eu não tenho nada da toledo, pensei até que fosse mais fácil de achar nos fóruns e no google do que a própria filizola, porque eu já consegui programar duas balanças da filizola mas da toledo não. Não sei mais o que fazer, já até enviei email pra toledo mas eles não respondem. Vou esperar pra ver se aparece algum programador aqui no fórum que já programou esta balança. Eu citei mais acima o codigo fonte de uma função que peguei aqui mesmo e que dizia que era pra toledo mas não sei se era a prix3. Este modelo é um dos mais utilizados em caixas de mercantil, é uma balança relativamente barata e confiável, foi por isso que eu achei que seria mais fácil de encontrar. Se você souber de alguma coisa me avisa por favor. Abraço.
CTP.LIB URGENTE
Enviado: 31 Dez 2013 20:30
por sygecom
sergiosistema escreveu:Oi sygecom, obrigado por responder........ Olha só windows 7 não tem o hyper terminal e eu estou usando ele
Eu geralmente instalo o HyperTerminal no windows que não tem para realizar os testes. Pode baixar no link abaixo.
http://www.sygecom.com.br/devel/uteis/h ... rminal.rar
sergiosistema escreveu:
, mas tentei por um programinha RComSerial que lê os dados da balança, só que ele lê quando a gente aperta o botão imprimir da balança,
Já ai no meu ver tem um erro, geralmente os protocolos das balanças ensinam como deixar as comunicação em modo continuo o envio para a porta serial/tcp.
mas aparecem uns caracteres meio estranhos ao invés de números.
Isso geralmente acontece quando algum dos parâmetro está errado ( 2400 ou N ou 8 ou 1 )
Sobre o protocolo de comunicação eu não tenho nada da toledo, pensei até que fosse mais fácil de achar nos fóruns e no google do que a própria filizola, porque eu já consegui programar duas balanças da filizola mas da toledo não. Não sei mais o que fazer, já até enviei email pra toledo mas eles não respondem. Vou esperar pra ver se aparece algum programador aqui no fórum que já programou esta balança. Eu citei mais acima o codigo fonte de uma função que peguei aqui mesmo e que dizia que era pra toledo mas não sei se era a prix3. Este modelo é um dos mais utilizados em caixas de mercantil, é uma balança relativamente barata e confiável, foi por isso que eu achei que seria mais fácil de encontrar. Se você souber de alguma coisa me avisa por favor. Abraço.
Tenho guardado esse que anexei ao post, acho que atende a esse modelo que está procurando.
Preste atenção que tem que enviar um CHR(05) para a balança para ela enviar de volta a pesagem, deve ser o que o botão que você pressionou faz.
CTP.LIB URGENTE
Enviado: 01 Jan 2014 11:23
por sergiosistema
Oi Leonardo, vou fazer os testes com os anexos que você enviou. Assim que terminar eu posto aqui. Muito obrigado.
CTP.LIB URGENTE
Enviado: 01 Jan 2014 17:45
por sergiosistema
Olá pessoal, eu sinceramente já não sei mais o que fazer. Testei vários exemplos citados aqui no fórum e até agora nada deu certo pra pegar o peso da Toledo Prix3. Estou usando o “__wait_b” na compilação e a lib CT e não a CTP porque se eu usar a CTP dá erro de UNDEFINED SYMBOL(S) AFTER LIBRARY SEARCH:... aí aparecem dois erros ´_D16protectedptr´ e ´_D16segcancel´, mas se for pela CT.LIB não dá nenhum erro, inclusive os comandos da função Ler_Peso (imagem anexada) são reconhecidos normalmente, não dá erro nenhum. O que eu observei foi que quando tento ler o peso o sistema entra num loop infinito após o comando “IF COM_COUNT(1) > 0”,pois se esta linha for ocultada, a rotina é executada normalmente e o resultado é exibido na linha 10 da tela com o peso zerado. Verifiquei a pinagem do cabo e está 2,3,5 e no outro lado 3,2,5 conforme pesquisei sobre a configuração, mas vi vários outros artigos sobre o assunto e alguns dizem que tem que jampear o 4 e 6, outros dizem que é 7 e 8 e num arquivo que encontrei da própria Toledo já é outra pinagem, os senhores podem conferir na imagem abaixo. Amanhã que é dia útil vou tentar conferir um cabo que já funciona com balança igual em um mercantil aqui perto, pois é tudo que me resta. Agradeço a colaboração de todos. Abraço.