Clipper On Line • Ver Tópico - Porta Serial

Porta Serial

Projeto Harbour - Compilador de código aberto compatível com o Clipper.

Moderador: Moderadores

 

Porta Serial

Mensagempor Nascimento » 27 Abr 2018 10:17

algum amigo aqui ja enviou pela serial valores diretamente em hexadecimal?

estou precisando enviar os seguintas valores

0x53|0x80
0x55|0x80

alguem ja enviou coisa desse tipo??
A arte de programar é simplesmente fazer seus pensamentos serem interpretados por uma maquina :) clipper 5.3 /harbour/minigui
Avatar de usuário

Nascimento
Usuário Nível 4

Usuário Nível 4
 
Mensagens: 711
Data de registro: 19 Jul 2008 12:11
Cidade/Estado: OLINDA-PE
Curtiu: 110 vezes
Mens.Curtidas: 76 vezes

Porta Serial

Mensagempor Kapiaba » 27 Abr 2018 11:18

Desculpe, não entendi, explique melhor. Usei muito, mas para pegar o Código de Barras dos produtos em mercadinhos. Usei a HBCOMM.LIB.

http://www.pctoledo.com.br/forum/viewtopic.php?f=4&t=8412

http://www.pctoledo.com.br/forum/viewtopic.php?f=4&t=7778
Kapiaba
Colaborador

Colaborador
 
Mensagens: 1766
Data de registro: 07 Dez 2012 15:14
Cidade/Estado: São Paulo
Curtiu: 311 vezes
Mens.Curtidas: 119 vezes

Porta Serial

Mensagempor Nascimento » 28 Abr 2018 01:09

programo em clipper/harbour a vários anos , mais também sou técnico em eletrônica, nesses dias recebi um equipamento
que precisa de um soft para comunicar com ele, e o protocolo que o cara me mandou foi esse:
acionar motor = 0x53
desligar motor = 0x53|0x80
acionar solenoide = 0x54
desligar solenoide = 0x54|0x80
entre outros comandos mais todos seguindo essa regra
com o |0x80 desliga
eu sei que o |0x80 seta o bit 7
como sabemos um hexadecimal é um valor em binário nesses em questão são de 8 bits ou 1 byte
se fosse de 1 microcontrolador para outro eu enviaria tranquilamente , mais não sei ainda como fazer no harbour
tenho um pouco mais de intimidade com a hbct, mais se conseguise um exemplo com a hbcom funcional pra mim seria otimo!
A arte de programar é simplesmente fazer seus pensamentos serem interpretados por uma maquina :) clipper 5.3 /harbour/minigui
Avatar de usuário

Nascimento
Usuário Nível 4

Usuário Nível 4
 
Mensagens: 711
Data de registro: 19 Jul 2008 12:11
Cidade/Estado: OLINDA-PE
Curtiu: 110 vezes
Mens.Curtidas: 76 vezes

Porta Serial

Mensagempor alaminojunior » 30 Abr 2018 12:47

Boa tarde !

Não entendo quase nada desse negócio de hexadecimal, mas com as funções de conversão do xHarbour não seria possível ?
A função abaixo é da HbComm.

Function pegapeso
Local bHandle, string:=chr(5), bytes, buffer, q, tenta:= 0
Private dados
bal_marca = "TOLEDO"
bal_porta = "COM1"
bal_veloc = "9600"

string = HexToSTr( <valor hexadecimal> ) // precisaria converter o seu valor hexa com HexToSTr( <valor hexadecimal> )

do while .t.
   bhandle:= Init_Port(bal_porta,val(bal_veloc),8,0,1,8000)
   OutBufClr(bhandle) // Limpa o Buffer de Saida
   OUTCHR(bhandle,string)
   millisec(250)
   bytes:= InbufSize(bhandle)
   dados:= SPACE(20)
   buffer:= InChr( bhandle, Bytes, @DADOS)
   UnInt_Port(bhandle)
   dados = subs(alltrim(dados),2,5)
   if dados = "IIIII"
      millisec(250)
      tenta ++
      if tenta > 8
         return -1   
      endif
      loop
   elseif dados = "SSSSS"
      return -2
   elseif dados = "NNNNN"
      return -3   
   endif
   q = val(dados)/1000
   if q = 0
      return -4
   endif
   exit
enddo   
return q


Perdão pelo tratamento dos retornos que eu não editei, mas eu lido com balanças rsrsrsrs.
Mas creio que o caminho seja por aí.
Compilador xHarbour 1.2.3 + Embarcadero C++ 7.30
MySQL c/ SQLRDD
HwGui + GTWVG
Avatar de usuário

alaminojunior
Colaborador

Colaborador
 
Mensagens: 1689
Data de registro: 16 Dez 2005 20:26
Cidade/Estado: Ubatuba - SP
Curtiu: 27 vezes
Mens.Curtidas: 11 vezes

Porta Serial

Mensagempor Nascimento » 03 Mai 2018 13:20

tudo tranquilo, o problema é que tem que entender um pouco de eletronica mais precisamente na parte de microcontroladores
estou com o codigo do rx " o codigo escrito para o microcontrolador alvo" o que esta me encucando é como enviar marcando o bit 7 rsrs

exatamente isso 0x53|0x80 "dessa forma marco o bit 7"
de microcontrolador para microcontrolador consigo normalmente agora ja com o harbour estou levando couro
A arte de programar é simplesmente fazer seus pensamentos serem interpretados por uma maquina :) clipper 5.3 /harbour/minigui
Avatar de usuário

Nascimento
Usuário Nível 4

Usuário Nível 4
 
Mensagens: 711
Data de registro: 19 Jul 2008 12:11
Cidade/Estado: OLINDA-PE
Curtiu: 110 vezes
Mens.Curtidas: 76 vezes

Porta Serial

Mensagempor Claudio Soto » 03 Mai 2018 16:06

No entendí muy bien lo que necesitas pero esto 0x53|0x80 en Hb es equivalente a
hb_bitOR (0x53,0x80)
Saludos.
Dr. Claudio Soto
(Uruguay)
http://srvet.blogspot.com
Avatar de usuário

Claudio Soto
Colaborador

Colaborador
 
Mensagens: 555
Data de registro: 27 Ago 2012 12:31
Cidade/Estado: Uruguay
Curtiu: 35 vezes
Mens.Curtidas: 166 vezes




Retornar para Harbour

Quem está online

Usuários vendo este fórum: Nenhum usuário registrado online e 9 visitantes


Ola Amigo, espero que meu site e forum tem lhe beneficiado, com exemplos e dicas de programacao.
Entao divulgue o link da Doacao abaixo para seus amigos e redes sociais ou faça uma doacao para o site forum...
MUITO OBRIGADO PELA SUA DOACAO!
Faça uma doação para o forum
cron
v
Olá visitante, seja bem-vindo ao Fórum Clipper On Line!
Efetue o seu login ou faça o seu Registro