Boa tarde pessoal, alguém ja trabalhou com este conversor rs232?

To tentando receber os dados da porta RS232 de de uma balança para o ESP8266, porem não me da retorno nenhum.

To tentando utilizar os exemplos da SoftwareSerial Library, e nada!!

Exibições: 1040

Responder esta

Respostas a este tópico

ok. Muito obrigado. No final eu quero imprimir o array de 8 bytes com caracteres ASCII

Com certeza, para imprimir o array de 8 bytes com caracteres ASCII, você pode utilizar a função Serial.print() do Arduino, que permite imprimir strings e variáveis no monitor serial.

Assim, você pode utilizar um loop for para iterar sobre as posições do array e imprimir cada byte convertido para caractere ASCII usando a função char(). O código para imprimir o array pode ser incluído na parte do código que trata os dados recebidos. Por exemplo:

Nesse código, o loop for é adicionado após o preenchimento do array e a verificação do último byte, para imprimir os dados recebidos. Cada byte é convertido para um caractere ASCII usando a função char() e impresso na porta serial com a função Serial.print(). No final da impressão do array, a função Serial.println() é utilizada para pular uma linha no monitor serial.

Assim, quando você enviar um conjunto de caracteres de 8 bytes seguido do caractere de retorno de carro (carriage return), o Arduino irá imprimir os 8 bytes em ASCII no monitor serial.

Vexe, vou dormir hoje com isso na cabeça,  amanha de cabeça fria vou tentar estudar esse código e ver se consigo montar, nunca imaginei que isso daria todo este trabalho. hehehe


Boa tarde.

minha sugestão, compre um analisador lógico e uma bateria para o multímetro.

RV mineirin

Rui bom dia, 

Não vai precisar de um analisador lógico. 

Usando a conexão direta da balança com o PC e vendo as mensagens enviadas, dá para perceber que é bem simples o protocolo de comunicação. 

A balança fica enviando 8 bytes mais o carriage return. No caso, cada mensagem é enviada a cada 125 milisegundos pois o parametro esta configurado para 8 leituras por segundo. 

Exemplos: 

0x46 = F     balança em zero estável

0x44 = D    peso bruto estabilizado 

Com balança vazia (em Hexa) 

46 30 30 30 2E 30 30 30 0D   =  000.000  CR

Com 1,5Kg  (em Hexa) 

44 30 30 31 2E 35 30 30 0D = 001.500 CR 

 O primeiro byte poderá variar. Para cada byte, um tipo de leitura de acordo com a tabela já enviada. 

Abraços

Gustavo

Como vimos anteriormente, 

Você vai ter que testar todos essas opções como primeiro byte de leitura !  

Boa tarde.

Alguma novidade?

RV mineirin

Bom dia.

Como ficou este projeto?

Conseguiu resolver?

RV mineirin

RSS

© 2024   Criado por Marcelo Rodrigues.   Ativado por

Badges  |  Relatar um incidente  |  Termos de serviço