COMUNICACAO COM CATRACAS

 Tópico anterior Próximo tópico Novo tópico

COMUNICACAO COM CATRACAS

VB / VBA

 Compartilhe  Compartilhe  Compartilhe
#338411 - 02/04/2010 02:04:02

LCSD
SAO PAULO
Cadast. em:Janeiro/2001


Pessoal, Bom Dia pra todo mundo.....

Eu estou precisando fazer o seguinte, e não estou conseguindo fazer o "tico e teco" funcionarem perfeitamente para poder encontrar a solução para o desafio ao qual eu estou.
Estou precisando desenvolver no meu software a comunicação com a catraca das unidades da academia onde estou prestando serviço.
Eu descobrí que tem uma dl "genérica" que me atenderá na comunicação com todas as catracas da academia (que é a DLL XPCOM32.DLL), mas não conseguí encontrar de forma alguma nenhum material na internet para me ajudar a entender o funcionamento desta DLL para eu desenvolver o aplicatico, ou mesmo, algum exemplo na internet que me ajude a dar uma luz para este grande desafio.

Por acaso, alguém já trabalhou com esta DLL para se comunicar com as catracas???
Ou por acaso, alguém tem algum material explicativo (e não muito dificil de entender) para eu mandar para a catraca um pequeno texto (BOM TREINO, PASSAGEM LIBERADA, BLOQUEADO), liberá-la ou travá-la conforme os dados que eu já tiver do aluno (isso é moleza já e tá pronto).

Só falta eu me comunicar com a catraca, enviar o texto pra ela, liberar para girá-la ou não..... Só falta isso!!! Alguém pode me dar um grande e maravilhoso HELP com isso???

  
Quando precisar, pode contar comigo....
E quando precisar, não esqueça de agradecer, pois a educação é a ALMA DO NEGÓCIO...


Obrigado.

Luiz Cesar

#338412 - 02/04/2010 08:27:09

TECLA
SAO PAULO
Cadast. em:Janeiro/2001


Membro da equipe
Creio que este seja o Hello World da XPCom.




#338578 - 05/04/2010 13:03:28

LCSD
SAO PAULO
Cadast. em:Janeiro/2001


TECLA,

Este "fórum" eu já encontrei e tentei fazer alguma coisa por lá também, mas sem saber como é o funiconamento desta DLL e quais são as classes/funções que ela disponibiliza, fica muito difícil fazer alguma coisa.
Por exemplo: Como que eu vou falar pra ela LIBERAR a CATRACA 1, ou BLOQUEAR a CATRACA 2????

um MANUAL dela pra mim seria de muito bom USO.... um EXEMPLO em VB6 então, seria PERFEITO, pois seria até mais fácil entender..... Mas ter somente o nome da DLL e não saber como usá-la, é que tá muito complicado.....

  
Quando precisar, pode contar comigo....
E quando precisar, não esqueça de agradecer, pois a educação é a ALMA DO NEGÓCIO...


Obrigado.

Luiz Cesar

Resposta escolhida #338585 - 05/04/2010 14:12:05

RODRIGOMARCHESE
SERRA - ES
Cadast. em:Dezembro/2003


Attribute VB_Name = "XPNETW"
'---------------------------------------------------------------------------
' TRIX Tecnologia Ltda.
'---------------------------------------------------------------------------
' Projeto.........: Biblioteca de Comunicacao XPCOMLIB (XPCOM32.DLL)
' Modulo..........: XPCOM32.BAS (arquivo de inclusao)
' Versao..........: 2.04
' Compilacao......: Visual Basic 4
' Ultima alteracao: 26/10/1999
' Responsavel.....: VM
'---------------------------------------------------------------------------

'----------------------------------------------------------------------------
' Numero de canais de comunicacao suportados
'----------------------------------------------------------------------------

Global Const COM1 = 0
Global Const COM2 = 1
Global Const COM3 = 2
Global Const COM4 = 3
Global Const COM5 = 4
Global Const COM6 = 5
Global Const COM7 = 6
Global Const COM8 = 7
Global Const COM9 = 8
Global Const COM10 = 9
Global Const COM11 = 10
Global Const COM12 = 11
Global Const COM13 = 12
Global Const COM14 = 13
Global Const COM15 = 14
Global Const COM16 = 15
Global Const COMCHANNELS = 16
Global Const COMLAST = 15

'----------------------------------------------------------------------------
' Mascaras de Erros de Comunicacao
'----------------------------------------------------------------------------

Global Const COM_OVERUN = 2                              ' Erro de overrun na recepcao
Global Const COM_PARITY = 4                              ' Erro de paridade na recepcao
Global Const COM_FRAME = 8                               ' Erro de framing na recepcao
Global Const COM_BREAK = 16                              ' Deteccao de break
Global Const COM_RXBFUL = 128                            ' Erro de buffer de recepcao cheio

'----------------------------------------------------------------------------
' Codigos para obtencao de configuracao do canal
'----------------------------------------------------------------------------

Global Const COMCFG_OPEN = 1                             ' canal aberto
Global Const COMCFG_RATE = 2                             ' taxa de comunicacao
Global Const COMCFG_NBITS = 3                            ' numero de bits
Global Const COMCFG_NSTOP = 4                            ' numero de stop-bits
Global Const COMCFG_PAR = 5                              ' paridade
Global Const COMCFG_TXFLOW = 6                           ' controle de fluxo na transmissao
Global Const COMCFG_RXFLOW = 7                           ' controle de fluxo na recepcao
Global Const COMCFG_BUFRX = 8                            ' tamanho do buffer de recepcao
Global Const COMCFG_BUFTX = 9                            ' tamanho do buffer de transmissao

