Clipper/FiveWin - Balanza CAS

 
Vista:

Balanza CAS

Publicado por Florentino Iriza (1 intervención) el 04/02/2002 23:05:48
Amigos me es un verdadero placer participar en tan prestigioso foro, por
favor necesito ayuda.

Explico:
La Balanza marca CAS, conectada al puerto COM1, retorna un archivo
plano con el peso, ahora bien, se debe enviar una secuencia para abrir y
otra para pedir el peso, es alli donde tengo el problema no se como enviar dicha "pregunta" desde una aplicacion clipper, yo envio lo siguiente pero no veo el efecto.

set printer to COM1
? "ENQ"
? "DC1"
set printer to

Expongo las Caracteristicas tecnicas.
a) The communication Agreements
1) Baud Rate -> 9600 Bps
2) Data Bit -> 8 Bit
3) Stop Bit -> 1 Bit
4) Parity Bit -> No
5) Communication Level -> RS-232C Level
6) Data Format ->ASCII
7) The Command Definitions
7-1. "ENQ" ->05H
7-2. "ACK" ->06H
7-3. "NAK" ->15H
7-4. "SOH" ->01H
7-5. "STX" ->02H
7-6. "ETX" ->03H
7-7. "EOT" ->04H
7-8. "DC1" ->11H
7-9. "DC2" ->12H
7-10."DC3" ->13H
7-11."DC4" ->14H
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder

RE:Balanza CAS

Publicado por Elias (55 intervenciones) el 05/02/2002 01:11:20
Amigo Florentino,

Yo tengo bastante experiencia en comunicaciones con balanzas electronicos de muchas marcas y modelos. contactate conmigo y conversamos.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:Balanza CAS

Publicado por Fracnisco Prado (5 intervenciones) el 05/03/2002 19:30:56
La mejor opcion para trabajar con lo puertos de comunicacion desde una aplicacion clipper es usando los Tools II que vienen con clipper 5.2
como ejemplo:
nCom:=1
com_init(nCom,9600,"N",8,1)
if !com_open(nCom,1000) //reservamos buffer de 1000 bytes
? "Error al abrir el puerto"
quit
end if

*enviamos comando valido
*------------------------------------
if com_send(nCom,chr(5)) > 0
* Todo OK esperamos respuesta
* -------------------------------------------
nTime := 0
do while com_count(nCom)==0
nTime++
if nTime > 1000
? "Tiempo vencido no hay respuesta"
quit
endif
enddo

* Si llegamos aqui es por que recibimos algun dato
* --------------------------------------------------------------------
sCar := com_read(nCom) //leemos todo el buffer

com _close(nCom)

// De aqui en adelante hacemo cualquier cosa con el dato...

espero te sirva de ejemplo

Saludos
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar