Ajuda com código para escrever em display


boa tarde,

estou criando um programa que escreve algumas informações em um display de cristal líquido i2c.

a questão é que não estou conseguindo escrever casas decimais no display da forma que quero.

não vou colocar o código todo porque está muito grande, mas parte que importa é essas três


quando faço desta forma o valor é escrito no display corretamente com 2 casas decimais, perfeito.


code: [select]
#define m_tensao 0.00001211146910945530
.
.
.
tensao = (h_byte<<16)|(m_byte<<8)|(l_byte);
.
.
.
lcd.print(tensao*m_tensao);


porém como preciso trabalhar com o valor final da variável "tensão", alterei o código da seguinte forma

code: [select]
#define m_tensao 0.00001211146910945530
.
.
.
tensao = ((h_byte<<16)|(m_byte<<8)|(l_byte))*(m_tensao);
.
.
.
lcd.print(tensao);


só que desta forma não exibe mais 2 casas decimais no display.

se alguém puder me dar uma dica de como resolver isso agradeceria ajuda.

isso é normal. verifique se o tipo da variável tensão é float. se não isso nunca funcionará como quer.
como o cálculo é feito com números inteiros, após o cálculo, esse valor não irá conter parte fraccionária.
se mesmo importante ter esse valor para utilizar em outros locais programa, terá que criar outra variável, tipo float, para conter esse valor.


Arduino Forum > International > Portugues > Ajuda com código para escrever em display


arduino

Comments

Popular posts from this blog

Valutazione Template - Joomla! Forum - community, help and support

SD Datastring Convention

First use of Arduino Uno : avrdude error on Blink uploading