'----------------------------------------------------------------------------
' Constantes diversas
'----------------------------------------------------------------------------

Global Const COM_NONEP = 0                               ' Sem paridade
Global Const COM_ODDP = 1                                ' Paridade impar
Global Const COM_EVENP = 2                               ' Paridade par
Global Const COM_NOFLOW = 0                              ' Sem controle de fluxo
Global Const COM_RTSCTS = 1                              ' Controle de fluxo RTS/CTS
Global Const COM_XONXOFF = 2                             ' Controle de fluxo XON/XOFF
Global Const COM_OFF = 0                                 ' Sinal desativo
Global Const COM_ON = 1                                  ' Sinal ativo
Global Const COM_MINRXB = 16                             ' Tamanho minimo do buffer de recepcao
Global Const COM_MAXRXB = 65500                          ' Tamanho maximo do buffer de recepcao
Global Const COM_MINTXB = 16                             ' Tamanho minimo do buffer de transmissao
Global Const COM_MAXTXB = 65500                          ' Tamanho maximo do buffer de transmissao

'----------------------------------------------------------------------------
' Tipos de Comunicacao atraves da rede XPnet
'----------------------------------------------------------------------------

Global Const XPN_COMHALF = 0                             ' operacao half-duplex
Global Const XPN_COMFULL = 1                             ' operacao full-duplex
Global Const XPN_COMAUTO = 2                             ' operacao half e full duplex automática

'----------------------------------------------------------------------------
' Status de Comunicacao da XPnet
'----------------------------------------------------------------------------

Global Const XPN_STATIDLE = 0                            ' comunicacao inativa
Global Const XPN_STATACTIVE = 1                          ' comunicacao ativa
Global Const XPN_STATOK = 2                              ' comunicacao inativa OK
Global Const XPN_STATERROR = 3                           ' comunicacao inativa com erro

'----------------------------------------------------------------------------
' Codigos para obtencao de configuracao da rede
'----------------------------------------------------------------------------

Global Const XPNCFG_OPEN = 1                             ' verificar se rede esta aberta no canal
Global Const XPNCFG_RATE = 2                             ' taxa de comunicacao
Global Const XPNCFG_BUFRXMSG = 3                         ' tamanho do buffer de recepcao de mensagens
Global Const XPNCFG_BUFTXMSG = 4                         ' tamanho do buffer de transmissao de mensagens
Global Const XPNCFG_POLLSTART = 5                        ' verificacao se polling esta ativo
Global Const XPNCFG_POLLINT = 6                          ' verificacao de intervalo entre pollings
Global Const XPNCFG_POLLTERM = 7                         ' verificacao de polling de terminal

'----------------------------------------------------------------------------
' Codigos para alteracao do valor do timeout da rede
'----------------------------------------------------------------------------

Global Const XPNWAIT_ACK = 1                             ' tempo maximo de espera de ACK ou SOH

'----------------------------------------------------------------------------
' Codigos para retorno de estatisticas na funcao XPnetmTermStat
'----------------------------------------------------------------------------

Global Const XPNSTAT_ERROR = 0                           ' ultimo erro de comunicacao
Global Const XPNSTAT_STATUS = 1                          ' ultimo status do terminal
Global Const XPNSTAT_POLLS = 2                           ' numero de mensagens de requisicao de dados transmitidas
Global Const XPNSTAT_TXMSGS = 3                          ' numero de mensagens de comando transmitidas
Global Const XPNSTAT_TXDATA = 4                          ' numero de bytes de dados transmitidos
Global Const XPNSTAT_RXMSGS = 5                          ' numero de mensagens de dados recebidas do terminal
Global Const XPNSTAT_RXDATA = 6                          ' numero de bytes de dados recebidos do terminal
Global Const XPNSTAT_ERRORS = 7                          ' numero de erros
Global Const XPNSTAT_RETRIES = 8                         ' numero de tentativas

'----------------------------------------------------------------------------
' Codigos de Tipos de Transferencia de Programa/Arquivo
'----------------------------------------------------------------------------

Global Const XPNXFER_TXPROG = 0                          ' Transmissao de programa
Global Const XPNXFER_RXPROG = 1                          ' Recepcao de programa
Global Const XPNXFER_TXFILE = 2                          ' Transmissao de arquivo
Global Const XPNXFER_RXFILE = 3                          ' Recepcao de arquivo

'----------------------------------------------------------------------------
' Codigos de erro retornados pelas funcoes do Driver de Comunicacao
'----------------------------------------------------------------------------

Global Const COM_OK = 0                                  ' Resultado OK
Global Const COM_INVPRM = -1                             ' Parametros invalidos (Clipper)
Global Const COM_INVCOM = -2                             ' Canal de comunicacao invalido
Global Const COM_INVINT = -3                             ' Numero de interrupcao invalido
Global Const COM_INVNBT = -4                             ' Numero de bits invalido
Global Const COM_INVRAT = -5                             ' Taxa de comunicacao invalida
Global Const COM_INVNSB = -6                             ' Numero de stop-bits invalido
Global Const COM_INVPAR = -7                             ' Paridade invalida
Global Const COM_INVBUF = -8                             ' Tamanho de buffer invalido
Global Const COM_INVFLW = -9                             ' Tipo de controle de fluxo invalido
Global Const COM_ISOPEN = -10                            ' Canal de comunicacao ja' esta' aberto
Global Const COM_NTOPEN = -11                            ' Canal de comunicacao nao esta' aberto
Global Const COM_NOMEM = -12                             ' Memoria insuficiente para a operacao
Global Const COM_TXBFUL = -13                            ' Buffer de transmissao cheio
Global Const COM_RXBEMP = -14                            ' Buffer de recepcao vazio
Global Const COM_INVSTE = -15                            ' Estado de sinal invalido
Global Const COM_INVPORT = -16                           ' Porta invalida ou erro de hardware
Global Const COM_INVCFG = -17                            ' Codigo de configuracao invalido
Global Const COM_RXERROR = -18                           ' Erro de recepcao de caractere
Global Const COM_CLOSE = -19                             ' Erro no fechamento do canal
Global Const COM_TXERROR = -20                           ' Erro na transmissao
Global Const COM_APIERROR = -21                          ' Erro retornado pela API do WIndows

