LusoRobótica - Robótica em Português
Sistemas específicos => Arduino / AVR => Tópico iniciado por: Constantino em 07 de Julho de 2012, 14:24
-
Bom dia senhores, venho pedir ajuda com um problema que venho observando. Estou utilizando os modulos APC220 RF para realizar uma comunição entre dois arduinos, e quando envio um valor float pelo módulo, recebo do outro lado valores totalmente diferentes do que tenho no arduino que está com os sensores. A comunicação do APC220 RF é serial!
Agradeço as respostas =D
-
Como é que estás a enviar o float?
Mostra código..
-
Oi senso, comecei a enviar normal utilizando o Serialprint, exemplo : Serial.print(float,100); mas não consigo receber do outro lado da forma correta!
Se tiver alguma sugestão =D
-
Estás mesmo a querer imprimir um float com 100 casas decimais?
-
Opa, falha minha. Era Serial.print(float,2); =D
-
Se imprimires isso para a consola serial chega o valor esperado?
Podes ter erro no código algures.
-
Sim, quando faço a leitura no arduino e vejo no monitor serial, tudo fica ok. O problema é quando tento mandar os valores (float pela serial).
-
Pessoal, consigo enviar o valor float pela serial sem problema utilizando a função Serial.print(float,2);. O problema é : como vou pegar esse valor do outro lado, e converte-lo para float novamente.
[]s.
-
O serial.print pega no valor binário e converte esse valor para uma representação em ASCII desse mesmo numero, por isso, para voltares a passar de ASCII para uma representação binária, terás de usar por exemplo o scanf.