Ola pessoal!

Tudo bem?

Estou precisando de uma ajuda, para criar um software que calibre a tensão e potencia de um secador de alimentos, o secador tem um motor e uma resistência. Estou usando um wattímetro, Arduíno mega 2560 e o secador, ambos estão se comunicando via rs232.

Arduíno com o wattímetro = Serial 1 baud rate 38400

Arduino com o secador = Serial 3 baud rate 38400 

Arduino com Serial Monitor = Serial baud rate 38400 (apenas para visualização do que as seriais estão enviando para o Arduíno)

A parte com o wattimetro esta pronta e funcionando, estou com o problema na segunda parte, a de recebimento e envio de dados para o secador. O secador envia para o arduino a cada 1 segundo uma sequencia de 13 bytes conforme exemplo: 3 71 8 32 0 0 0 0 2D A 2B 11 A , estou pedindo para a serial monitor printar no modo de exibição de hexadecimal, os dois primeiros bytes que seria o 3 e 71 se refere ao valor da tensão da rede elétrica, a tensão correta deveria ser 3 5F ou 0x35F = 863 em decimal. os os outros 6 bytes seguintes se refere a dizer se o motor esta ligado e as resistências, o byte 2D e 2B são valores fixo, os bytes A e 11 são referentes a calibração, e o ultimo byte A se refere ao termino do envio dos bytes, porem eu fiz uma especie de "gambiara para funcionar" pois quando colocava o valor 0x0A como termino ele parava a leitura no primeiro A da sequencia e não na ultima, conforme código em anexo.

Estou com a dificuldade em pegar os 2 primeiros bytes e utiliza-los para fazer a conta da diferenca para o valor fixo que tenho de 0x03 0x5F, assim podendo compor uma sequencia de byte para enviar ao secador.

Exibições: 234

Anexos

As respostas para este tópico estão encerradas.

Respostas a este tópico

Oi ED, boa tarde.

Testa este code de comparação e  depois conta o resultado.

http://pastebin.com/tJzkvBLt

Rui

Se funcionou, então escreva [Resolvido] antes do título do tópico.

Rui

RSS

© 2024   Criado por Marcelo Rodrigues.   Ativado por

Badges  |  Relatar um incidente  |  Termos de serviço