'----------------------------------------------------------------------------
' Codigos de Erros retornados pelas funcoes da XPNET
'-------------------------------

Abraços

Rodrigo Marchese

#338586 - 05/04/2010 14:14:42

RODRIGOMARCHESE
SERRA - ES
Cadast. em:Dezembro/2003


'----------------------------------------------------------------------------
' Codigos de erro retornados pelas funcoes do Driver de Comunicacao
'----------------------------------------------------------------------------

Global Const COM_OK = 0                                  ' Resultado OK
Global Const COM_INVPRM = -1                             ' Parametros invalidos (Clipper)
Global Const COM_INVCOM = -2                             ' Canal de comunicacao invalido
Global Const COM_INVINT = -3                             ' Numero de interrupcao invalido
Global Const COM_INVNBT = -4                             ' Numero de bits invalido
Global Const COM_INVRAT = -5                             ' Taxa de comunicacao invalida
Global Const COM_INVNSB = -6                             ' Numero de stop-bits invalido
Global Const COM_INVPAR = -7                             ' Paridade invalida
Global Const COM_INVBUF = -8                             ' Tamanho de buffer invalido
Global Const COM_INVFLW = -9                             ' Tipo de controle de fluxo invalido
Global Const COM_ISOPEN = -10                            ' Canal de comunicacao ja' esta' aberto
Global Const COM_NTOPEN = -11                            ' Canal de comunicacao nao esta' aberto
Global Const COM_NOMEM = -12                             ' Memoria insuficiente para a operacao
Global Const COM_TXBFUL = -13                            ' Buffer de transmissao cheio
Global Const COM_RXBEMP = -14                            ' Buffer de recepcao vazio
Global Const COM_INVSTE = -15                            ' Estado de sinal invalido
Global Const COM_INVPORT = -16                           ' Porta invalida ou erro de hardware
Global Const COM_INVCFG = -17                            ' Codigo de configuracao invalido
Global Const COM_RXERROR = -18                           ' Erro de recepcao de caractere
Global Const COM_CLOSE = -19                             ' Erro no fechamento do canal
Global Const COM_TXERROR = -20                           ' Erro na transmissao
Global Const COM_APIERROR = -21                          ' Erro retornado pela API do WIndows

'----------------------------------------------------------------------------
' Codigos de Erros retornados pelas funcoes da XPNET
'----------------------------------------------------------------------------
                                                        
Global Const XPN_INVCOM = -100                           ' canal de comunicacao invalido
Global Const XPN_INVTYPE = -101                          ' tipo de comunicacao invalido
Global Const XPN_INVRETRIES = -102                       ' numero de tentativas de comunicacao invalido
Global Const XPN_ISOPEN = -103                           ' rede ja esta aberta para canal especificado
Global Const XPN_NOMEM = -104                            ' sem memoria para operacao da rede
Global Const XPN_NOTOPEN = -105                          ' rede nao esta aberta para canal especificado
Global Const XPN_INVADDR = -106                          ' endereco de terminal invalido
Global Const XPN_INVTERM = -107                          ' numero de terminal invalido
Global Const XPN_NOTIMERS = -108                         ' sem timers disponiveis
Global Const XPN_TXBFULL = -109                          ' buffer de transmissao de mensagens cheio
Global Const XPN_RXBEMPTY = -110                         ' buffer de recepcao    de mensagens vazio
Global Const XPN_RXBFULL = -111                          ' buffer de recepcao    de mensagens cheio
Global Const XPN_RXTIMEOUT = -112                        ' time-out durante recepcao
Global Const XPN_RXCRC1 = -113                           ' erro no CRC1
Global Const XPN_RXCRC2 = -114                           ' erro no CRC2
Global Const XPN_POLLON = -115                           ' polling ja esta ativo
Global Const XPN_POLLOFF = -116                          ' polling esta desativo
Global Const XPN_POLLINVINT = -117                       ' intervalo de polling e' invalido
Global Const XPN_POLLINVN = -118                         ' numero de requisicoes de polling invalido
Global Const XPN_TXTMOUT = -119                          ' timeout de transmissao
Global Const XPN_ACKTIMEOUT = -120                       ' timeout de espera de ACK
Global Const XPN_INVCFG = -121                           ' consulta de configuracao invalida
Global Const XPN_THREADPRI = -122                        ' erro no estabelecimendo da prioridade de thread
Global Const XPN_COMACTIVE = -123                        ' comunicacao continua ativa apos varias verificacoes

'----------------------------------------------------------------------------
' Codigos de Erros retornados pelas funcoes de Transmissao / Recepcao de arquivos
'----------------------------------------------------------------------------

Global Const XPN_NOTTXMSG = -200                         ' Mensagem nao foi transmitida
Global Const XPN_OPENFILE = -201                         ' Abertura de arquivo
Global Const XPN_NOMEMOP = -202                          ' Memoria insuficiente para operacao
Global Const XPN_READFILE = -203                         ' Problema na leitura do arquivo
Global Const XPN_WRITEFILE = -204                        ' Problema na escrita do arquivo
Global Const XPN_ERRRXMSG = -205                         ' Recepcao de mensagens
Global Const XPN_USRABT = -206                           ' Aborto pelo usuario
Global Const XPN_REMTMOUT = -207                         ' Time-out de modo remoto
Global Const XPN_TRANSFER = -208                         ' Transferencia ativa no canal especificado

'----------------------------------------------------------------------------
' Definicao de Tipos de Campos para Conversao de Arquivos e outras constantes
'----------------------------------------------------------------------------

Global Const XPFLD_INT = 1                               ' campo inteiro
Global Const XPFLD_FLO = 2                               ' campo numerico em ponto flutuante
Global Const XPFLD_STR = 4                               ' campo string
Global Const XPBHDRSIZE = 128                            ' tamanho do header de arquivo XPbasic
Global Const XPBMAXFIELDS = 10                           ' numero maximo de campos por registro
Global Const XPBMAXRECORDS = 65000                       ' numero maximo de registros de arquivo XPBASIC

Global Const XPLTERM_CRLF = 0                            ' terminador CRLF
Global Const XPLTERM_CR = 1                              ' terminador CR
Global Const XPLTERM_LF = 2                              ' terminador LF

'----------------------------------------------------------------------------
' Codigos de Erros Retornados pelas Funcoes de Conversao de Arquivos
'----------------------------------------------------------------------------*/

Global Const XPN_ERRFILE = -300                          ' Problema em acesso a arquivo
Global Const XPN_INVFILE = -301                          ' Formato do arquivo a ser convertido nao foi reconhecido.
Global Const XPN_ERRMAXF = -302                          ' Numero de campos maior que 10
Global Const XPN_ERRMAXR = -303                          ' Numero de registros maior que o maximo
Global Const XPN_ERRSTRUC = -304                         ' Estruturas incompativeis
Global Const XPN_NOFLOAT = -305                          ' Ponto flutuante nao suportado

'-------------------------------------------------------------------------------
' Codigos de Erros Retornados pelas Funcoes de Protocolo XMODEM
'-------------------------------------------------------------------------------

Global Const XPM_ACTIVE = 1                              ' comunicacao ativa
Global Const XPM_ISOPEN = -400                           ' protocolo ja  esta' aberto
Global Const XPM_NOTOPEN = -401                          ' protocolo nao esta' aberto
Global Const XPM_NOMEM = -402                            ' sem memoria para operacao
Global Const XPM_NAKTIMEOUT = -403                       ' timeout de espera de NAK inicial
Global Const XPM_ACKTIMEOUT = -404                       ' timeout de espera de ACK
Global Const XPM_RXNAK = -405                            ' recepcao de NAK apos transmissao de bloco
Global Const XPM_ERRFILE = -406                          ' problema no acesso ao arquivo
Global Const XPM_USERABORT = -407                        ' aborto pelo usuario
Global Const XPM_REMABORT = -408                         ' aborto remoto
Global Const XPM_RXINVBLK = -409                         ' recepcao de bloco invalido (apos N tentativas)
Global Const XPM_SOHTIMEOUT = -410                       ' timeout de recepcao de SOH
Global Const XPM_RXTIMEOUT = -411                        ' timeout de recepcao de caractere
Global Const XPM_INVCONFIG = -412                        ' configuracao invalida

'-------------------------------------------------------------------------------
' Constantes de Configuracao do Protocolo XMODEM
'-------------------------------------------------------------------------------

Global Const XPM_TXINIT_TIMEOUT = 1                      ' time-out de espera inicial da transmissao
Global Const XPM_TXACK_TIMEOUT = 2                       ' time-out de espera de ACK apos transmissao de bloco
Global Const XPM_TXACKEOT_TIMEOUT = 3                    ' time-out de espera de ACK apos EOT
Global Const XPM_RXNAKINIT_TIMEOUT = 4                   ' time-out entre envio de NAKs iniciais
Global Const XPM_RXSOH_TIMEOUT = 5                       ' time-out de espera de SOH apos envio de ACK ou NAK
Global Const XPM_RXERRSOH_TIMEOUT = 6                    ' time-out de espera de SOH apos erro na recepcao de SOH
Global Const XPM_RXBLOCK_TIMEOUT = 7                     ' time-out de espera de bloco apos SOH
Global Const XPM_RXMAXERRORS = 8                         ' numero maximo de erros de recepcao antes de abortar comunicacao


Abraços

Rodrigo Marchese

#338587 - 05/04/2010 14:16:35

RODRIGOMARCHESE
SERRA - ES
Cadast. em:Dezembro/2003


'-----------------------------------------------------------------------------
' Estrutura de Status de Cada Terminal XPNET (Em relacao ao Concentrador)
'-----------------------------------------------------------------------------

Type XPNETMSTAT
   nError          As Long                               ' erro atual de comunicacao
   nLastError      As Long                               ' ultimo erro de comunicacao
   nChipError      As Long                               ' erro do driver de comunicacao
   wStatus         As Long                               ' ultimo status do terminal
   dwTxPolls       As Long                               ' numero de mensagens de requisicao de dados transmitidas
   dwTxMsgs        As Long                               ' numero de mensagens de comando transmitidas
   dwTxData        As Long                               ' numero de bytes de dados transmitidos
   dwRxMsgs        As Long                               ' numero de mensagens de dados recebidas do terminal
   dwRxData        As Long                               ' numero de bytes de dados recebidos do terminal
   dwErrors        As Long                               ' numero de erros
   dwRetries       As Long                               ' numero de tentativas
End Type

'----------------------------------------------------------------------------
' Estrutura Descritora de Formato de Arquivo a ser Gerado pelas Conversoes
'----------------------------------------------------------------------------

Type CONVFILEFIELD
    cName     As String * 11                             ' nome do campo
    cType     As String * 1                              ' tipo do campo
    cLength   As String * 1                              ' tamanho do campo caractere
    cDec      As String * 1                              ' numero de casas decimais (caso se aplique)
End Type

Type CONVFILEFORMAT
    cFields   As String * 1                              ' numero de campos
    Field(10) As CONVFILEFIELD                           ' descricao dos campos
End Type

'-------------------------------------------------------------------------------
' Estrutura de Status de Protocolo XMODEM
'-------------------------------------------------------------------------------

Type XMODEMSTATS
   nStatus     As Long                                    ' Status ou ultimo erro
   dwTxTotal   As Long                                   ' Numero total de blocos a transmitir
   dwTxBlocks  As Long                                   ' Numero total de blocos transmitidos
   dwRxBlocks  As Long                                   ' Numero de blocos recebidos
End Type

'-------------------------------------------------------------------------------
' Estrutura de Status de Transferencia de Arquivo atraves de Rede XPnet
'-------------------------------------------------------------------------------

Type XPNET_TRANSFER_STAT
   nActive     As Long                                   ' Status / Erro corrente
   nType       As Long                                   ' Tipo de transferencia
   nTerm       As Long                                   ' Terminal sendo utilizado
   nError      As Long                                   ' Ultimo erro ocorrido
   nTxTotal    As Long                                   ' Numero total de blocos a transmitir
   nTxBlocks   As Long                                   ' Numero de blocos transmitidos
   nRxTotal    As Long                                   ' Numero total de blocos a receber
   nRxBlocks   As Long                                   ' Numero de blocos recebidos
End Type

'----------------------------------------------------------------------------
' Status de Comunicacao de comandos para Base RF, retornados por RFnetWairResult
'----------------------------------------------------------------------------

Global Const RFN_STATIDLE = 0        ' comunicacao inativa
Global Const RFN_STATACTIVE = 1      ' comunicacao ativa
Global Const RFN_STATOK = 2          ' comunicacao inativa OK
Global Const RFN_STATERROR = 3       ' comunicacao inativa com erro


'----------------------------------------------------------------------------
' Codigos de retorno das funcoes RFnetGetResult e RFnetWaitResult
'----------------------------------------------------------------------------

Global Const RFN_ACTIVE = -2         ' esperando resposta
Global Const RFN_RESULTERR = -1      ' Retornou erro de comando/parametro
Global Const RFN_RESULTIDLE = 0      ' nao tem pedido pendente
Global Const RFN_RV = 1              ' retornou numero da versao
Global Const RFN_TM = 2              ' retornou mensagem aceita
Global Const RFN_TP = 3              ' retornou Ping aceito
Global Const RFN_CP = 4              ' retornou configure-param. OK
Global Const RFN_VP = 5              ' retornou visualize-parameter
Global Const RFN_RTS = 6             ' retornou Estatistica de coletor
Global Const RFN_ITS = 7             ' retornou Reset-stat-de-coletor OK
Global Const RFN_RRS = 8             ' retornou Estatistica de repetidor
Global Const RFN_IRS = 9             ' retornou Reset-stat-de repet. OK
Global Const RFN_CR = 10             ' retornou visualize-parameter
Global Const RFN_VR = 11             ' retornou visualize-parameter

'----------------------------------------------------------------------------
' Codigos de retorno da funcao RFnetRxMsg
'----------------------------------------------------------------------------
Global Const RFN_ERRMSG = -4         ' chegou mensagem com erro de formatacao em RFnetRxMsg
Global Const RFN_RM = 12             ' chegou mensagem
Global Const RFN_MT = 13             ' retornou mensagem transmitida c/ sucesso
Global Const RFN_ETM = 14            ' retornou erro  na transmissao de Msg
Global Const RFN_PR = 15             ' Ping tranmitido com sucesso
Global Const RFN_ETP = 16            ' retornou erro  na transmissao de Ping
Global Const RFN_EV = 17             ' chegou msg de evento

'----------------------------------------------------------------------------
' Codigos para configuracao da rede RF
'----------------------------------------------------------------------------

Global Const RFNCFG_NETID = 1             'Configura numero de identificacao desta  rede de Radio (0 a 255).
Global Const RFNCFG_RFRETRIES = 2         'Configura numero de tentativas de retransmissao do radio da Base (0 a 255)
Global Const RFNCFG_RFTIMEOUTACK = 3      'Configura tempo para retransmissao de msgs do radio da Base (0 a 255)
Global Const RFNCFG_RFTIMEOUTPONG = 4     'Configura tempo de espera de Pong do radio da Base.
Global Const RFNCFG_RADIO0 = 5            'Ativa/Desativa o Radio 0 da Base.
Global Const RFNCFG_RADIO1 = 6            'Ativa/Desativa o Radio 1 da base.
Global Const RFNCFG_HOSTMODE = 7          'Ativa/desativa modo de comunicacao com Host, na Base.
Global Const RFNCFG_HOSTECHO = 8          'Ativa/desativa modo ECHO da Base.
Global Const RFNCFG_HOSTPROT = 9          'Ativa/desativa o protocolo de comunicacao na base com correcao de erros.
Global Const RFNCFG_HOSTRATE = 10         'Configura a taxa de comunicacao com Host setada na Base.
Global Const RFNCFG_HOSTTIMEOUT = 11      'Configura intervalo de tentativas de retransmissao da base para o Host.
Global Const RFNCFG_HOSTRETRIES = 12      'Configura numero de tentativas de retransmissao da Base para o Host.
Global Const RFNCFG_NETRETRIES = 13       'Configura numero de tentativas de retransmissao da Base para Repetidores.
Global Const RFNCFG_NETTIMEOUT = 14       'Configura  o intervalo de retransmissoes de mensagens da Base para Repetidores.
Global Const RFNCFG_NETRATE = 15          'Configura a taxa de comunicacao entre Base e Repetidores.
Global Const RFNCFG_REPEAT = 16           'Ativa/desativa quais repetidores para conversacao com a Base (estrutura de bits)
Global Const RFNCFG_DEBUGFLAGS = 17       'Configura estado dos flags de debug na Base (estrutura de bits)
Global Const RFNCFG_SWITCHES = 18         'Usado para ler dip-switches da baserf

'----------------------------------------------------------------------------
' Codigos para configuracao do radio da Base
'----------------------------------------------------------------------------

Global Const RFNRAD_PREAMBLE = 1     'configura nPreamble, ciclos de preambulo
Global Const RFNRAD_WAKEUP = 2       'configura nWakeup, tempo de Wake Up do radio
Global Const RFNRAD_SLEEP = 3        'configura nSleep, tempo de Sleep do radio
Global Const RFNRAD_TXRX = 4         'configura nTxRx, Delay entre Tx e Rx do radio
Global Const RFNRAD_PWR = 5          'configura nPwr, tempo de power up do radio
Global Const RFNRAD_TXBACKOFF = 6    'configura nTxBackoff, tempo maxio de Tx Back-off do radio
Global Const RFNRAD_TXSLOT = 7       'configura nTxSlot, numero de slot do radio
Global Const RFNRAD_RESSTATE = 8     'configura nResetState, estado do switches register do radio apos reset
Global Const RFNRAD_DIAG = 9         'configura nDiag

'----------------------------------------------------------------------------
' Codigos de Erros retornados pelas funcoes da rede RF
'----------------------------------------------------------------------------
                                                                                                  
Global Const RFN_INVCOM = -500       ' canal de comunicacao invalido
Global Const RFN_INVRETRIES = -501   ' numero de tentativas de comunicacao invalido
Global Const RFN_ISOPEN = -502       ' rede ja esta aberta para canal especificado
Global Const RFN_NOMEM = -503        ' sem memoria para operacao da rede
Global Const RFN_NOTOPEN = -504      ' rede nao esta aberta para canal especificado
Global Const RFN_INVTERM = -505      ' numero de terminal invalido
Global Const RFN_INVPARM = -506      ' parametro para funcao invalido
Global Const RFN_TXBFULL = -508      ' buffer de transmissao de mensagens cheio
Global Const RFN_RXBEMPTY = -509     ' buffer de recepcao    de mensagens vazio
Global Const

Abraços

Rodrigo Marchese

#338588 - 05/04/2010 14:18:21

RODRIGOMARCHESE
SERRA - ES
Cadast. em:Dezembro/2003


'---------------------------------------------------------------------------
' Prototipos das funcoes publicas da XPNETM
'---------------------------------------------------------------------------

Declare Sub XPComVersion Lib "XPCOM32.DLL" (ByVal sMsg$)

Declare Function ComOpen Lib "XPCOM32.DLL" (ByVal nChannel As Long, ByVal wRate As Long, ByVal nBits As Long, ByVal nStop As Long, ByVal nParid As Long, ByVal nTxFlow As Long, ByVal nRxFlow As Long, ByVal wTxBuffer As Long, ByVal wRxBuffer As Long) As Long
Declare Function ComConfig Lib "XPCOM32.DLL" (ByVal nChannel As Long, ByVal nRate As Long, ByVal nBits As Long, ByVal nStop As Long, ByVal nParid As Long, ByVal nTxFlow As Long, ByVal nRxFlow As Long) As Long
Declare Function ComClose Lib "XPCOM32.DLL" (ByVal nChannel As Long) As Long
Declare Function ComGetConfig Lib "XPCOM32.DLL" (ByVal nChannel As Long, ByVal nInfo As Long) As Long
Declare Function ComGetnRx Lib "XPCOM32.DLL" (ByVal nChannel As Long) As Long
Declare Function ComGetnTx Lib "XPCOM32.DLL" (ByVal nChannel As Long) As Long
Declare Function ComGetfRx Lib "XPCOM32.DLL" (ByVal nChannel As Long) As Long
Declare Function ComGetfTx Lib "XPCOM32.DLL" (ByVal nChannel As Long) As Long
Declare Function ComGetErrors Lib "XPCOM32.DLL" (ByVal nChannel As Long) As Long
Declare Function ComClearErrors Lib "XPCOM32.DLL" (ByVal nChannel As Long) As Long
Declare Function ComClearRxBuffer Lib "XPCOM32.DLL" (ByVal nChannel As Long) As Long
Declare Function ComClearTxBuffer Lib "XPCOM32.DLL" (ByVal nChannel As Long) As Long
Declare Function ComClearTxRx Lib "XPCOM32.DLL" (ByVal nChannel As Long) As Long
Declare Function ComRxChar Lib "XPCOM32.DLL" (ByVal nChannel As Long) As Long
Declare Function ComRxData Lib "XPCOM32.DLL" (ByVal nChannel As Long, ByVal pBuffer$, ByVal wBytes As Long) As Long
Declare Function ComTxChar Lib "XPCOM32.DLL" (ByVal nChannel As Long, ByVal cTx As Byte) As Long
Declare Function ComTxData Lib "XPCOM32.DLL" (ByVal nChannel As Long, ByVal cBuffer$, ByVal wBytes As Long) As Long
Declare Function ComGetCTS Lib "XPCOM32.DLL" (ByVal nChannel As Long) As Long
Declare Function ComGetDCD Lib "XPCOM32.DLL" (ByVal nChannel As Long) As Long
Declare Function ComGetDSR Lib "XPCOM32.DLL" (ByVal nChannel As Long) As Long
Declare Function ComGetRI Lib "XPCOM32.DLL" (ByVal nChannel As Long) As Long
Declare Function ComSetDTR Lib "XPCOM32.DLL" (ByVal nChannel As Long, ByVal nState As Long) As Long
Declare Function ComSetRTS Lib "XPCOM32.DLL" (ByVal nChannel As Long, ByVal nState As Long) As Long
Declare Function ComSetBREAK Lib "XPCOM32.DLL" (ByVal nChannel As Long, ByVal nState As Long) As Long

Declare Function XPnetmOpen Lib "XPCOM32.DLL" (ByVal nChannel As Long, ByVal nRate As Long, ByVal wTxBuffer As Long, ByVal wRxBuffer As Long, ByVal nComType As Long, ByVal nMaxRetries As Long) As Long
Declare Function XPnetmClose Lib "XPCOM32.DLL" (ByVal nChannel As Long) As Long
Declare Function XPnetmComStatus Lib "XPCOM32.DLL" (ByVal nChannel As Long) As Long
Declare Function XPnetmComError Lib "XPCOM32.DLL" (ByVal nChannel As Long) As Long
Declare Function XPnetmTxMsg Lib "XPCOM32.DLL" (ByVal nChannel As Long, ByVal nTerm As Long, ByVal pMsg$, ByVal wBytes As Long) As Long
Declare Function XPnetmTxMsgPoll Lib "XPCOM32.DLL" (ByVal nChannel As Long, ByVal nTerm As Long) As Long
Declare Function XPnetmTxMsgAttention Lib "XPCOM32.DLL" (ByVal nChannel As Long, ByVal nTerm As Long) As Long
Declare Function XPnetmTxMsgStatus Lib "XPCOM32.DLL" (ByVal nChannel As Long, ByVal nTerm As Long) As Long
Declare Function XPnetmTxBufCount Lib "XPCOM32.DLL" (ByVal nChannel As Long) As Long
Declare Function XPnetmTxBufBytes Lib "XPCOM32.DLL" (ByVal nChannel As Long) As Long
Declare Function XPnetmTxBufFree Lib "XPCOM32.DLL" (ByVal nChannel As Long) As Long
Declare Function XPnetmTxBufClear Lib "XPCOM32.DLL" (ByVal nChannel As Long) As Long
Declare Function XPnetmRxMsgBytes Lib "XPCOM32.DLL" (ByVal nChannel As Long) As Long
Declare Function XPnetmRxMsg Lib "XPCOM32.DLL" (ByVal nChannel As Long, ByVal sMsg$) As Long
Declare Function XPnetmRxBufCount Lib "XPCOM32.DLL" (ByVal nChannel As Long) As Long
Declare Function XPnetmRxBufBytes Lib "XPCOM32.DLL" (ByVal nChannel As Long) As Long
Declare Function XPnetmRxBufFree Lib "XPCOM32.DLL" (ByVal nChannel As Long) As Long
Declare Function XPnetmRxBufClear Lib "XPCOM32.DLL" (ByVal nChannel As Long) As Long
Declare Function XPnetmPollStart Lib "XPCOM32.DLL" (ByVal nChannel As Long, ByVal wInterval As Long) As Long
Declare Function XPnetmPollStop Lib "XPCOM32.DLL" (ByVal nChannel As Long) As Long
Declare Function XPnetmPollTerm Lib "XPCOM32.DLL" (ByVal nChannel As Long, ByVal nTerm As Long, ByVal nPolls As Long) As Long
Declare Function XPnetmTermInfo Lib "XPCOM32.DLL" (ByVal nChannel As Long, ByVal nTerm As Long, lpStat As XPNETMSTAT) As Long
Declare Function XPnetmTermInfoClear Lib "XPCOM32.DLL" (ByVal nChannel As Long, ByVal nTerm As Long) As Long
Declare Function XPnetmGetConfig Lib "XPCOM32.DLL" (ByVal nChannel As Long, ByVal nInfo As Long, ByVal nParm As Long) As Long
Declare Function XPnetmSetTimeout Lib "XPCOM32.DLL" (ByVal nChannel As Long, ByVal nTipo As Long, ByVal wTime As Long) As Long

Declare Function XPnetmWaitCom Lib "XPCOM32.DLL" (ByVal nChannel As Long) As Long
Declare Function XPnetmRemote Lib "XPCOM32.DLL" (ByVal hwnd As Long, ByVal nChannel As Long, ByVal nTerm As Long, ByVal nActive As Long) As Long
Declare Function XPnetmTxClock Lib "XPCOM32.DLL" (ByVal hwnd As Long, ByVal nChannel As Long, ByVal nTerm As Long) As Long
Declare Function XPnetmTxCmd Lib "XPCOM32.DLL" (ByVal hwnd As Long, ByVal nChannel As Long, ByVal nTerm As Long, ByVal pCmd$) As Long

Declare Function XPnetmTxProg Lib "XPCOM32.DLL" (ByVal hwnd As Long, ByVal nChannel As Long, ByVal nTerm As Long, ByVal pProg$) As Long
Declare Function XPnetmTxProgStart Lib "XPCOM32.DLL" (ByVal nChannel As Long, ByVal nTerm As Long, ByVal pProg$, ByVal pText$) As Long
Declare Function XPnetmTxProgAbort Lib "XPCOM32.DLL" (ByVal nChannel As Long) As Long

Declare Function XPnetmRxProg Lib "XPCOM32.DLL" (ByVal hwnd As Long, ByVal nChannel As Long, ByVal nTerm As Long, ByVal pProg$) As Long
Declare Function XPnetmRxProgStart Lib "XPCOM32.DLL" (ByVal nChannel As Long, ByVal nTerm As Long, ByVal pProg$, ByVal pText$) As Long
Declare Function XPnetmRxProgAbort Lib "XPCOM32.DLL" (ByVal nChannel As Long) As Long

Declare Function XPnetmTxFile Lib "XPCOM32.DLL" (ByVal hwnd As Long, ByVal nChannel As Long, ByVal nTerm As Long, ByVal pFile$, ByVal nFile As Long) As Long
Declare Function XPnetmTxFileStart Lib "XPCOM32.DLL" (ByVal nChannel As Long, ByVal nTerm As Long, ByVal pProg$, ByVal nFile As Long, ByVal pText$) As Long
Declare Function XPnetmTxFileAbort Lib "XPCOM32.DLL" (ByVal nChannel As Long) As Long

Declare Function XPnetmRxFile Lib "XPCOM32.DLL" (ByVal hwnd As Long, ByVal nChannel As Long, ByVal nTerm As Long, ByVal pFile$, ByVal nFile As Long) As Long
Declare Function XPnetmRxFileStart Lib "XPCOM32.DLL" (ByVal nChannel As Long, ByVal nTerm As Long, ByVal pProg$, ByVal nFile As Long, ByVal pText$) As Long
Declare Function XPnetmRxFileAbort Lib "XPCOM32.DLL" (ByVal nChannel As Long) As Long

Declare Function XPnetmTransferStatus Lib "XPCOM32.DLL" (ByVal nChannel As Long, pS As XPNET_TRANSFER_STAT) As Long

Declare Sub FXPBasicConvToDouble Lib "XPCOM32.DLL" (ByVal pcF1$, pdF2#)
Declare Sub FXPBasicConvFromDouble Lib "XPCOM32.DLL" (dVal#, ByVal pbF$)

Declare Function FXPBasicConvToDBF Lib "XPCOM32.DLL" (ByVal sFileOrg$, ByVal sFileDest$, pF As CONVFILEFORMAT) As Long
Declare Function FXPBasicConvFromDBF Lib "XPCOM32.DLL" (ByVal sFileOrg$, ByVal sFileDest$, pF As CONVFILEFORMAT) As Long
Declare Function FXPBasicConvToAsc Lib "XPCOM32.DLL" (ByVal sFileOrg$, ByVal sFileDest$, ByVal nLineTerm As Long) As Long
Declare Function FXPBasicConvFromAsc Lib "XPCOM32.DLL" (ByVal sFileOrg$, ByVal sFileDest$, pF As CONVFILEFORMAT) As Long
Declare Function FXPBasicConvToText Lib "XPCOM32.DLL" (ByVal sFileOrg$, ByVal sFileDest$, ByVal nLineTerm As Long) As Long
Declare Function FXPBasicConvFromText Lib "XPCOM32.DLL" (ByVal sFileOrg$, ByVal sFileDest$, pF As CONVFILEFORMAT) As Long

'-------------------------------------------------------------------------------
' Funcoes do Protocolo de Comunicacao XMODEM
'-------------------------------------------------------------------------------

Declare Function XModemTxConfig Lib "XPCOM32.DLL" (ByVal nChannel As Long, ByVal nConfig As Long, ByVal lValue As Long) As Long
Declare Function XModemTxFileStart Lib "XPCOM32.DLL" (ByVal nChannel As Long, ByVal sFile$) As Long
Declare Function XModemTxAbort Lib "XPCOM32.DLL" (ByVal nChannel As Long) As Long
Declare Function XModemTxStatus Lib "XPCOM32.DLL" (ByVal nChannel As Long, pStat As XMODEMSTATS) As Long
Declare Function XModemRxConfig Lib "XPCOM32.DLL" (ByVal nChannel As Long, ByVal nConfig As Long, ByVal lValue As Long) As Long
Declare Function XModemRxFileStart Lib "XPCOM32.DLL" (ByVal nChannel As Long, ByVal sFile$) As Long
Declare Function XModemRxAbort Lib "XPCOM32.DLL" (ByVal nChannel As Long) As Long
Declare Function XModemRxStatus Lib "XPCOM32.DLL" (ByVal nChannel As Long, pStat As XMODEMSTATS) As Long


'----------------------------------------------------------------------------
' Prototipos das Funcoes Publicas da Rede de RF
'----------------------------------------------------------------------------

Declare Function RFnetOpen Lib "XPCOM32.DLL" (ByVal nChannel As Long, ByVal wBaud As Long, ByVal wTxBuffer As Long, ByVal wRxBuffer As Long, ByVal nMaxRetries As Long) As Long
Declare Function RFnetClose Lib "XPCOM32.DLL" (ByVal nChannel As Long) As Long
Declare Function RFnetTermInfoClear Lib "XPCOM32.DLL" (ByVal nChannel As Long, ByVal nTerm As Long) As Long
Declare Function RFnetTermInfo Lib "XPCOM32.DLL" (ByVal nChannel As Long, ByVal nTerm As Long) As Long
Declare Function RFnetRepInfoClear Lib "XPCOM32.DLL" (ByVal nChannel As Long

Abraços

Rodrigo Marchese

 Tópico anterior Próximo tópico Novo tópico


Tópico encerrado, respostas não sao permitidas
Encerrado por LCSD em 13/05/2010 20:09:05